0% ont trouvé ce document utile (0 vote)
56 vues26 pages

Dessin des Masques d'une Porte Inverseuse

Ce document décrit les étapes pour dessiner les masques d'une porte inverseuse en utilisant Cadence. Il explique le lancement de Cadence, la méthodologie à suivre, les étapes de fabrication d'un circuit intégré, les procédures de dessin des masques, la vérification des règles de dessin et l'extraction des paramètres.

Transféré par

esfouna esfouna
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
56 vues26 pages

Dessin des Masques d'une Porte Inverseuse

Ce document décrit les étapes pour dessiner les masques d'une porte inverseuse en utilisant Cadence. Il explique le lancement de Cadence, la méthodologie à suivre, les étapes de fabrication d'un circuit intégré, les procédures de dessin des masques, la vérification des règles de dessin et l'extraction des paramètres.

Transféré par

esfouna esfouna
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

CMG Design Center

Rabat

Consumer & Microcontrollers


Groups

DESSIN DES MASQUES D'UNE

PORTE INVERSEUSE

Préparé par :
Safae BATITI
Hicham BOUZEKRI

2002/2003
Tables des matières

Introduction générale

Objectif

Lancement du logiciel Cadence

Méthodologie

Dessin des masques (Layout):

1. Les étapes de fabrication d'un circuit intégré


2. Procédures à suivre pour faire un dessin des
masques.
3. Vérification des règles de dessin.
4. Extraction du dessin des masques.
5. LVS (Layout Versus Schematic).

Conclusion
Introduction générale :

La technologie CMOS (Complementary Metal Oxide Silicon) est une technologie


