Changes between Initial Version and Version 1 of ToolsCourseTp2


Ignore:
Timestamp:
May 4, 2007, 1:44:34 PM (18 years ago)
Author:
anne
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • ToolsCourseTp2

    v1 v1  
     14 Synthèse logique et optimisation structurelle
     24.1 Introduction
     34.1.1 Synthèse logique
     4La synthèse logique permet d'obtenir une netlist de portes à partir d'un réseau bool
     5éen (format .vbe). Plusieurs outils sont disponibles :
     6– L'outil BOOM permet l'optimisation de réseau booléen avant synthèse.
     7– L'outil BOOG offre la possibilité de synthétiser une netlist en utilisant une biblioth
     8èque de cellules précaractérisées telle que SXLIB. La netlist peut être soit au format
     9.vst soit au format .al. Vérier la variable d'environnement MBK_OUT_LO=vst.
     10Pour plus de renseignements sur ces outils, reportez vous au man.
     114.1.2 Résolution des problèmes de fanout (sortance)
     12Les netlists générées contiennent parfois des signaux internes attaquant un nombre
     13important de portes (grand fanout). Ceci se traduit par une détérioration des fronts
     14(rise time et fall time). Il y a alors une perte en performance temporelle. An de ré-
     15soudre ces problèmes, l'outil LOON remplace les cellules ayant un fanout (i.e sortance)
     16trop grand par des cellules plus puissantes ou bien insère des buffers.
     174.1.3 Visualisation de la chaîne longue
     18A tout moment, les netlists peuvent être éditées graphiquement. L'outil XSCH permet
     19de visualiser le chemin le plus long grâce aux chiers .xsc et .vst générés à la fois
     20par BOOG et par LOON.
     21T+RC
     22temps de propagation
     23R
     24C i0
     25
     26
     27La résistance équivalente R de la gure 6 est calculée sur la totalité des transistors
     28du AND appartenant au chemin actif. De même, la capacité C est calculée sur les transistors
     29passants du NOR correspondant au chemin entre i0 et la sortie de la cellule.
     30
     31
     324.1.4 Vérication de la netlist
     33La netlist doit être certiée. Pour cela, on dispose du simulateur ASIMUT, mais
     34aussi de l'outil PROOF qui procède à une comparaison formelle de deux descriptions
     35comportementales (.vbe). L'outil FLATBEH permet d'obtenir le nouveau chier comportemental
     36à partir de la netlist.
     37
     384.2 Travail à effectuer
     394.2.1 Optimisation du réseau booléen
     40Pour analyser l'effet de l'optimisation booléenne :
     41– Lancer l'optimisation booléenne avec l'outil BOOM en demandant une optimisation
     42en surface puis en délai ;
     43>boom -V <vbe_source> <vbe_destination> -
     44Essayer BOOM avec les différents algorithmes -s, -j, -b, -g, -p... Le mode et le
     45niveau d'optimisation sont aussi à changer.
     46– Comparer le nombre de littéraux après factorisation.
     474.2.2 Mapping sur cellules précaractérisées
     48Pour chacun des réseaux booléens obtenus précédemment :
     49– positionner les variables d'environnement ;
     50– synthétiser la vue structurelle :
     51>boog <vbe_source> -
     52– lancer BOOG sur les différentes netlists pour observer l'inuence des options de
     53SYF et de BOOM.
     54– valider le travail de BOOG en resimulant avec ASIMUT les netlists obtenues
     55avec les vecteurs de test qui ont servi à valider le réseau booléen initial.
     564.2.3 Visualisation de la netlist
     57– La chaîne longue est décrite dans le chier .xsc produit par BOOG. L'outil XSCH
     58l'utilisera pour colorer son chemin. Pour lancer l'éditeur graphique :
     59>xsch -I vst -l <vst_source> -
     60– La couleur rouge désigne le chemin critique.
     61– Si vous utilisez l'option '-slide' qui permet d'afcher un ensemble de netlists,
     62n'oubliez pas d'appuyer sur les touches '+' ou '-' pour éditer vos chiers !
     634.2.4 Optimisation de la netlist
     64Pour toutes les vues structurelles obtenues précédemment :
     65– Lancer LOON avec la commande :
     66>loon <vst_source> <vst_destination> <lax_param> -
     67– Effectuer une optimisation de fanout en modiant le facteur de fanout dans le
     68chier d'option .lax.
     69– Imposer des valeurs de capacités sur les sorties.
     70ACSI M2 12
     71TP2 Synthèse logique et génération de chemin de données
     724.2.5 Vérication de la netlist
     73À effectuer sur la meilleure (justiez votre choix) de vos netlists :
     74– Valider le travail de LOON en resimulant sous ASIMUT les netlists obtenues
     75avec les vecteurs de test qui ont servi à valider la vue comportementale initiale.
     76– Deux précautions valent mieux qu'une ! Faîtes une vérication formelle de votre
     77netlist en la comparant au chier comportemental d'origine issu de SYF :
     78>atbeh <vst_source> <vbe_dest> -
     79>proof -d <vbe_origine> <vbe_dest> -
     80Comparez si les deux chiers sont bien identiques.
     81Mettre les différents résultats (surface/temps/optimisation) dans votre rapport.
     82Quelle est, selon vous, la meilleure des netlists ? Pourquoi ?
     83ACSI M2 13
     84
     85