Você está na página 1de 60

Universidade Federal de Uberlândia

Faculdade de Computação

Sistemas Digitais
Módulo 5
Teoremas Lógicos, Simplificação Algébrica e Projeto
de Circuitos Lógicos

Graduação em Sistemas de Informação


Prof. Dr. Daniel A. Furtado
Conteúdo
 Avaliação das Saídas dos Circuitos Lógicos
 Análise de Circuitos por Tabela Verdade
 Teoremas Lógicos
• Teoremas Básicos
• Teoremas de DeMorgan
 Simplificação Algébrica de Expressões Lógicas
 Simplificação de Circuitos Lógicos
 Projeto de Circuitos Lógicos Combinacionais

Prof. Daniel A. Furtado


Avaliando as Saídas dos Circuitos Lógicos

Exemplo 1: determinar o nível lógico da saída 𝑥 do circuito acima para o caso


em que 𝐴 = 0, 𝐵 = 1, 𝐶 = 1 e 𝐷 = 1:

𝑥 = 𝐴𝐵𝐶 𝐴 + 𝐷
=0∙1∙1∙ 0+1
=1∙1∙1∙ 0+1
= 1 ∙ 1 ∙ 1 ∙ (1)
=1∙1∙1∙0
=0

Prof. Daniel A. Furtado


Avaliando as Saídas dos Circuitos Lógicos

𝑥 = 𝐷+ 𝐴+𝐵 𝐶 𝐸

Exemplo 2: determinar o nível lógico da saída 𝑥 do circuito acima para o caso


em que 𝐴 = 0, 𝐵 = 0, 𝐶 = 1, 𝐷 = 1 e 𝐸 = 1:
𝑥 = 𝐷+ 𝐴+𝐵 𝐶 𝐸
= 1+ 0+0 ∙1 ∙1
= 1+ 0 ∙1 ∙1
= 1+0 ∙1
= 1+1 ∙1
=1
Prof. Daniel A. Furtado
Análise do Circuito por Tabela Verdade
 Uma análise detalhada do circuito lógico pode ser necessária
em algumas situações;
 Por exemplo, dado um circuito lógico, pode-se desejar saber
quais são as combinações de valores das entradas que levam
ao valor lógico 1 na saída;
 Também pode ser necessário conhecer os possíveis valores
lógicos em um nó intermediário do circuito (para fins de
análise de defeitos, por exemplo);
 Uma forma de realizar tais avaliações é construindo uma
tabela verdade que apresente todos os possíveis valores
lógicos nos nós intermediários e no nó final do circuito.

Prof. Daniel A. Furtado


Circuito exemplo

(a) (b) (c)

Tabela verdade
completa do
circuito

(d)
Simplificação Algébrica
Simplificação Algébrica – Introdução
 Expressões lógicas e circuitos lógicos
frequentemente pode ser simplificados;
 Circuitos lógicos mais simples podem ser analisados
com maior facilidade e geralmente são
implementados com um custo menor;
 Em softwares, expressões lógicas mais simples
também trazem benefícios óbvios.

Prof. Daniel A. Furtado


Simplificação Algébrica – Introdução
 Por exemplo, os circuitos (a) e (b) a seguir são equivalentes. Entretanto, o
circuito (b) é muito mais simples e obviamente deveria ser escolhido no
caso de uma eventual implementação.

Prof. Daniel A. Furtado


Simplificação Algébrica – Introdução
 A simplificação algébrica é uma forma de realizar
simplificações em expressões lógicas utilizando uma
coleção de teoremas lógicos da álgebra booleana;
 Alguns desses teoremas são apresentados a seguir.

Prof. Daniel A. Furtado


Simplificação Algébrica – Teoremas Booleanos

𝑥 0
1. 𝑥 ∙ 0 = 0
0

𝑥
2. 𝑥 ∙ 1 = 𝑥 𝑥
1

𝑥
3. 𝑥 ∙ 𝑥 = 𝑥 𝑥

𝑥
4. 𝑥 ∙ 𝑥 = 0 0

Prof. Daniel A. Furtado


Simplificação Algébrica – Teoremas Booleanos

𝑥 𝑥
5. 𝑥 + 0 = 𝑥
0

𝑥
6. 𝑥 + 1 = 1 1
1

𝑥
7. 𝑥 + 𝑥 = 𝑥 𝑥

𝑥
8. 𝑥 + 𝑥 = 1 1

Prof. Daniel A. Furtado


Simplificação Algébrica – Teoremas Booleanos