destinée au développement des systèmes à très haute échelle d'intégration(VLSI). Grâce
aux propriétés des transistors MOS complémentaires, cette technologie permet de réaliser
des circuits très denses à faible coût et à basse consommation. Cet avantage lui a permis
d'être reconnue comme la technologie de pointe la plus maîtrisée et la plus utilisée dans le
domaine de la microélectronique.
Parmi les types de technologie CMOS, on peut citer les trois qui sont les plus
connues :
•Technologie CMOS à caisson n;
•Technologie CMOS à caisson p;
•Technologie CMOS à double caisson.
On va se restreindre à étudier la technologie CMOS à caisson n, car on va l'utiliser
pour faire le dessin des masques pour une porte inverseuse. Les technologies en CMOS
sont caractérisées par une largeur minimale de transistor. Toutes les mesures relatives à
ces technologies sont regroupées dans un fichier technologique. Pour ce TP, la technologie
utilisée a une largeur minimale de 0.18um.
La technologie CMOS à caisson n utilise un substrat en silicium de type p dans
lequel est formé par diffusion un caisson de type n. Des transistors pMOS sont alors
réalisés dans ce caisson et des transistors nMOS dans le substrat.
Les transistors nMOS et pMOS qui peuvent être réalisés par ces technologies sont
utilisés pour former des fonctions analogiques ou numériques; une coupe transversale de
deux transistors (un nMOS et l'autre pMOS) est donnée sur fig.1. Les procédures de la
fabrication utilisées dans chaque technologie CMOS pour réaliser ces transistors diffèrent
d'un fabricant à un autre et évoluent continuellement pour réaliser des composants plus
performant et plus rapides.

Fig.1

Les grandes étapes de fabrication sont citées dans un paragraphe ultérieur.


Ce TP est dédié à faire connaître les différentes procédures à suivre pour faire
notre dessin des masques d'un inverseur.
•Dessin des masques d'une porte
inverseuse

Objectif :
* Expérimenter l'outil Layout sous Cadence qui permet de créer le
dessin des masques d'un circuit intégré;
* Comprendre les différentes étapes d'un procédé de fabrication CMOS;
* Apprendre à utiliser le vérificateur de règles de dessin intégré à
Cadence;
* Apprendre à utiliser l'extracteur intégré à Cadence qui permet
d'extraire les paramètres d'un circuit à partir d'un dessin des masques. Cette
extraction est nécessaire pour faire une validation électrique du dessin des
masques réalisé.

Lancement du logiciel Cadence :

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 documentation « Préparation
des environnements des TPs en microélectronique » qui se trouve dans le même
répertoire 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 :

Fig.1 : Command Interpreter Window [CIW]

Menu : donne accès aux commandes principales de Cadence.


Ligne de commande : on peut exécuter des commandes sans avoir recours aux
différents menus déroulant.
Ligne de rappel : vous rappelle la prochaine étape que vous devez faire pour compléter
une commande
Historique : affiche l'historique de toutes les commandes exécutées de la ligne de
commande ou à partir des menus déroulant, ainsi que les messages d'erreurs et les résultats
d'exécution.

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 :
[CIW] Tools -> Library Manager

Fig.2: Gestionnaire de librairies:

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.

Méthodologie :
Pour un circuit de grande complexité, la création de son dessin des masques avec
l'outil Cadence peut nécessiter plus d'une année de travail. Le temps requis dépend du
niveau d'optimisation désiré.
L'éditeur des masques demeure une excellente façon de créer les cellules de base
qui peuvent ensuite être utilisées comme des tuiles pour composer un circuit à grande
échelle.
Une technique utilisée pour accélérer la réalisation de ce dessin consiste d'abord à
importer un diagramme squelettique où les positions relatives, les orientations et les
croisements entre les structures importantes sont explicites. Les structures importantes sont
les fils, les contacts et les transistors. Les diagrammes squelettiques sont donc un outil de
travail. Après que l'on aura dessiné notre cellule, on doit utiliser le vérificateur de règles de
dessin intégré à Cadence et une inspection visuelle pour valider notre cellule.
De plus, on doit créer une description (Extract), incluant les capacités parasites, de
notre circuit en format spectre. Il est essentiel de placer des pins entrée/sortie pour identifier
les signaux importants.
Dans notre cas, un squelette de la porte inverseuse existe déjà dans la librairie
TP8D. C'est une cellule qui s'ouvre en lecture seule. Donc pour la compléter, il faudra la
copier ( le plus simple est de copier toute la bibliothèque). La procédure est la suivante:
Sélectionner dans Library Manager, la bibliothèque TP8D;
Dans le menu EDIT, on choisit la commande Copy et on donnera un nom à la
bibliothèque de destination.
Ensuite, pour ouvrir le Layout de la porte IVHS, il suffit de double-cliquer dessus.
On peut alors remarquer l'ouverture simultanée d'une fenêtre d'édition (fig.1) ainsi qu'un
menu LSW (fig.2) (Layer Status Windows) :

La fenêtre d'édition (fig.1) : c'est une fenêtre qui est de type Layout et l'outil de
conception de ce dernier s'appelle le Virtuoso. Toutes les commandes qui concernent le
dessin des masques seront appelées à partir de la barre des menus de cette fenêtre. Pour les
commandes les plus fréquemment utilisées, elles sont représentées dans la barre d'outil à
gauche de la fenêtre, on citera les icônes de :

Zoom In et Zoom Out ;


Move : pour pouvoir déplacer une couche;
Delete :pour supprimer une couche;
Property : pour éditer les propriétés;
Polygon, Path et Rectangle : pour le dessin des différentes couches;
Ruler : la règle qu'on utilisera pour pouvoir respecter les
dimentionnements des couches;
Instance : pour ajouter un composant;
Undo : pour annuler l'action précédante;
Label : pour ajouter un texte;
Copy : pour copier;
Stretch : pour agir sur les dimensions des couches.

Fig.1 : La vue squelettique de la porte IVHS

La fenêtre LSW ( Layer Selection Window) : permet de choisir la couche de


dessin pour chaque forme qu'on crée, de rendre les couches de dessin visibles ou invisibles
ou de pouvoir sélectionner ou pas les composants et les pins. Les éléments de cette fenêtre
sont détaillé dans la fig.2 :
Fig.2 : Layer Selection window

Le champ où est indiqué le nom du fichier technologique qu'on utilise dans


notre cas c'est le DK_hcmos8d;
Le champ d'entrée courante qui montre la couche courante pour la forme à
créer;
Le bouton Inst (Instance) : qui permet de sélectionner ou non la cellule des
composants;
Le bouton Pin : permet de rendre les pins des composants utilisés par les outils
de routage de Cadence sélectionnables ou pas;
Le bouton AV (All Visible) : met toutes les couches en mode visible;
Le bouton NV (None Visible) : met toutes les couches en mode invisible dans la
fenêtre du Layout. Les couches invisibles ne sont pas sélectionnées dans le LSW.
Pour voir le résultat, il faut choisir à partir du menu Window la commande
Redraw;
Le bouton AS (All Select) : met toutes les couches en mode sélectionnable;
Le bouton NS (None Select) : rend toutes les couches non sélectionnées. Quand
la couche n'est pas sélectionnée, on peut la sélectionner dans la fenêtre du Layout.

En ce qui concerne les notations qui accompagnent le nom et le symbole de la


couche, ce sont des extensions dont on va utiliser juste :
Pin (pn) : pour les couches qui représentent les pins In et Out
Drawing (dg) : pour le dessin des masques ( les implantations, les
interconnexions...)
PinText (pt) : pour la nomination des Vdd et gnd...
Dessin des masques (Layout ) :

Une façon de s'initier au dessin des masques et aux règles de dessin d'une
technologie, la DK_hcmos8d dans notre cas, est de commencer par faire un inverseur en
Full Custom (entièrement dessiné à la main). Faire ce dessin à titre d'exercice permettra de
maîtriser la plupart des règles de dessin qu'on doit respecter.

[Link] étapes de fabrication d'un circuit intégré :

La fabrication d'un circuit intégré est superposition de plusieurs couches, semi-


conductrices, conductrices et isolantes. Or un composant ne mesure que quelques microns;
le logiciel utilisé se charge donc de grossir les dessins jusqu'à 500 fois et peut alors dessiner
les plans de chaque étape de fabrication : les photomasques.

Le support des photomasques est une tranche de silicium


(sous forme de disque et obtenue à partir du quartz. Au silicium,
on ajoute le dopant principal, l'élément de type n ou p, qui va
caractériser la base du circuit. Dans le cas des circuits ST, le
substrat est de type p.

Pour protéger le silicium, sa surface est recouverte d'un


oxyde de champ.

Dépôt d'une couche de résine photosensible

Réalisation d'une ouverture de motif bien précis dans l'oxyde


de champ. Cette ouverture contiendra les sources et les drains des
transistors et elle est appelée la zone active. La grille quant à elle
est un dépôt de poly silicium. Elle inclut aussi toutes les lignes
d'interconnexions réalisées en diffusion. On recouvre la tranche
avec de la résine et on l'expose à travers un second masque qui
provoque la polymérisation de la résine; la résine non polymérisée
protégée par le photomasque est enlevée.
Ces opérations sont répétées jusqu'à ce que le motif soit constitué; pour tout
changement de motif, il faut recommencer l'ensemble des opérations et aboutir à la
superposition des différents motif partiels la plus exacte possible. Pour éviter toute
distorsion consécutive à la présence d'une petite bulle d'air, on opère souvent sous vide.
Vient ensuite la phase de dopage. Il y a deux méthodes :
•La diffusion qui s'appuie sur le déplacement des atomes par agitation thermique,
utilisable uniquement pour les matériaux thermiquement stables.
•L'implantation ionique, dans laquelle on opère à température ambiante et utilisée
pour les matériaux thermiquement instables et chaque fois que l'on souhaite
élaborer une couche active d'épaisseur faible et bien contrôlée.

On réalise sur la couche obtenue une découpe


pour pouvoir implanter des ions et avoir une
légère conductivité de type p. Ensuite, on enlève
la résine et on implante du phosphore pour la
diffusion N.

On oxyde la tranche à sec, puis on la recouvre


de poyl-Si qui servira de grille pour le
transistor et aussi une deuxième couche
d'interconnexions. Un troisième masque est
alors utilisé pour graver le poly-Si. Après la
limitation des zones de poly, les régions de
type n sont alors implantées pour réaliser le
drain et la source.

Après réalisation du transistor nMOS, on recouvre toute la plaquette avec une


couche d'oxyde, qui sera ensuite entièrement gravée là où on désire réaliser les contacts.
Une couche de métal est déposée. Dans une étape finale, on recouvre le tout d'une couche
d'oxyde de passivation qui fournit une protection physique du composant. Des ouvertures
sont ensuite réalisées au-dessus des plots de métal pour les connexions.
Un transistor nMOS fabriqué

Pour les étapes de fabrication d'un transistor pMOS dans un substrat p, on doit
créer un caisson de type n (Nwell) dans lequel on va mettre notre transistor pMOS. Cette
opération se fait par implantation sélective du phosphore.

2. Procédure à suivre pour faire un dessin des masques :

La technologie CMOS utilise pour la réalisation d'un inverseur une paire de


transistors complémentaires (un transistor à canal n le NMOS et un transistor à canal p le
PMOS) qui sont montés en série entre la tension d'alimentation et la masse. Tout en
sachant que le transistor PMOS sera contenu dans un caisson de type n et le transistor
NMOS sera mis dans du substrat de type p.
De ce fait, l'interface en noir sera considérée comme étant le substrat de type p.
Et en ouvrant la vue squelettique, on pourra remarquer (fig.1) la présence de cinq
différentes couches qui précisent les limites de notre structure et qui sont :
Le caisson Nwell : qui représente la diffusion ou l'implantation ionique des
puits et c'est réservé pour le transistor pMOS. Ce caisson doit être alimenté en
inverse avec le substrat. Alors, il sera rattaché à Vdd et le substrat P sera rattaché au
gnd pour qu'il n'y est pas de courant de fuite c'est à dire pour que les électrons
(porteurs majoritaires) dans le caisson ne passe pas vers le substrat (qui a comme
porteurs majoritaires les trous) ;
Les couches nldd et pldd : LDD c'est une abréviation de Lightly Doped Drain
qui signifie Drain Légèrement dopé. Cette structure est utilisée comme une
façon de réduire le grand champ dans la jonction drain des dispositifs de petites
géométries dans notre cas le NMOS et le PMOS;
La couche Metal1 en bleu avec l'extension drawing (dg) est présente en haut
et en bas de notre structure qui est réservée pour le routage;
La couche Metal1 (pn) qui est dupliquée de chaque côté de la structure et qui
est mise au-dessous de celle avec l'extension (dg). Elle est utilisée pour
l'implantation des pins (In et Out), des alimentations Vdd et de la masse gnd.

Il faut signaler avant de commencer que :


- La sélection de toutes les couches se fera bien sur à partir de la fenêtre LSW;
- Pour réaliser une couche sous la forme d'un rectangle, on choisira Rectangle
dans le menu Create;
- Dans le même menu, il y a différentes formes qu'on peut utiliser telles que :
Path et Polygon si besoin est;
- Pour déposer ces formes, la procédure est de mettre le curseur n'importe où
sur la fenêtre d'édition, de cliquer avec le bouton gauche de la souris (c'est le
premier coin de notre rectangle). Puis, de tirer pour réaliser le deuxième coin.
Et là, relâcher le rectangle par un simple clique. On verra alors un rectangle qui
apparaît dans la fenêtre et qui porte la couleur de la couche déjà sélectionnée et
ainsi de suite pour les autres couches qui ont la même forme.
- Si toutes fois les dimensions du rectangle déjà déposé ne sont pas correctes,
on peut toujours les corriger en se référant au vérificateur des dimensions qui est
l'outil Ruler (une règle graduée). Pour activer ce denier, il suffit de le
sélectionner dans le menu Window et par un simple clic le poser sur un côté du
rectangle, tirer et s'arrêter quand c'est la dimension voulue.
- Pour agir sur une forme quelconque et lui corriger ses dimensions :
On choisit Stretch à partir du menu Edit;
On met le curseur sur un des côtés du rectangle par exemple de sorte que
la ligne devienne pointillée;
On tire la souris jusqu'à la taille désirée. Et on fait ESC.
Maintenant, on peut entamer notre dessin. Pour le réussir, on aura à se référer à la
vue Layout de la cellule IVHS dont on a copié la vue squelettique et qui se trouve dans la
librairie TP8D. L'astuce est d'essayer de faire le même dessin que sur cette vue. Alors pour
se faire, on suivra la procédure citée à l'avance mais ceci dépendra de la forme qu'on
voudra réaliser :
l
* Couche Nplus (dg) a = 0.480
c b = 0.800
c = 2.080
L l = 1.760
b
L = 3.220
a a
a

* Couche Pplus (dg) : c a a = 0.500


a b = 0.780
L c = 0.480
b l = 1.760
L = 3.660

l
Pour ces deux couches, on aura à utiliser la forme Polygon pour les dessiner.
* Couche Nplus (dg) à l'intérieur du trou restant dans la couche Pplus :
L
l L = 0.780 ; l= 0.480

* Couche Pplus (dg) à l'intérieur du trou restant dans la couche Nplus :


L
L= 0.800
l l = 0.660

* Couche Active (dg) sur laquelle on va réaliser notre PMOS :


L
L = 0.960
l l = 1.240

* Couche Active (dg) sur laquelle on va réaliser notre NMOS :


L
L = 0.960
l l = 0.700

* Couche Active (dg) sur la couche de métallisation réservée pour la source Vdd :
L
L = 0.580
l l = 0.280

* Couche Active (dg) sur la couche de métallisation réservée pour la masse GND:
L
L = 0.600
l l = 0.460

* Couche LIL (dg) (Local Inter-connect Level) : pour les courtes connexions car
elles sont plus résistibles). Il faudra ajouter trois couches :

–Une entre Vdd et la couche active du transistor PMOS (forme Polygon) :


l
a a = 0.240
L b b = 0.600
c c = 1.780
l = 0.840
a L = 2.020
–Une pour faire la connectique entre les transistors PMOS et NMOS :
l

L l = 0.240
L= 2.840

–La troisième pour réaliser la connexion entre le transistor NMOS et la


masse gnd ( forme Polygon) :
a
c a = 0.240
b = 0.600
L b c = 0.980
a l = 0.840
l L = 1.220

* Couche de métallisation pour réaliser les pins In et Out. Pour cela, on aura
recourt à l'utilisation de trois couches de Metal1 :

- Metal1 (dg) et Metal1 (pn) l'une sur l'autre et qui ont les mêmes dimensions :

l = 0.320
L= 0.960
L

l
- Metal1 (pn) : a
a a = 0.320

* Couche de polysilicium qui va servir de grille pour l'inverseur (forme Polygon):


l a = 0.280
a A' = 0.300
D A' A'' = 0.180
b = 0.240 L2 = 1.240
e L1 c = 0.680
D = 1.840
E' b D' = 1.060
H c e = 0.260
b E' = 0.120
f f = 0.360
e h = 0.320
L2 l = 0.480
D' L1 = 1.740
A''
* Couche Contact (dg) :
a
a = 0.240

