Portas Lógicas

portas-logicas

Este post visa introduzir de maneira breve as portas lógicas digitais, conhecimento fundamental para se avançar no estudo e entendimento de sistemas digitais.

Sistema Digital

Um sistema digital é um sistema matemático que define informações como valores numéricos. Dessa forma, é possível definir operações digitais como cálculos matemáticos. Comumente trabalhamos com valores numéricos na base decimal, mas um sistema digital trabalha de maneira diferente. Em analogia ao sistema decimal, onde cada dígito possui 10 valores possíveis, um sistema digital é um sistema binário, onde cada dígito possui apenas 2 valores possíveis. Esses dois valores são definidos como “níveis lógicos” e adota-se o valor de 0 (zero) ou 1 (um) apenas.

Transportando esse sistema para um sistema eletrônico, é necessário apresentar esses dois valores como sinais elétricos. Para tanto, podemos entendê-los como: 

  • Ligado ou desligado;
  • Nível alto ou nível baixo;
  • Alimentado ou em zero;
  • VCC ou Terra.

As operações observáveis para esses níveis lógicos são definidas como operações lógicas. Todas as possíveis operações lógicas são baseadas em apenas 3 operações primárias, que são: 

  • Inversão;
  • Soma lógica;
  • Produto lógico.

Tabela Verdade

A Tabela Verdade trata-se de uma técnica para determinar como a saída lógica de um determinado circuito depende dos níveis lógicos presentes nas entradas de cada circuito. Ela está representada neste texto do lado direito das imagens, ao lado das portas lógicas.

Portas Lógicas

Porta Lógica NOT

A porta NÃO ou inversora (NOT) utiliza o operador de inversão. Para um determinado valor na entrada, a saída possui um valor contrário ao da entrada. Se a entrada for 1, a saída será 0. Se a entrada for 0, a saída será 1. Ou seja, para um valor na entrada a saída será seu complemento, ou o inverso do valor na entrada.

Portas Lógicas: Porta lógica NOT
Porta Lógica NOT

Porta NOT em Verilog:

module exemplo_INVERSOR ( a, b );
input wire a;
output wire b;

assign b = ~a;

endmodule

Porta Lógica AND

Para se explicar o funcionamento da porta E (AND) pode-se fazer um paralelo com um circuito com interruptores, como na figura abaixo. Para que a lâmpada acenda é preciso que os dois interruptores estejam ligados.

Portas Lógicas: Porta Lógica AND
Analogia com a porta lógica AND

As portas lógicas E (AND) utilizam-se do operador de produto lógico. A saída é igual a 1 se todas as entradas for 1. A saída é igual a zero se ao menos uma entrada for 0, se todas entradas não forem 1.

Portas Lógicas: Porta Lógica AND
Porta Lógica AND

Porta AND em Verilog:

module exemplo_AND ( A, B, C );
input wire A, B;
output wire C;

assign C = A & B;

endmodule

Porta Lógica OR

Uma forma simples de se entender o funcionamento da porta OU (OR) é pensar em um circuito com interruptores em paralelo, como na figura abaixo. Para que a lâmpada acenda é preciso que um dos dois interruptores esteja ligado.

Portas Lógicas: Porta Lógica OR
Analogia com a porta lógica OR

A porta lógica OU (OR) utiliza-se do operador de soma lógica. A saída é igual a 1 se pelo menos uma das entradas for 1. A saída é igual a zero se nenhuma entrada for 1, todas forem zero.

Portas Lógicas: Porta Lógica OR
Porta Lógica OR

Porta OR em Verilog:

module exemplo_OR ( a, b, c );
input wire a, b;
output wire c;

assign c = a | b;

endmodule

 Porta Lógica NAND

A porta lógica NÃO E (NAND) utiliza-se do operador de produto lógico e o de inversão. A saída é igual a 0 se todas as entradas for 1. A saída é igual a 1 se ao menos uma entrada for 0, se todas entradas não forem 1.

 

Portas Lógicas: Porta Lógica NAND
Porta Lógica NAND

Porta NAND em Verilog:

module exemplo_NAND ( a, b, d );
input wire a, b;
output wire d;

assign d = a ~& b;

endmodule

 Porta Lógica NOR

A porta lógica NÃO OU (NOR) utiliza-se do operador de soma lógica e o de inversão. A saída é igual a 0 se pelo menos uma das entradas for 1. A saída é igual a 1 se nenhuma entrada for 1, todas forem zero.

Portas Lógicas: Porta Lógica NOR
Porta Lógica NOR

Porta NOR em Verilog:

module exemplo_NOR ( a, b, d );
input wire a, b;
output wire d;

assign d = a ~| b;

endmodule

 Porta Lógica XOR

