Changes between Version 3 and Version 4 of MethoCourseTp3
- Timestamp:
- Apr 6, 2007, 10:00:47 AM (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
MethoCourseTp3
v3 v4 8 8 9 9 Le principal objectif de ce TP3 est d'utiliser le langage VHDL pour écrire une description 10 structurelle hiérarchique multi niveaux utilisant les cellules d'une bibliothèque de cellules10 structurelle hiérarchique multi-niveaux utilisant une bibliothèque de cellules 11 11 précaractérisées. 12 12 13 Pour cela, nous allons continuer à décomposer les trois blocs '''adder''', '''mux'' et '''accu''',13 Pour cela, nous allons continuer à décomposer les trois blocs '''adder''', '''mux''' et '''accu''', 14 14 définis dans le TP2, en sous blocs, et nous allons finalement décrire chacun des sous-blocs 15 15 comme une interconnexion de portes de bases, fournies par une bibliothèque de cellules 16 16 pré-caractérisées (en anglais "standard cells library"). 17 17 18 Une cellule pré caractérisée est une fonction élémentaire pour laquelle on dispose18 Une cellule pré-caractérisée est une fonction élémentaire pour laquelle on dispose 19 19 des différentes "vues" permettant son utilisation par des outils CAO: 20 20 * vue ''physique'' : dessin des masques … … 22 22 * vue ''comportementale'' : description VHDL 23 23 24 On dit que ces cellules sont pré caractérisées, car on connait leurs caractéristiques physiques:24 On dit que ces cellules sont pré-caractérisées, car on connait leurs caractéristiques physiques: 25 25 * surface occupée 26 26 * consommation … … 44 44 }}} 45 45 46 Comme vous 46 Comme vous pourrez le constater, il existe plusieurs cellules réalisant la même fonction logique. 47 Les deux cellules na2_x1 et na2_x4 réalisent toutes les deux la fonction NAND à 2 entrées, 48 et ne diffèrent entre elles que par leur puissance électrique: Lacellule na2_x4 est capable de charger 49 une capacité de charge 4 fois plus grande que la cellule na2_x1. Evidemment, plus cellule est puissante, 50 plus la surface de silicium occupée est importante. 51 47 52 = B) Schéma des blocs = 48 53 49 == B1) schéma du bloc adder ==54 == B1) schéma SxLib du bloc adder == 50 55 51 56 Un additionneur 4 bits peut être réalisé en interconnectant 4 additionneurs 1 bit suivant le schéma ci-dessous. … … 69 74 70 75 Il existe plusieurs schémas possibles pour réaliser un Full Adder. 71 Nous vous proposons d'utiliser le schéma ci-dessous, qui utilise les deux cellules na2_x1 et nxr2_x1.76 Nous vous proposons d'utiliser le schéma ci-dessous, qui utilise les deux cellules na2_x1 (NAND 2 entrées), et nxr2_x1 (XOR 2 entrées). 72 77 78 Les étudiants curieux peuvent visualiser le dessin de ces deux cellules en utilisant l'éditeur 79 graphique de la chaîne alliance : 80 {{{ 81 > graal -l na2_x1 82 }}} 73 83 74 84 Il faut donc écrire explicitement, en langage VHDL structurel, les deux fichiers adder.vst, et half_adder.vst, 75 85 correspondant aux deux schémas ci-dessus. 76 86 77 == B2) schéma en portes S87 == B2) schéma SxLib du bloc accu == 78 88 89 Un registre 4 bits peut être réalisé en interconnectant 4 cellules sff1_x4 suivant le schéma ci-dessous. 90 La cellule sff1_x4 réalise une bascule D à échantillonnage sur front montant. Ceux qui sont curieux 91 peuvent 79 92 93 Il faut donc écrire explicitement, en langage VHDL structurel, les deux fichiers adder.vst, et half_adder.vst, 94 correspondant aux deux schémas ci-dessus. 95 96 == B3) schéma SxLib du bloc mux == 97 98 Il existe plusieurs façons de réaliser un multiplexeur. 99 Un multiplexeur 4 bits peut être réalisé en interconnectant 4 cellules mx2_x2. 80 100 81 101