Reste à réaliser la zone montrée sur la figure3 et qui représente une diode de
protection mise à l'entrée de la porte pour écouler les charges électriques qui sont générées
par certaines étapes du process de fabrication et qui sont collectés par les pistes. Si ces
charges sont trop nombreuses et qu'aucun écoulement n'est possible, le potentiel de
certaines pistes peut monter à des valeurs dangereuses pour le circuit. C'est le cas des
grilles des transistors qui sont complètement isolées. Cette diode est constituée des couches

* Couche Active (dg) : 0.320/0.320


* Couche mdiode (dg) : 0.320/0.320
* Couche LiL (dg) : l = 0.240 et L = 0.720

Fig.3 : Zone montrant la diode de protection de l'inverseur

Pour la superposition des différentes couches et les distances entre elles, on a à


respecter certaines règles qui sont montrées sur la figure 4 :
Fig.4 : Règles de dessin des masques HCMO8D

3. Vérification des règles de dessin :

Pour vérifier les violations des règles faites lors du dessin des masques, on
sélectionnera la commande DRC (Design Rules Check) dans le menu Verify (fig.5). Après
vérification, on pourra consulter le nombre des erreurs et leur type dans la fenêtre CIW. Si
non, ils sont représentés avec un marqueur sur notre dessin. Là, on corrige les erreurs et on
recommence la vérification jusqu'à ce qu'il n'y ait plus d'erreurs.
Fig.5 : La fenêtre DRC (Design Rules Check) :

