lgebra de Boole
A lgica de dois estados teve uma maior influncia sobre Aristteles, que determinou mtodos precisos de se encontrar a verdade. Esta lgica atraiu matemticos, que intuitivamente sentiram algum tipo de processo algbrico dirigindo todo o pensamento. Augustus De Morgan chegou perto da descoberta do elo entre a Matemtica e a Lgica. No entanto, foi George Boole (1854) que reuniu tudo. Ele inventou um novo tipo de lgebra, que substituiu os mtodos verbais de Aristteles. A lgebra booleana no teve entretanto um impacto na tecnologia at quase um sculo depois, em 1938, quando Shannon aplicou a nova lgebra aos circuitos de chaveamento de telefonia. Graas ao trabalho de Shannon, os engenheiros logo perceberam que a lgebra booleana poderia ser utilizada para projetar e analisar circuitos de computador.
Y = NOT 1 = 0
A 0 1
Y 1 0
A 0 0 1 1
B 0 1 0 1
Y 0 1 1 1
Porta OR
Porta AND
onde o trao sobre a adio booleana A+B indica a sua inverso. A tabela da verdade da funo NOR e o seu circuito lgico esto mostradas a seguir: A 0 0 1 1 B 0 1 0 1 Y 1 0 0 0
Podemos escrever a expresso booleana que executada por qualquer circuito lgico. Vejamos por exemplo, qual a expresso que o circuito abaixo executa:
Vimos at agora, que podemos obter a expresso que um circuito lgico executa. Podemos tambm desenhar um circuito lgico que execute uma expresso booleana qualquer, ou seja, podemos desenhar um circuito a
partir de sua expresso caracterstica.
Uma maneira de se fazer o estudo de uma funo booleana a utilizao tabela da verdade, que um mapa onde se colocam todas as situaes possveis de uma dada expresso, juntamente com o valor por esta assumida.
Como j visto, existe uma ligao forte entre o circuito lgico e sua expresso caracterstica, ou seja, podemos obter circuitos a partir de expresses caractersticas e vice-versa. Portanto, uma tabela verdade representa o comportamento do circuito e tambm de sua expresso caracterstica.
Monta-se o quadro de possibilidades. Montam-se colunas para os vrios membros (ou parcelas) da expresso. Preenchem-se estas colunas com seus resultados. Monta-se uma coluna para o resultado final. Preenche-se esta coluna com o resultado final, que simplesmente a soma das colunas de resultados dos membros.
Exemplo 1: S = ABC + AD + ABD Temos na expresso acima quatro variveis: A, B, C e D, logo, teremos 24 possibilidades de combinaes. O quadro de possibilidades ficar:
Variveis A 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 B 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 C 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 D 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 ABC 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1
Termos AD 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1 ABD 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1
X 0 1
S 1 0
Se os terminais de entrada de uma porta NAND forem circuitados, ela se torna um inversor.
X 0 1
S 1 0
Obteno de portas NOR a partir de portas AND e portas NOT Primeiro Teorema de Morgan
De acordo com o primeiro teorema de Morgan, o complemento de uma soma igual ao produto dos complementos, ou seja, a seguinte expresso booleana verdadeira:
ABA B
O primeiro teorema de Morgan, e portanto a equivalncia dos circuitos mostrados na figura anterior, pode ser demonstrado atravs da tabela da verdade: AB 00 01 10 11
A B AB AB
1 1 0 0
1 0 1 0
1 0 0 0
1 0 0 0
Obtemos esta equivalncia, colocando inversores nas entradas e na sada de uma porta AND, como ilustra a figura a seguir:
ABA+B
Obteno de portas NAND a partir de portas OR e portas NOT Segundo Teorema de Morgan
De acordo com o segundo teorema de Morgan, o complemento de um produto igual soma dos complementos, ou seja, a seguinte expresso booleana verdadeira:
A B AB
O segundo teorema de Morgan, e portanto a equivalncia dos circuitos mostrados na figura anterior, pode ser demonstrado atravs da tabela da verdade: AB 00 01 10 11
A B AB AB
1 1 0 0
1 0 1 0
1 1 1 0
1 1 1 0
Obtemos esta equivalncia, colocando inversores nas entradas e na sada de uma porta OR, como ilustra a figura a seguir:
Permutabilidade
Dois circuitos so ditos permutveis quando eles so equivalentes, ou seja, sempre apresentam a mesma sada para as mesmas combinaes das variveis de entrada, desta forma, pode-se afirmar que sendo dois circuitos permutveis, possvel substituir um pelo outro, sempre que se desejar.
Circuitos Combinacionais
Definio: O circuito combinacional aquele em que a sada depende nica e exclusivamente das vrias combinaes entre as variveis de entrada. Utiliza-se um circuito lgico combinacional para solucionar problemas em que necessita-se de uma resposta, quando acontecerem determinadas situaes, que so representadas pelas variveis de entrada. Para construir estes circuitos, necessita-se de uma expresso caracterstica. Precisa-se obter uma expresso que represente uma dada situao. Para extrair uma expresso de uma situao, o caminho mais fcil obter a tabela da verdade desta situao, e em seguida, levantar a expresso. Esquematicamente tem-se:
Situao
Tabela Verdade
Expresso
Circuito
Exemplo: Deseja-se utilizar um amplificador para ligar 3 aparelhos: um CD player, um toca-fitas e um rdio FM.
Circuito OU-Exclusivo
A funo que ele executa, como o prprio nome diz, consiste em ter a sada igual a 1 sempre que as variveis de entrada forem diferentes entre si. Podemos ento montar a sua tabela da verdade, em seguida obter a sua expresso caracterstica e finalmente esquematizarmos o circuito:
A 0 0 1 1
B 0 1 0 1
S 0 1 1 0
S AB A B A B
Circuito Coincidncia
Neste circuito, quando as variveis de entrada so iguais (coincidentes) a sada ser igual a 1. O smbolo da porta Coincidncia semelhante ao smbolo da porta OU Exclusivo, com a sada invertida. Esta inverso pode ser comprovada, se compararmos a tabela da verdade dos dois circuitos. Devido inverso, o bloco Coincidncia tambm conhecido como NOU Exclusivo (Exclusive NOR).
A 0 0 1 1 B 0 1 0 1 S 1 0 0 1
A funo OU Exclusivo apresenta sada igual a 1 quando o nmero de entradas em nvel lgico 1 impar, enquanto que a funo Coincidncia tem sada igual a 1 quando o nmero de entradas em nvel lgico 0 par. Dessa forma, sempre que o nmero de variveis de entrada for impar, as funes OU Exclusivo e Coincidncia sero equivalentes Por outro lado, sempre que o nmero de variveis de entrada for par, as funes OU Exclusivo e Coincidncia sero complementares.
S1 = ABC e S2 = ABC A B C S1 = ABC S2 = ABC 0 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 0 1 0 0 1 1 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 ABCD = (ABCD) e ABCDE = ABCDE.
Postulado da Complementao
Se A = 0 => A = 1; Se A = 1 => A = 0.
podemos
A = A
Postulado da Adio
0 0 1 1
+ + + +
0 1 0 1
= = = =
0 1 1 1
A A A A
+ + + +
0 0 1 1
0 1 0 1
= = = =
0 0 0 1
postulado
podemos
estabelecer
as
seguintes
A A A A
Propriedades Comutativas
Na Adio
A+B=B+A
AB=BA
Na Multiplicao
Propriedade Associativa
Na Adio
A + (B + C) = (A + B) + C = A + B + C A (B C) = (A B) C = A B C
Na Multiplicao
Propriedade Distributiva
A (B + C) = A B + A C
Teoremas de Morgan
3.3. Teoremas de Morgan a) Primeiro Teorema de Morgan: O complemento da soma igual ao produto dos complementos:
ABAB
Identidades Auxiliares
A + AB = A A+AB = A+B = A+AB = (A+AB) = (A (AB)) = (A (A+B)) = (AA + AB) = (AB) = A+B A+BC = (A+B)(A+C)
Veremos a seguir, a partir de exemplos, como qualquer funo booleana pode ser transformada em uma soma padro de produtos. Exemplo 1: Dada a funo lgica de 4 variveis , expressar a funo como uma soma de produtos. Freqentemente os termos individuais nas expresses na forma soma de produtos no envolvem o mesmo todas as variveis de entrada da funo (complementadas ou no). Se isto ocorresse sempre, haveria uma maior padronizao, como veremos no exemplo seguinte. Exemplo 2: Consideremos a funo lgica de 3 variveis f(A,B,C)=A+BC. Esta funo j est na forma de uma soma de produtos. Escrev-la novamente, de modo que se torne uma expresso em que todas as trs variveis de entrada apaream em cada termo do produto. Cada um dos termos das expresses obtidas chamado de mintermo.
Exemplo: Dada a funo lgica de 4 variveis f A, B, C , D A BC B CD , podese expressar a funo como um produto de somas, onde cada termo contenha todas as quatro variveis, complementadas ou no. Cada um destes termos chamado de maxtermo. Neste caso a funo um produto de somas. Exemplo: Considere a funo lgica de 3 variveis f(A,B,C,D) = ABC + AB.. Esta funo j est na forma de uma soma de produtos. Pode-se escrev-la novamente, de modo que todas as quatro variveis de entrada apaream em cada termo do produto, ou seja, a funo uma soma de produtos..
Suponha uma funo envolvendo as variveis A, B e C. Um mintermo inclui todas as variveis apenas uma vez (complementadas ou no). Atribui-se 0 a cada varivel complementada e 1 a cada varivel no complementada. Por exemplo,se o mintermo envolver A, B e C, os nmeros binrios seriam 1, 1 e 0 respectivamente. Um mtodo consistente (embora arbitrrio) e geralmente aceito para a numerao dos mintermos de uma dada funo lgica consiste em fixar inicialmente a ordem em que aparecem as variveis e atribuir valores numricos na mesma ordem. Assim, o mintermo envolvendo A, B e C deve ser escrito ABC (e nunca ACB ou BAC, etc.), ento o mintermo ser 110 e ABC=m6. Quando se trata com maxtermos, a regra de atribuir 1 ou 0 invertida: uma varivel complementada recebe 1 e uma no complementada, 0. Assim, o maxtermo A+B+C recebe o nmero 100 = 4, e representado por M4. O que foi citado anteriormente em relao ordenao de mintermos aplica-se tambm aos maxtermos.
Uma funo lgica pode ser convenientemente especificada atravs de mintermos ou maxtermos, como mostra o exemplo a seguir:
Mintermos:
f(A,B,C) = ABC+ABC+ABC+ABC+ABC f(A,B,C) = m0 + m2 + m3 + m6 + m7 f(A,B,C) = (0,2,3,6,7) f(A,B,C) = (A+B+C)(A+B+C)(A+B+C) f(A,B,C) = M1 + M4 + M5 f(A,B,C) = (1,4,5)
Maxtermos:
A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
f(A,B,C) 1 0 1 1 0 0 1 1
Devido disponibilidade comercial de portas lgicas, muitas vezes conveniente gerar uma funo lgica qualquer utilizando somente um tipo de porta. Normalmente utilizamos estruturas de dois nveis, que necessitam de 3 tipos de portas ao menos, portas NOT, AND e OR. Existe um processo simples para converter estes tipos de estruturas em outras que envolvam somente um tipo de porta.
Consideremos a seguinte soma de produtos: f A, B, C A BC AC AB . Vamos complementar a funo duas vezes, deixando-a portanto inalterada.
f A, B, C ABC AC AB
Uma precauo deve ser tomada quando uma soma de produtos ou um produto de somas envolver um termo em que s aparece uma varivel. Por exemplo: f(A,B,C) = A+BC A estrutura AND-OR que gera esta funo a seguinte:
Se simplesmente substituirmos todas as portas por portas NAND, o circuito resultante, mostrado na figura seguinte, no ser equivalente e portanto o nosso resultado estar errado.
Utilizando o conceito da lgebra de Boole, pode-se simplificar expresses. Lembrando que cada circuito corresponde a uma expresso. A simplificao de expresses significa a simplificao dos circuitos correspondentes. Para efetuar as simplificaes existem basicamente dois processos. O primeiro deles atravs da lgebra de Boole e o segundo consiste na utilizao dos mapas de Veitch-Karnaugh, que ser visto mais frente.
Simplificao de funes
Complemento
p + p = 1
p . p = 0
Simplificao de funes
Usando os teoremas da lgebra Booleana
Simplificar a funo f(X,Y,Z) = XY(Z + YX) + YZ = XYZ + XYYX + YZ = XYZ + 0 + YZ = XYZ + YZ = (XY + Y)Z = (X + Y)Z = (XY)Z
Esta expresso muito menor e mais mais simples que a expresso original e exige menos portas lgicas para ser implementada. Isto significa ECONOMIA
Simplificao de funes
Mapas de Karnaugh ou mapas-K Os mapas de Karnaugh representam uma nova forma de representao dos diagramas de Venn, onde cada rea representa um termo No diagrama de Venn, uma rea que adjacente a outra, tambm ser adjacente no mapa-K. Se duas reas so adjacentes, significa que ambas contm uma mesma varivel, uma em sua forma normal e a outra em sua forma complementada. Portanto, esta varivel pode ser eliminada. Por exemplo, na expresso ABC + ABC, a varivel C aparece nos dois termos e ela pode ser eliminada por AB(C + C) = AB. Em um mapa-K, duas reas adjacentes so agrupados para eliminar uma varivel. Seguindo este raciocnio, em um mapa-K, 4 reas adjacentes podem ser agrupadas para eliminar 2 variveis e 8 reas adjacentes so agrupadas para eliminar 3 variveis
Simplificao de funes
Mapas de Karnaugh ou mapas-K Processo:
Os mintermos so marcados como 1 no mapa-K na rea equivalente Agrupam-se as reas marcadas com 1, em nmeros de 2, 4, 8... (potncia de 2) o maior nmero possvel. Se uma rea no tem qualquer outra a ela adjacente ela deve ser agrupada sozinha. Todas as reas do mapa-K devem ser agrupadas. A expresso final simplificada ser a unio de todas as reas agrupadas.
Simplificao de funes
Mapas de Karnaugh para 2 variveis (A e B)
A
Venn B AB AB AB AB ou
B B B B A A B
0 2
m2 m3 m1
m0
B
1 3
Mapas-K
A AB AB A AB AB
A m0 m1 A m2 m3
Deve ser verificado que as reas que eram adjacentes no grfico de cima continuam adjacentes nos grficos de baixo
Simplificao de funes
Mapas de Karnaugh de 2 variveis (A e B) Seja simplificar a expresso AB + AB. Em termos de mintermos, tem-se: m0 + m1 ou (0,1) que plotados no mapa-K tem-se:
B A A
0 2
B
1 3
1 1
1 1
3
Simplificao de funes
Mapas de Karnaugh de 3 variveis (A, B e C)
B A m0 ou A m4 C
B m1 m5 C m3 m7
B
0
B
1 3
B
2
m2 m6 C
A ou A
4 5 7 6
Deve-se observar que existem duas colunas C, uma esquerda e a outra direita. Neste caso, elas so adjacentes e podem ser agrupadas.
Simplificao de funes
Mapas de Karnaugh de 3 variveis (A, B e C) Simplificar ABC + ABC + ABC + ABC ou (0,2,4,6)
B
0
B
3 2
A
A
4
1 1
C
1 1
C
B
3 2
A A
4
1 1
C
1 1
C
Simplificao de funes
Mapas de Karnaugh de 3 variveis (A, B e C) Simplificar ABC + ABC + ABC + ABC ou (0,2,4,6)
B
0
A
A
4
1 1
1 1
Agrupando-se as reas plotadas com 1, tem-se uma quadra (1,3,5,7) e uma dupla (0, 1)
B
0
A A
4
1 1
1 1
Simplificao de funes
Mapas de Karnaugh de 4 variveis (A, B, C e D)
C C m0 A ABCD ABCD ABCD ABCD B ABCD ABCD ABCD ABCD A ABCD ABCD ABCD ABCD B D D D A m8 D m9 D m11 m10 D B ou m12 m13 m15 m14 m4 m5 m7 m6 B C m1 m3 C m2 B
Simplificao de funes
Mapas de Karnaugh de 4 variveis (A, B, C e D)
C
0 1 3
C
2
B A
4
12
13
15
14
11
10
B D
C
m0 A m4 m12 A m8 D m9 D m11 m5 m13 m7 m15 m1 m3
C m1
m5 m13 m9 D
m0
m3
m7 m15 m11
m2
m6
B m14 m10 D B
m8 D
C m2 m6 B m14 m10 D B B
B
A
m0 m4
C m2 m6 B m14 m10 D B B
Simplificao de funes
Mapas de Karnaugh de 4 variveis (A, B, C e D) Simplificar ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD + ABCD ou (0,1,4,5,9,11,13,14)
C
0
C
3 2
1
1
1
5
B
7 6
1
1 1
= AC + CD + ABD + ABCD
15 14
12
13
1
B D
11
10
1
D
Simplificao de funes
Mapas de Karnaugh para 5 variveis
D D C B C B m20 A A m28 m29 m31 m30 m21 m23 m22 C m16 D m17 m19 D m18
B
C
B
m24 m25 m27 E m26 C
Neste caso, a rea da esquerda deve ser sobreposta sobre a rea da direita. Para mais de 5 variveis estas reas devem ser replicadas para baixo.