9. 𝑥 + 𝑦 = 𝑦 + 𝑥 (a operação OR é comutativa)
10. 𝑥 ∙ 𝑦 = 𝑦 ∙ 𝑥 (a operação AND é comutativa)

11. 𝑥 + 𝑦 + 𝑧 = 𝑥 + 𝑦 + 𝑧 = 𝑥 + 𝑦 + 𝑧 (OR é associativa)


12. 𝑥 𝑦𝑧 = 𝑥𝑦 𝑧 = 𝑥𝑦𝑧 (AND é associativa)

13. (a) 𝑥 𝑦 + 𝑧 = 𝑥𝑦 + 𝑥𝑧 Propriedade distributiva:


podemos colocar termos
13. (b) 𝑤 + 𝑥 𝑦 + 𝑧 = 𝑤𝑦 + 𝑤𝑧 + 𝑥𝑦 + 𝑥𝑧 comuns em evidência (fatorar)

14. 𝑥 + 𝑥𝑦 = 𝑥
15. (a) x + xy = x + y
15. (b) x + xy = x + y

Prof. Daniel A. Furtado


Simplificação Algébrica – Teoremas Booleanos

 Os teoremas booleanos são fundamentais na simplificação


algébrica de expressões lógicas;
 As variáveis 𝑥, 𝑦 e 𝑧 nos teoremas booleanos podem
representar expressões com mais de uma variável:
• Por exemplo, utilizando o teorema 4, pode-se deduzir
que 𝐴𝐵 𝐴𝐵 = 0. Neste caso, basta considerar 𝑥 = 𝐴𝐵.

Prof. Daniel A. Furtado


Simplificação Algébrica – Duplas Inversões

 Duas inversões em sequência se anulam, ou seja:


• A+B+C=A+B+C
• A ∙ B = AB
• A=A
 Entretanto:
• A ∙ B ≠ AB

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplos

 Exemplo 1: utilize os teoremas booleanos para


simplificar a expressão 𝑦 = ABD + ABD

𝑦 = ABD + ABD
= AB D + D (coloca-se em evidência 𝐴𝐵, teorema 13)
= AB 1 (teorema 8)
= AB (teorema 2)

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplos

 Exemplo 2: utilize os teoremas booleanos para


simplificar a expressão 𝑧 = 𝐴 + 𝐵 𝐴 + 𝐵

𝑧 = A+B A+B
= AA + AB + BA + BB (distribuição, teorema 13b)
= 0 + AB + BA + B (teoremas 3 e 4)
= AB + BA + B (0 + 𝑥 = 𝑥, teorema 5)
= B(A + A + 1) (pode-se colocar B em evidência, teor. 13)
= B(1) (𝑥 + 1 = 1, teorema 6)
=B (𝐵 ∙ 1 = 𝐵)

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplos

 Exemplo 3: utilize os teoremas booleanos para


simplificar a expressão 𝑥 = ACD + ABCD

𝑥 = ACD + ABCD
= CD(A + AB) (coloca-se CD em evidência, teor. 13)
= CD(A + B) (A + AB = A + B; teorema 15a)
= ACD + BCD (distribuição, teor. 13)

Prof. Daniel A. Furtado


Simplificação Algébrica – Exercícios

 Exercício. Utilize os teoremas lógicos para simplificar:


• AC + ABC
• ABCD + ABCD
• AD + ABD
• ABC + ABC + BCD
• ABC + AB(A + C)

Prof. Daniel A. Furtado


Simplificação Algébrica – Teoremas de DeMorgan

 Dois outros teoremas lógicos possuem especial


importância no processo de simplificação algébrica
de expressões lógicas;
 Eles foram propostos pelo matemático britânico
Augustus De Morgan:

1. x + y = x ∙ y
2. x ∙ y = x + y

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplos
 Exemplo 4: simplifique a expressão x = AB + C

AB + C = AB ∙ C (DeMorgan, x + y = x ∙ y )
= A+B ∙C (DeMorgan, xy = x + y )
= A+B ∙C
= AC + BC

Prof. Daniel A. Furtado


Formas Canônicas de uma Expressão Lógica

 Uma expressão lógica está na forma soma-de-produtos quando é


constituída por dois ou mais termos AND conectados por
operações OR, onde:
• Cada termo AND consiste em um grupo de variáveis
conectadas pela operação AND e é denominado mintermo;
• As variáveis em um termo AND podem aparecer
individualmente na forma complementada ou não;
 Exemplos:
