Mudanças entre as edições de "Laboratório - Implementação de um MUX4:1 em protoboard"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
(Criou página com ';Objetivos: * Projetar um circuito digital que realize a conversão de uma entrada BCD para um saída de um mostrador de 7 segmentos. * Descrever através de uma '''tabela ve...')
 
Linha 16: Linha 16:
 
:* 1 chave DIP Switch SPST x 4
 
:* 1 chave DIP Switch SPST x 4
 
:* 1 Fonte de alimentação (Power Supply), e ajuste a tensão em 5V, e limite a corrente da fonte em 200 mA
 
:* 1 Fonte de alimentação (Power Supply), e ajuste a tensão em 5V, e limite a corrente da fonte em 200 mA
:* 2 Circuitos integrados 74HC21 (2 portas AND de 4 entradas)
+
:* 2 Circuitos integrados [https://www.ti.com/lit/ds/symlink/sn74als21a.pdf 74HC21] (2 portas AND de 4 entradas)
:* 1 Circuito integrado 74HC04 (6 inversores)
+
:* 1 Circuito integrado [https://www.ti.com/lit/ds/symlink/sn54als04b.pdf 74HC04] (6 inversores)
:* 1 Circuito integrado 74HC32 (4 portas OR de 2 entradas)
+
:* 1 Circuito integrado [https://www.ti.com/lit/ds/symlink/sn74ls32.pdf 74HC32] (4 portas OR de 2 entradas)
 +
*Consulte os datasheets nos links acima para verificar a pinagem de cada CI, e anote os pinos  que serão utilizados das portas
 
*Realize a montagem do mux conforme o diagrama esquemático.
 
*Realize a montagem do mux conforme o diagrama esquemático.
 
+
:* Inicie conectando os TERRA (GROUND) com fios PRETOS e as ALIMENTAÇÕES (POWER) com fios VERMELHOS
 +
:* Conecte as entradas usando fios AZUIS
 +
:* Faça a interconexão dos CIs usando fios AMARELOS
 +
:* Conecte as saídas usando fios VERDE
  
 
==Passo 2 - Obtenção do circuito em VHDL==
 
==Passo 2 - Obtenção do circuito em VHDL==

Edição das 11h59min de 27 de outubro de 2023

Objetivos
  • Projetar um circuito digital que realize a conversão de uma entrada BCD para um saída de um mostrador de 7 segmentos.
  • Descrever através de uma tabela verdade o funcionamento de um circuito.
  • Usar a técnica do mapa de Karnaugh para minimizar a função lógica de cada saída.
  • Fazer a descrição do hardware (em VHDL) do circuito obtido.
  • Utilizar um kit FPGA para implementar o circuito.
  • Verificar se o circuito funciona
  • Redigir um relatório completo sobre a atividade realizada
Procedimento de laboratório

Passo 1 - Organização

  • Abra o software TinkerCAD
  • Separe os seguintes componentes:
  • 1 protoboard (Breadboard)
  • 4 resistores de 1 kΩ
  • 1 chave DIP Switch SPST x 4
  • 1 Fonte de alimentação (Power Supply), e ajuste a tensão em 5V, e limite a corrente da fonte em 200 mA
  • 2 Circuitos integrados 74HC21 (2 portas AND de 4 entradas)
  • 1 Circuito integrado 74HC04 (6 inversores)
  • 1 Circuito integrado 74HC32 (4 portas OR de 2 entradas)
  • Consulte os datasheets nos links acima para verificar a pinagem de cada CI, e anote os pinos que serão utilizados das portas
  • Realize a montagem do mux conforme o diagrama esquemático.
  • Inicie conectando os TERRA (GROUND) com fios PRETOS e as ALIMENTAÇÕES (POWER) com fios VERMELHOS
  • Conecte as entradas usando fios AZUIS
  • Faça a interconexão dos CIs usando fios AMARELOS
  • Conecte as saídas usando fios VERDE

Passo 2 - Obtenção do circuito em VHDL

  • Uma vez obtidas as expressões lógicas de cada saída, escreva o código VHDL que implemente essas funções, utilizando apenas portas (and, or e not)
-- File: bcd2ssd.vhd
-- Autor: Marcos Moecke
-- Data:  19 out. 2023

-- declaração da entidade.  descrição dos nomes do circuito, entradas e saidas
entity bcd2ssd is
  port (
    bcd_A, bcd_B, bcd_C, bcd_D  : in bit;   -- bits da entrada BCD
    led_A, led_B, led_C, led_D  : out bit;   -- bits da entrada BCD
    ssd_a, ssd_b, ssd_c, ssd_d, ssd_e, ssd_f, ssd_g  : out bit);   -- bits da saida SSD para o mostrador
end entity;
-- descrição do circuito a ser implementado no FPGA
architecture ifsc_v1 of bcd2ssd is

begin
  -- Conectar as entradas aos leds
  led_a <= bcd_A;
  led_b <= 

  -- Descrever as funcoes logicas minimizadas de cada saida SSD
  -- a =  A'B'C'D + B C'D' (função obtida para o display de anodo comum)
  ssd_a <= ((not bcd_A) and (not bcd_B) and (not bcd_C)  and bcd_D) or (bcd_B and (not bcd_C) and (not bcd_D));

  -- b =  B C'D + B C D' (função obtida para o display de anodo comum)
  ssd_b <=

end architecture;
  • Fazer a análise e síntese desse circuito. Corrija eventuais erros.
  • Se desejar realize a simulação com o Modelsim, variando as entradas de 0 a 15. (opcional)
  • Verifique se os valores das saídas estão corretos para 0 até 9.
  • Anote os valores das saídas para as entradas entre 10 e 15. Como os valores não foram predeterminados (foi usado o don't care), o mostrador pode acender de forma aleatória.

Passo 3 - Gravação do circuito no kit FPGA

porta da ENTITY nome do pino no FPGA número do pino no FPGA
bcd_A SW[3]
bcd_B SW[2]
bcd_C SW[1] PIN_AC28
bcd_D SW[0] PIN_AB28
led_A LEDR[3]
led_B LEDR[2]
led_C LEDR[1] PIN_F19
led_D LEDR[0] PIN_G19
ssd_a HEX0[0] PIN_G18
ssd_b HEX0[1] PIN_F22
ssd_c HEX0[2]
ssd_d HEX0[3]
ssd_e HEX0[4]
ssd_f HEX0[5]
ssd_g HEX0[6]

Passo 4 - Testes

  • Para verificar se o circuito funciona, realie seguintes testes, acionando as chaves e observando o resultado nos LEDs e no mostrador:
  • Selecione nas chaves SW3, SW2, SW1, SW0, seguidamento os valores binários correspondentes aos valores de 0 a 15
  • Verifique se o leds LEDR3, LEDR2, LEDR1, LEDR0 acendem conforme os números.
  • Verifique também se o mostrador mostra corretamente os valores de 0 a 9.
  • Anote quais leds acendem para os valores 10 a 15.

Passo 5 - Documentação

  • Ao longo do procedimento anote os valores e procedimentos realizados para incluí-los no relatório.
Relatório Técnico
  • Documentar o experimento em um relatório técnico que contenha no mínimo:
  • Identificação (título, disciplina, data, autores);
  • Introdução;
  • Descrição do procedimento realizado;
  • Resultados obtidos (com imagens dos itens importantes) e análise dos resultados;
  • Conclusão.
  • Apêndice (se desejar pode ser disponibilizados vídeos dos testes do circuito)
  • O relatório deve também responder as questões levantadas e mostrar que os objetivos apresentados na introdução foram atendidos.

Dicas

  • Para acessar o Quartus na nuvem, use o ssh (no IFSC) ou X2GO (de casa).
  • Para copiar arquivos da nuvem para a maquina local use o sftp.