Sur la fenêtre DRC qui apparaît, on a différentes options :


Checking Method: qui affiche le type de circuit qu'on veut utiliser :

flat : vérifie toutes formes présentent sur le layout;

hierarchical : vérifie les formes à l'intérieur de chaque cellule du layout en


utilisant leur relation hiérarchique et l'optimisation de l'identification du
modèle;

hier W/O optimization : vérifie les formes à l'intérieur de chaque cellule du


layout dans la relation hiérarchique mais n'utilise pas l'optimisation de
l'identification du modèle.

Checking Limit : qui décrit la partie du layout à vérifier :

full : vérifie le layout en entier;

incremental : vérifie les surfaces du circuit qui ont été changées après la
dernière vérification DRC;

by area : vérifie les erreurs à l'intérieur de la surface qu'on définie.


Coordinate : liste les coordonnées de la surface à vérifier.

Sel by Cursor : nous laisse sélectionner la surface pour laquelle on veut vérifier les
règles en cliquant dessus avec la souris.

Switch Names : identifie la section des déclarations dans le fichier technologique


qu'on veut utiliser pour spécifier les vérifications DRC ou Extract pour pouvoir
contrôler la commande courante.

Set Switches : invoque la boîte de dialogue qui contient la liste de tout les switches
dans les règles de DRC/ Extract.

