Mudanças entre as edições de "Códigos VHDL para uso nas Aulas"
Linha 140: | Linha 140: | ||
: Para as entradas utilize um vetor "e" do tipo std logic com 4 bits. | : Para as entradas utilize um vetor "e" do tipo std logic com 4 bits. | ||
: Para as saídas utilize um vetor "s" do tipo std logic com 7 bits, onde o segmento a -> e(0) e g -> e(6). | : Para as saídas utilize um vetor "s" do tipo std logic com 7 bits, onde o segmento a -> e(0) e g -> e(6). | ||
− | *Prazo de entrega: 2abr enviar email para moecke@ifsc.edu.br com Assunto: Prj1-SST-2012-1-NOME DO ALUNO com o arquivo em anexo Prj1-SST-2012-1-NOME_DO_ALUNO.qar. | + | *Prazo de entrega: 2abr até as 23h59 enviar email para moecke@ifsc.edu.br com Assunto: Prj1-SST-2012-1-NOME DO ALUNO com o arquivo em anexo Prj1-SST-2012-1-NOME_DO_ALUNO.qar. |
=Multiplexador 2 entradas e 1 saída= | =Multiplexador 2 entradas e 1 saída= |
Edição das 13h40min de 2 de abril de 2012
Decodificador de BCD para 7 segmentos
Descrever usando lógica discreta um decodificador de BCD para 7 segmentos. A interface externa do decodificador deve ter as entradas eA, eB, eC e eD, e as saídas os sete segmentos a, b, c, d, e, f, g. Neste exemplo esta sendo considerada a logica negativa onde o segmento acesso corresponde a 0 e apagado -> 1. Entradas só são consideradas válidas de 0 (0000) até 9 (1001), ou seja o circuito não precisa tratar as entradas entre A (1010) e F(1111).
Código VHDL (lógica discreta) |
---|
entity Dec_7seg is
port
(
eA,eB,eC,eD : in bit;
a,b,c,d,e,f,g : out bit
);
end Dec_7seg;
architecture discret_logic of Dec_7seg is
begin
--lógica que implementa o segmento a de um display (0,1,2,3,4,5,6,7,8,9), sem minimização.
-- 0 -> aceso (ON), 1 -> apagado (OFF)
a <= (NOT eD AND NOT eC AND NOT eB AND eA) OR
(NOT eD AND eC AND NOT eB AND NOT eA);
--implemente a lógica dos demais segmentos do display (0,1,2,3,4,5,6,7,8,9), sem minimização.
b <= (NOT eD AND eC AND NOT eB AND eA) OR
(NOT eD AND eC AND eB AND NOT eA);
c <= (NOT eD AND NOT eC AND eB AND eA);
d <= (NOT eD AND NOT eC AND NOT eB AND eA) OR
(NOT eD AND eC AND NOT eB AND NOT eA) OR
(NOT eD AND eC AND eB AND eA);
e <= (NOT eD AND NOT eC AND NOT eB AND eA) OR
(NOT eD AND NOT eC AND eB AND eA) OR
(NOT eD AND eC AND NOT eB AND NOT eA) OR
(NOT eD AND eC AND NOT eB AND eA) OR
(NOT eD AND eC AND eB AND eA) OR
( eD AND NOT eC AND NOT eB AND eA);
f <= (NOT eD AND NOT eC AND NOT eB AND eA) OR
(NOT eD AND NOT eC AND eB AND NOT eA) OR
(NOT eD AND NOT eC AND eB AND eA) OR
(NOT eD AND eC AND eB AND eA);
g <= (NOT eD AND NOT eC AND NOT eB AND NOT eA) OR
(NOT eD AND NOT eC AND NOT eB AND eA) OR
(NOT eD AND eC AND eB AND eA);
end discret_logic;
|
Código TCL para teste do Hardware |
---|
Use o código tcl abaixo para testar no ModelSim o circuito RTL gerado no Quartus II.
|
- Atividade complementar
- Escreva um código VDHL que implemente a função do decodificador usando uma descrição comportamental do decodificador.
- Para as entradas utilize um vetor "e" do tipo std logic com 4 bits.
- Para as saídas utilize um vetor "s" do tipo std logic com 7 bits, onde o segmento a -> e(0) e g -> e(6).
- Prazo de entrega: 2abr até as 23h59 enviar email para moecke@ifsc.edu.br com Assunto: Prj1-SST-2012-1-NOME DO ALUNO com o arquivo em anexo Prj1-SST-2012-1-NOME_DO_ALUNO.qar.
Multiplexador 2 entradas e 1 saída
Entidade - entradas e saídas |
---|
Complete o código VHDL para que sintetize um multiplexador de 8 bits. ---------------------------------------
LIBRARY ieee;
USE ____;
---------------------------------------
ENTITY ____ IS
PORT (
____ : in STD_LOGIC_VECTOR (7 DOWNTO 0);
____ : in STD_LOGIC_VECTOR (7 DOWNTO 0);
sel : IN ____ ;
___ OUT STD_LOGIC_VECTOR ____
);
END ____ ;
---------------------------------------
ARCHITECTURE example OF ____ IS
BEGIN
PROCESS (a, b, ____)
BEGIN
IF (sel = '0') THEN
c <= a;
ELSE
____;
END ____;
END ____;
END ____;
---------------------------------------
|