Hardware Description Language
Aula 4 – AHDL (conclusão)
VHDL (introdução)
Prof. Afonso Ferreira Miguel, MSc
AHDL
• Registradores
AHDL
• Registradores Bidirecionais
TRI_STATE_NODE
AHDL
• Máquinas de estado de MOORE
1
e1/1
e0/0
0
0
1
1
0
0
e2/2
e3/3
1
Clique aqui para pegar o código fonte
AHDL
•
Exercício 10
–
Implementar uma máquina de estado de MOORE com
4 bits de entrada (+ o clock) e 1 bit de saída. O bit de
saída inicialmente deve apresentar o valor ZERO, e
deve ir para UM quando receber na entrada o valor 15.
Caso ele receba a seqüência 7, 4, 3 a máquina deve
voltar ao seu estado inicial ZERO.
AHDL
• Máquinas de estado de MEALY
Oops!
0/0
1/0
e1
e0
0/0
1/0
1/1
0/0
e2
AHDL
• MOORE x MEALY
AHDL
•
Exercício 11
–
Modificar o exercício 10 para convertê-lo em
uma máquina de MEALY. Avaliar o
comportamento assíncrono da entrada e saída.
8051 OpenCore processador
AHDL
• 8051 - OpenCore
VHDL
Prof. Afonso Ferreira Miguel, MSc
VHDL - Introdução
• USA DoD  VHSIC Program
– VHSIC = Very Hight Speed Integrated Circuit
• VHDL = VHSIC Hardware Description Language
– 1ª Versão  1985;
– Padronizado pelo IEEE
– ASICS
VHDL – Design Tools
• Algumas ferramentas para HDL (síntese e simulação)
–
–
–
–
–
–
–
–
–
MAXPLUS II
QUARTUS
Verilog Mode
Cypress Warp
Silos Verilog HDL
Active-HDL
Model-Sim
Synopsys
Fusion/ViewSim
Entity x Architecture
Descreve os pinos
de entrada e saída
Descreve o
comportamento do
circuito
Tipos básicos
bit
‘0’ ou ‘1’
std_logic
‘0’, ‘1’, ‘U’, ‘X’, ‘Z’, ‘-’
bit_vector
“00..00”, “00..01”,
“00..10”, ...
std_logic_vector
“00..00”, “00..01”,
“00..10”, ...
Entity - Exemplos
Entity - Exemplos
Bibliotecas padrões
Architecture
Atribuição CSA
Concurrent Signal Assign
Opcional em algumas
ferramentas
Exemplo de código VHDL
Biblioteca
Entity
Architecture
• Exercício 1
Implementar e simular um Semi-Somador e um SomadorCompleto em VHDL.
– Criar o símbolo deste módulo;
– Criar um Block Diagram (chamado de SOMA) e incluir
um Semi-Somador e dois Somadores-Completos para
implementar a função de soma de 3 bits:
– entradas: A2,A1,A0Lembrando...
e B2,B1,B0;
– saídas: Cout, S2,S1,S0. •Semi somador:
= A XOR B
– Compilar e simular o circuitoSCfinal
= A AND B
•Somador Completo
S = (A XOR B) XOR Cin
Cout = ((A XOR B) AND Cin) OR (A AND B)
Eventos
Eventos
Nós
Nós
• Exercício 2
Modificar o exercício 1 para utilizar signal no
somador completo.
Atribuição Condicional
Atribuição por seleção
• Exercício 3
Implementar em VHDL um multiplexador de 4
canais por 4 bits com controle de habilitação.
Se não estiver habilitado, a saída deve ficar
com o valor “F”.
Concatenando
Concatenando
Resolução
Não funciona no Quartus!
Download

Aula 4: AHDL+VHDL - Afonso Ferreira Miguel, MSc