Curso Eletrônica Digital Lição 2

Nesta lição estudaremos sobre as propriedades das portas lógicas, o Teorema De Morgan e como os circuitos digitais podem tomar decisões lógicas.
Todas essas decisões são baseadas em circuitos e configurações que operam na base 2 (0 e 1 ou nível LO e HI), muito importante para aqueles que pretendem trabalhar com computadores ou programação de microcontroladores.

Álgebra de Boole

George Boole desenvolveu uma série de postulados e operações simples para resolver problemas de controle na fabricação de produtos.
A álgebra de Boole se tornou importante especificamente com o surgimento da eletrônica digital.
Boole estabeleceu na sua teoria que só existe duas condições ou estados possíveis para qualquer coisa que desejamos analisar.
Assim, uma lâmpada só pode estar acesa ou apagada, uma fonte só pode ter ou não tensão na sua saída, uma pergunta pode ter como resposta verdadeiro ou falso. Dizemos que na álgebra de Boole as variáveis lógicas só podem adquirir dois estados.

0 ou 1
Verdadeiro ou Falso
Aberto ou Fechado
Alto ou Baixo (HI ou LO)
Ligado ou Desligado

Na eletrônica digital um circuito só pode trabalhar com dois estados lógicos, com a presença de sinal ou a ausência de sinal. Tudo que um circuito lógico digital pode fazer está previsto pela álgebra de Boole. Desde as mais simples operações ou decisões, como acender um LED quando dois sensores são ativados de uma determinada maneira ou quando uma tecla é pressionada.

Níveis lógicos

Partimos do fato de que os circuitos digitais trabalham com duas condições possíveis, presença ou ausência de sinal, vamos definir alguns pontos importantes para o nosso entendimento. Nos circuitos digitais a presença de uma tensão será indicada como nível 1 ou HI (HIGH ou Alto) enquanto que a ausência de uma tensão será indicada por nível 0 ou LO (LOW ou baixo). O 0 ou LO será sempre uma tensão nula, ou ausência de sinal num ponto do circuito, mas o nível lógico 1 ou HI pode variar de acordo com o circuito analisado. Nos computadores desktop, a tensão usada para a alimentação de todos os circuitos lógicos, por exemplo, é de 5 V. Assim, o nível 1 ou HI de seus circuitos será sempre uma tensão de 5 V. Nos notebooks é usada uma tensão de alimentação menor, da ordem de 3,2 V, portanto, nestes circuitos um nível 1 ou HI sempre corresponderá a uma tensão desse valor.
Existem circuitos digitais que empregam componentes eletrônicos (circuitos integrados) de tecnologia CMOS e que podem ser alimentados com tensões entre 3 e 15 V. Nestes casos, um nível lógico 1 ou HI poderá ter qualquer tensão entre 3 e 15 V, dependendo apenas da tensão de alimentação usada.
A ideia de associar a presença de tensão ao nível 1 e a ausência ao nível 0, é uma questão de convenção. Nada impede que adotemos um critério inverso ao projetar os circuitos, pois eles funcionarão perfeitamente. Assim, quando dizemos que ao
nível alto (1) associamos a presença de tensão e ao nível baixo a ausência de tensão (0), estamos falando do que se denomina lógica positiva. Se associarmos o nível baixo ou 0 a presença de tensão e o nível alto ou 1 a ausência de tensão, estaremos falando de uma lógica negativa.
Para não causar nenhuma confusão, todo o nosso curso tratará exclusivamente da lógica positiva, o mesmo acontecendo com os dispositivos eletrônicos tomados como exemplos.
Portanto, em nossa lógica, é possível associar os seguintes estados de um circuito aos valores 0 e 1:

Níveis lógicos

Operações Lógicas

Função Lógica NOT ou Inversora

Nos manuais encontramos a indicação desta função com a palavra NOT.
O que esta função faz é inverter uma afirmação, ou seja, se tivermos nível LO na sua entrada, em sua saída encontraremos um nível HI.

