convertidor del sistema binario a un bcd digital
código
que se desarrollo
--librerias
library IEEE;
use
IEEE.STD_LOGIC_1164.ALL;
--Entidad
donde se define los puertos
entity bcd is
Port (
i0 : in
STD_LOGIC;
i1 : in
STD_LOGIC;
i2 : in
STD_LOGIC;
i3 : in
STD_LOGIC;
ACT : out STD_LOGIC;
ACT1 : out STD_LOGIC;
ACT2 : out STD_LOGIC;
ACT3 : out STD_LOGIC;
ACT4 : out STD_LOGIC;
ACT5 : out STD_LOGIC;
ACT6 : out STD_LOGIC;
ACT7 : out STD_LOGIC;
a : out
STD_LOGIC;
b : out
STD_LOGIC;
c : out
STD_LOGIC;
d : out
STD_LOGIC;
e : out
STD_LOGIC;
q : out
STD_LOGIC;
g : out
STD_LOGIC);
end bcd;
--Arquitectura
donde se describe el comportamiento del hardware
architecture
Behavioral of bcd is
--inicio del programa
begin
ACT <= '0';
ACT1 <= '1';
ACT2 <= '1';
ACT3 <= '1'; --se declaran
los displays que se ocuparon en este caso solo se ocupo el primero y por eso se
pone 0
ACT4 <= '1';
ACT5 <=
'1';
ACT6 <=
'1';
ACT7 <= '1';
--se
definen cada segmento del display
A <=
NOT((NOT i3 AND NOT i2 AND NOT i1 AND NOT i0) OR (NOT i3 AND NOT i2 AND i1 AND
NOT i0) OR
(NOT i3 AND
NOT i2 AND i1 AND i0) OR (NOT i3 AND i2 AND NOT i1 AND i0) OR
(NOT i3 AND i2
AND i1 AND NOT i0) OR (NOT i3 AND i2 AND i1 AND i0) OR
(i3 AND NOT i2
AND NOT i1 AND NOT i0) OR (i3 AND NOT i2 AND NOT i1 AND i0));
B <=
NOT((NOT i3 AND NOT i2 AND NOT i1 AND NOT i0) OR (NOT i3 AND NOT i2 AND NOT i1
AND i0) OR
(NOT i3 AND
NOT i2 AND i1 AND NOT i0) OR (NOT i3 AND NOT i2 AND i1 AND i0) OR
(NOT i3 AND i2
AND NOT i1 AND NOT i0) OR (NOT i3 AND i2 AND i1 AND i0) OR
(i3 AND NOT i2
AND NOT i1 AND NOT i0) OR (i3 AND NOT i2 AND NOT i1 AND i0));
C <=
NOT((NOT i3 AND NOT i2 AND NOT i1 AND NOT i0) OR (NOT i3 AND NOT i2 AND NOT i1
AND i0) OR
(NOT i3 AND
NOT i2 AND i1 AND i0) OR (NOT i3 AND i2 AND NOT i1 AND NOT i0) OR
(NOT i3 AND i2
AND NOT i1 AND i0) OR (NOT i3 AND i2 AND i1 AND NOT i0) OR
(NOT i3 AND i2
AND i1 AND i0) OR (i3 AND NOT i2 AND NOT i1 AND NOT i0)
OR (i3 AND NOT
i2 AND NOT i1 AND i0));
D <=
NOT((NOT i3 AND NOT i2 AND NOT i1 AND NOT i0) OR (NOT i3 AND NOT i2 AND i1 AND
NOT i0) OR
(NOT i3 AND
NOT i2 AND i1 AND i0) OR (NOT i3 AND i2 AND NOT i1 AND i0) OR
(NOT i3 AND i2
AND i1 AND NOT i0) OR (i3 AND NOT i2 AND NOT i1 AND NOT i0)
OR (i3 AND NOT
i2 AND NOT i1 AND i0));
E <=
NOT((NOT i3 AND NOT i2 AND NOT i1 AND NOT i0) OR (NOT i3 AND NOT i2 AND i1 AND
NOT i0) OR
(NOT i3 AND i2
AND i1 AND NOT i0) OR ( i3 AND NOT i2 AND NOT i1 AND NOT i0));
Q <= NOT (
(NOT i3 AND NOT i2 AND NOT i1 AND NOT i0) OR (NOT i3 AND i2 AND NOT i1 AND NOT
i0) OR
(NOT i3 AND i2
AND NOT i1 AND i0) OR (NOT i3 AND i2 AND i1 AND NOT i0) OR
(i3 AND NOT i2
AND NOT i1 AND NOT i0) OR (i3 AND NOT i2 AND NOT i1 AND i0));
G <=
NOT((NOT i3 AND NOT i2 AND i1 AND NOT i0) OR (NOT i3 AND NOT i2 AND i1 AND i0)
OR
(NOT i3 AND i2
AND NOT i1 AND NOT i0) OR (NOT i3 AND i2 AND NOT i1 AND i0) OR
(NOT i3 AND i2
AND i1 AND NOT i0) OR (i3 AND NOT i2 AND NOT i1 AND NOT i0) OR
(i3 AND NOT i2
AND NOT i1 AND i0));
--fin del
programa
end Behavioral;
Luis Alberto Cano Alvarez
Comentarios
Publicar un comentario