UNIVERSIDADE FEDERAL DO ABC
ELETRÔNICA DIGITAL
RELATÓRIO 2: MAPA DE KARNAUGH E CIRCUITOS ARITMÉTICOS
Professor: Rodrigo Reina Muñoz
Keith Richards Rocha Santos 11172513 Gabriel Ferreira Prodi 21017414 Guilherme Tomazini 11063615
Santo André 2017
1. Introdução Ao se implementar fisicamente um projeto lógico, é importante conhecer o modelo ótimo do circuito, para reduzir os custos e aumentar a confiabilidade, já que consiste de um menor número de componentes/entradas. Portanto, a combinação do Mapa de Karnaugh e álgebra booleana se torna útil para este fim. Também é interessante conhecer a resposta do circuito para diferentes combinações de entrada, que é possível através de ferramentas de simulação, como o Quartus e o Multisim, que serão utilizados no presente trabalho.
2. Objetivos Temos como finalidade neste experimento a verificação da eficácia do uso do mapa de Karnaugh, a implementação de circuitos ótimos e de circuitos com portas lógicas XOR, tais como um somador/subtrator e um circuito de tranca eletrônica.
3. Materiais utilizados Para a implementação dos circuitos físicos em laboratório, utilizamos: Descrição:
Quantidade
Multímetro Portátil com adaptador jacaré em ambas as pontas de prova
1
Fonte de tensão
1
Matriz de contatos (protoboard)
1
Fios para utilização com o protoboard
1
Par de cabos banana/banana
1
LED (vermelho)
4
Resistor 470 ohms
4
CI 74LS00
1
CI 74LS02
1
CI 74LS04
1
CI 74LS08
1
CI 74LS32
1
CI 74LS86
1
CI 74283
1
Tabela 1: Materiais utilizados no laboratório. Para realizar as simulações utilizamos os softwares Quartus e Multisim.
4. Desenvolvimento 4.1 Construção do Mapa de Karnaugh a partir da Tabela-Verdade A partir da tabela Verdade (Tabela 2), aplicamos as técnicas para simplificação da equação booleana das saídas.
A
B
C
D
Y1
Y2
Y3
0
0
0
0
1
0
1
0
0
0
1
1
0
0
0
0
1
0
1
1
0
0
0
1
1
1
1
1
0
1
0
0
0
0
0
0
1
0
1
0
0
1
0
1
1
0
1
1
1
0
1
1
1
0
0
0
1
0
0
0
0
1
0
1
0
0
1
0
0
1
1
0
1
0
1
0
1
1
0
1
1
1
1
0
1
1
0
0
0
1
1
1
1
0
1
0
0
0
1
1
1
0
0
1
0
1
1
1
1
0
0
1
Tabela 2: Tabela Verdade com entradas e saídas de um circuito combinatório. A seguir serão mostrados os mapas de Karnaugh (mapas K) das saídas Y1, Y2 e Y3, assim como as expressões booleanas que as descrevem e a conversão das expressões
nas respectivas tabelas verdade, utilizando o Multisim, para obter os resultados da Tabela
2.
Figura 1: Mapa de Karnaugh da saída Y 1 Y1 = A’B’ + A’CD’ + B’C
Figura 2: Tabela-Verdade de Y1 a partir do Mapa de Karnaugh (Figura 1)
Figura 3: Mapa de Karnaugh de Y 2
Y2 = B’CD + A’B’C + BCD’ + AC’D’ Y2 = C(B’D+BD’) + A’B’C + AC’D’ Y2 = C(B⊕D) + A’B’C + AC’D’
Figura 4: Tabela-Verdade de Y2 a partir do Mapa de Karnaugh (Figura 3)
Figura 5: Mapa de Karnaugh de Y 3 Y3 = A’B’C’D’ + A’B’CD + A’BC’D + A’BCD’ + ABC’D’ + ABCD + AB’C’D + AB’CD’ Y3 = A’B(C’D+CD’) + AB(C’D’+CD) + AB’(C’D + CD’) + A’B’(C’D’+CD) Y3 = (C’D+CD’)(A’B+AB’) + (C’D’+CD)(AB+A’B’) Y3 = (C⊕D)(A⊕B) + (C⊕D)’(A⊕B)’
Figura 6: Tabela-Verdade de Y3 a partir do Mapa de Karnaugh (Figura 5) As expressões lógicas obtidas pelo mapa de Karnaugh geram as saídas da Tabela 1. Assim, observamos que para a saída Y 1 o mapa K implementa um circuito digital ótimo. Porém, para a saída Y2 , mesmo sendo capaz de simplificar bastante a equação booleana, o mapa K ainda produz uma equação que pode ser simplificada por álgebra booleana; e no caso da saída Y 3 o mapa K não é capaz de simplificar a equação, sendo necessário o uso de álgebra booleana para implementar um circuito ótimo. Estas simplificações por álgebra são necessárias pelo fato de que o mapa K não prevê funções lógicas do tipo XOR e XNOR. Os respectivos circuitos ótimos estão exemplificados a seguir. Portanto, verificamos que o procedimento mapa de Karnaugh não substitui completamente o uso da álgebra booleana na implementação de um circuito ótimo, mas que as duas técnicas podem ser empregadas conjuntamente para tornar mais fácil e rápida a simplificação da expressão.
A seguir serão implementados os circuitos ótimos das equações encontradas anteriormente no Quartus junto com as simulações:
Figura 7: Circuito ótimo para Y1
Figura 8: Resposta de Y1
Figura 9: Circuito ótimo para Y2
Figura 10: Resposta de Y2
Figura 11: Circuito ótimo para Y3
Figura 12: Resposta de Y3 Com o Quartus, pode-se observar a resposta do circuito para cada combinação de entrada, e os resultados conferem com Tabela 2.
4.2 Simulação de um circuito somador/subtrator no Quartus
Figura 13: Implementação do CI 74283
Entradas
Saídas
M
A
B
S
Co3
0
2
2
4
0
0
2
3
5
0
0
4
5
9
0
1
6
1
5
0
1
2
4
2
1
Tabela 3: Valores de entradas e saídas para o circuito da figura . 4.3 Simulação de um cadeado eletrônico no Multisim 4.3.1 Configuração As chaves S1, S2, S3 e S4 determinam a “senha” do cadeado e são configuradas (chave aberta corresponde a nível lógico baixo e chave fechada corresponde a nível lógico alto) com qualquer uma das 16 configurações possíveis. As chaves S5, S6, S7 e S8 devem estar na mesma configuração, na respectiva ordem, das anteriores para que o cadeado “abra”.
4.3.2 Circuito de Comparação A comparação entre as configurações dos dois grupos de chaves é feita pelas portas U3A, U3B, U3C e U3D, todas portas XOR. Cada uma das portas compara uma chave da senha com a respectiva chave mudada pelo usuário e, como a porta XOR resulta em nível baixo na saída quando o nível das entradas coincidirem, sempre que as duas chaves de mesma posição estiverem na mesma configuração, a respectiva porta XOR tem a saída levada para nível lógico baixo. Os diodos D1, D2, D3 e D4 juntamente ao resistor R1 ligado ao GND realizam a função OR. Assim, sempre que ao menos uma das portas XOR tiverem nível lógico alto na saída, ou seja, sempre que um par de chaves estiverem em configurações diferentes, o diodo respectivo será diretamente polarizado e conduzirá, levando as entradas conectadas do circuito de validação para nível lógico alto. Se ocorrer o inverso, isto é, se todas as portas XOR tiverem nível baixo em suas saídas, nenhum diodo é polarizado diretamente e as entradas conectadas do circuito de validação ficam em nível lógico baixo.
4.3.3 Circuito de Validação A chave “enter”, quando aberta, mantém nível lógico alto em uma das entradas de cada uma das portas NOR (U2B e U2C), fazendo com que as saídas fiquem sempre em
nível baixo. Quando fechada, envia nível lógico baixo para uma das entradas de cada uma das portas NOR (U2B e U2C), fazendo com que as saídas dependam apenas das entradas provenientes do circuito de comparação. Quando a saída do circuito de comparação está em nível baixo, indicando que todas as chaves coincidem, e a chave “enter” está fechada, a saída da porta NOR U2C vai para nível alto e acende o LED2 (verde) indicando que o cadeado foi aberto. Quando a saída do circuito de comparação está em nível lógico alto, ao passar pela porta NOR U2A com as entradas curto-circuitadas, o nível lógico é invertido e vai para nível baixo, dessa forma, com “enter” em nível baixo, a saída da porta NOR U2B vai para nível alto e acende o LED1 (vermelho), indicando que a senha informada pelo usuário não coincide com a senha configurada. Podemos ver que que as portas NOR U2A e U2B operam de modo mutuamente exclusivo, já que, como uma entrada é comum a ambas (“enter”) e as demais são complementares, uma só ativa a saída quando a outra está desativada. Observamos também que a chave “enter” atua como um “Enable” para o circuito de validação.
Figura 14: Cadeado eletrônico com senha incorreta
Figura 15: Cadeado eletrônico com senha correta
5. Conclusão Podemos
afirmar
que
o procedimento mapa de Karnaugh não substitui
completamente o uso da álgebra booleana, mas em grande parte dos casos é uma saída muito mais rápida para chegar a uma expressão bem simplificada que necessita pouca manipulação algébrica para implementar um circuito ótimo. Além disso, o mapa de Karnaugh é uma maneira mais prática e visual para simplificar equações booleanas do que utilizar simplesmente a álgebra. O uso das duas técnicas combinadas levam a uma resolução ótima de rápida obtenção. Também podemos observar que a lógica XOR pode ser empregada para resolver muitas situações, simplificando equações booleanas, permitindo implementar um circuito com menor número de CI’s, menor número de portas lógicas e menor número de entradas. Sendo assim, sua empregabilidade é extensa em circuitos ótimos.