Bonsoir tout le monde , ce code ci dessous est le code en vhdl d'un décodeur d'adresse que j'ai trouvé sur internet :
Voilà mon problème , je comprends pas en général le fonctionnement de ce décodeur ?
Pour ce décodeur , combien y a t il d'entrée 16 ? et pourquoi il y a que 5 sorties nommées ainsi ( RAM, ROM.....) auxquels on attribue des variables appartenant à des intervalles aléatoires ?
Je sais que j'ai posé beaucoup de questions, j'aimerais bien que vous m'aidiez MERCI
Lib rary ieee;
Use ieee .std_ logic _1164 .all;
Use ieee .nume ric_s td.al l;
ENT ITY D ECODA GE is
P ORT (
A15, A14, A13, A12, A11, A10 : IN S TD_LO GIC;
RAM0
: OUT STD_L OGIC;
RAM1
: OUT STD_L OGIC;
RAM2
: OUT STD_L OGIC;
RAM3
: OUT STD_L OGIC;
ROM
: OUT STD_L OGIC;
INTE R1
: OUT STD_L OGIC;
INTE R2
: OUT STD_L OGIC;
INTE R3
: OUT STD_L OGIC) ;
END DECO DAGE;
ARC HITEC TURE behav ior O F DEC ODAGE IS
SIG NAL A DRESS E: ST D_LOG IC_VE CTOR( 15 do wnto 0);
BEG IN
A DRESS E <= A15 & A14 & A13 & A1 2 & A 11 & A10 & "--- ----- --";
R OM <= ' 0' wh en (A DRESS E >= x"E00 0") a nd (A DRESS E <= x"FFF F") e lse ' 1';
R AM0 <= ' 0' wh en (A DRESS E >= x"000 0") a nd (A DRESS E <= x"03F F") e lse ' 1';
R AM1 <= ' 0' wh en (A DRESS E >= x"040 0") a nd (A DRESS E <= x"07F F") e lse ' 1';
R AM2 <= ' 0' wh en (A DRESS E >= x"080 0") a nd (A DRESS E <= x"0CF F") e lse ' 1';
R AM3 <= ' 0' wh en (A DRESS E >= x"0D0 0") a nd (A DRESS E <= x"0FF F") e lse ' 1';
I NTER1 <= ' 0' wh en (A DRESS E >= x"800 0") a nd (A DRESS E <= x"800 1") e lse ' 1';
I NTER2 <= ' 0' wh en (A DRESS E >= x"A00 0") a nd (A DRESS E <= x"A00 1") e lse ' 1';
I NTER3 <= ' 0' wh en (A DRESS E >= x"C00 0") a nd (A DRESS E <= x"C00 F") e lse ' 1';
END behavior;
-----