You are on page 1of 16

CAO Initiation Layout Cadence

Initiation au layout de Circuits Intgrs.


Les logiciels de CAO de Cadence permettent la conception du jeu de masques
permettant la fabrication dun circuit intgr partir dun schma lectrique ( par exemple ).
On parle alors de flot de conception. Dans ce TP nous allons parcourir ce flot de conception
partir de la description lectrique dun inverseur jusqu la ralisation de son layout.
La technologie utilise est une technologie CMOS ( AMS CMOS 0,35 m ).

I Etude du layout dun inverseur.


Avant de parcourir le flot de conception nous allons rappeler la structure physique
dun inverseur et la mettre en correspondance avec son layout.

Le dessin ci-dessous rappelle la schmatique dun inverseur et prsente sa vue en coupe de


faon symbolique ( en particulier les dimensions relatives des diffrents lments ne sont pas
respectes ).
in
Vdd

Gnd

Mp1

in

P+

out

N+

Vdd

out
N+

NMOS

P+

P+

N+
2

PMOS

Puit N ( Ntub )

Mn1

Substrat P ( Psub )
Gnd

Contact de polarisation du substrat ( Gnd )

Contact de polarisation du puit ( Vdd )

Cette vue doit vous tre familire. Vous retrouvez le substrat ( semi-conducteur de type P ),
sur lequel sont "gravs" les NMOS. Un NMOS est constitu de deux diffusions ( semiconducteur de type N dop + ), le drain et la source, et dune grille conductrice ( en
polysilicium ) spare du substrat par un oxyde isolant. La source du NMOS est connecte
la masse ( Gnd ), son drain la sortie out et sa grille lentre in.
Les PMOS sont situ dans un puit en semi-conducteur de type N. Un PMOS est constitu de
deux diffusions ( semi-conducteur de type P dop + ), le drain et la source, et dune grille
http://www.emse.fr/~dutertre/enseignement.html

2009

CAO Initiation Layout Cadence

conductrice ( en polysilicium ) spare du substrat par un oxyde isolant. La source du PMOS


est connecte lalimentation ( Vdd ), son drain la sortie out et sa grille lentre in.
On trouve galement un contact de polarisation du substrat ( not 1 ) en SC de type P+,
connect la masse, et un contact de polarisation du puit ( not 2 ), situ dans le puit, en SC
de type N+.
Vous allez maintenant associer cette vue au layout dun inverseur.

Aprs vous tre connect une station ( cf. TP prcdent ) placez vous dans votre rpertoire
de travail et lancez Cadence avec la commande :
Ams_cds tech c35b4 mode msfb &.

( simulation lectrique + dition de layout )

Dans la bibliothque CORELIB, slectionnez la cellview INV0 et ouvrez sa vue layout


( double clic ). Deux fentres apparaissent alors. La premire ( Virtuoso Layout ) contient le
layout de linverseur ( cf. figure ci-contre gauche ).
La seconde, prsente ci-contre droite,
( LSW pour Layers and Selection Window )
permet den visualiser les diffrents masques
( ou layers ).
Le layout de linverseur est ouvert en mode
lecture (cf. menu gauche de la fentre), pour
pouvoir le manipuler plus commodment
crez une nouvelle bibliothque ( TP_layout,
par exemple ) et recopiez y le layout de
linverseur :
( Layout ) Design Save As.
Fermez la fentre et ouvrez le layout que vous
venez de sauver.

Vous pouvez utiliser des rgles ( ou "rulers" )


gradues en m pour effectuer des mesures
sur le layout :
( Layout ) Window Create Ruler
ou le raccourci clavier [k]
( [K] pour les effacer tous )

CAO Initiation Layout Cadence

Un double clic sur le bouton central de la souris permet dafficher la fiche doption associe.
Dans le cas de cet inverseur la hauteur mesure du layout est de 13 m, comme pour
lensemble des "standards cells" proposes par le fondeur ( cf. annexe 3 ).

Visualisation dun layout avec LSW.


Cette fentre permet principalement de contrler la visibilit ( et galement la
"selectionnabilit" ) des diffrents layers du layout.
Le bouton NV ( None Visible ) permet de rendre invisible lensemble des layers lexception
du layer courant ( celui dont ltiquette est encadre dun trait gras, cf. le NTUB dans la
LSW ). Le changement daffichage est valid par [f] ou [F6] aprs avoir activ la fentre du
layout.
Par exemple, si vous souhaitez visualiser uniquement le premier niveau de mtallisation, vous
devez slectionner ltiquette MET1

