Changes between Version 2 and Version 3 of VerifTempo


Ignore:
Timestamp:
Oct 8, 2007, 2:05:26 PM (17 years ago)
Author:
vasilevs
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • VerifTempo

    v2 v3  
    1212Le but de ce TP est de présenter les différences qu'il y a entre un simulateur électrique (précision, travail avec des stimuli, lenteur) et un analyseur temporel (moins précis, pas de stimuli, rapidité).
    1313
    14  = 3.2 Etude de stabilité = 
     14 = 3.2 Etude de stabilité =
    1515
    1616On cherche à déterminer les contraintes '''setup time''' et '''hold time''' sur les entrées dans le cas du schéma fourni ci-dessous, où on a introduit un mécanisme de conditionnement sur l'horloge CK.
     
    2323<div align=center>
    2424}}}
    25 [[Image(schema1,png, nolink)]]
     25[[Image(schema1.png, nolink)]]
    2626
    2727Figure 3.1 - Exemple.
     
    3030</div>
    3131}}}
     32
     33 = 3.2.1 Contraintes sur les données =
     34
     35En faisant des hypothèses sur les temps de propagation entre les signaux D0,D1,D2 et le signal D, donner l'expression des temps de setup et de hold des données D0,D1,D2 par rapport au front montant de l'horloge CK.
     36
     37 = 3.2.2 Contraintes sur les commandes =
     38
     39En faisant des hypothèses sur les temps de propagation entre I0,I1,I2 et Z, donner l'expression des temps de setup et de hold des commandes I0,I1,I2 autorisant l'écriture par rapport au front montant et au front descendant de l'horloge CK.
     40
     41 = 3.3 Placement/routage/extraction =
     42
     43Il s'agit à présent de générer la vue physique d'un circuit à partir d'un fichier écrit en STRATUS à l'aide des outil de placement/routage, extraction, validation vus dans les TPs précédents.
     44Recopiez les différents fichiers du répertoire :
     45{{{
     46> ~trncomun/TP/2006/TP4/Fichiers/exemple
     47}}}
     48Vous avez :
     49 * Un fichier exemple.py décrivant un petit circuit en STRATUS
     50 * Un fichier exemple.pat décrivant des patterns
     51 * Un fichier type.def qui contient la table de correspondance nom de type / type
     52 * Un Makefile
     53
     54Le fichier Makefile effectue les tâches suivantes :
     55 * Génération du fichier vhdl structurel (.vst) du circuit avec STRATUS
     56 * Validation cette netlist par asimut.
     57 * Génération du "layout" de ce circuit à l'aide de ocp et nero.
     58 * Vérification du résultat (druc). ( Pour druc RDS_TECHNO_NAME est positionné à
     59{{{
     60/users/soft/techno/labo/035/extract/cmos_12.rds
     61}}}
     62 * Extraction au format spice : la vue physique obtenue. L'extraction se fait avec
     63{{{
     64cougar -t
     65}}}
     66en positionnant RDS_TECHNO_NAME à
     67{{{
     68/users/soft/techno/labo/035/extract/prol035.rds
     69}}}
     70( MBK_OUT_LO à spi et MBK_SPI_MODEL au fichier type)
     71
     72 = 3.4 Etude avec eldo =
     73
     74D'après le schéma du circuit ci-dessus, déterminer par simulation sous eldo (dans les conditions ''pire cas'', c'est-à-dire VDD=3.3 V et le fichier de paramètres de modèles .wc), les temps de propagation des 8 portes externes à la bascule sff1.
     75Pour toutes les entrées, en déduire, au moyen des équations obtenues en 3.2.1 et 3.2.2, les contraintes de setup-time et de hold-time.
     76
     77 = 3.5 Etude avec TAS =
     78
     79TAS est un analyseur temporel.
     80Il permet d'obtenir les temps de propagation minimaux et maximaux entre les points de référence (c'est à dire les connecteurs externes et les points mémorisants) d'un circuit.
     81TAS travaille sans stimuli, c'est pourquoi il donne des délais ''pire cas'' pour les chaînes longues.
     82
     83Donner comme fichier technologie grâce à la variable d'environnement ELP_TECHNO_NAME:
     84{{{
     85/users/soft/techno/labo/035/elp/prol035.elp
     86}}}
     87Précisez le format d'entrée (.spi) dans la variable d'environnement MBK_IN_LO.
     88Mettre en place l'environnement pour l'analyse de timing :
     89{{{
     90source /users/soft/AvtTools2003/etc/avt_env.csh
     91}}}
     92Lancer l'outil TAS grâce à la commande:
     93{{{
     94tas -t nom_de_fichier
     95}}}
     96Consulter le man de tas et essayer les differentes options pour comprendre le fonctionnement
     97de TAS.
     98
     99'''NB''' : commenter le .include dans le fichier spi pour que TAS fonctionne.
     100
     101 = 3.5.1 Chaines longues =
     102
     103A l'aide de TAS, et du fichier "perfmodule" général .ttx généré par TAS, donner les chaines longues entre les points de référence du circuit, et leur temps.
     104Pour cela on utilisera XTAS qui permet d'interpreter les résultats de TAS.
     105Disposant lui aussi d'un man, XTAS est agrémenté d'une aide en ligne.
     106Lancer l'outil XTAS grâce à la commande:
     107{{{
     108xtas
     109}}}
     110
     111 = 3.5.2 Détail d'une chaine =
     112
     113A l'aide d'XTAS, donner le détail de la chaine la plus longue, pour chaque couple de points d'arrêt (sortie, point mémorisant).
     114
     115 = 3.6 Comparaison entre TAS et ELDO =
     116
     117Si on considère que les commandes I0, I1, I2 et les données D0, D1, D2 peuvent êtres confondues sous le terme plus général d'entrées, donner les temps de setup et de hold des entrées par rapport au front descendant de ck.
     118A l'aide des résultats fournis par TAS, donner numériquement les temps de setup et de hold pour le circuit étudié.
     119Comparer ces résultats avec ceux donnés par la simulation sous ELDO.
     120
     121 = 3.6.1 Vérification temporelle de l'AMD =
     122
     123Vous allez réaliser l'analyse statique temporelle de l'AMD du TP3, grâce à l'extraction que vous devez réaliser au niveau transistor, en positionant RDS_TECHNO_NAME comme précédemment.
     124Lancez l'outil TAS sur le fichier de l'AMD extrait au niveau trsnsitor, grâce à la commande:
     125{{{
     126tas -t nom_de_fichier
     127}}}
     128A l'aide de TAS et du fichier "perfmodule" général .ttx généré par TAS, donner les chaînes longues entre les points de référence du circuit et leur temps (entrées, registres, sorties).
     129Pour cela on utilisera XTAS qui permet d'interpréter les résultats de TAS.
     130Disposant lui aussi d'un man, XTAS est agrémenté d'une aide en ligne.
     131Lancer l'outil XTAS grâce à la commande :
     132{{{
     133xtas
     134}}}
     135
     136 = 3.7 Conclusion =
     137
     138Ce TP vous a permis de passer par la plupart des étapes nécessaires à l'analyse et la validation temporelle d'un circuit numérique.
     139Le compte-rendu du TP doit comporter :
     140 * Vos logins, vos noms et prénoms, et vos répertoires de travail pour ce TP (laissez libre accès à vos répertoires en lecture !).
     141 * Une description exacte de la méthodologie employée, incluant les éventuels problèmes rencontrés.
     142 * l'analyse des résultats concernant le transistor et l'inverseur.
     143 * les mesures commentés des temps caractéristiques de la bascule.
     144 * les chaînes longues du circuit mémorisant donnés par TAS, l'analyse avec eldo, votre interprétation de la comparaison.
     145 * La fréquence maximum d'utilisation de votre AMD avec l'explication de votre utilisation de '''TAS'''.
     146'''NE PAS JOINDRE DE LISTINGS DE FICHIERS (SAUF LES MAKEFILES).'''
     147Merci et bon courage !