Escolar Documentos
Profissional Documentos
Cultura Documentos
Combinacionais em VHDL
Exemplos:
• Porta XOR;
• Mux;
• Codificador de prioridade;
• Decodificador para mostrador de 7
segmentos.
Porta XOR
ENTITY xorgate IS
PORT (a, b: IN STD_LOGIC;
c: OUT STD_LOGIC);
END xorgate;
Porta XOR Estrutural
• Primeiro precisam ser compilados os componentes da descrição
estrutural da porta XOR, as funções NOT, AND e OR. Suas
descrições em VHDL estão mostradas a seguir:
LIBRARY ieee;
USE ieee.STD_LOGIC_1164.ALL;
ENTITY inverter IS
PORT (a: IN STD_LOGIC;
an: OUT STD_LOGIC);
END inverter;
LIBRARY ieee;
LIBRARY ieee;
USE ieee.STD_LOGIC_1164.ALL; USE ieee.STD_LOGIC_1164.ALL;
PACKAGE components IS
COMPONENT inverter
PORT (a: IN STD_LOGIC;
an: OUT STD_LOGIC);
END COMPONENT;
COMPONENT my_and2
PORT (a,b: IN STD_LOGIC;
s: OUT STD_LOGIC);
END COMPONENT;
COMPONENT my_or2
PORT (a,b: IN STD_LOGIC;
s: OUT STD_LOGIC);
END COMPONENT;
END components;
Arquiteturas para xorgate
BEGIN
u1: inverter PORT MAP (a, na);
u2: inverter PORT MAP (b, nb);
u3: my_and2 PORT MAP (na, b, nab);
u4: my_and2 PORT MAP (a, nb, anb);
u5: my_or2 PORT MAP (nab, anb, c);
END structural;
Arquiteturas para xorgate
• Exemplo de configuração:
LIBRARY ieee;
USE ieee.STD_LOGIC_1164.ALL;
ENTITY mux2to1 IS
PORT(s: IN STD_LOGIC;
zero, one: IN STD_LOGIC_VECTOR(7 DOWNTO 0);
y: OUT STD_LOGIC_VECTOR(7 DOWNTO 0));
END mux2to1;
ENTITY priority IS
PORT (y1,y2,y3,y4,y5,y6,y7: IN STD_LOGIC;
vec: OUT STD_LOGIC_VECTOR(2 DOWNTO 0) );
END priority;
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
ENTITY decod_7seg IS
PORT (entrada: IN INTEGER RANGE 0 TO 15;
abcdefg: OUT STD_LOGIC_VECTOR(6 DOWNTO 0));
END decod_7seg;
Decodificador para Mostrador de 7 Segmentos