dg par un clic gauche, cliquer sur NV et mettre

jour laffichage par [F6].


Un clic avec le bouton du milieu sur ltiquette dun layer permet de changer sa visibilit.
Vous pouvez ainsi slectionner volont les layers affiches.
Le bouton AV ( All Visible ) permet de rendre visible nouveau lensemble des layers.

Les boutons AS et NS ( All Selectionnable, None Selectionnable ) ont un fonctionnement


similaire en ce qui concerne la "slectionnabilit" des layers. Un clic droit sur ltiquette dun
layer permet de changer sa "slectionnabilit".

Noms et fonctions des layers "utiles".


Les layers permettent la ralisation du jeu de masques utilis par le fondeur lors des tapes de
la fabrication dun circuit intgr. Elles correspondent la structure physique du circuit final.
( Virtuoso ) Design Summary

pour avoir le dtail de tous les lments ( ici les

layers ) prsents dans un layout donn.


Les layers "utiles" dont nous allons nous proccuper sont les suivants :

NTUB dg

( la notation dg correspond langlais drawing, ce sont les seuls layers qui


auront une traduction physique lors de la fonte du circuit )
Ce layer indique la localisation du puit N.

http://www.emse.fr/~dutertre/enseignement.html

2009

CAO Initiation Layout Cadence

FIMP dg

( Field Implant ) Layer devant tre exactement superpos au NTUB. Il permet


de limiter lapparition de courts-circuits entre les transistors via des structures
MOS parasites.

DIFF dg

Masque dfinissant les rgions de diffusion.

NPLUS dg

Masque correspondant un implant de dopant de type N+, superpos DIFF il


permet la cration des diffusions de type N+.

PPLUS dg

Masque correspondant un implant de dopant de type P+, superpos DIFF il


permet la cration des diffusions de type P+.

POLY1 dg

Layer correspondant au polysilicium de grille. Lintersection de deux layers en


POLY1 et en DIFF correspond la cration dun transistor1.

CONT dg

Masque correspondant la cration dun contact mtallique entre le premier


niveau de mtallisation et le polysilicium de grille ou une diffusion.

MET1 dg

Layer dlimitant le premier niveau de mtallisation. Il est surtout utilis pour


raliser les pistes mtalliques courtes.

MET1 pn

La notation pn ( pour pin ) correspond aux broches utiles pour les simulations
lectriques, elles permettent au logiciels didenfier les entres/sorties.

MET2 dg

Deuxime niveau de mtallisation.

MET2 pn

Broches du niveau de mtal 2.

VIA1 dg

Masque correspondant la cration d un contact mtallique ( un via ) entre les


niveaux de mtallisation MET1 et MET2.

Vous ignorerez les autres layers.

Vous pouvez maintenant visualiser les diffrents layers du layout de linverseur et les faire
correspondre la vue en coupe de linverseur.

Cf. annexe 4.

CAO Initiation Layout Cadence

A titre dexemple, la figure ci-aprs reprend le layout dun NMOS et le dcompose en ses
diffrents layers. La taille du transistor est donne par lintersection entre la DIFF et le
POLY ( ici L=0,35m et W=3m ).

Vous constaterez galement quil existe un certain nombres de contraintes sur les dimensions
des diffrents masques, elles sont imposes par le technologie utilise ( les principales vous
sont donnes dans lannexe 1 ). Par exemple, lespacement minimum entre deux contacts est
de 0,4 m. A chaque technologie sont associes des rgles de dessin propres, leur respect est
vrifi par un logiciel de drc ( Design Rules Check ).

II Edition de layout et simulation post-layout.


Dans cette partie vous allez parcourir lensemble dun flot de conception2, partant de la
description dun inverseur en vue schematic jusqu sa simulation post-layout.
2.1. Principe.
Le schma suivant dcrit lenchanement des tapes suivre pour raliser et valider une
"standard cell" partir dun cahier des charges.

Cration vue
schematic 1

Cration vue
layout
2

Simulation
5

Extraction et
vrification

Cration vue analog_extracted


pour la simulation lectrique

Voir annexe 2 galement.

http://www.emse.fr/~dutertre/enseignement.html

2009

CAO Initiation Layout Cadence

 Cahier des charges : ralisez un inverseur ayant les dimensions suivantes : L=0,35m
Wp=2,4m et Wn=1,5m.
La premire tape consiste crer les vues schematic et symbol correspondantes et vrifier
leur correction.

 La deuxime tape consiste raliser le layout correspondant et vrifier le bon respect


des rgles de dessin ( cf. 2.2 ).

 Lors de la troisime tapes il vous faudra extraire les diffrents lments du layout ( les
transistors et leurs dimensions, et ventuellement les capacits parasites ), vous obtiendrez
alors la vue extracted de linverseur.
Un logiciel de LVS ( Layout Versus Schematic ) vous permettra de vrifier que le layout que
vous avez dessin correspond bien du point de vue fonctionnel au circuit de la vue schematic
( cf. 2.3 ).

Il vous faudra ensuite crer une vue analog_extracted pour pouvoir simuler

lectriquement le circuit correspondant au layout que vous avez dessin ( cf. 2.4 ).

 Et vous pourrez finalement effectuer les simulations post-layout ( cf. 2.4 ).


2.2.Edition de layout et vrification des rgles de dessin.
Les commandes suivantes permettent de crer et de modifier des layouts :

Cration dun rectangle : dans le layer courant slectionn dans la fentre LSW
( Layout ) Create Rectangle
[r]

Cration dune piste : dans le layer courant slectionn dans la fentre LSW
( Layout ) Create Path
[p]
La piste cre est de largeur fixe, on peut la modifier avec la fiche doption ( double clic
bouton central ). Par dfaut, la largeur est prrgle sur le minimum fix par les rgles de
dessin.

CAO Initiation Layout Cadence

Cration dune broche : dans le layer courant slectionn dans la fentre LSW
( Layout ) Create Pin
Une pin ( broche ) sert identifier les E/S de la vue layout et les relier celles des vues
schematic et symbol. Parmi les diffrentes sortes disponibles, vous utiliserez les shape-pin.

Effacer un objet :
( Layout ) Edit Delete
[del]

Copier un objet :
( Layout ) Edit Copy
Dplacer un objet :
( Layout ) Edit Move
[m]

Etirer un objet :
( Layout ) Edit Stretch
[s]

Fondre deux objets en un seul : la condition quils soient raliss dans le mme layer.
( Layout ) Edit Merge
[M]

Dcouper un objet : par exemple pour ouvrir un trou dans un rectangle.


( Layout ) Edit Other Chop
[C]

Crer un contact :
( Layout ) Create Contact
[o] ( comme open, pour "ouvrir" un contact )

http://www.emse.fr/~dutertre/enseignement.html

2009

CAO Initiation Layout Cadence

Cette commande permet de gagner du temps dans la cration des contact entres les diffrents
niveaux du layout (voir la fiche doption qui permet den fixer le nombre et le type). Le
contact cr se comporte comme un objet unique( une Pcell ), bien quil comporte plusieurs
layers de types diffrents, il nest pas possible de les slectionner individuellement. La
commande suivante, permet "dcraser" une Pcell en ses diffrents layers :

Dcomposer un objet en ses diffrents layers :


( Layout ) Edit Hierarchy Flatten
et cocher les options display levels et Flatten Pcell.

Vrification des rgles de dessin ( drc ).


Le logiciel de vrification des rgles de dessin est accessible par :
( Layout ) Verify DRC
Cliquer sur Set Switches, et slectionner loption no_coverage. Vous naurez priori pas
besoin de modifier dautres options, elles doivent tre correctement renseignes par dfaut,
cliquez OK.
Si des fautes ont t commises dans le dessin du layout, elles apparatront alors sous forme de
rectangles clignotants. Leur nombre et leurs causes vous sont dtailles dans la fentre CIW.
Si vous slectionnez un des marqueurs de fautes, vous pouvez afficher sa fiche de proprit
( [q] ) et sa cause. Le menu ( Layout ) Verify fournit un certain nombre de fonctionnalits
que vous pourrez explorer au besoin.
Mthode de travail : nattendez pas davoir fini de dessiner votre layout avant de lancer votre
premier drc. Il est bien plus simple de traiter les erreurs au fur et mesure !

2.3.Extraction des transistors et des capacits parasites, LVS.