• AB + CD + AD (expressão com 3 mintermos)
• AB + BCD + D + ABD (expressão com 4 mintermos)
 Atenção: na soma-de-produtos não é permitida a inversão de um grupo
de variáveis, isto é, uma barra não pode cobrir mais que uma variável ao
mesmo tempo, como em ABC ou BCD.

Prof. Daniel A. Furtado


Formas Canônicas de uma Expressão Lógica

 Uma expressão lógica está na forma produto-das-somas quando é


constituída por dois ou mais termos OR conectados por
operações AND, onde:
• Cada termo OR consiste em um grupo de variáveis conectadas pela
operação OR e é comumente denominado maxtermo;
• As variáveis em um termo OR podem aparecer individualmente na forma
complementada ou não;
 Exemplos:
• (A + B + C)(A + D)
• (A + B)(A + D)(B + A + C)(D)
 Atenção: no produto-das-somas não é permitida a inversão
de um grupo de variáveis, como em (A + B + C)(C + D).

Prof. Daniel A. Furtado


Simplificação Algébrica
 Pode-se utilizar a forma soma-de-produtos e os
teoremas lógicos para simplificar expressões lógicas;
 Passos:
1. Coloca-se a expressão na forma soma-de-produtos (se
possível, aplica-se DeMorgan, multiplicações, etc.);
2. Procura-se por fatores comuns entre os termos a fim de
colocá-los em evidência:
• o objetivo é tentar eliminar um ou mais termos;
• dê preferência para os fatores maiores;

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplo 5
 Simplifique a expressão y = ABC + AB AC

ABC + AB AC = ABC + AB(A + C) (DeMorgan)


= ABC + AB(A + C)
= ABC + AAB + ABC
= ABC + 𝐀𝐁 + 𝐀𝐁𝐂
= ABC + AB (x + xy = x)
= A BC + B
= A(B + C) (x + xy = x + y)
= AB +AC

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplo 6
 Simplifique a expressão (A + C) ∙ (B + D)

(A + C) ∙ (B + D) = (A + C) + (B + D)
= A∙C + B∙D
= AC + BD

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplo 7
 Simplificar a expressão x = (A + B)(A + B + D)D

= AAD + ABD + ADD + BAD + BBD + BDD (Distribui)


= 0 + ABD + 0 + BAD + BD + 0 (x ∙ x = 0)
= ABD + ABD + BD (Reescreve)
= BD(A + A + 1) (Fatora)
= BD(1) (1 + x = 1)
= BD (x ∙ 1 = x)

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplo 8
 Simplificar a expressão z = AC ABD + ABCD + ABC
• Passo 1: colocar na forma soma-de-produtos:
z = AC ABD + ABCD + ABC
= AC 𝐀 + 𝐁 + 𝐃 + ABCD + ABC [DeMorgan]
= ACA + ACB + ACD + ABCD + ABC [Multiplica]

• Passo 2: fatorar/simplificar (1ª forma)


= 𝐀𝐂𝐀 + ACB + ACD + ABCD + ABC
= 0 + ACB + ACD + ABCD + ABC [A ∙ A = 0]
= ABC + ACD + ABCD + ABC [Reorganiza]
= BC A + A + AD(C + BC) [Fatora]
= BC + AD(C + CB) [A + A = 1]
= BC + AD(C + B) [C + CB = C + B, teor. 15]

Prof. Daniel A. Furtado


Simplificação Algébrica – Exemplo 8
 Passo 2: fatorar/simplificar (2ª forma)
𝐳 = 𝐀𝐂𝐀 + ACB + ACD + ABCD + ABC
= 0 + A𝐂B + A𝐂D + ABCD + AB𝐂 [A ∙ A = 0]
= C A𝐁 + AD + A𝐁 + ABCD [Fatora]
= C B A + A + AD + ABCD [Fatora]
= C B 1 + AD + ABCD [A + A = 1]
= BC + ACD + ABCD [Distribui]
= BC + AD(C + BC) [Fatora]
= 𝐁𝐂 + 𝐀𝐃(𝐂 + 𝐁) [C + CB = C + B, teor. 15]

Prof. Daniel A. Furtado


Simplificação Algébrica
 Pode-se observar na simplificação algébrica que:
• É possível ter diversos “caminhos” no processo de simplificação;
• Nem sempre é óbvio escolher as melhores variáveis para fatorar;
• Nem sempre é fácil saber se a expressão resultante ainda pode
ser simplificada;

• Muitas vezes temos um processo de tentativa e erro;


• Nem sempre o resultado obtido corresponde à forma mais
simples da expressão. Por exemplo, a forma mais simples da
última expressão simplificada é 𝒛 = 𝑨𝑩𝑫 + 𝑩𝑪

Prof. Daniel A. Furtado


Simplificação Algébrica – Exercício
 Utilize a álgebra booleana para simplificar as expressões:

a. q = RST(R + S + T)
b. r = (ABA)(ABB)

Prof. Daniel A. Furtado


Simplificação Algébrica e Circuitos Lógicos

 É possível utilizar a simplificação algébrica para simplificar


circuitos lógicos;
 Basta obter a expressão lógica equivalente ao circuito a ser
simplificado, simplificar a expressão e então gerar um novo
circuito a partir da expressão simplificada;

Prof. Daniel A. Furtado


Simplificação de Circuitos
 Exemplo. Utilizar o processo de simplificação
algébrica para simplificar o circuito lógico:

Prof. Daniel A. Furtado


Simplificação de Circuitos
 Solução
• Passo 1: Obter a expressão lógica equivalente à saída
do circuito;

z = ABC + AB(AC)

Prof. Daniel A. Furtado


Simplificação de Circuitos
 Solução
• Passo 2: Simplificar a expressão lógica

ABC + AB AC
= ABC + AB(A + C) (DeMorgan)
= ABC + AAB + ABC
= ABC + 𝐀𝐁 + 𝐀𝐁𝐂
= ABC + AB (x + xy = x)
= A BC + B
= A(B + C) (x + xy = x + y)

Prof. Daniel A. Furtado


Simplificação de Circuitos
 Solução
• Passo 3: Montar o circuito correspondente à
expressão simplificada.

A(B + C)

Prof. Daniel A. Furtado


Simplificação de Circuitos – Exercício
 Simplificar o circuito a seguir utilizando a álgebra booleana:

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais
Projeto de Circuitos Combinacionais
 Quando se conhece o valor de saída de um circuito
lógico para cada combinação de entradas, pode-se
montar uma tabela verdade e projetar o circuito
lógico a partir dessa tabela;
 Exemplo 1
Tabela Verdade do Circuito
Entradas Saída 𝑥 Circuito correspondente
A B
A
0 0 0 𝑥 = AB
B
0 1 1 AB
1 0 0
1 1 0

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais
 Exemplo 2. Três entradas com uma única saída em alta

Tabela Verdade do Circuito


Circuito correspondente
Entradas Saída 𝒙
A B C A
0 0 0 0
B x = ABC
0 0 1 0
C
0 1 0 0
0 1 1 0
1 0 0 1 ABC
1 0 1 0
1 1 0 0
1 1 1 0

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais
 Exemplo 3. Duas entradas e duas combinações de entrada
que resultam em saída alta;

Tabela Verdade do Circuito


Entradas Saída 𝒙
A B
0 0 0
0 1 1 AB
𝑥 = AB + AB
1 0 1 AB
1 1 0
A 𝐴𝐵
B

𝑥 = AB + AB
𝐴𝐵
Prof. Daniel A. Furtado
Projeto de Circuitos Combinacionais
 Exemplo 4
Tabela Verdade do Circuito
Entradas Saída 𝑥
A B C
0 0 0 0
0 0 1 1 A BC
0 1 0 0 x = ABC + ABC + ABC
0 1 1 0
= BC A + A + ABC
= BC + ABC
1 0 0 1 ABC = B C + AC
1 0 1 1 ABC = B(C + A)
1 1 0 0
1 1 1 0 B
x = B(C + A)
C
A
Prof. Daniel A. Furtado
Projeto de Circuitos – Procedimento Completo

1. Interprete o problema e construa uma tabela-verdade


para descrever seu funcionamento;
2. Escreva o termo AND (produto) para cada caso em que
a saída seja 1;
3. Escreva a expressão soma-de-produtos para a saída;
4. Simplifique a expressão de saída, se possível;
5. Implemente o circuito para a expressão final,
simplificada.

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais – Exemplo 5

Em um determinado modelo de automóvel, uma luz de advertência


deve acender no painel de instrumentos do veículo quando uma das
seguintes situações ocorrer:
 O motorista acende os faróis com a ignição desligada;
 O motorista abre a porta com a ignição ligada;
Projete um circuito lógico para simular esses eventos. A saída 𝑥 do
circuito deverá indicar o estado da luz de emergência (ligada/desligada).

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais – Exemplo 5

Solução:
Passo 1a. Utilizar três variáveis lógicas para representar,
respectivamente, o estado dos faróis, da ignição e da porta:

