TD1 VHDL Comportemental
TD1 VHDL Comportemental
TD1 VHDL Comportemental
T RAV AUX DI RI G E S
Système d'information
Description en langage VHDL
numérique
3b ……………………………………………………………………………………………………..……………………………………………………………..
4 ……………………………………………………………………………………………………..……………………………………………………………..
5 ……………………………………………………………………………………………………..……………………………………………………………..
6 ……………………………………………………………………………………………………..……………………………………………………………..
6b ……………………………………………………………………………………………………..……………………………………………………………..
);
END ctr_74190B;
ü Donnez la description VHDL de l’entité. La sortie RCON doit être lue pour déterminer la sortie :
MXMN. Conformez-vous à ce qui est demandé ci-après :
• À la ligne 1 on déclarera H et on ajoutera le commentaire : « horloge système ».
• À la ligne 2 on déclarera les entrées CEN, D_UN et LDN.
• À la ligne 3 on déclarera P en « std_logic_vector ».
• À la ligne 3b, en commentaire, on déclarera P en « integer ».
• À la ligne 4 on déclarera MXMN seul.
• À la ligne 5 on déclarera RCON seul.
• À la ligne 6 on déclarera Q en « std_logic_vector ».
• À la ligne 6b, en commentaire, on déclarera Q en « integer ».
a
f b
g
e c
d
ü Complétez, ci-
dessous, les descriptions
VHDL de ce décodeur 7
segments.
--Décodeur 7 segments pour afficheur à cathodes communes --Décodeur 7 segments pour afficheur à cathodes communes
-- 2ième description VHDL library ieee;
library ieee; use ieee.std_logic_unsigned.all;
use ieee.std_logic_unsigned.all; use ieee.std_logic_1164.all;
use ieee.std_logic_1164.all; entity decod7s is port
entity decod7s2 is port (
( De: in integer range 0 to 9;
De: in integer range 0 to 9; a,b,c,d,e,f,g: out std_logic
a,b,c,d,e,f,g: out std_logic );
); end decod7s;
end decod7s2; architecture a_decod7s of decod7s is
architecture a_decod7s2 of decod7s2 is begin
signal Di: std_logic_vector(7 downto 0); with De select
begin a<='0' when 1|4, '1' when others;
with De select with De select
Di<=X"7E" when 0, b<='0' when 5|6, '1' when others;
"00110000" when 1, with De select
"01101101" when 2, c<='0' when 2, '1' when others;
X"79" when 3, with De select
X"33" when 4, d<='0' when 1|4|7, '1' when others;
"01011011" when 5, with De select
e<=
X"70" when 7, with De select
X"7F" when 8, f<='0' when 1|2|7, '1' when others;
X"7B" when others; with De select
--génération des sorties g<='0' when 0|1|7, '1' when others;
a<=Di(6); b<=Di(5); c<=Di(4); d<=Di(3); end a_decod7s;
e<=Di(2);f<=Di(1);g<=Di(0);
end a_decod7s2;
Complétez à droite la description d’une bascule D avec S (Set) synchrone et R (Reset) asynchrone.
Donnez toutes les raisons qui permettent d’affirmer que le modulo de ce compteur est 10 :
……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….………………………………………………….…………………………………………………………….
D_UN : …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….…………………………………………………………….
LDN : …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………….…………………………………………………………….
Modifiez la description VHDL de ce compteur pour déclarer MxMn en « out » en vue de la compatibilité
avec le logiciel Vivado et son simulateur.
Système d’information numérique – TD1 : Description en langage VHDL 4/4