Código do Laboratório: AP08 Data: 30/04/2009 Nomes: Bruno Jurkovski Cartão número 172865 Marcos Vinicius Cavinato Cartão número 171774 Turma D Introdução A aula prática de 30/04/2009 consiste das seguintes atividades: projeto de um conversor hexadecimal para um display de 7 segmentos, como mostrado na figura abaixo: Display de sete segmentos É de fundamental importância saber que todos os segmentos e o ponto são ATIVADOS EM 0. O conversor foi projetado, implementado e simulado no software MaxPlusII. As tabelas verdade, mapas de Karnaugh e equações lógicas foram implementadas com a ajuda do software Karma. Inicialmente, o projeto foi simulado com SDP (soma-de-produtos) e, após, refeito em VHDL, apenas com NANDs. As simulações foram feitas para o conjunto de segmentos (e não para cada segmento em separado). Tabelas Verdades Utilizando o software Karma, foram geradas as tabelas verdade para cada segmento do circuito.
Tabela verdade do segmento A Tabela verdade do segmento B
Tabela verdade do segmento C Tabela verdade do segmento D
Tabela verdade do segmento E Tabela verdade do segmento F
Tabela verdade do segmento G Mapas de Karnaugh Mapa de Karnaugh do segmento A
Mapa de Karnaugh do segmento B Mapa de Karnaugh do segmento C Mapa de Karnaugh do segmento D
Mapa de Karnaugh do segmento E Mapa de Karnaugh do segmento F Mapa de Karnaugh do segmento G
Equações Lógicas Segmento A B C D E F G Equação Lógica!AB!C!D +!A!B!CD + AB!CD + A!BCD!AB!CD + AB!CD + A!BCD +!ABC!D AB!C!D + ABCD +!A!BC!D + ABC!D!AB!C!D +!A!B!CD +!ABCS + ABCD + A!BC!D!AB!C!D +!A!B!CD +!AB!CD + A!B!CD +!A!BCD +!ABCD!A!B!CD + AB!CD +!A!BCD +!ABCD +!A!BC!D!A!B!C!D + AB!C!D +!A!B!CD +!ABCD Equações Lógicas Simplificadas Segmento A B C D E F G Equação Lógica!A!B!CD +!AB!C!D + A!BCD + AB!CD!AB!CD + BC!D + ACD + AB!D!A!BC!D + AB!D + ABC!A!B!CD +!AB!C!D + BCD + A!BC!D!AD +!AB!C +!B!CD!A!BD +!A!BC +!ACD + AB!CD!A!B!C+!ABCD+AB!C!D Circuitos Lógicos Circuito lógico do segmento A
Circuito lógico do segmento B Circuito lógico do segmento C Circuito lógico do segmento D
Circuito lógico do segmento E Circuito lógico do segmento F Circuito lógico do segmento G
Circuito lógico do conversor Simulação Resultado da simulação para todas as entradas possíveis
Tabela do conversor em decimal Segmento Saída Decimal 0 64 1 121 2 36 3 48 4 25 5 18 6 2 7 120 8 0 9 16 A 8 B 3 C 70 D 33 E 6 F 14 Saída em Decimal Código do Conversor em VHDL ENTITY CONVERSOR_NAND IS PORT ( SIGNAL x1, x2, x3, x4, controle : IN BIT ; A, B, C, D, E, F,G, dp : OUT BIT ) ; END CONVERSOR_NAND; ARCHITECTURE LogicFunc OF CONVERSOR_NAND IS BEGIN A <= (((((((NOT x1 NAND NOT x2) NAND NOT x3) NAND x4)) NAND ((((NOT x1 NAND x2) NAND NOT x3) NAND NOT x4))) NAND ((((x1 NAND NOT x2) NAND x3) NAND x4))) NAND ((((x1 NAND x2) NAND NOT x3) NAND x4)));
B <= (((((((NOT x1 NAND x2) NAND NOT x3) NAND x4)) NAND (((x2 NAND x3) NAND NOT x4))) NAND (((x1 NAND x3) NAND x4))) NAND (((x1 NAND x2) NAND NOT x4))); C <= ((((((NOT x1 NAND NOT x2) NAND x3) NAND NOT x4)) NAND (((x1 NAND x2) NAND NOT x4))) NAND (((x1 NAND x2) NAND x3))) ; D <= (((((((NOT x1 NAND NOT x2) NAND NOT x3) NAND x4)) NAND ((((NOT x1 NAND x2) NAND NOT x3) NAND NOT x4))) NAND (((x2 NAND x3) NAND x4))) NAND ((((x1 NAND NOT x2) NAND x3) NAND NOT x4))) ; x4))); E <= (((NOT x1 NAND x4) NAND (((x1 NAND x2) NAND x3))) NAND (((NOT x2 NAND NOT x3) NAND F <= ((((((NOT x1 NAND NOT x2) NAND NOT x4)) NAND (((NOT x1 NAND NOT x2) NAND NOT x4))) NAND (((NOT x1 NAND x3) NAND x4))) NAND ((((x1 NAND x2) NAND NOT x3) NAND x4))) ; G <= (((((NOT x1 NAND NOT x2) NAND NOT x3)) NAND ((((NOT x1 NAND x2) NAND x3) NAND x4))) NAND ((((x1 NAND x2) NAND NOT x3) NAND NOT x4))); dp <= (NOT controle); END LogicFunc; Comparação As duas técnicas aplicadas nos circuitos apresentados no relatório apresentam praticamente o mesmo desempenho, pois possuem a mesma profundidade. O que muda é a diferença entre os tempos de atraso entre as portas lógicas (AND, OR e NAND) que é insignificante para este circuito. É válido ressaltar também a facilidade proporcionada pelo VHDL, que quando o aluno possui o conhecimento necessário, torna a implementação muito mais fácil. Conclusão, interesses, dificuldades e sugestões A aula prática tornou-se interessante pela aplicação da teoria na prática, algo que sempre contribui para o aprendizado dos alunos. Não tivemos problemas na montagem dos circuitos e tivemos alguma dificuldade no manuseio do programa na conversão do VHDL (que não tivemos dificuldade para implementar) para o projeto gráfico, já que acreditamos não ter sido devidamente explicado. Outro ponto a destacar é a redundância da confecção do relatório, que pede várias atividades semelhantes, mesmo que apenas uma delas já mostre que os alunos, de fato, entenderam o conteúdo.