O circuito que realiza esta operação é denominado inversor. Quando apresenta nível 0 na sua entrada, a saída é 1 e vice-versa. Associaremos uma tabela que será de grande utilidade sempre que estudarmos qualquer tipo de circuito lógico. Esta tabela mostra o que ocorre com a saída da função quando colocamos na entrada todas as combinações possíveis de níveis lógicos. Dizemos que se trata de uma tabela verdade. A seguir apresentamos a tabela verdade para a porta NOT ou inversora:

Função lógica NOT

Os símbolos adotados normalmente em nosso site é o especificado pela norma ANSI. Em diagramas fornecidos por terceiros podemos mostrar no site símbolos pela norma DIN.
O símbolo adotado para representar a função NOT é mostrado na figura a seguir.

Função NOT

Esta função pode ser simulada por um circuito simples e de fácil entendimento apresentado na figura abaixo.

Circuito função NOT

Neste circuito temos um LED que, aceso, indica o nível 1 na saída e apagado, indica o nível 0. Quando a chave está na posição A indicando que a entrada é nível 1, a LED está apagado, indicando que a saída é nível 0.
Por outro lado, quando a chave esta na posição B, o que representa uma entrada de nível 0, o LED acende, indicando que a saída é 1.
No circuito acima o resistor R2 tem a função de limitar a corrente na entrada e o resistor R1 de limitar a corrente de saída para que o circuito da porta lógica funcione dentro dos parâmetros estabelecidos pelo fabricante.
Esta maneira de simular funções lógicas com LEDs indicando a saída e chaves polarizando a entrada com níveis 0 e 1, é bastante interessante pela facilidade com que o leitor entenda o seu funcionamento.

Lembramos que:

Tabela circuito função NOT

Função Lógica AND

A função lógica E também conhecida pelo seu nome em inglês AND pode ser definida como aquela em que a saída será 1 se todas as variáveis de entrada forem 1.
As funções lógicas E podem ter duas, três, quatro ou quantas entradas quisermos e é representada pelos símbolos mostrados na figura a seguir.

Função AND

Função AND 3 input

As funções lógicas também são chamadas de “portas” ou “gates” (do inglês) já que correspondem a circuitos que podem controlar ou deixar passar os sinais sob determinadas condições.
Tomando como exemplo uma porta ou função E de duas entradas, escrevemos a seguinte tabela verdade:

Tabela Função AND

Na figura abaixo apresentamos o modo de simular o circuito de uma porta E usando chaves para polarizar a porta lógica e um LED comum para visualização do resultado em sua saída.

Circuito função AND

É preciso que CH1 e CH2 estejam com nível 1, para que a saída (LED aceso) também apresente nível 1.
Para uma porta AND de três entradas tabela verdade será a seguinte:

Tabela porta AND 3 entrada

Para que a saída seja 1, é preciso que todas as entradas sejam 1. Observamos que para uma porta AND de 2 entradas temos 4 combinações possíveis. Para uma porta AND de 3 entradas temos 8 combinações possíveis para o sinal de entrada.
Para uma porta de 4 entradas, teremos 16 e assim por diante.

Função lógica OR

A função OR é definida como aquela em que a saída estará em nível alto se uma ou mais entradas estiver em nível alto.

Esta função é representada pelos símbolos mostrados na figura abaixo.

Função OR

Para uma porta OR de duas entradas podemos elaborar a seguinte tabela verdade:

Tabela função Lógica OR

Vemos que a saída estará no nível 1 se uma das entradas estiverem no nível 1.
Um circuito simples com chaves e um LED para simular esta função é mostrado na figura a seguir.

Circuito função OR

Quando uma das chaves estiver com nível 1 (entrada A ou B) o LED receberá corrente acendendo-se (saída S nível 1).
Podemos ter portas OR com mais de duas entradas. Para o caso de uma porta OR de três entradas teremos a seguinte tabela verdade:

Tabela função lógica OR 3 entradas

Função lógica NAND

