Qu'est-ce que Placement-routage ?

Étape de conception qui, à partir de la netlist issue de la synthèse logique, dispose les cellules sur la puce (placement) et détermine les interconnexions entre elles (routage).

Nom japonais: 配置配線

« Placement-routage » apparaît dans 16 questions d'entraînement réparties sur 3 thèmes, dont Flot de conception de circuits intégrés et EDA, Analyse temporelle et CDC, HDL et vérification.

Domaine: Flot de conception de circuits intégrés et EDA

La place du placement-routage dans le flot

La synthèse logique transforme le RTL en netlist au niveau portes, mais cette netlist n'a aucune géométrie. Le placement-routage (P&R) la convertit en layout physique. Il commence par le floorplanning, qui fixe la taille de la puce, la position des gros blocs comme les mémoires, l'emplacement des E/S et l'ossature du réseau d'alimentation. Les cellules standard sont ensuite placées en rangées, l'arbre d'horloge est synthétisé (clock tree synthesis, CTS) pour distribuer l'horloge avec un décalage (skew) maîtrisé, et enfin les nets de signal sont routés sur les couches métalliques. Le résultat passe ensuite à l'extraction, à la validation finale du timing (sign-off) et à la vérification physique.

Ce qu'optimise le placement

Le placement positionne de milliers à des millions de cellules afin de minimiser la longueur totale de fils tout en évitant la congestion, c'est-à-dire les zones où il faudrait plus de fils qu'il n'existe de pistes de routage. Il est piloté par le timing : les cellules des chemins critiques sont rapprochées, et les outils insèrent des buffers ou redimensionnent des portes au fil de l'eau. Une étape finale de légalisation aligne chaque cellule sur les rangées de cellules standard, sans chevauchement. Les choix faits au floorplanning, comme placer côte à côte des blocs qui échangent beaucoup de données, fixent les limites de ce que le placement peut atteindre et coûtent cher à modifier ensuite.

Comment se fait le routage

Le routage se déroule généralement en deux étapes. Le routage global divise la puce en une grille grossière et attribue à chaque net un chemin à travers des régions, en estimant la congestion. Le routage détaillé affecte ensuite de vraies pistes et des vias sur chaque couche métallique, en respectant les règles de conception de largeur et d'espacement. Les couches alternent généralement de direction préférentielle, horizontale sur l'une et verticale sur la suivante, pour garder un routage régulier. Les couches basses, fines et denses, servent aux connexions locales, tandis que les couches hautes épaisses transportent les longs signaux globaux, les horloges et l'alimentation avec une résistance plus faible.

Extraction et fermeture du timing

Après le routage, l'extraction des parasites calcule la résistance et la capacité de chaque fil à partir de sa géométrie, de son recouvrement et de son espacement avec ses voisins. Ces valeurs alimentent l'analyse temporelle statique, l'analyse de puissance et les vérifications de diaphonie. Dans les technologies avancées, le retard des fils représente une part importante du retard des chemins : un design qui respectait le timing après synthèse peut donc échouer après routage. Des corrections comme l'insertion de buffers, le redimensionnement de cellules et le reroutage sont itérées jusqu'à la fermeture du timing, puis la vérification des règles de conception (DRC) et la vérification layout/schéma (LVS) valident le layout avant le tape-out.

S'entraîner : questions sur Placement-routage

Quel est le principal objectif de la synthèse d'arbre d'horloge (CTS) lors du placement-routage ?

  1. ARéduire la dispersion des temps d'arrivée de l'horloge aux bascules (skew)
  2. BAugmenter la tension d'alimentation
  3. CCorriger les violations des règles de dessin du layout
Afficher la réponse et l'explication

Réponse : A. Réduire la dispersion des temps d'arrivée de l'horloge aux bascules (skew)

La dispersion des instants d'arrivée de l'horloge aux millions de bascules d'une puce provoque des violations temporelles. La CTS distribue l'horloge par des tampons disposés en arbre et réduit la dispersion des temps d'arrivée (skew). L'horloge commutant en permanence, l'arbre d'horloge peut représenter une part importante de la consommation de la puce. Son objectif est distinct de la tension d'alimentation ou de la correction des violations DRC.

