Rabat
sous Cadence
Préparé par :
Safae BATITI
Hicham BOUZEKRI
2002/2003
Table des matières
Introduction
Conclusion
Annexes
Introduction
Ce TP a pour but de relever les caractéristiques temporelles d'une porte AND en utilisant
des simulations électriques. C'est ainsi que les valeurs suivantes seront d'intérêt pour ce TP :
La matrice de timing : dont les éléments représentent le délai entre l'entrée
pinA (puis pinB) et la sortie pinZ.
La matrice de transition : dont les éléments représentent le temps de montée
du signal de la sortie pinZ.
En termes généraux, une simulation permet de comparer le comportement de la solution
trouvée avec les spécifications tout en assurant un certain contrôle des spécifications à l'aide des
chronogrammes de sortie générés.
Les délais relevés varient en fo nction de la charge de la sortie de la porte AND et le
temps de montée du signal d'entrée. Cette charge modélise les blocs ou les cellules qui seront
connectés à la sortie de la porte.
Il faut signaler aussi que les pinA et pinB ne sont pas parfaitement symètrique car les
transistors ne sont pas identiques à 100%.
•Simulation électrique d'une porte AND
sous Cadence
But de la manipulation:
Avant qu'on puisse lancer Cadence, il y a des fichiers de configuration dont on a besoin
dans notre répertoire de travail. Ces fichiers déterminent l'environnement dans lequel Cadence
travaille et les librairies qu'on doit inclure dans la session courante. Afin de configurer
l'environnement de ce TP, il faut se référer à la doc umentation « Préparation des
environnements des TPs en microélectronique » qui se trouve dans le même repértoire que
celui qui contient ce TP. Une fois l'environnement est mis en place et qu'on est sur le compte de
travail, à partir d'une Console on tapera:
> icfb &
Après environ une minute, la fenêtre principale de Cadence qui s'appelle CIW
(Command Interpreter Window) est affiché en bas d'écran :
Ensuite, on va faire appel au gestionnaire de librairie (fig.2) qui affiche toutes les
librairies qu'il trouve dans le « search path ». Il nous donne aussi accès à tout le contenu (Cell,
CellViews...) des librairies et aux commandes pour gérer les « Cells » et les « Views ». On
pourra modifier le « search Path » temporairement en invoquant Tools -> Library Path Editor:
Sur ce gestionnaire, on a trois importants blocs : Library -> Cell -> View
Library : elle contient les différentes bibliothèques qui à leur tour (chacune)
contiennent toutes les cellules regroupées par types High Speed (HS) et Low Leakage
(LL) et par types de technologie H8 (0.18um) et H9 (0.13um) ...
Cell : c'est les cellules qui référent aux différentes portes. Et si on veut les classer par
catégories on a qu'à cocher Show Categories.
View : Pour chaque cellule, on a différentes vues :
Schematic : une vue pour éditer le schéma électrique et pour faire les simulations;
Symbol : une vue sur laquelle on trouve le symbole de notre porte pour une
utilisation comme sous-ensemble dans un circuit;
Layout : c'est une description des masques avec lesquelles notre dessin va être
fabriqué;
Extracted : une vue destinée à la vérification des masques et pour l'extraction des
composants du Layout;
Abstract : la vue utilisée par les outils de placement routage automatique.
Fig.4.a
Fig.4.b
On remp lie les champs « Name » et «Value » comme il est montré sur la fenêtre du
dessus. Puis, on clique sur Add.
Pour caractériser les délais de la porte AND, ST a standarisé les valeurs de la charge et
celles du temps de montée:
cload : (0.003 ; 0.03 ; 0.09 ; 0.18 pF)
tr : (0.03 ; 0.2 ; 0.9 ; 1.5 ns)
Ces valeurs signifient qu'il y aura 16 simulations à faire pour chaque couple entrée/sortie.
Les conditions d'opérations ont également un impact sur les résultats obtenus. Les
éléments suivants doivent être spécifiés pour chaque manipulation :
La tension d'alimentation : Plus la tension est élevée plus les temps de transition
sont courts et la consommation élevée;
La température de l'environnement du circuit : Plus elle est élevée plus les
temps de trans ition sont longs;
Le sens de variation : les circuits électroniques ne présentent pas une symètrie
par rapport un front montant ou descendant. D'où la nécessité de spécifier le sens de
variation du signal d'entrée.
Dans cette manipulation, le modèle timing sera généré pour les conditions suivantes :
Les données fournies dans le fichier.lib (qui est un fichier de synopsys qui contient les
modèles de timing) sont données pour T=40°C. Il faut signaler au simulateur que l'on veut faire
des simulations à cette température :
[AnalogArtist] Setup -> Temperature
Avant de lancer la simulation, on a besoin de mettre en place les valeurs des « Corners »
et les librairies. Ce qui définie le scenario « Default » sur lequel toutes les simulations Corners
sont mises à une valeur typique (typ). La librairie utilisée pour toutes les familles est la seule
disponible dans le DesignKit (DK).
Ceci va se faire à partir de la fenêtre [AnalogArtist] Tools -> *Setup Corners :
C'est une interface garphique de ArtistKit qui est utilisée pour générer le fichier
(ModelFile) appelé Corners et qui contient toutes les directives du simulateur pour aller
chercher les modèles. Les données dont on a besoin pour contrôler le Setup Corners, sont
fournies par Unicad 2.4 Designkits.
La fenêtre sur la figure 6 affiche chaque famille des composants, la valeur des
« Corners » ( c'est un modèle de prévision pour les effets indésirables dûs aux variations du
process de fabrication des transistors) et la librairie qui contient le LibraryFile qui sont
disponibles. On doit sélectionner les valeurs comme il est indiqué sur la figure 6.
Il faut signaler aussi que pour chaque famille, il y a deux types de cellules chacune à sa
propre bibliothèque : High Speed (HS) : optimisée pour la vitesse.
Low Leakage (LL) : optimisée pour la consommation.
Fig.6 : Interface graphique Setup Corners
b. Lancement de la simulation:
On sélectionnera les deux signaux à visualiser sur le schéma en cliquant sur les nets
correspondant.
Puis, le bouton Plot Outputs dans la fenêtre AnalogArtist pour exécuter la simulation.
Et là, affichage des résu ltats de simulation des tensions d'entrée et de sortie.
En ajoutant les marqueurs A et B sur ces courbes, on peut facilement mesurer des délais.
Il suffit ensuite de double-cliquer sur un paramètre pour le changer et relancer une nouvelle
simulation pour continuer la caractérisation de la porte.
Les formes d'ondes sont peut être difficiles à lire, car elles sont tracées sur le même axe.
Nous pouvons faire deux graphiques séparés en choisissant Axes -> To Strip .
5.Compte-rendu:
3.Déterminer la matrice de timing de la porte ainsi que celle de transition en front montant
(Rise) et front descendant (Fall). Donner les résultats sous forme d'imprimé.
4.Faire la même chose pour le signal d'entrée pinB et le signal de sortie pinZ.
5.Faire une comparaison, une première fois entre les résultats obtenus pour pinA et pinB.
Et puis, une autre entre vos résultats et ceux listés dans le fichier.lib attaché en annexe.
Interpréter.
Conclusion
Dans le TP « Simulation de la porte AND sous Cadence », notre but était de spécifier
quelles sont les contraintes timing du circuit. C'est à dire à quel retard est ce que l'on peut
s'attendre entre le moment de la présence du signal d'entrée aux pins d'entrée et le moment de la
présence du signal de sortie aux pins de sortie.
Ceci dans l'intêret d'une utilisation ultérieure d'extraction des détails de timing de circuits
plus complexes utilisants plusieurs milliers de ces portes.
En résumé, on a pu extraire les différentes matrices demandées et remarquer que les
délais entre pins d'entrée et pin de sortie varient proportionnellement avec les variations des
valeurs de cload et tr.
Ainsi, on a pu déduire que la porte AND n'est pas symétrique par rapport aux sens de
variation du signal d'entrée (front montant et front descendant).
Annexe:
Fichier CORELIB8DHS.lib qui liste les différents résultats:
Annexe :
Introduction à Unicad/Cadence :
L'outil utilisé pour les T.P de dessin de masques (TP de la porte logique et de
l'amplificateur miller) utilise le programme icfb de Cadence. Icfb est un environnement intégré
où l'on peut éditer le schéma électrique du circuit, faire sa simulation, et passer au dessin des
masques qui l'implémente.
La simulation électrique est faite en faisant appel à un autre outil : AnalogArtist. Cet outil
est présent sous forme d'élement dans le menu TOOLS de icfb.
Le dessin des masques se fait en faisant appel à un autre outil qui s'appelle Virtuoso, qui
est également présent sous forme d'élement dans le menu TOOLS de icfb. De nos jours, il est
rare d'avoir à fa ire un dessin des masques à partir du neant. Le nouveau dessin des masques n'est
souvent qu'une modification ou une intégration de plusieurs autres dessins contenus dans les
librairies.
icfb permet également de vérifier si le dessin des masques (Layout) effectué corresponds
aux multiples règles de dessin imposées par le fondeur. Cette dernière procédure est appelée test
DRC (Design Rules Check)et doit être effectuée à la fin de chaque dessin des masques pour le
valider.
L'autre vérification est de nature électrique, et permet de s'assurer que le dessin des
masques rempli effectivement les fonctions électriques que contenait originalement notre cahier
de charge. Ce test s'appelle le LVS (Layout Versus Schematic) et se deroule en deux étapes:
D'abord l'étape d'extraction, ou l'outil reconnait automatiquement les transistors et leur
connectique. Puis une étape de vérification où l'on compare le circuit ainsi extrait du dessin des
masques au circuit original pour signaler les discordances au concepteur du circuit.
L'avantage de icfb est de présenter un environnement de travail unie où toutes les
applications sont intégrées.
La conception microélectronique demande beaucoup de précision à l'étape de conception
pour éviter de créer sur silicium des composant s qui ne fonctionnent pas selon leur cahier de
charge. C'est ainsi que des changements (même faibles) dans les conditions d'opération (tel la
température ou la valeur exacte de la tension d'alimentation) peuvent nuire au fonctionnement
normal du circuit. Le logiciel icfb (et les outils qu'il utilise) permet de prendre en compte ces
élements dans ses simulations. Le comportement des transistors utilisés dans les circuits ST pour
les divers conditions de fonctionnement sont sauvegardées dans des librairies, qui ont été
spécifiées dans uk-conf.
Pour la conception de ses circuits, ST a modifié cadence pour lui permettre d'utiliser ses
librairies et qui correspondent à son process de fabrication de circuits intégrés. Le résultat est
l'outil unicad, qu'on invoque aussi en tapant icfb dans un terminal mais qui par rapport à l'outil
icfb de cadence intégré les librairies et d'autres applications propres à ST.