As funções AND, OR e NOT (E, OU e inversor) são a base de toda a álgebra booleana e todas as demais funções consideramos como derivadas delas.
Uma função importante derivada é a obtida pela associação da função AND com a função NOT, que é denominada NOT-AND ou conhecida como, NAND.
Na figura abaixo temos os símbolo adotado para representar esta função.

Função lógica NAND

Observe a existência de um pequeno círculo na saída da porta NAND ele indica a inversão. Dizemos que para a função NAND a saída estará em nível 0 se todas as entradas estiverem com nível 1. A tabela verdade para uma porta NOT-AND ou NAND de duas entradas é a seguinte:

Tabela função lógica NAND

Na figura a seguir temos um circuito simples com chaves e LED, que simula esta função.

Circuito função lógica NAND

O LED só apagará (saída 0) quando as duas chaves estiverem com nível 1.
Podemos ter a função NAND com mais de duas entradas. Para o caso de 3 entradas teremos a seguinte tabela verdade:

Tabela função lógica NAND

Função lógica NOR

Esta é a inversão da função OR, obtida da associação da função OR com a função NOT ou inversor. Para indicar a função NOR o seu símbolo é apresentado na figura a seguir.

Função lógica NOR

Sua ação é definida da seguinte forma: a saída será 1 se todas as entradas forem 0.
Uma tabela verdade para uma função NOR de duas entradas é mostrada a seguir:

Tabela função lógica NOR

Um circuito simples usando chaves e LED para simular esta função é mostrado na figura a seguir.

Circuito função lógica NOR

Observe que o LED se mantém aceso (nível 1) se as duas chaves (CH1 e CH2) estiverem com nível 0.
Da mesma forma que nas funções anteriores, podemos ter portas NOR com mais de duas entradas. Para o caso de três entradas teremos a seguinte tabela verdade:

Tabela função lógica NOR 3 entradas

Função lógica XOR

Uma função importante para o funcionamento dos circuitos lógicos digitais e especificamente para os computadores é a denominada OR-exclusivo ou usando o termo XOR. Esta função tem a propriedade de realizar a soma de valores binários ou ainda encontrar o que se denomina paridade.
O símbolo adotado para esta função são apresentados na figura a seguir.

Função lógica XOR

Definimos sua ação da seguinte forma: a saída será 1 se as entradas A e B forem diferentes. Isso significa que, para uma porta XOR de duas entradas teremos a saída 1 se as entradas forem 0 e 1 ou 1 e 0, mas a saída será 0 se as entradas forem ambas 1 ou ambas 0, conforme a seguinte tabela verdade:

Tabela função lógica XOR

Esta função é derivada das demais, e podemos obter utilizando portas já conhecidas, veja a figura a seguir.

Circuito função XOR

A função XOR é considerada um bloco lógico independente nos projetos, podemos sempre implementá-la com um circuito equivalente como o ilustrado nessa figura acima.
A implementação deste tipo de circuito envolve a utilização de três blocos distintos. Seria um desperdício utilizar-mos três componentes distintos para obter a função lógica de apenas um componente. Por outro lado, os chip (circuitos integrados) são construídos com várias blocos de funções lógicas e as vezes dependendo do projeto alguns blocos ficam sem uso no chip. Desta forma podemos obter outras funções lógicas se utilizando dos blocos que não estão sendo utilizados nos chip.

Função lógica NXOR

Podemos considerar esta função como o inverso da função lógica XOR. Sua denominação em inglês é Exclusive NOR ou NXOR e é representada pelo símbolo mostrado na figura a seguir.

Função lógica NXOR

Observe o círculo que indica a negativa da função anterior, se bem que essa terminologia são seja apropriada neste caso.
Esta função pode ser definida como a que apresenta uma saída igual a 1 se as variáveis de entrada forem iguais.
Uma tabela verdade para esta função é a seguinte:

Tabela função lógica NXOR

Podemos também implementar esta função lógica utilizando outras já conhecidas, conforme a figura a seguir.

Circuito função lógica NXOR

Propriedades das operações lógicas

As portas lógicas realizam operações com os valores binários 0 e 1 aplicados às suas entradas. Assim, podemos representar estas operações por uma simbologia apropriada, facilitando o projeto dos circuitos e permitindo visualizar melhor o que ocorre quando associamos muitas funções lógicas.
No entanto, para saber associar as diversas portas e com isso realizar operações mais complexas, é preciso conhecer as propriedades que as operações apresentam.
Exatamente como no caso das operações com números decimais, as operações lógicas com a álgebra Booleana se baseiam numa série de postulados e teoremas simples.
Os principais são dados a seguir e prová-los fica por conta dos leitores que desejarem ir além. Para entender seu significado não é preciso saber como provar sua validade, mas sim memorizar seu significado.

Representações

As operações AND, OR e NOT são representadas por símbolos da seguinte forma:

Operação AND

A operação AND é representada por um ponto final (.). Assim, para uma porta AND de duas entradas (A e B) e saída S podemos fazer a representação:
A . B = S

Operação OR

Esta operação é representada pelo sinal (+).
A operação de uma porta OR de entradas A e B e saída S pode ser
representada como:
A + B = S

Operação NOT

Esta operação é indicada por uma barra (\) da seguinte forma:
A\ = S

Partindo destas representações, podemos enumerar as seguintes propriedades das operações lógicas:

Propriedade comutativa das operações AND e OR:
A . B = B . A
A + B = B + A

Propriedade associativa das operações AND e OR:
A.(B.C) = (A.B).C
A+(B+C) = (A+B)+C

Teorema da Involução:
(A negação da negação é a própria afirmação)
A\\ = A

A operação AND é distributiva em relação à operação OR:
A.(B+C) = A.B + A.C

Propriedades diversas:

A.A = A
A+A = A
A.0 = 0
A.1 = A
A+0 = A
A+1 = 1
A.A\= 0
A+A\= 1
A+A.B = A

Teoremas de De Morgan

Aplicando a operação NOT a uma operação AND, o resultado obtido é igual ao da operação OR aplicada aos complementos das variáveis de entrada.
____ _ _
A . B = A + B

Aplicando a operação NOT a uma operação OR o resultado é igual ao da operação AND aplicada aos complementos das variáveis de entrada.
____ _ _
A + B = A . B

Fazendo tudo com portas NAND (NOT-AND)

As portas NAND, podem ser usadas para obter qualquer outra função lógica que estudamos.
Esta propriedade torna essas portas blocos universais nos projetos de circuitos digitais já que, na forma de circuitos integrados, as funções NAND são fáceis de se obter e de custo baixo.
A seguir vamos mostrar de que modo podemos obter as funções estudadas simplesmente usando portas NAND.

Porta lógica NOT (Inversor)

Para obter um inversor a partir de uma porta NAND basta unir suas entradas ou colocar uma das entradas no nível lógico 1, conforme figura a seguir.

Função lógica NOT - NAND

Função lógica NOT - NAND

Porta lógica AND

Uma porta AND é obtida simplesmente agregando-se à função
NOT-AND (NAND) um inversor em cada entrada, conforme a figura a seguir.

Função lógica AND - NAND

Porta lógica OR

A função OR pode ser obtida com o circuito mostrado na figura a seguir. O que se faz é inverter a saída depois de aplicá-la a uma porta NAND.

Função lógica OR - NAND

Concluindo a lição

Os princípios em que se baseiam os circuitos lógicos digitais podem parecer algo abstratos, usam muito de Matemática e isso talvez desestimule os leitores. No entanto, estamos apenas no começo. O esforço para entendê-los, certamente será recompensado no futuro, pois estes princípios estão presentes em tudo o que um computador faz. Nas próximas lições, o que foi estudado até agora ficará mais claro quando continuaremos o trabalho junto com a prática.

Continua na próxima lição.

Autor: Olair Marcos

"De nada vale o conhecimento adquirido se não compartilharmos com os outros."