As portas lógicas OU EXCLUSIVO (XOR) utilizam-se do operador de soma lógica, com um círculo. A saída é igual a 0 se as entradas forem iguais. A saída é igual a 1 se as entradas não forem iguais, se uma delas diferirem das outras.

Porta Lógica XOR
Porta Lógica XOR

Porta XOR em Verilog:

module exemplo_XOR ( a, b, c );
input wire a, b;
output wire c;

assign c = a ^ b;

endmodule

Porta Lógica XNOR

As portas lógicas NÃO OU EXCLUSIVO (XNOR) utilizam-se do operador de soma lógica, com um círculo e o de inversão. Tem as saídas inversas da operação XOR. A saída é igual a 1 se as entradas forem iguais. A saída é igual a 0 se se as entradas não forem iguais, se uma delas diferirem das outras.

Porta Lógica XNOR
Porta Lógica XNOR

Porta XNOR em Verilog:

module exemplo_XNOR ( a, b, c );
input wire a, b;
output wire c;

assign c = a ~^ b;

endmodule

Portas Lógicas: Teorema de De Morgan

O Teorema de De Morgan diz respeito às seguintes afirmações:

  • Uma operação NAND é igual a uma operação OR com todas as entradas invertidas;
  • Uma operação NOR é igual a uma operação AND com todas as entradas invertidas.

Com essas duas afirmações podemos fazer diversas simplificações em expressões lógicas, referentes a circuitos digitais.

Teorema de deMorgan
Teorema de deMorgan

Associações de portas lógicas: Exemplo

Se utilizarmos expressões booleanas, podemos determinar diretamente a expressão lógica de saída de um circuito. Veja Exemplo abaixo.

Como no exemplo, é possível associar diversas portas lógicas para construção de circuitos mais complexos.

Baixe um arquivo com todas essas operações em uma mesma folha no arquivo abaixo

Formato PDF

Formato PowerPoint

Obrigado a Francesco Sacco que revisou as frases contidas no texto.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.
Comentários:
Notificações
Notificar
31 Comentários
recentes
antigos mais votados
Inline Feedbacks
View all comments
Marco Aurélio Silva
Marco Aurélio Silva
30/11/2023 10:48

faço Análise e Desenvolvimento de Sistemas ainda não consegui entender as portas logicas,tá complicado.

Leandro Guerci Tavares
Leandro Guerci Tavares
15/10/2023 20:39

APLICATIVO LOGISIM TOTALMENTE GRATUITO. MUITO FACIL DE MECHER!

Leandro Guerci Tavares
Leandro Guerci Tavares
15/10/2023 17:09

Como resolvo esta?
R=(A’+B){B’+(B’.C+B.C’)[A’.B.C’+B.(A+D’)’B.C’+B’.D]+A.B.D}’

Francisco Sampaio Candido
Francisco Sampaio Candido
Reply to  Leandro Guerci Tavares
14/11/2023 00:47

quero aprender esse exercício, será que já conseguiste resolver para mi ensinar também…

Guilherme Wiethaus
Guilherme Wiethaus
10/08/2023 13:55

O arquivo ppt e pdf não estão mais disponíveis.

Thiago
Thiago
13/12/2022 23:12

Alguem pode me ajudar resolver esse exercicio ?

exercicio_eletronica3.png
Thiago
Thiago
13/12/2022 23:10

Alguem pode me ajudar resolver esse exercicio?

exercicio_eletronica2.png
Matheus
Matheus
Reply to  Thiago
26/07/2023 12:34

Acredito que seja a letra B. Você pode transformar o circuito em uma expressão booleana, neste caso: AB + /A/B = Y Depois você pode construir a tabela verdade, e nesse caso como só temos os termos A e B, seriam apenas duas entradas na tabela. Seguindo a fórmula N = 2^n, sendo o n expoente o número de entradas, teríamos N = 2^2 -> N = 4. Ou seja, a tabela verdade teria 4 linhas. Por fim você pode calcular a saída de cada linha da tabela verdade e ver que esse circuito só acenderia o LED em duas… Leia mais »

Ramildo Vicola
Ramildo Vicola
15/11/2022 11:10

Grato pelo conteudo

Syri
Syri
02/09/2022 14:17

Estudante de TI.
Venho aqui agradecer por esse conteúdo.

jabunço
jabunço
09/05/2022 14:51

legal.

Last edited 3 anos atrás by jabunço
Daniel SOUZA
Daniel SOUZA
07/03/2022 15:26

Vc me ajudou muito Tiago parabens por sua iniciativa, proporcionou um meio de faciliar o entendimento da disciplina

Home » Hardware » Portas Lógicas

EM DESTAQUE

WEBINARS

VEJA TAMBÉM

JUNTE-SE HOJE À COMUNIDADE EMBARCADOS

Talvez você goste: