Version 8 (modified by 17 years ago) (diff) | ,
---|
TP4 VLSI : Ecriture du modèle VHDL de l'AMD2901
Architecture interne du circuit Am2901
La description générale du processeur AM2901est donnée par
ftp://asim.lip6.fr/pub/amd2901/amd2901.pdf
Objectifs
- En partant d'une spécification "papier" décrire le modèle VHDL d'un circuit.
Il est nécessaire que tous les groupes utilisent les mêmes noms de connecteurs et de signaux internes afin de pouvoir échanger les vecteurs de test.
ENTITY amd IS PORT ( cke : IN BIT; i : IN BIT_VECTOR (8 DOWNTO 0); a : IN BIT_VECTOR (3 DOWNTO 0); b : IN BIT_VECTOR (3 DOWNTO 0); d : IN BIT_VECTOR (3 DOWNTO 0); noe : IN BIT; r0 : INOUT MUX_BIT BUS; r3 : INOUT MUX_BIT BUS; q0 : INOUT MUX_BIT BUS; q3 : INOUT MUX_BIT BUS; ovr : OUT BIT; zero : OUT BIT; signe : OUT BIT; np : OUT BIT; ng : OUT BIT; cin : IN BIT; cout : OUT BIT; y : OUT MUX_VECTOR (3 DOWNTO 0) BUS; vddi : IN BIT; vssi : IN BIT vdde : IN BIT; vsse : IN BIT ); END amd;
Tout d'abord vous recopierez dans votre répertoire le squelette du modèle de l`AMD2901 qui se trouve dans le répertoire
~jeanlou/VLSI2006-2007/TD-TME/S4/
Exercices
Exercice 1-VHDL
Question 1
Quelle est la différence entre l'assignation simple et l'assignation avec condition ?
Question 2
Dans l` AMD2901 décrit en cours, quels sont les signaux qui ne sont pas affectés systématiquement lorsque les valeurs d'entrée sont modifiées? pourquoi?
Question 3
Comment décrit on ces signaux en VHDL? quel est le type correspondant?
Exercice 2-AMD2901
Question 1
Evaluer le nombre de bascules D que vous allez utiliser pour décrire votre AMD290.
Question 2
Quelles sont les différentes opérations possibles avec l`AMD2901?
Question 3
Le résultat de l'ALU peut être récupéré dans quelle partie de lAMD2901? Quelle est l'entrée qui permet de choisir la destination du résultat de l'ALU?
Question 4
Ecrit-on dans tous les registres de l'AMD2901 à chaque cycle ?
Question 5
Quelle est l'utilité des bits r0, r3, q0, q3 ? quel est le mode de ces connecteurs ?
Question 6
Déterminer les entrées qui peuvent modifier les différents drapeaux.
Question 7
Quelle est l'utilité de l'entrée noe ?
Question 8
Est il possible de venir lire une case mémoire et de la modifier au cours du même cycle ? donner un exemple .
Exercice 3-Vecteurs de test.
Dans le cas de votre AMD2901 dont l'interface est donné plus haut, déterminer le (les) vecteur(s) de test permettant de :
Question 1
Remplir les registresd'adresse 0 avec la valeur 0 et le registre 1 avec la valeur 1.
Combien de cycles sont nécessaires ? combien de vecteurs ?
Question 2
On suppose que l'accumulateur contient la valeur 8 en début de cycle, donner le vecteur qui permet d'avoir 16 en fin de cycle dans l'accumulatur. Les sorties seront toutes prévues.