Académique Documents
Professionnel Documents
Culture Documents
entity alu_8bit is
port (
opcode : in std_logic_vector(2 downto 0); -- Opcode pour sélectionner l'opération
ALU
operand_a : in std_logic_vector(7 downto 0); -- Opérande A
operand_b : in std_logic_vector(7 downto 0); -- Opérande B
result : out std_logic_vector(7 downto 0); -- Résultat de l'opération ALU
carry_out : out std_logic; -- Indicateur de retenue
digit_carry_out : out std_logic; -- Indicateur de retenue de chiffre
zero : out std_logic -- Indicateur de zéro
);
end entity alu_8bit;
Program Memory :
entity program_memory is
port (
address : in std_logic_vector(8 downto 0); -- Adresse d'accès à la mémoire
programme
data_out : out std_logic_vector(11 downto 0) -- Données lues depuis la mémoire
programme
);
end entity program_memory;
Data Memory :
entity data_memory is
port (
address : in std_logic_vector(4 downto 0); -- Adresse d'accès à la mémoire de
données
data_in : in std_logic_vector(7 downto 0); -- Données à écrire dans la mémoire de
données
write_enable : in std_logic; -- Signal d'activation d'écriture
data_out : out std_logic_vector(7 downto 0) -- Données lues depuis la mémoire de
données
);
end entity data_memory;
STATUS Register :
entity status_register is
port (
write_enable : in std_logic; -- Signal d'activation d'écriture
z_flag : in std_logic; -- Valeur du bit Z
dc_flag : in std_logic; -- Valeur du bit DC
c_flag : in std_logic; -- Valeur du bit C
data_out : out std_logic_vector(7 downto 0) -- Données lues depuis le registre
STATUS
);
end entity status_register;
Comparator :
entity comparator is
port (
vin_p : in std_logic; -- Tension d'entrée positive du comparateur
vin_n : in std_logic; -- Tension d'entrée négative du comparateur
cmp_out : out std_logic, -- Sortie du comparateur
wake_up_flag : out std_logic -- Drapeau de réveil du comparateur
);
end entity comparator;