Cette tape consiste analyser le contenu dun layout afin den extraire les lments actif
( transistors, diodes ) mais galement, volont ou non, les capacits parasites. On obtient
partir de la vue layout la vue extracted.
Pour activer le logiciel dextraction :
( Layout ) Verify Extract
Le rglage par dfaut des paramtres permet la seule extraction des lments actifs. Pour
obtenir les capacits parasites, vous devrez slectionner le switch capall en pressant le bouton
Set Switches ( ce que vous ferez ).

CAO Initiation Layout Cadence

En tudiant la vue extracted ( ouvrir partir du Library Manager ) vous retrouverez les
diffrents lments extraits. Le menu ( Layout ) Design Summary vous donne le dtail
du contenu de cette vue.

Comparaison Layout Schematic :


Il importe maintenant de vrifier que le layout ralis corresponde bien la vue schematic de
dpart, cette comparaison entre les vues extracted et schematic ( nombre et taille des
transistors, connexions, etc. ) est ralis par loutil de LVS :
( Layout ) Verify LVS
Il apparat alors une fiche doptions dans laquelle vous devez spcifier le nom des deux
cellules comparer. Cliquer alors sur Run. Aprs quelques instants, une fentre apparat et
vous renseigne sur la bonne marche de loutil de comparaison3 ( succeded ou failed ). Pressez
le bouton Output pour obtenir le rsultat de la comparaison, une bonne correspondance entre
les deux vues est indique par le commentaire : The netlists match.
En cas de divergences, celles-ci vous sont dtailles.

2.4.Simulations lectriques post-layout.


Afin de pouvoir simuler lectriquement le layout que vous avez dessin, vous devrez crer
une vue analog_extracted de celui-ci. Pour ce faire, activez le LVS partir de la vue
extracted et cliquez sur le bouton Build Analog ( slectionnez loption include all pour
obtenir une vue tenant compte des capacits parasites, loption none permet de les retirer ).

Avant toute simulation lectrique proprement parler, le simulateur construit un fichier de


simulation : la netlist. Il existe alors plusieurs vues pour une mme cellule ( analog_extracted,
schematic, etc. ), il faut donc indiquer au simulateur celle quil doit choisir pour crer la
netlist, en activant le menu :
( Analog Environment ) Set Up Environment
Les vues prises en compte sont listes dans le champ Switch View List, par ordre dcroissant
de priorit. Dans notre cas, il faut donc ajouter la vue analog_extracted en tte de liste, afin
quelle soit prise en compte la place de la vue schematic.

A ne pas confondre avec le fait que schematic et extracted correspondent.

http://www.emse.fr/~dutertre/enseignement.html

2009

10

CAO Initiation Layout Cadence

Vous pourrez vrifier que les capacits parasites sont intgres la netlist (dans le souscircuit inverseur) par :
( Analog Environment ) Simulation Netlist
Create
Pour revenir une simulation sans extraction, il faut effacer la vue analog_extracted de la
Switch View List, ou bien faire passer la vue schematic en premire place.

III. Compte-rendu de TP.


Cahier des charges ( cf. 2.1 ) : ralisez la "standard cell" dun inverseur ayant les dimensions
suivantes : L=0,35m Wp=2,4m et Wn=1,5m.
Vous vous attacherez dans votre compte-rendu prsenter des simulations mettant en
vidence la diffrence entre simulations avec ou sans capacits parasites ( il est fort probable
que pour obtenir une diffrence significative il soit ncessaire de simuler une chane
dinverseur dune certaine longueur ).

Astuce :
A premire vue il semble impossible de simuler partir de la mme vue schematic deux
chanes dinverseurs, lune comportant les capacits parasites des inverseurs et lautre des
inverseurs idaux. La Switch View List sappliquant tous les inverseurs utiliss.
Une astuce consiste crer une deuxime cellview dinverseur ne comportant que les vue
schematic et symbol. En simulation, ce deuxime inverseur sera reprsent ncessairement
par la vue schematic car il ne possde pas de vue post layout. Il permet donc de raliser une
chane "idale" paralllement une autre partie du design utilisant des cellviews pour
lesquelles il existe des vues analog_extracted.

CAO Initiation Layout Cadence

11

Annexe 1
Les dessins suivants rsument les principales rgles de dessin respecter pour la technologie
utilise dans ce TP ( AMS CMOS 0,35 m c35b4 ). Les doubles flches indiquent les
distances minimales respecter entre les diffrents layers, elles sont donnes en m.