Comment appelle-t-on l'étape qui extrait la résistance et la capacité des interconnexions à partir du layout après placement-routage ?

  1. ASynthèse logique
  2. BATPG
  3. CExtraction des éléments parasites (extraction RC)
Afficher la réponse et l'explication

Réponse : C. Extraction des éléments parasites (extraction RC)

L'extraction des éléments parasites calcule et extrait la résistance et la capacité des interconnexions à partir de leur géométrie, de leur espacement et de leur recouvrement avec les couches supérieures et inférieures. Ces valeurs permettent une analyse temporelle statique, une analyse de consommation et de diaphonie précises. Avec la miniaturisation, le délai des interconnexions devient grand par rapport à celui des cellules, d'où son importance croissante. La synthèse logique génère les portes, et l'ATPG les vecteurs de test.

Questions fréquentes

Quelle est la différence entre le placement et le routage ?

Le placement décide de l'emplacement de chaque cellule sur la puce, tandis que le routage crée les fils métalliques et les vias qui relient les cellules placées conformément à la netlist. La qualité du placement détermine en grande partie la facilité du routage.

Qu'est-ce qui précède et qui suit le placement-routage ?

Il est précédé de la synthèse logique, qui fournit la netlist au niveau portes. Il est suivi de l'extraction des parasites, de l'analyse temporelle statique et de la vérification physique (DRC et LVS) avant que le layout ne soit transmis pour fabrication.

Pourquoi le floorplanning est-il si important en placement-routage ?

Le floorplanning fixe la taille de la puce, la position des blocs, l'emplacement des E/S et le réseau d'alimentation, qui contraignent toutes les étapes suivantes. Un mauvais floorplan entraîne de la congestion et des fils longs que les étapes ultérieures ne peuvent pas entièrement corriger.

« Placement-routage » dans les explications

Questions mentionnant « Placement-routage » (16)

  1. Quel est le principal objectif de la synthèse d'arbre d'horloge (CTS) lors du placement-routage ?
  2. Comment appelle-t-on l'étape qui extrait la résistance et la capacité des interconnexions à partir du layout après placement-routage ?
  3. Quelle étape, au début du placement-routage, fixe la disposition générale des grands blocs, des plots d'entrée-sortie et du réseau d'alimentation ?
  4. Quel est l'objectif principal d'une simulation avec informations de délai sur le circuit après synthèse logique ou placement-routage (netlist au niveau portes) ?
  5. Quel est l'ordre correct du flot de conception d'un LSI numérique courant ?
  6. Quelle description de la synthèse logique est correcte ?
  7. Quelle méthode confirme mathématiquement, sans simulation, que la logique du circuit est inchangée avant et après la synthèse logique ?
  8. Quelle description de la conception en cellules standard est correcte ?
  9. Quelle description de la netlist est correcte ?
  10. Que désigne correctement « EDA » ?
  11. Quelle méthode de conception dessine manuellement chaque transistor, dimensions et placement compris, pour pousser performances et surface à l'extrême ?
  12. En conception basse consommation, quel format standard décrit séparément de la description du circuit l'« intention d'alimentation » : domaines d'alimentation, coupure d'alimentation, translateurs de niveau, etc. ?
  13. Comment appelle-t-on l'intégration d'une petite correction découverte en fin de conception ou en cours de fabrication par une modification partielle du layout existant, sans refaire toute la conception ?
  14. Dans les contraintes temporelles (SDC), quel paramètre spécifie la marge retranchée de la période d'horloge pour tenir compte notamment de la gigue et du skew estimés de l'horloge ?
  15. Sur un chemin de période d'horloge 1,25 ns (800 MHz), la somme du délai horloge-sortie et du délai combinatoire est de 1,05 ns, le temps d'établissement de 0,05 ns, et l'incertitude d'horloge pour le setup est fixée à 0,05 ns. Quelle est la marge de setup ?

Termes associés

Synthèse logique Netlist RTL (niveau transfert de registres) DRC (vérification des règles de conception) FPGA Gigue (jitter) Incertitude d'horloge (clock uncertainty) STA (analyse temporelle statique) Diaphonie (crosstalk) ATPG (génération automatique de vecteurs de test)

Retour au glossaire