Documente Academic
Documente Profesional
Documente Cultură
2ME
Page 1
Sommaire
I. 1) 2) 3) a) b) c) 4) Logiciel CADENCE ....................................................................................................................... 3 Gnralits ................................................................................................................................. 3 Lancement du logiciel Cadence ................................................................................................ 3 Gestionnaire de librairie ........................................................................................................... 4 Ouverture ............................................................................................................................... 4 Saisie du schma dinverseur ............................................................................................... 5 Environnement de la simulation .......................................................................................... 8 Dessin des masques .................................................................................................................. 14
2ME
Page 2
I. Logiciel CADENCE
1) Gnralits
Le logiciel CADENCE est un outil qui va servir pour la simulation et pour le dessin des masques. Le passage des donnes entre le concepteur et le fondeur se fait laide dun fichier de type GDSII. Le concepteur va raliser toutes les tapes jusquau dessin des masques. Le fondeur va ensuite rcuprer les donnes pour fabriquer le circuit. Le logiciel Cadence est un environnement unifi pour lutilisation des outils informatiques dorigines diverses. Il permet au concepteur dutiliser ces outils, avec une interface unique pour saisir, partager, communiquer et afficher des informations. Le fonctionnement dun ASIC dpend des caractristiques physiques du circuit ralis par le procd de fabrication. La premire dcision de conception est de choisir la technologie de fabrication de son circuit. Le fondeur utilise un procd de fabrication (appel technologie ) dont il matrise les tapes technologiques. Ce procd va donner aux dispositifs des caractristiques particulires: comme le dun transistor bipolaire ou le Cox dun transistor MOS. Il va galement imposer des contraintes comme la longueur minimale de grille dun transistor MOS. Le fondeur fournit un fichier technologique (Design Kit) qui fournit Cadence ces informations. Il peut aussi fournir des standard cells (cellules lmentaires telles un transistor) ou des outils spcifiques au concepteur. Dans notre cas, on va utiliser Cadence avec le Design Kith cmos8d caractris par une longueur minimale de grille de 0.18um.
2ME
Page 3
Cette fentre est la fentre principale de CADENCE. Cest elle qui va donner les informations en cas de problme. Elle comporte aussi un certain nombre de menus qui sont utiles pour le fonctionnement gnral de CADENCE. Cest la fentre ICFB-LOG. Cette fentre va afficher tous les commentaires ainsi que les ventuels messages derreurs. Toutes les informations qui saffichent dans la fentre ICFB-LOG sont reportes dans un fichier dont le nom et le chemin sont donns dans la partie suprieure. Sur cet exemple, on retrouve toutes les informations affiches dans le fichier CDS.log. Il est aussi possible de charger un fichier ou de dfinir une variable pour CADENCE. Cela se fait par la ligne de commande. Les commandes seffectuent en langage SKILL.
Fig.2: Gestionnaire de librairies: Sur ce gestionnaire, on a trois blocs importants : Library > Cell > View :
2ME
Page 4
Library : elle contient les diffrentes bibliothques qui leur tour (chacune) contiennent toutes les cellules regroupes par types High Speed (HS) optimise pour la rapidit et Low Leakage (LL) optimise pour la consommation minimale et par types de technologie 0.18um et 90nm ... Cell : cest les cellules qui rfrent aux diffrentes portes. Et si on veut les classer par catgories on a qu cocher Show Categories. View : Pour chaque cellule, on a diffrentes vues : Schematic : une vue pour diter le schma lectrique et pour faire les simulations; Symbol : une vue sur laquelle on trouve le symbole de notre porte pour une utilisation comme sousensemble dans un circuit; Layout : cest une description des masques avec lesquelles notre dessin va tre fabriqu; Extracted : une vue destine la vrification lectrique des masques; Abstract : la vue utilise par les outils de placement routage automatique.
Plusieurs menus sont disponibles : TOOLS : outils de conception (simulateur, routage) DESIGN : gestion des vues et options de lditeur WINDOW : gestion de la fentre courante (Zoom) EDIT : commandes ddition ADD : Gestion des composants CHECK : Gestion des erreurs SHEET : Gestion des pages. . La barre doutils sur la gauche de la fentre permet certains raccourcis. Pour connatre la fonction de chaque bouton, il suffit de laisser le pointeur de la souris dessus, et la fonction saffiche. Il existe aussi des touches de raccourci au clavier. Pour ajouter les transistors dans la fentre schmatique, slectionnez Add instance (ou taper i au clavier pour insert). La fentre suivante apparat :
Fig.4 : Fentre permettant linsertion de nouveaux composants A laide de la touche Browse, on va pouvoir slectionner chacun des composants manquant se trouvant dans Library Browser : Pour le transistor NMOS : Dans le library Browser, on slectionnera : la librairie gpdk180 > la cellule nmos > la vue symbol. La fentre de la fig.5 affiche alors les paramtres relatifs ce transistor (nmos) et les boutons pour pouvoir modifier la position du symbole afin de faciliter la lecture du schma (rotation, miroir horizontal, miroir vertical). Pour placer le symbole du dispositif sur le schma, il suffit de ramener le pointeur de la souris dans la fentre ddition et de cliquer sur le bouton de gauche, autant de fois quon veut utiliser le dispositif dans le schma. Les paramtres de ce transistor sont :
2ME Page 6
w= 1um : reprsente la largeur de la grille du transistor; L = 0.18um : reprsente la longueur de la grille du transistor. Son minimum est dfinit par la technologie; Pour le transistor PMOS : Mme chose que NMOS Cration des fils : A partir du menu Add, on choisit la commande wire (narrow); On pointe, avec le bouton de gauche de la souris, sur une pin dun composant; On tire jusqu la pin de lautre composant; On clique pour poser le fils; Et ainsi de suite pour les autres connexions. Ajout de la pin de sortie : On slectionne la commande Pin dans le menu Add. Et on obtient la fentre sur la figure.6 :
Fig.6 :
2ME
Page 7
Dans le champ Direction , on va choisir le type de pin (input, output, input/output). Dans notre cas, cest le type output. Dans le champ Usage , on choisira schematic . Puis, on fait Hide pour placer la pin sur le schma, on clique sur le bouton gauche de la souris. Enfin, il nous reste relier par un fil la pin de sortie au reste du schma de linverseur. Vrification du schma : Il faut ensuite vrifier et sauver le schma final fig.7 : Design > Check and Save La sauvegarde est ncessaire pour la dmonstration. Sans cela, il ne sera pas possible de manipuler cette cellule par la suite.
Fig .7 :
c) Environnement de la simulation
Le schma du circuit raliser est termin. Toutefois, il faut sassurer qui nya pas eu derreur de saisie de schma ou de saisie de paramtres. Pour valider le circuit, on utilise la simulation. Or le schma du circuit raliser ne suffit pas pour la simulation. Do la ncessit dutiliser les cellules test_DC, test_AC et test_tran. Ces trois cellules sont des vues schematic qui utilisent la vue symbol de lamplificateur.
2ME
Page 8
Simulation DC : La simulation DC est un type de simulation qui calcule les points de fonctionnement quand la tension dentre est continue et en fonction dun paramtre dun circuit donn. Pour ce type danalyse, on slectionne la cellule test_DC et on ouvre son schmatic. La fentre suivante apparat (fig.8)
Fig.8 : Cette cellule est constitue dun inverseur, qui est polaris par des sources de tension et des sources de courant. Pour lancer le simulateur: Tools > AnalogArtist Cela ouvre la fentre ciaprs :
Fig.11 :
2ME
Page 9
Fig.9 : Fentre partir de laquelle on lance la simulation Avant de lancer la simulation, il faut dfinir le type de simulation, sa dure et les variables lectriques que lon souhaite visualiser : Type danalyse : Les diffrents types de simulation sont accessibles grce au menu : Analyses > Choose On remarque sur la fentre (fig.10) qui apparat les divers types danalyse. Et pour activer lune dentre elles, il suffit de la cocher, il apparat un ou des cadres de configuration propre chaque type. Pour la premire analyse, on va choisir celle DC. Paramtres de la session : Dans la mme figure (fig.10), on cochera Component Parameter. Il faut ensuite dfinir en fonction de quel paramtre du circuit on dsire visualiser lvolution du point de fonctionnement statique. Pour cela, il faut cliquer sur Select Component (fig.11),puis Slectionner le gnrateur de tension dentre dans la fentre schematic. Le nom du composant saffiche automatiquement. On fera varier la valeur du Gnrateur de 0 1.8v. Et on choisira comme type de balayage (sweep) celui linaire et comme nombre de pas 100 (fig.12).
2ME
Page 10
Fig.10 :
Fig.12 :
Le choix du simulateur ainsi que le choix du directory de stockage des rsultats seffectuent avec le menu : Setup > Simulator/Directory/Host On choisit le simulateur spectre et le rpertoire ~/Simulation. Il est noter que pour certaines simulations, il est possible de stocker les rsultats dans le rpertoire ./tmp local de la machine. Le menu Setup permet aussi de dfinir les bases de travail du simulateur. Par exemple, on slectionnera le menu Tools dans la fentre Analog Artist. Puis, on choisit Setup Corners, la commande qui permet de choisir le fichier des modles des transistors MOS et lditer. Ensuite, on clique sur Save Model File pour la sauvegarde.
2ME
Page 11
Visualisation des rsultats : Dans le menu Output ,on slectionne la commande To Be Plotted puis la commande Select On Schematic pour pouvoir visualiser les signaux voulus. Dans la fentre Schematic, il faut cliquer sur les fils pour visualiser une tension et sur les pins pour un courant. Dans notre cas, on slectionnera le signal dentre positive et celui de sortie de linverseur qui seront indiqu sur le schma par deux couleurs diffrentes. Une fois les diffrents paramtres sont dfinis ainsi que la dure, le pas de simulation et les signaux visualiser, lenvironnement Analog Artist devient fig.13: * Dans le champ Outputs, on a : net7 pour lentre net1 pour la sortie *Dans le champ Analyses, on a le type danalyse (dc), quelles valeurs la simulation va commencer (0v) et finir (1.8v). *Dans le champ Design, on a les noms de la librairie, la cellule et la vue o notre application se trouve.
Fig.13 :
2ME
Page 12
Lancement de la simulation: Dans la fentre Analog Artist, on lancera la simulation en cliquant sur le bouton feu vert. [AnalogArtist] Outputs -> To be Plotted -> Select On Schematic. On slectionnera les deux signaux visualiser sur le schma en cliquant sur les nets correspondant. Puis, le bouton Plot Outputs dans la fentre Analog Artist pour excuter la simulation. Et l, affichage des rsultats de simulation des tensions d'entre et de sortie.
Fig.14 :
2ME
Page 13
Cette fentre sert slectionner la couche physique que lon va dessiner. Loutil LSW permet en outre de modifier lapparence des diffrentes couches.
Les boutons AV, NV, AS et NS permettent de rendre visibles et slectionnables les couches physiques dans la fentre layout.
La dfinition des diffrentes couches se trouve dans le DRM (Design Rules Manual) qui est un document dcrivant toute la technologie gpdk180nm.
2ME
Page 14
a) Ajout de composants dans la vue layout Comme pur la vue schematic, le dessin de linverseur est incomplet. Il manque les transistors NMOS et PMOS par exemple , ainsi que la capacit et la rsistance; la pin de sortie non plus nest pas sur le dessin. Faites une copie pour pouvoir le complter. l arrive que seuls les noms des composants apparaissent. Pour visualiser lensemble des couches : Shift F. Pour importer linstance NMOS : Create instance (ou taper la touch i). A laide de la touche Browse, aller chercher la vue layout du NMOS dans la librairie gpdk180 puis le placer dans la fentre layout. Esc pour quitter la commande. De mme, placez les instances PMOS , Capacit et Resistance. La commande : Windows fit All ou f permet dafficher le design sur lensemble de la fentre. Le but va tre de raliser le layout de linverseur dj simul. Pour cela, il faut connecter le PMOS, le NMOS et la capacit et la rsistance par exemple comme dans le schematic. De plus, leurs paramtres doivent tre identiques ceux dfinis dans le schematic. Pour rgler les paramtres de ces composants, slectionnez en un puis cliquez sur Edit Properties parameter b) Connexion des composants Comme pour la vue schematic, il faut relier les composants que lon vient dajouter au reste du circuit, les connexions se font par des fils de mtal. Pour crer une connexion en mtal, cliquez sur metal1 dg dans la fentre LSW. Puis, dans la fentre layout, choisissez : Create => Path. Cliquez une premire fois (bouton gauche) sur le layout pour indiquer le premier point de la connexion, puis cliquez une fois (bouton gauche) chaque fois que vous voulez que le Path ait un angle. En fin, pour terminer la connexion, appuyez sur Enter. Pour connecter deux niveaux physiques diffrents, on utilise des contacts (connexions Silicium/Mtal, Poly/Mtal) ou des vias (connexions Mtaln/Mtaln+1). Pour ajouter un contact, cliquez sur : Create => Contact. La fentre suivante apparat :
2ME
Page 15
Pour slectionner le type de contact choisissez dans contact type : NTAP : connexion mtal 1 / substrat N PTAP : connexion mtal 1 / substrat P M1_LIL : connexion mtal 1 / LIL (interconnexion locale en Tungstne) M1_N : connesion mtal 1 / implantation N M1_P : connexion mtal 1 / implantation P M1_POLY : connexion mtal 1 / polysilicium M2_M1 : connexion mtal 2 / mtal 1 M3_M2 : connexion mtal 3 / mtal 2 M4_M3 : connexion mtal 4 / mtal 3 M5_M4 : connexion mtal 5 / mtal 4 M6_M5 : connexion mtal 6 / mtal 5
Il est possible de placer plusieurs contact en mme temps, en remplissant les options de la fentre Create Contact : Rows et Colums. Finissez de dessiner la vue layout de linverseur en plaant correctement les composants NMOS et PMOS grce la commande : edit => Move de la fentre layout, puis en les reliant grce des Paths et des contacts. c) Placement de la pin de sortie Il reste placer la pin de sortie. Pour le dessin, nous avons utilis les couches DG. Pour le placement des pins, nous utilisons les couches avec lextension PN (pin). Dans la fentre LSW, slectionnez la couche metal1 pn. Puis, dans la fentre layout, cliquez sur : Create pin. Dans la fentre qui apparat, cliquez sur Shape Pin. Cela va permettre de voir le nom donn la pin.
2ME
Page 16
En plaant les pins, il est important de bien respecter le type input, output etc. Placer une pin Out en output. Dessinez un rectangle avec la souris, puis cliquez pour placer le nom de la pin. Pour quitter la fentre Create Pin, cliquez sur Cancel. Relier alors avec Path en mtal1 dg la pin et le fil sur lequel elle doit tre relie physiquement. d) Fin du layout Dsormais, on a complt le dessin de linverseur. Le layout doit se prsenter comme suit :
Cependant, la phase de dessin nest pas encore finie : il reste vrifier que le circuit dfini par le layout correspond bien au schma lectrique que lon veut implmenter, et que les rgles de dessins quimpose la technologie de fabrication gpdk180 ont t respectes.
2ME
Page 17
Il va falloir alors utiliser les outils suivants : DRC : Design Rule Check pour vrifier les rgles de dessins. Extract : pour extraire une netlist (reprsentation lectrique) du layout LVS : Layout Versus Schematic pour comparer les netlists des vues schematic et layout Le DRC Le DRC a pour but de vrifier si toutes les rgles de dessin ont t respectes. Pour lancer le DRC : Verify DRC Il va alors safficher sur le design, des marqueurs clignotants indiquant les erreurs. Toutes les erreurs saffichent dans la fentre ICFB-LOG. Pour connatre la signification dun marqueur : Verify marker explain Dautres commandes sont disponibles dans le mme menu, pour leffacement, la recherche etc Ds quil ny a plus derreurs de DRC, il faut ensuite vrifier si le dessin des masques correspond bien au schma lectrique. Lextract CADENCE va alors gnrer une vue extracted. Cette vue contient les dessins des masques en couche NT (Net) ainsi que les composants reconnus. Aprs avoir ouvert la vue extracted, faire SHIFT F. On voit alors apparatre les composants reconnus. Il est aussi possible de cliquez sur net et den demander les proprits. Edit properties On peut aussi faire apparatre les connexions lectriques : Design options display puis valider Nets OK Il existe maintenant une vue de la cellule correspondant aux dessins des masques qui contient un schma lectrique, nous allons comparer ce schma avec celui simul. Le LVS Le LVS va se charger de comparer les deux schmas : Verify LVS. La fentre LVS apparat. Slectionner les vues appropries laide de la touche browse de chaque catgorie : Pour le schematic :MyLib /inv/ schematic Pour la vue extracted : MyLib/inv / extracted.
2ME
Page 18
Puis Run. Monitor : Pour visualiser les taches actives ou dj effectues. Output : Pour voir le rsultat du LVS. En fin de LVS, CADENCE indique si celui-ci a abouti ou sil y a eu un problme. En cas de succs, il faut aller voir dans le fichier output si les deux schmas sont bien quivalents : Dans la fentre LVS : Output Le fichier output doit indiquer The net-lists match . Dans le cas contraire, il faut corriger le layout si le schematic est correct. Simulation post-layout (optionnel) Dsormais, les vues schematic et layout sont quivalentes lectriquement. Il est alors possible de gnrer une autre vue extracted qui tiendra compte des rsistances et des capacits parasites du layout. Puis, on pourra relancer une simulation en tenant compte non pas de la netlist du schematic, mais de celle de la vue extracted. Un mauvais routage peut tre fatal
2ME
Page 19
pour un circuit. Sous Analog Artist (ou Analog Environment), ouvrir setup >>Environment. Dans la Switch View List, placer extracted avant schematic. Ainsi en cours danalyse de la netlist, la vue extracted (qui existe) sera considre avant la vue schematic. La vue schematic nest prise en compte quen labsence de la vue extracted, ou bien dans ltat initiale de la Swith View List. Travail demand : 1. Faire le dessin des masques d'un inverseur compatible avec une bibliothque de cellules normalise et donner sous forme d'imprim la vue Layout ralise. 2. Vrifier que les rgles de dessin sont respectes en lanant le DRC (Design Rules Check) et imprimer le rapport qui note le nombre d'erreurs. 3. Faire une extraction, noter les composants reconnus et vrifier la connectivit et faire une impression de la vue Extracted obtenue. 4. Vrifier que les deux vues (schematic et extracted) sont lectriquement conformes en lanant le test LVS et donner comme imprim le rapport des erreurs trouves.
2ME
Page 20