Run-Specific Command File : spécifie soit le fichier dans le répertoire courant


soit le chemin du fichier qui contient les commandes de vérification.

Inclusion Limit : c'est un nombre entier pour inclure ou exclure les cellules lors du
lancement de DRC. Cette option demande à DRC de vérifier toutes les vues de
cellules avec la propriété /Vinclude Value et voir si c'est inférieur ou égal à un
nombre qui est par défaut 1000.

Join Nets With same Name : regroupe les nets électriques qui ont le même nom et
qu'on peut considérer comme un seul net. Cette option connecte les nets dans la vue
de cellule Extracted seulement mais pas dans le layout physique.

Echo Commands : affiche les règles du fichier technologique DRC dans la fenêtre
CIW.

Rules File : spécifie soit la location UNIX du fichier des règles soit, si on spécifie
la librairie des règles, le nom du fichier des règles à l'intérieur de la librairie.

Rules Library : spécifie la librairie d'origine du fichier des règles.

Machine : spécifie la machine à partir de laquelle on va lancer les vérifications.

4. Extraction du dessin des masques :

Une fois le dessin des masques est terminé, il faut en faire l'extraction. Ce qui
revient à dire : reconnaître électriquement les composants et les connectivités pour préparer
le layout pour la vérification LVS (Layout Versus Schematic).
Pour se faire, on fera appel à la commande Extract à partir du menu Verify. C'est à
partir de la fenêtre qui apparaîtra qu'on va lancer notre vérification tout en se référant à la
figure 6.
Fig.6 : La fenêtre d'extraction :

Extract Method : affiche la méthode à suivre pour l'extraction de la connectivité:

flat : établit un réseau électrique;

macro cell : établit un réseau électrique de toutes les cellules Layout à


l'exception des cellules macro. Le résultat est l'unique vue de cellule
Extracted dans laquelle les cellules macro apparaissent comme des
composants;

full hier : extrait le circuit complet hiérarchiquement;

incremental hier : extrait seulement les cellules dans la hiérarchie qui ont
été chargées après la dernière extraction.

View Names : nous permet de réussir l'extraction :

Extracted : spécifie le nom de la vue Extracted. Le nom par défaut est


extracted;

Excell : spécifie le nom de la vue Excell. Le nom par défaut est excell.

Remote Machine Name : spécifie la station de travail ou le serveur qui contient le


logiciel Diva et où la tâche est lancée.
Une vue de cellule du nom de Extracted est alors créée (fig.7) au même niveau que
notre vue de cellule Layout. On peut la visionner tout comme un layout : on remarque les
transistors équivalents et la diode de protection identifiés sur notre dessin.

Fig.7 : La fenêtre représentant la vue Extract :

5. LVS (Layout Versus Schematic) :

Cette opération permet de comparer les netlists des vues schematic et layout d'un
circuit c'est à dire sa fonctionnalité électrique. Pour cela, il faut ouvrir la vue extracted de la
cellule puis choisir LVS dans le menu Verify. Cette commande ouvre une fenêtre (fig.8), il
suffit de remplir les champs demandant (schematic et layout) à comparer puis de lancer le
LVS en cliquant sur le bouton « RUN ».

Fig.8 : La fenêtre de la vérification LVS :

Run Directory : définit le chemin pour le lancement du répertoire. Si le répertoire


qu'on spécifie n'existe pas, LVS le crée.

Create Netlist : crée les netlists pour les vues schematic et extracted. Quand on
voudra lancer le LVS, on doit générer les netlists pour les deux vues. A chaque fois
qu'on apporte des changements aux deux vues, on doit générer une nouvelle netlist
pour chaque vue :

