Introdução à Organização de
Computadores
Aula 6
Síntese de circuitos digitais
Prof. Dr. Luciano José Senger
Síntese de circuitos digitais
• Simplificação de circuitos
• Simplificação permite que se reduzam os custos do circuito,
que podem ser expressos, por exemplo, pelo número de
literais (variáveis), número de portas, tamanho do circuito
• A simplificação deve ser orientada a tecnologia de
construção final do circuito, aceitando com entrada o projeto
lógico do circuito, especificação em linguagem de descrição
de hardware ou projeto eletrônico
• Ferramentas comuns:
• Método algébrico
• Mapas de Karnaugh
• Software de síntese
Mapas de Karnaugh
• Diagramas de Karnaugh• Permitem a simplificação de expressões lógicas
através de uma abordagem visual• a técnica de mapeamento visual auxilia no
reconhecimento de simplificações booleanas pela localização de posições no mapa
• A técnica é baseada nas duas identidades:• A + A’ = 1
• 1.X = X
• Exemplo:• G(a,b,c) = a.b.c + a.b.c’ + a.b’.c
• G(a,b,c) = a.b(c + c’) + a.b’.c
• G(a,b,c) = a.b + a.b’.c
Mapas de Karnaugh
• Descrição da técnica
• Começando com a tabela verdade, são mapeadas as
combinações de entradas e saída em uma tabela retangular.
• A estrutura da tabela e as regras associadas nos permitem facilmente localizar termos na qual a identidade (X+ X’)=1
pode ser utilizada para simplificar a função
• A técnica pode ser utilizada em funções com qualquer
número de variáveis; apesar disso, a sua utilização torna-se mais complicada à medida que o número de variáveis
aumenta
• A seguir, tem-se a discussão de mapas de karnaugh para duas, três e quatro variáveis
Mapas de Karnaugh
• Duas variáveis
• Mapas de Karnaugh utilizam a propriedade de que funções
podem ser expressas em uma tabela verdade quadricular.
• Para criá-la, deve-se começar com uma lista de todos os
possíveis mintermos de entrada e os resultados da saída da função para cada mintermo.
• Para o caso de duas variáveis, existem quatro mintermos: a’.b’ + a’.b + a.b’ + a.b
Mapas de Karnaugh
• Duas variáveis
• Função AND
• Função NAND
Não admite
simplificação
Mapas de Karnaugh
• Duas variáveis• Funções OR e NOR
• Resumo da técnica• Preencher o mapa de Karnaugh com 0s e 1s, como definido pela
tabela verdade da função
• Agrupe quadros adjacentes com 1s em pares.
• Aplique a regra (a+a’)=1 para eliminar variáveis
Mapas de Karnaugh
• Três variáveis• A utilidade do mapa de Karnaugh torna-se mais evidente quando
aplicamos técnica para funções de três variáveis
• Como em uma função na forma f=(x,y,z) tem-se um mapa tridimensional, agrupa-se as variáveis na forma x com y.z
• as outras formas de agrupamento são também válidas e produzem o mesmo resultado
• Importante: quadros adjacentes devem diferir em apenas 1 bit
Mapa de Karnaugh
• Três variáveis
• Exemplo 1:
• Três variáveis• Exemplo 2
Mapas de Karnaugh
• Três variáveis• Condições de “don’t care”: saídas na tabela verdade, marcadas com “x”,
que não tem relevância para o projeto do circuito, i.e., saídas não utilizadas pelo circuito
• Essas saídas podem são interpretadas como 1, para possibilitar uma minimização maior na expressão lógica.
• As condições “don’t care” são tratatas como 1 apenas para efeito de minimização – essas condições não geram termos na equação simplificada.
Mapas de Karnaugh Mapas de Karnaugh
• Exercício
• Implemente um circuito combinacional de 3 entradas para a
função maioria: essa função retorna 1 quando a maioria das
entradas tem valor igual a 1
• O projeto do circuito deverá conter:
• Tabela verdade da função
• Descrição da expressão lógica na forma de soma de produtos (SDP)
• Simplificação através do mapa de Karnaugh
• Idem, para a função minoria
• Quatro variáveis
Mapas de Karnaugh
• Considerações finais• Minimização é uma etapa importante no projeto de circuitos
digitais
• Diagrama de Karnaugh é utilizado para simplificação de expressões simples, de 2 a 4 variáveis
• Na criação do mapa de Karnaugh, lembrar que regiões adjacentes devem ter apenas um 1 bit de diferença
• O mapa pode ser montado utilizando combinações diferentes para as variáveis de entrada, desde que seja respeitada a condição de 1 bit de diferença
• A simplificação deve ser feita em pares, quádruplas, sextuplas, etc., sempre em grupos pares, nunca grupos ímpares (como um terno)
• Problemas maiores utilizam o método tabular, que permite uma implementação em software (p.e. switchMin)
Mapas de Karnaugh
Mapas de Karnaugh
• Leituras recomendadas
• Uyemura
• Idoeta e Capuano
• Murdocca