• Variável 𝐅: estado dos faróis (0 = desligado; 1 = ligado);


• Variável 𝐈: estado da ignição (0 = desligada; 1 = ligada);
• Variável 𝐏: estado da porta (0 = fechada; 1 = aberta);

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais – Exemplo 5
Solução:
Passo 1b. Construção da tabela verdade contendo todas as
combinações possíveis de entrada e as respectivas saídas:
Entradas Saída 𝒙
𝐅 𝐈 𝐏 0 Condições para acender a luz

0 0 0 0 • O motorista acende os faróis


com a ignição desligada;
0 0 1 0 • O motorista abre a porta
0 1 0 0 com a ignição ligada;

0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 1

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais – Exemplo 5
Solução:
Passo 2. Obter os mintermos para cada saída igual a 1

Entradas Saída 𝒙
𝐅 𝐈 𝐏 0
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1 FIP
1 0 0 1 FIP
1 0 1 1 FIP
1 1 0 0
1 1 1 1 FIP

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais – Exemplo 5
Solução:
Passo 3. Escrever a expressão da saída na forma soma-de-produtos

Entradas Saída 𝒙
𝐅 𝐈 𝐏 0
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1 FIP
1 0 0 1 FIP x = FIP + FI P + FIP + FIP
1 0 1 1 FIP
1 1 0 0
1 1 1 1 FIP

Prof. Daniel A. Furtado


Projeto de Circuitos Combinacionais – Exemplo 5
Solução:
Passo 4. Simplificar a expressão da saída

x = FIP + FI P + FIP + FIP


= IP F + F + FI P + P
= IP 1 + FI 1
= 𝐈𝐏 + 𝐅𝐈

Passo 5. Projetar o circuito para a expressão simplificada

I
P
𝑥 = IP + IF

Prof. Daniel A. Furtado


Suficiência da Portas NAND e NOR
Teoremas de DeMorgan e Portas Lógicas
 Os teoremas de DeMorgan podem ser usados para
estabelecer equivalências de portas lógicas;
 Uma porta NOR é equivalente a uma porta AND com duas
inversões nas entradas:

Teorema 1: x + y = x ∙ y

Prof. Daniel A. Furtado


Teoremas de DeMorgan e Portas Lógicas
 Da mesma forma, uma porta NAND é equivalente a uma porta
OR com duas inversões nas entradas:

Teorema 2: x ∙ y = x + y

Prof. Daniel A. Furtado


Suficiência da Porta NAND
 Qualquer circuito lógico pode ser representado
utilizando apenas portas NAND.

Prof. Daniel A. Furtado


Suficiência da Porta NOR
 Qualquer circuito lógico pode ser representado
utilizando apenas portas NOR.

Prof. Daniel A. Furtado


Suficiência das Portas NAND e NOR
 Suponha que a expressão lógica 𝑥 = 𝐴𝐵 + 𝐶𝐷 tenha que ser
implementada como um circuito para controle de uma esteira
de transporte;
 Suponha ainda que os seguintes circuitos integrados (CIs)
estejam disponíveis:

74LS00 74LS32 74LS08

 Qual seria a melhor forma de criar o circuito?


Prof. Daniel A. Furtado
Suficiência das Portas NAND e NOR
 Opção 1: Implementar o circuito a seguir utilizando um CI
74LS08 (portas AND) e um CI 74LS32 (porta OR)

74LS00 74LS32 74LS08

Prof. Daniel A. Furtado


Suficiência das Portas NAND e NOR
 Opção 2: Tentar simplificar o circuito utilizando
apenas portas NAND:

Prof. Daniel A. Furtado


Suficiência das Portas NAND e NOR
 Circuito equivalente após substituição das portas AND e OR por portas NAND:

 Após eliminação das duplas inversões:

Prof. Daniel A. Furtado


Suficiência das Portas NAND e NOR
 Assim, o circuito equivalente à expressão lógica 𝑥 = 𝐴𝐵 + 𝐶𝐷 que utiliza
apenas portas NAND poderia ser implementado utilizando apenas um CI 74LS00,
ao invés de dois CIs diferentes, como na primeira proposta.

74LS00

Prof. Daniel A. Furtado


Referências
 TOCCI, R. J.; WIDMER, N. S.; MOSS, G. L. Sistemas
Digitais: princípios e aplicações. 11.ed. São Paulo:
Pearson Prentice Hall, 2011.
• Leitura recomendada: Páginas 49-75.

Prof. Daniel A. Furtado

Você também pode gostar