schematic : crée une netlist pour la vue schematic et rend active ou pas la
colonne de cette vue.

library : est le nom de la librairie de la vue de cellule schematic/extracted.

Cell : est le nom de la cellule de la vue schematic/extracted.


view : le nom de la vue de la vue schematic/extracted.

Browse : affiche la librairie Browser. Quand on sélectionne la librairie, le


nom de la cellule et le nom de la vue qu'on choisit, Diva fait entrer
automatiquement l'information sur la vue de cellule dans les cases
adéquates.

Sel by Cursor : remplit le reste des champs avec l'information eue à partir
de la fenêtre de la vue de cellule Extracted qu'on sélectionne avec la souris.

LVS Options : génère le renvoi du fichier texte, les composants fixes et contourne
les erreurs :

Rewiring : change le réseau Extracted et Schematic pour contourner les


erreurs et continuer le process.

Device fixing : utilise les propriétés fixes des composants pour limiter les
permutations de ces derniers.

Create Cross Reference : génère le fichier texte contenant la liste des fils et
des composants créés dans le layout ainsi que la schematic. Le premier
nombre pair réfère au layout et le second nombre à la schematic. Le
nombre de nets commence par un N et ceux des composants par un I.

Terminals : utilise terminals au niveau haut du circuit comme points de


correspondance.

Correspondence File : utilise le fichier affiché dans ce champ.

Create : affiche la forme du point de correspondance. Cette forme nous permet de


créer un fichier contenant les points de correspondance pour le lancement du LVS.

Priority : (0 à 20) spécifie la tâche prioritaire lors du lancement du LVS : la


priorité maximale est le 0 et celle minimale est le 20.

RUN : démarre le programme LVS.

Output : affiche le rapport de sortie du LVS.

Error display : affiche la forme d'affichage des erreurs de LVS.

Monitor : affiche l'information concernant le status courant de la vérification des


tâches, c'est à dire avec lequel on peut visualiser les tâches actives ou déjà
effectuées.

Enfin du LVS, Cadence indique si celui-ci a abouti ou s'il y a eu un problème. En


cas de succès, il faut aller voir dans le fichier Output si les deux schémas sont bien
équivalents.
La fenêtre ci-après montre le dessin final des masques de notre porte inverseuse :

Fig.9 : La fenêtre représentant le dessin des masques final


de la porte inverseuse
6. Travail demandé :

1. Faire le dessin des masques d'un inverseur compatible avec une


bibliothèque de cellules normalisée (cellule de base = IVHS de la librairie
CORLIB8DHS) et donner sous forme d'imprimé la vue Layout réalisée.

2. Vérifier que les règles de dessin sont respectées en lançant le DRC


(Design Rules Check) et imprimer le rapport qui note le nombre d'erreurs.

3. Faire une extraction, noter les composants reconnus et vérifier la


connectivité et faire une impression de la vue Extracted obtenue.

4. Vérifier que les deux vues (schematic et extracted) sont électriquement


conformes en lançant le test LVS et donner comme imprimé le rapport des erreurs
trouvées.
Conclusion

Ce travail a été préparé dans le but d'initier le lecteur à l'outil Layout


(Virtuoso) sous Cadence. Cet outil, comme on l'a vu, est utilisé pour le dessin
des masques des circuits intégrés.
Durant le TP, on a été amené à exécuter les différentes
procédures à suivre pour réussir un dessin des masques et on a pris comme
exemple celui d'un inverseur.
En résumé, on avait commencer par définir les différentes couches,
leurs dimensions, comment les dessiner. Puis, on a enchaîné avec la
vérification des règles de dessin en lançant le vérificateur DRC, l'extraction
des composants et les connectivités et ensuite la comparaison des deux vues
schematic et layout à l'aide de l'outil LVS.
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'élément 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'élément dans le menu TOOLS de icfb.
De nos jours, il est rare d'avoir à faire un dessin des masques à partir du néant. 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 déroule en deux
étapes: D'abord l'étape d'extraction, où l'outil reconnaît 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 uni 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 composants 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 éléments dans ses simulations. Le comportement des transistors
utilisés dans les circuits ST pour les diverses 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.

Vous aimerez peut-être aussi