TUTORIAL CADENCE 97 et interface SYNOPSYS-CADENCE
4. Vérification temporelle (Pearl : Nouvelle
version)
4.1 Introduction
L'outil Pearl est un outil qui permet de faire une analyse statique
temporelle des systèmes synchrones et asynchrones, aussi bien
au niveau porte qu'au niveau transistor.
Il vérifie les violations de setup/hold, donne le chemin critique
du circuit ou le temps de n'importe quel chemin, et les différentes
capacités du circuit.
Dans une fenêtre terminal, tapez Pearl pour invoquer le
programme.
4.2 Les différents fichiers
Pearl doit disposer au minimum des quatres types de fichiers suivants :
- Un fichier de commande (.cmd)
- Un fichier de technologie (.tech)
- Un fichier de librairie temporelle compilée ou non (.ctlf ou .tlf)
- Une netlist
Le fichier de commande :
Il contient quelques alias de certaines commandes et de plus, c'est
lui qui spécifie les fichiers d'entrée qui doivent
être lus.
Dans notre application, nous utiliserons le fichier
udctr.cmd.
Ce fichier est intégré dans Pearl par la commande suivante :
- Include <nom du fichier.cmd>
- Pearl <nom du fichier.cmd>
Le fichier de technologie :
- Le fichier de technologie définit les informations d'une technologie
utilisées par un schéma, comme le nom des alimentations, le seuil
logique, etc...
- De plus, un fichier de technologie définit au niveau porte logique,
correspond aussi au niveau transistor.
Il est lu dans le fichier de commande par la commande suivante :
- ReadTechnology <nom du fichier.tech>
Nous utiliserons le fichier std-cell.tech
, définit au niveau porte logique.
Le fichier de librairie temporelle :
Ce fichier définit les temps de propagations des différentes
cellules. Il y a deux types de librairie temporelle :
- Les librairies non compilées (TLF)
- Les librairies compilées (CTLF)
Ces fichiers sont lus dans le fichier de commande par les commandes suivantes :
- ReadTLF <Chemin> : Librairies non compilées
- ReadCTLF <Chemin> : Librairies compilées
Nous utiliserons ici la librairie compilée suivante :
- /usr/local/cadence-97A/DesignKit/AMS-3.11/artist/HK_0.35/HRDLIB/timing.ctlf
La netlist :
Pearl peut utiliser quatre types de netlists différentes, dont les formats
sont les suivants :
Dans notre cas, nous utiliserons une netlist Verilog, puisque celle-ci
est automatiquement crée lorsque l'on effectue une simulation
logique sous Verilog-XL Integration Control à partir du
Composer-Schematic.
Cette netlist se situe sous le répertoire suivant :
- <Répertoire de travail>/udctr.run1/ihnl/cds0/netlist
4.3 Les commandes principales
Description du circuit :
- DescribeCell cell : Spécifie le type et les ports d'E/S
de la cellule
- DescribeDevice device : Spécifie le type et les connections
de la cellule
- DescribeNet net : Spécifie les propriétés de
la connection
- DescribeNetwork : Spécifie le nombre de noeuds, de cellules et de
chaque type de cellule
- DescribeNode node ou dn (alias) : Spécifie les
propriétés du noeud (ports d'E/S, capacités, etc...)
Contrôles :
- CheckLimits : Contrôle les violations de transitions
- CheckTiming : Contrôles variées temporels
Chemin critique :
- FindPathsFrom clk ^ ou fpf clk ^ : Cette commande donne le
temps de montée et de descente pour chaque noeud.
Il est possible de filtrer afin de n'obtenir simplement que le temps maximal des deux
précédents.
- SetPathFilter -same_node
- FindPathsFrom clk ^
Vérification temporelle :
- Clock clk 0 50
- CycleTime 100
C'est deux commandes définissent une horloge de période 100 ns et
de raport cyclique 0,5.
- TimingVerify : Lance la vérification temporelle
Les commandes de rapports :
- ShowPossibility ou sp (numéro) : Étend le
résumé des différentes possibilités du compte rendu
d'une commande
- Summary : Résumé des possibilités
(Évite de retaper la commande précédente)
Cadence est une marque déposé de Cadence Design Systems,
Inc., 555 River Oaks Parkway, San Jose, CA 95134.