NMOS

0,5

PMOS

0,5

0,25

0,4

0,25

0,4

1,2
0,4

0,35

DIFF

DIFF

0,35

0,4

1,2
0,2

0,2

NPLUS

POLY1

PPLUS

POLY1

0,45

NTUB

POLY1

CONT et MET1

VIA1 et MET2
0,15

0,4
0,15
MET1

0,4

0,2

0,3
0,2
POLY1
0,45
0,4

DIFF

0,6

0,5

MET2
0,5
0,15
MET1

0,5

MET2
0,45

MET1

http://www.emse.fr/~dutertre/enseignement.html

DIFF

0,6

DIFF

2009

12

CAO Initiation Layout Cadence

Annexe 2
Mthodologie de conception dun circuit intgr ( flot de conception ).

Spcifications

( schematic )

non ok

Design

Simulation

DRC

( Design Rules Check )


ok

LVS

( Layout Versus Schematic )


ok

Simulation Post Layout


ok

Fonte circuit

non ok

Layout

non ok

non ok

ok

CAO Initiation Layout Cadence

13

Annexe 3 Notion de "standard cell".


La synthse de circuits numriques est facilite par lutilisation de cellules logiques
lmentaires appeles "standard cells". Leur principale particularit provient du respect de
dimensions verticales standardises (do leur nom), ce qui permet de raliser des circuits
complexes et compacts grce des outils logiciels semi-automatiques.
Ltude de plusieurs "cellviews"de la bibliothque CORELIB permet de retrouver rapidement
les dimensions retenues pour la technologie CMOS 0,35m : elles ont toutes deux rails
dalimentations (MET1) de largeur 1,8m et une hauteur de 13m (cf. fig. a3.1).

1,8 m

vdd

13 m

1,8 m

gnd
variable

a3.1. Dimensions dune "standard cell".

Le respect de ces dimensions facilite leur assemblage ; le seul fait de les positionner cte
cte assure la continuit de leurs rails dalimentation (et galement des puits, des zones de
dopage, etc.). Il ne reste plus qu raliser les interconnections pour obtenir une fonctionnalit
donne (cf. fig. a3.2).

vdd

inv

inv

Dlatch
gnd

interconnexion
a3.2. Assemblage de "standard cell".

Le schma globale dalimentation dun circuit numrique est gnralement constitu par deux
peignes dalimentation (vdd et gnd) inter digits, entre lesquelles sont insrs les "standard
cells" utilises dans le design. Larchitecture globale du circuit correspond alors celle
http://www.emse.fr/~dutertre/enseignement.html

2009

14

CAO Initiation Layout Cadence

prsente figure a3.3 (les interconnexions entre "standard cells" et les pads dentres sorties
ntant pas reprsentes).
vdd

gnd
a3.3. Architecture dun circuit numrique.

A noter quun concepteur de circuit intgr numrique a sa disposition toute une


bibliothque de "standard cells" dj dveloppes. Il peut donc se consacrer la ralisation de
son circuit sans avoir en re-dvelopper les cellules de base. Il aura donc simplement
dcrire son circuit en VHDL (par exemple) puis utiliser les outils de placement routage
fournis par Cadence.

CAO Initiation Layout Cadence

15

Annexe 4 : Dfinition dun transistor.


Lors de la lecture dun layout il est ais de reprer les transistors en mmorisant la rgle
suivante : chaque intersection entre les layers de polysilicium (POLY1) et de diffusion (DIFF)
correspond un transistor MOS (cf. fig. a4.1 ).

POLY1

DIFF

a4.1. Dfinition dun transistor MOS.

La longueur de grille (L pour length) et la largeur de grille (W pour width) se lisent


directement sur le layout et correspondent celles de lintersection POLY1 - DIFF.

Bibliographie.
"Microelectronic Circuits", A.S. Sedra, K.C. Smith, Oxford University Press. ( MIC GEN SEDR )
"Analysis and Design of Analog Integrated Circuits", P.R. Gray, P.J. Hurst, S.H. Lewis,
R.G. Meyer, John Wiley & Sons.

"Design of Analog CMOS Integrated Circuits", B. Razavi, McGraw-Hill.

http://www.emse.fr/~dutertre/enseignement.html

2009

16

CAO Initiation Layout Cadence

You might also like