710 likes | 845 Views
Optimisation du placement des portes logiques d’un circuit. Lisa Allali ENS Cachan lisa.a@free.fr. Plan. Introduction au VLSI Introduction au problème du placement Proposition de solution : raffinements successifs en 3 étapes Conclusion Perspectives
E N D
Optimisation du placement des portes logiques d’un circuit Lisa Allali ENS Cachan lisa.a@free.fr
Plan • Introduction au VLSI • Introduction au problème du placement • Proposition de solution : raffinements successifs en 3 étapes • Conclusion • Perspectives • Les raisons d’aller à Barcelone
VLSI L'intégration à très grande échelle (VLSI - Very-Large-Scale Integration) est une technologie de circuit intégré dont la densité d'intégration permet de supporter plus de 100 000 composants électroniques sur un même puce. Un microprocesseur est un dispositif VLSI.
VLSI Aujourd'hui plusieurs dizaines de millions de portes représentent un chiffre normal pour un microprocesseur
VLSI Aujourd'hui plusieurs dizaines de millions de portes représentent un chiffre normal pour un microprocesseur La loi de Moore : tous les 18 mois de 1980 à 2015 le degré d'intégration des microprocesseurs double les coûts de production doublent
VLSI Aujourd'hui plusieurs dizaines de millions de portes représentent un chiffre normal pour un microprocesseur La loi de Moore : tous les 18 mois de 1980 à 2015 le degré d'intégration des microprocesseurs double les coûts de production doublent Techniquement : La finesse de la gravure industrielle va atteindre bientôt 65 nm (en ce moment 90).
VLSI Aujourd'hui plusieurs dizaines de millions de portes représentent un chiffre normal pour un microprocesseur La loi de Moore : tous les 18 mois de 1980 à 2015 le degré d'intégration des microprocesseurs double les coûts de production doublent Techniquement : La finesse de la gravure industrielle va atteindre bientôt 65 nm (en ce moment 90). Ralentissement : Difficulté de dissipation thermique Effets de bruits parasites
Le problème du placement Les composants du circuit même hauteur largeur différentes Les nets relient un nombre arbitraire de composant. Optimiser les distances c’est minimiser le temps de calcul. Un problème qui a beaucoup de solutions mais qui reste ouvert.
Abstraction – raffinements successifs Idée : Ne pas chercher une solution immédiate 3 niveaux d’abstraction : Niveau 1 : Les portes sont des points Passage d’un hypergraphe à un graphe Utilisation d’un algorithme de placement optimal existant Modifier le résultat pour coller à nos objectifs
Abstraction – raffinements successifs Idée : Ne pas chercher une solution immédiate 3 niveaux d’abstraction : Niveau 1 : Les portes sont des points Passage d’un hypergraphe à un graphe Utilisation d’un algorithme de placement optimal existant Modifier le résultat pour coller à nos objectifs Niveau 2 : Les portes sont des cases carrées
Abstraction – raffinements successifs Idée : Ne pas chercher une solution immédiate 3 niveaux d’abstraction : Niveau 1 : Les portes sont des points Passage d’un hypergraphe à un graphe Utilisation d’un algorithme de placement optimal existant Modifier le résultat pour coller à nos objectifs Niveau 2 : Les portes sont des cases carrées Niveau 3 : Les portes sont des rectangles – réintroduction de la donnée de largeur
Etape 1 – Modélisation par un graphe Comment passer de l’hypergraphe d’entrée à un graphe ?
Placement initial et amélioration Quelques points sont fixés de sorte à former un cadre. Les coordonnées des autres points seront données par l’algorithme de placement utilisé. Problème : la solution optimale ne convient pas
Placement initial et amélioration Quelques points sont fixés de sorte à former un cadre. Les coordonnées des autres points seront données par l’algorithme de placement utilisé. Problème : la solution optimale ne convient pas (trop concentrée)
Placement initial et amélioration Quelques points sont fixés de sorte à former un cadre. Les coordonnées des autres points seront données par l’algorithme de placement utilisé. Problème : la solution optimale ne convient pas Notre travail : Pondérer les arêtes et jouer avec les poids de façon à espacer le placement tout en conservant les positions relatives des points.
Etape 2 – Cell Shifting On considère une grille quadrillée. Initialement : On découpe en « tranche horizontale de points » le résultat obtenu précédemment. Une tranche contient autant de points qu’il y a de cases dans une ligne de la grille. On remplit dans l’ordre d’apparition un point dans chaque case de la grille (on détache les points fusionnés)
Etape 2 – Cell Shifting On considère une grille cadrillée. Initialement : On découpe en « tranche horizontale de points » le résultat obtenu précédemment. Une tranche contient autant de points qu’il y a de cases dans une ligne de la grille. On remplit dans l’ordre d’apparition un point dans chaque case de la grille (on détache les points fusionnés) Amélioration du placement : Pour tous les noeuds, on calcule une position optimale. Si la case est vide à cet endroit on y mets le nœud Si la case est occupée par un autre nœud, on échange les 2 nœuds si ça améliore la solution
Etape 3 - Légalisation Intégration de la donnée de la largeur du composant. Identification les cellules de la grille qui posent problème (superposition – espace perdu) Rectification
Conclusion Objectifs du stage
Conclusion Objectifs du stage Compréhension de l’article de placement optimal
Conclusion Objectifs du stage Compréhension de l’article de placement optimal Implémentation de l’article
Conclusion Objectifs du stage Compréhension de l’article de placement optimal Implémentation de l’article Proposition d’amélioration de la résolution pour coller à notre problème
Conclusion Objectifs du stage Compréhension de l’article de placement optimal Implémentation de l’article Proposition d’amélioration de la résolution pour coller à notre problème • OK
Conclusion Objectifs du stage Compréhension de l’article de placement optimal Implémentation de l’article Proposition d’amélioration de la résolution pour coller à notre problème • OK Le travail en groupe
Conclusion Objectifs du stage Compréhension de l’article de placement optimal Implémentation de l’article Proposition d’amélioration de la résolution pour coller à notre problème • OK Le travail en groupe Les 3 étapes ont été réalisées indépendamment, reste à mettre les étapes bout à bout pour éprouver l’intérêt/les améliorations de notre travail.
Perspectives The International Symposium on Physical Design a lieu tous les ans. Un concours y est ouvert pour résoudre le problème que nous traitons. Si les tests sont concluants, nous y présenterons notre travail. http://www.ispd.cc/