1
Universidade Federal do ABC
Prof. Rodrigo Reina Muñoz
Aula 4: Circuitos Combinacionais
Circuitos Combinacionais
Circuitos combinacionais (combinatórios) Em qualquer instante de tempo, o nível lógico de saída depende apenas da combinação dos níveis lógicos da entrada (circuito não tem memória).
Simplificação de Circuitos Lógicos
- Teoremas da Álgebra Booleana - Técnica de Mapeamento
Projeto de um Circuito Combinacional
- Através de um conjunto de requisitos e de técnicas adequadas é
Circuito Lógico E1 E2 EN S1 S2 SN ENTRADAS SAÍDAS
Forma de Soma de Produtos
• Algumas técnicas de simplificação requerem que as expressões estejam na forma de soma de produtos (SDP).
1- ABC + A’BC’
2- AB + A’BC’ + C’D’ + D
3- A’B + CD’ + EF + GK + HL’
Cada expressão consiste de dois ou mais termos AND conectados por uma operação OR.
Cada termo AND consiste de uma ou mais variáveis complementadas ou não (individualmente).
Na forma SDP um sinal de inversão não cobre mais do que uma variável. Exemplo: A(BC)’
Forma de Produto de Somas
• Uma outra forma para expressões lógicas usada em circuitos digitais é chamada de produto de somas (PDS).
1- (A + B’ + C) . (A + C) 2- (A + B’) . (C + D’) . F
3- (A + C) . (B + D’) . (B’ + C) . (A + D’ + E’)
Cada expressão consiste de dois ou mais termos OR conectados por uma operação AND.
Cada termo OR consiste de uma ou mais variáveis complementadas ou não (individualmente).
Na forma PDS um sinal de inversão não cobre mais do que uma variável.
Simplificação de Circuitos Lógicos
Circuito original Expressão original Expressão simplificada Circuito simplificado • Circuito simplificado é menor, mais barato e mais confiável.• A simplificação através da álgebra booleana depende da experiência do projetista.
• A simplificação do circuito pode ser realizada através da álgebra booleana ou do mapa de Karnaugh.
Simplificação de Circuitos Lógicos
Circuito original Expressão original Expressão simplificada Circuito simplificado • Circuito simplificado é menor, mais barato e mais confiável.• A simplificação através da álgebra booleana depende da experiência do projetista.
• A simplificação do circuito pode ser realizada através da álgebra booleana ou do mapa de Karnaugh.
Simplificação de Circuitos Lógicos (cont.)
Álgebra Booleana: Qual teorema utilizar? É possível simplificar mais? Sequência: Colocar as expressões na forma de SDP, verificar fatores
Simplificação de Circuitos Lógicos (cont.)
Álgebra Booleana: Qual teorema utilizar? É possível simplificar mais? Seqüência: Colocar as expressões na forma de SDP, verificar fatores
Simplificação de Circuitos Lógicos (cont.)
Exemplo: Simplifique o circuito a seguir.
Z = (A’ + B) . (A + B’)
Z = A’B’ + AB
Obs: O processo de simplificação não
Projetando Circuitos Lógicos Combinacionais
Processo de Síntese pelo método algébrico
Descrição Informal (Português) Tabela da Verdade Expressão Algébrica Diagrama Lógico
Não sistematizado Múltiplas soluções Substituição das operações por blocos
Construindo a tabela verdade e escrevendo a expressão lógica
Exemplo: Um sistema de controle possui três sensores. Nesse sistema, um motor deve ser energizado quando uma das seguintes condições ocorre: Sensor B acionado;
Sensores B e C acionados; Sensores A e C acionados;
Projetando Circuitos Lógicos Combinacionais (cont.)
0 111 m7 0 110 m6 1 101 m5 0 100 m4 1 011 m3 1 010 m2 0 001 m1 0 000 m0 f ABC mf = A’BC’ + A’BC + AB’C
A’BC’ = mintermo ou produto canônico (composto pelo produto de todas as
variáveis complementadas ou não).
1ª forma canônica é toda expressão lógica
composta pela soma de produtos canônicos, ou mintermos, diferentes entre sí.
Formas abreviadas:
f (ABC) = m2 + m3 + m5 f (ABC) = Σm (2,3,5)
Projetando Circuitos Lógicos Combinacionais (cont.)
0 111 M7 0 110 M6 1 101 M5 0 100 M4 1 011 M3 1 010 M2 0 001 M1 0 000 M0 f ABC M f = (A+B+C).(A+B+C’).(A’+B+C).(A’+B’+C).(A’+B’+C’)A+B+C = maxtermo ou soma canônica (composto pela soma de todas as
variáveis complementadas ou não)
2ª forma canônica é toda expressão lógica
composta pelo produto de somas canônicas, ou maxtermos, diferentes entre sí.
Formas abreviadas:
f (A,B,C) = M0 . M1 . M4 . M6 . M7 f (A,B,C) = ∏M (0,1,4,6,7)
Projetando Circuitos Lógicos Combinacionais (cont.)
Relação entre mintermos e maxtermos
0 111 M7,m7 0 110 M6,m6 1 101 M5,m5 0 100 M4,m4 1 011 M3,m3 1 010 M2,m2 0 001 M1,m1 0 000 M0,m0 f ABC
M,m Da tabela apresentada (1ª linha), nota-se que: Em termos de mintermos m0 = A’.B’.C’
Em termos de maxtermos M0 = A+B+C Portanto, m0 = M0’, pois (A’.B’.C’)’ = A+B+C Generalizando: m = M’ e M = m’
Se f = ∑(0,3,6,7) então f = ∏(1,2,4,5) ou
Se g = ∏(0,2,6) então f = ∑(1,3,4,5,7)
Para escrever o complemento de uma função é necessário trocar cada f = 0 por f = 1 na tabela-verdade. Sendo assim, deve-se trocar cada
mintermo pelo maxtermo de mesmo número e vice-versa. Por exemplo: f = ∑(0,3,6,7) e f ’ = ∏ (0,3,6,7)
Projetando Circuitos Lógicos Combinacionais (cont.)
Estrutura de Dois Níveis com Portas
• Considere a expressão f (A,B,C) = A.B.C + A’.B’.C + A.B’.C (SDP) Se uma função aparece como a soma de n termos produto, sua estrutura física tem n portas AND e uma única porta OR.
f A B C A’ B’ C A B’ C Obs: O inversor não é contabilizado
no número de níveis. Admite-se que se existe a variável X, então X’ está disponível.
Projetando Circuitos Lógicos Combinacionais (cont.)
Estrutura de Dois Níveis com Portas
• Considere a expressão f (A,B,C) = (A+B’+C’).(A+B’+C).(A’+B+C) (PDS)
Se uma função tiver n termos soma, sua estrutura física tem n portas OR seguidas de uma única porta AND.
f A B’ C’ A B’ C A’ B C Obs: Estruturas com mais de dois
níveis possuem maior atraso de propagação.
Projetando Circuitos Lógicos Combinacionais (cont.)
Procedimento Completo de Projeto
Exemplo: Projete um circuito lógico com três entradas, A, B e C, cuja
saída será nível alto apenas quando a maioria das entradas for nível alto. 1 111 m7 1 110 m6 1 101 m5 0 100 m4 1 011 m3 0 010 m2 0 001 m1 0 000 m0 x ABC m
(SDP) x = A’BC + AB’C + ABC’ + ABC (Simplificada) x = BC + AC + AB
Projetando Circuitos Lógicos Combinacionais (cont.)
Exemplo 4.8: Projete um circuito lógico para monitoramento de uma
bateria. Saída = ‘1’ sempre que a tensão da bateria for maior que 6 V.
• Esse exemplo demonstra que a simplificação algébrica de uma função lógica com muitos termos é trabalhosa através da álgebra booleana.
Método do Mapa de Karnaugh – Mapa K
• Método gráfico usado para simplificar uma equação lógica ou para converter uma tabela verdade no seu circuito lógico
correspondente, de uma forma simples e metódica.
• Representação da tabela verdade em duas dimensões.
• Possui propriedades que permitem simplificações nas funções lógicas.
Definições Célula: É um mintermo ou maxtermo
Células Adjacentes: Quando diferem no valor de uma variável Adjacências: Agrupamento de 2n células adjacentes
• A ocorrência de adjacências gera uma função que cobre a função original. Por exemplo, para 2 variáveis:
m3 m1 m2 m0 0 1 0 1 A B
Expressão original (da tabela) f = A’B’ + A’B f (A,B) = Σm(0,1) Expressão simplificada f = A’(B’+B) = A’ 0 1 1 0 0 1 1 1 0 1 0 0 f B A
Método do Mapa de Karnaugh – Mapa K (cont.)
Exemplo de mapa para duas variáveism3 m1 m2 m0 0 1 0 1 A B
Expressão original (da tabela) f = A’B’ + A’B f (A,B) = Σm(0,1) Expressão simplificada f = A’(B’+B) = A’ 1 1 0 0 0 1 1 1 0 1 0 0 f B A 0 1 0 1 0 1 0 1 A B f = A’ 0 1 1 0 0 1 1 1 0 1 0 0 f B A
Conforme a tabela (igual a anterior) a função atual cobre a função original
Procedimento: Tenta-se agrupar o máximo número de 1s adjacentes
Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de duas variáveis
m3 m1 m2 m0 0 1 0 1 A B 11 01 10 00 0 1 0 1 A B
Agrupamento de 2 células eliminação de 1 variável Agrupamento de 4 células f = 1 0 1 0 1 0 1 0 1 A B 1 0 0 1 0 1 0 1 A B 1 1 0 1 0 1 0 1 A B 1 1 1 1 0 1 0 1 A B f = A’ Não há simplificação f = A’ + B f = 1 =
Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de três variáveis m5 m4 m7 m6 m3 m1 m2 m0 00 0 1 AB C 01 11 10 101 100 111 110 011 001 010 000 00 0 1 AB C 01 11 10 =• Agrupamento de 2 células eliminação de 1 variável • Agrupamento de 4 células eliminação de 2 variáveis • Agrupamento de 8 células f = 1
Método do Mapa de Karnaugh – Mapa K (cont
.)
f = A’B’C’+A’B’C+A’BC’+A’BC+AB’C’+ABC’ 0 1 0 1 1 1 1 1 00 0 1 AB C 01 11 10 f = AB’C’+AB’C+A’BC+A’BC’+ABC’ 1 1 0 1 1 0 1 0 00 0 1 AB C 01 11 10 Mapa de três variáveis f = A’+C’ f = A’B+AB’+AC’Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de três variáveis f = AB’C’+AB’C+A’BC+A’BC’+A’B’C’+A’B’C 1 1 0 0 1 1 1 1 00 0 1 AB C 01 11 10 f = AB’C’+AB’C+A’B’C’+A’BC f (A,B,C) = Σm(0,3,4,5) 1 1 0 0 1 0 0 1 00 0 1 AB C 01 11 10 Exercício:Verificar algebricamente cada saída dos mapas de 3 variáveis
f = A’+B’
Método do Mapa de Karnaugh – Mapa K (cont.)
f (A,B,C) = Σm(0,3,5,6) f = (A⊕B ⊕C)’ e, portanto, se f(A,B,C) = ΠM(0,3,5,6) f = (A⊕B ⊕C) 1 0 0 1 1 0 0 1 00 0 1 AB C 01 11 10 0 1 1 0 0 1 1 0 00 0 1 AB C 01 11 10 Mapa de três variáveisOBS: Aparentemente não há simplificação. Usaremos o
Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de quatro variáveis
m10 m14 m6 m2 m9 m13 m5 m1 m11 m8 m15 m12 m7 m3 m4 m0 00 AB CD 01 11 10 1010 1110 0110 0010 1011 1111 0111 0011 1001 1000 1101 1100 0101 0001 0100 0000 00 AB CD 01 11 10 = 00 01 11 10 00 01 11 10
• Agrupamento de 2 células eliminação de 1 variável • Agrupamento de 4 células eliminação de 2 variável • Agrupamento de 8 células eliminação de 3 variável • Agrupamento de 16 células f = 1
Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de quatro variáveis
1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = A’BD’+B’C’D f = B’D+BD’ Exemplos de agrupamentos 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = B’D’ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = D
Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de quatro variáveis1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = A’BD’+B’C’D f = B’D+BD’ Exemplos de agrupamentos 1 1 00 AB CD 01 11 10 00 01 11 f = B’D’ 1 1 1 1 1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 f = D
Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de quatro variáveis1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = A’BD’+B’C’D f = B’D+BD’ Exemplos de agrupamentos 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = B’D’ 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = D
Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de quatro variáveis
1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = A’BD’+B’C’D f = B’D+BD’ Exemplos de agrupamentos 1 1 00 AB CD 01 11 10 00 01 11 f = B’D’ 1 1 1 1 1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 f = D
Método do Mapa de Karnaugh – Mapa K (cont.)
Mapa de quatro variáveis
f = A’B’C’D + A’B’CD’ + A’B’CD + A’BC’D + A’BCD + AB’C’D’ + AB’C’D + AB’CD + ABC’D’ + ABC’D + ABCD
1 1 1 1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = A’B’C+AC’+D
Método do Mapa de Karnaugh – Mapa K (cont.)
f (A,B,C) = Σm(0,3,6,7,10,11,12,13,14,15) 1 1 1 1 1 1 1 1 1 1 00 AB CD 01 11 10 00 01 11 10 f = A’B’C’D’+AB+BC+AC+CDMapa de quatro variáveis
Obs: quando não é especificado o nível lógico da saída, por conveniência,
é possível assumir tal condição (condição irrelevante) como nível 1 de forma a produzir um circuito mais simples.
Método do Mapa de Karnaugh – Mapa K (cont.)
Método do Mapa de Karnaugh – Mapa K (cont.)
Projeto do circuito lógico usando o mapa K
Exemplo: Projete o circuito lógico que controla a porta de um elevador,
instalado em um prédio de três andares. O circuito tem 4 entradas: M = 1 movimento e M = 0 parado;
F1, F2 e F3 = 1 quando o elevador estiver posicionado no andar; S = 1 para a porta abrir.
Circuitos Exclusive-OR e Exclusive-NOR
• Dois circuitos utilizados constantemente em circuitos digitais
Exclusive-OR (OU-Exclusivo)
- Produz saídas em nível alto sempre que as entradas estão em níveis diferentes.
x = A’B + AB’
Obs:
1- Uma porta XOR
Circuitos Exclusive-OR e Exclusive-NOR (cont.)
Exclusive-NOR (NOU-Exclusivo)
- Produz saídas em nível alto sempre que as entradas estão com níveis iguais (complemento do XOR).
Obs:
1- Uma porta XNOR
Circuitos Exclusive-OR e Exclusive-NOR (cont.)
Circuitos Exclusive-OR e Exclusive-NOR (cont.)
Exemplo: Determine a forma de onda de saída.
Observações:
1- x = A quando B = 0 (t0 a t1 e t2 a t3); 2- x = A’ quando B = 1 (t1 a t2);
Circuitos Exclusive-OR e Exclusive-NOR (cont.)
Exemplo: Projete um circuito lógico que apresente saída em nível alto
sempre que dois números binários de 2 bits forem iguais.
1 11 11 0 10 11 0 01 11 0 00 11 0 11 10 1 10 10 0 01 10 0 00 10 0 11 01 0 10 01 1 01 01 0 00 01 0 11 00 0 10 00 0 01 00 1 00 00 Z y1y0 x1x0
Z = x’1x’0y’1y’0 + x’1x0y’1y0 + x1x’0y1y’0 + x1x0y1y0
Z = (x’1y’1 + x1y1) . (x’0y’0 + x0y0)
Aplicando os teoremas da álgebra booleana: