Changes between Version 62 and Version 63 of ToolsCourseTp7
- Timestamp:
- Oct 7, 2008, 4:58:43 PM (16 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ToolsCourseTp7
v62 v63 119 119 == 4.3 Placement de la couronne de plots autour du coeur == 120 120 121 Reprendre le fichier ''am2901_chip.py'' d u TP4 (circuit complet avec les plots), et introduire les étapes suivantes dans la méthode ''Layout'' :122 * Définir la taille de la boîte d'aboutement globale du circuit de façon à ce que les plots puissent être placés à la périphérie : fonction !DefAb()121 Reprendre le fichier ''am2901_chip.py'' décrivant le circuit complet avec les plots, et introduire les étapes suivantes dans la méthode ''Layout'' : 122 * Définir la taille de la boîte d'aboutement globale du circuit de façon à ce que les plots puissent être placés à la périphérie : fonction ''!DefAb()''. 123 123 (On peut commencer par définir une boite d'aboutement de 4000 par 4000 et essayer ensuite de la réduire) 124 * Placer le coeur du circuit au centre de la boîte d'aboutement du chip : fonction !PlaceCentric() 125 * Définir sur quelle face et dans quel ordre placer les plots. 126 Cela se fait à l'aide des 4 fonctions : !PadNorth(), !PadSouth(), !PadEast() et !PadWest(). 127 * Vérifier le résultat : 128 {{{ 129 > ./execute_amd2901_chip.py 130 }}} 124 * Placer le coeur du circuit au centre de la boîte d'aboutement du chip : fonction ''!PlaceCentric()''. 125 * Définir sur quelle face et dans quel ordre placer les plots, cela se fait à l'aide des 4 fonctions : ''!PadNorth()'', ''!PadSouth()'', ''!PadEast()'' et ''!PadWest()''. 126 * Visualiser le résultat. 131 127 132 128 == 4.4 Routage des alimentations == 133 129 134 * Créer la grille d'alimentation : fonction !PowerRing() 135 * Vérifier le résultat : 136 {{{ 137 > ./execute_amd2901_chip.py 138 }}} 130 * Créer la grille d'alimentation : fonction ''!PowerRing()''. 131 * Visualiser le résultat. 139 132 140 133 == 4.5 Placement de la logique irrégulière == 141 134 142 C'est le placeur ''' mistral''' qui se charge de placer automatiquement les cellules non encore placées.135 C'est le placeur '''Mistral''' qui se charge de placer automatiquement les cellules non encore placées. 143 136 Il détecte quelles sont les cellules qui n'ont pas été placées et complète le placement en utilisant les zones "vides". 144 137 145 * Appeler le placeur '''mistral''' : fonction ''!PlaceGlue ()'' 138 * Appeler le placeur '''mistral''' : fonction ''!PlaceGlue ()''.. 146 139 147 140 Attention : Pour pouvoir placer automatiquement la logique "irrégulière", il faut avoir préalablement défini la position des plots d'entrée/sortie sur les 4 faces du circuit. 148 141 L'outil de placement automatique place les cellules non placées en se basant sur les attirances vers les plots ainsi que vers les cellules déjà placées. 149 142 150 * Vérifier le résultat : 151 {{{ 152 > ./execute_amd2901_chip.py 153 }}} 143 * Visualiser le résultat. 154 144 155 145 [[Image(mistral.jpg,nolink)]] 156 146 157 {{{ 158 #!comment 159 [[Image(zoomPlaceGlue.jpg,nolink)]] 160 }}} 161 162 * Effectuer le placement automatique de cellules de bourrage : fonction !FillCell() 163 164 * Vérifier le résultat : 165 {{{ 166 > ./execute_amd2901_chip.py 167 }}} 168 169 {{{ 170 #!comment 171 [[Image(zoomFillCell.jpg,nolink)]] 172 }}} 147 * Effectuer le placement automatique de cellules de bourrage : fonction ''!FillCell()''. 148 149 * Visualiser le résultat. 173 150 174 151 == 4.6 Routage des signaux d'horloge == 175 152 176 * Construire le réseau maillé correspondant au signal d'horloge interne : fonction !RouteCk() 177 * Vérifier le résultat : 178 {{{ 179 > ./execute_amd2901_chip.py 180 }}} 181 182 {{{ 183 #!comment 184 [[Image(zoomCk.jpg,nolink)]] 185 }}} 153 * Construire le réseau maillé correspondant au signal d'horloge interne : fonction ''!RouteCk()''. 154 * Visualiser le résultat. 186 155 187 156 == 4.7 Routage des signaux logiques == … … 199 168 == 4.8 Validation == 200 169 201 * Valider le routage en utilisant les les outils '''druc''', '''cougar''' et '''lvx''' , comme cela a été fait dans le TP7.170 * Valider le routage en utilisant les les outils '''druc''', '''cougar''' et '''lvx'''. 202 171 {{{ 203 172 > druc amd2901_chip_r … … 220 189 = 5 Compte rendu = 221 190 222 Vous rendrez un compte-rendu explicitant les différentes étapes de ce TP : 223 * Décrivez précisément le flot de conception. 224 * Quels choix avez-vous retenus pour le placement des colonnes du chemin de données ? 225 * votre circuit est-il limité par les plots ou par la taille du coeur (pad limited ou core limited) ? 226 * Quels sont les résultats donnés par lvx ? 191 Le compte rendu des TPs 7 et 8 est commun avec celui des TPs 3 et 4. 192 193 Pour cette parti précisément, vous devez : 194 * Décrire le flot de conception. 195 * Expliquer quels choix ont été retenus pour le placement des colonnes du chemin de données. 196 * Donner la taille du circuit obtenu. '''Votre circuit est-il limité par les plots ou par la taille du coeur (pad limited ou core limited) ?''' 197 * Donner les résultats donnés par lvx. 227 198 * etc ... 228 199 229 200 Les schémas sont appréciés. 230 201 231 Fournissez les fichiers source de ce TP ou donnezvos logins, vos noms et prénoms, et vos répertoires de travail202 N'oubliez pas de fournir les fichiers source ou de donner vos logins, vos noms et prénoms, et vos répertoires de travail 232 203 ( dans ce cas laissez libre accès à vos répertoires en lecture !). 233 204 … … 237 208 = 6 Conclusion = 238 209 239 Ce TP vous a permis de passer par la plupart des étapes nécessaires à la conception 240 physique d'un circuit réalisé en cellules précaractérisées avec préplacement 241 des parties régulières.242 243 Ces mêmes outils seront utilisés pour la réalisation du processeur MIPS R3000.210 Les TPs 3, 4 et 7 vous ont permis de passer par la plupart des étapes nécessaires à la conception physique d'un circuit réalisé en cellules précaractérisées avec préplacement des parties régulières. 211 212 Le TP8 va vous permettre d'évaluer plus en détail les performances du circuit créé. 213 214 Ces mêmes outils seront utilisés pour la réalisation du processeur MIPS R3000.