Support de Cours PSPICE 2010

143
INITIALISATION A LA SIMULATION DE CIRCUITS ELECTRONIQUES SUPPORT DE COURS ___________________________________________________________________________ 2009/10 [email protected]

Transcript of Support de Cours PSPICE 2010

Page 1: Support de Cours PSPICE 2010

II NNII TTII AALL II SSAATTII OONN AA LL AA SSII MM UULL AATTII OONN DDEE CCII RRCCUUII TTSS

EELL EECCTTRROONNII QQUUEESS

SSUUPPPPOORRTT DDEE CCOOUURRSS ___________________________________________________________________________

22000099//1100 [email protected]

Page 2: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

2

Sommaire :

Introduction .............................................................................................................p 4 1 - Simulation électrique sous PSPICE .................................................................p 6

1.1 – Notions de base et rappels ....................................................................p 8 1.2 – PSPICE sous Windows et DOS ...........................................................p 10

1.2.i. Syntaxe du fichier d’entrée (*.CIR) ............................................................... p 10 1.2.ii. Facteurs d’échelle ......................................................................................... p 13 1.2.iii. Eléments électroniques de base .................................................................. p 13

1.3 – Simulations sous PSPICE ....................................................................p 33 1.3.i. Simulation en régime continu ........................................................................ p 33 1.3.ii. Simulation dans le domaine fréquentiel (ou harmonique) ........................... p 36 1.3.iii. Simulation dans le domaine temporelle ...................................................... p 37 1.3.iv. Simulations complémentaires ...................................................................... p 39 1.3.v. Analyses avancées ........................................................................................ p 43 1.3.vi. La directive de simulation .OPTION : ....................................................... p 43

1.4 – Le module graphique PROBE ..............................................................p 45 2 – Simulation sous MICROSIM ...........................................................................p 46

2.1 - Principe de fonctionnement de PSPICE sous Windows .......................p 47 2.2 – Ouverture d’un projet sous Design Manager .......................................p 48 2.3 – Présentation du menu principal de Schematics ....................................p 50 2.4– Saisie du schéma à simuler ...................................................................p 52

2-4.i. Les composants électroniques de bases ......................................................... p 53 2-4.ii. Les sources ................................................................................................... p 55

2.5 – Edition des composants ........................................................................p 59 2.6 – Structures hiérarchiques et sous-circuits ..............................................p 61 2.7 – Simuler et observer les résultats ...........................................................p 62

2.7.i. Simuler .......................................................................................................... p 62 2.7.ii. Observer les résultats de simulation ............................................................. p 67

2.8 – Simuler directement à partir d’un fichier .CIR ....................................p 71 3 – Les fonctions avancées ......................................................................................p 73

3.1. Création d’une macro-fonction ..............................................................p 73 3.2. Les « Goal functions » ...........................................................................p 75 3.3. Analyse des performances ......................................................................p 79 3.4. Fichiers de commande PROBE ..............................................................p 80 3.5. Modifier le symbole d’un composant ....................................................p 81 3.6. Importer des modèles extérieurs ............................................................p 83

3.6.i. Ajout du modèle de la diode 1N757 .............................................................. p 85 3.6.ii. Ajout du modèle de l’AOP TL081 ................................................................ p 86

3.7. La macromodélisation ............................................................................p 89 4 – Quelques exemples sous MICROSIM .............................................................p 101

4.1. – Pont résistif .........................................................................................p 101 4.2. – Circuit RC en régime transitoire .........................................................p 104 4.3. – Circuit RC en régime sinusoïdal .........................................................p 110 4.4. – Analyse paramétrique d’un circuit RLC .............................................p 113 4.5. – Simulation de composants actifs .........................................................p 118 4.6. – Caractéristiques de composants ..........................................................p 120

4.6.i. Diode Zener .................................................................................................. p 120 4.6.ii. Transistor à effet de champ .......................................................................... p 120

4.7. – Calcul du bruit généré par des composants .........................................p 124 4.8. – Simulation de composants numériques ...............................................p 125 4.9. – Simulations statistique Monté-Carlo et Worst-case ............................p 127

5 – Capture ..............................................................................................................p 131

Page 3: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

3

5.1. – Création d’un nouveau projet ..............................................................p 131 5.2. – Travail à partir d’un projet existant .....................................................p 132 5.3. – Barre d’icône .......................................................................................p 132

5.3.i. Icônes de gestion de projet ............................................................................ p 132 5.3.ii. Icônes de placement des composants ........................................................... p 133

5.4. – Gestion de projets ................................................................................p 133 5.5. – Saisir un schéma ..................................................................................p 134

5.5.i. Généralités .................................................................................................... p 134 5.5.ii. Placement des composants ........................................................................... p 135 5.5.iii. Modifications des propriétés des composants ............................................. p 136 5.5.iv. Placement des liaisons ................................................................................ p 137 5.5.v. Alimentation ................................................................................................. p 137 5.5.vi. Impression ................................................................................................... p 138

5.6. – Projets structurés .................................................................................p 139 5.7. – Schéma type ........................................................................................p 139 5.8. – Profil de simulation .............................................................................p 140 5.9. – Lancement de la simulation ................................................................p 141

5.9.i. Analyse paramétrique ................................................................................... p 142 6 – Bibliographie .....................................................................................................p 143

Page 4: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

4

Introduction :

Afin de faciliter la conception de systèmes électroniques performants toujours plus complexes dans des temps toujours plus courts, de nombreux outils de CAO (Conception Assistée par Ordinateur) ont vu le jour ces 20 dernières années. Ils permettent en autre la synthèse automatique de circuits et de systèmes, le dessin (cartes, ASIC, …), la vérification des règles, la testabilité. L’avantage premier de la CAO est qu’elle permet d’éviter la phase de prototypage, ce qui permet en autre une diminution du cout de fabrication.

Figure 0 : Principales étapes de la réalisation d’un système électronique en industrie

La simulation est la première étape dans la conception d’un circuit ou d’un système électronique. C’est suivant le domaine d’application du circuit à réaliser que l’on choisit le simulateur le plus adapté :

Analogique : PSPICE, ELDO, SAUBER, …

Numérique (VHDL, VERILOG, SYSTEMC) : ALDEC, SystemCASS, …

Mixte (VHDL-AMS, VerilogA) : ADV-MS, Simporer, Smash, …

Hyperfréquence : MDS, ADS, … Ces simulateurs peuvent se diviser en trois principales catégories suivant le mode de description employé pour définir le système :

Comportemental : Niveau système o VHDL (Logique) o VHDL-AMS, VerilogA (Logique / Analogique) o Matlab/Simulink (Logique / Analogique) …

Logique : Circuits logiques (Numériques) o Modèles structurels (VHDL, SystemC, …) o Niveaux (0, 1, Z, …) …

Electrique : Circuits analogiques1 o Modèles structurels o Niveaux : Continuum de V et I Logiciel de type SPICE …

1 La simulation de circuits numériques est aussi généralement permise à ce niveau.

Page 5: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

5

1 - Simulation électrique sous PSPICE :

SPICE (Simulation Program with Integrated Circuit Emphasis) est un logiciel développé

par l’université de Berkeley aux Etats Unis (http://www.eecs.berkeley.edu) dans les années 70 en FORTRAN. C’est un simulateur électrique standard qui permet l'analyse statique et transitoire des circuits non-linéaires et l'analyse alternative petit signal des circuits linéarisés.

Le simulateur a été développé à l'université de Berkeley à partir des années 1967 et jusqu'en 1990 : BIAS3 en 1967 pour l'analyse statique des transistors bipolaires puis CANCER (Computer Analysis of Nonlinear Circuits, Excluding Radiation) en 1970, SPICE1 en 1973, SPICE2 en 1975 et SPICE3 en 1980. Il est actuellement figé, et sa dernière version brute SPICE3F5 est distribuée librement sur le réseau internet. Depuis cette époque, si le cœur du logiciel a peu changé, il n’en est pas de même de son environnement. En effet, sa source est gratuite, ce qui a permis aux sociétés spécialisées dans le développement de logiciels de créer et de diffuser différentes versions basées sur SPICE.

Les circuits simulés par le simulateur SPICE peuvent contenir de nombreux éléments de l’électronique : des résistances, des condensateurs, des inductances, des inductances mutuelles, des lignes de transmission, des lignes RC distribuées, des sources de tension et de courant commandées et indépendantes, des interrupteurs, ainsi que des modèles de dispositifs actifs comme des diodes, des transistors bipolaires, des transistors à effet de champ à jonction (JFET), des transistors à arseniure de gallium (AsGa ou GaAs) à effet de champ métal-semiconducteur (MESFET) et des transistors à effet de champ métal-oxyde-semiconducteur (MOS).

SPICE est donc avant tout un logiciel de simulation de composants et de circuits électroniques analogiques puis devenu mixte2 dans ces versions les plus élaborées. Les modèles permettant la simulation des composants sont des modèles issus de la physique des composants et leurs paramètres sont le plus souvent des paramètres physiques. En effet, chaque composant a un comportement spécifique qui est décrit par un jeu d’équations et de paramètres. Ces modèles, basés sur la physique et la mesure (cf. Figure 1.1), sont relativement complets et réalistes, ce qui permet des simulations fiables. Ils sont placés dans des bibliothèques. Toutefois, il est possible de créer, modifier un modèle associé à un composant ou ajouter des modèles que distribuent gracieusement la plupart des constructeurs de composants électroniques.

Figure 1.1 : Représentation fonctionnel de SPICE 2 L’association de circuits analogiques et numériques conduit à un circuit appelé circuit mixte.

Page 6: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

6

Destiné, à l’origine pour l’analyse des circuits électroniques en régime continu (DC), alternatif (AC) et transitoire, la société MicroSim y ajoute ensuite le module graphique PROBE pour donner PSPICE. Différents autres types d’analyses ont ensuite enrichi ce simulateur. Dans la version que nous allons employée dans ce cours, on peut citer :

Analyse de courant continu : Circuits linéaires et non – linéaires o Point de polarisation (I0, V0) ; o Courbe de transfert (Vs/Ve) ; o Caractéristique de dispositifs…

Analyse fréquentielle : Circuits linéaires o Analyse de Fourier; o Diagramme de Bode (GdB, φ);

o Bruit ( )f(I 2n , )f(V 2

n )… Analyse temporelle : Circuits linéaires et non – linéaires

o Oscilloscope ; o Retards (∆t) ; o Distorsions – harmoniques de Fourier…

Analyse statistique (Analyse Monte – Carlo, pire cas), température, sensibilité, …

A l’heure actuelle, la société Cadence est le principal leader dans le marché des logiciels de CAO pour les systèmes électroniques mixtes. Il a d’ailleurs racheter la société MicroSim, à travers la société Orcad.

Ce simulateur électrique de deuxième génération est fonctionnellement construit sur quatre méthodes numériques de base :

1. Une méthode numérique de formulation des équations: la MNA (Modified Nodal Analysis) ;

2. Une méthode numérique de résolution d'un système linéaire: la décomposition LU ;

3. Une méthode numérique d'intégration: trapézoïdale ou Gear2 ;

4. Une méthode numérique d'analyse non linéaire: Newton-Raphson.

Il est représentable par le diagramme fonctionnel de la Figure 1.2. Les résultats de simulation peuvent être imprimés dans un fichier ou traiter graphiquement à partir d'un interpréteur interactif de commandes.

Page 7: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

7

Figure 1.2 : Diagramme fonctionnelle de SPICE

Page 8: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

8

1.1 – Notions de base et rappels :

Un circuit électronique est constitué de deux sortes d’éléments : Les sources (ou générateurs) ; Les composants, eux mêmes classés en deux catégories :

o Les composants passifs (résistances, capacités, …) ; o Les composants actifs (transistors, AOP…).

Les circuits/systèmes électroniques se classent en deux grandes catégories : Les circuits/ systèmes analogiques ; Les circuits/ systèmes logiques (ou numériques). Dans les circuits analogiques, les signaux peuvent prendre toutes les valeurs comprises en –15V et +15V, comme illustré par la Figure 1.3.

Figure 1.3 : Représentation d’un signal analogique quelconque

Dans les circuits logiques (cf. Fig. 1.4), les signaux ne peuvent prendre que deux valeurs, par exemple 0V et 5V, et le passage de l’une à l’autre de ces valeurs se fait très rapidement.

Figure 1.4 : Représentation d’un signal numérique quelconque

On appelle dipôle, un circuit à deux bornes (A et B sur la Figure 1.5.a)). Ainsi, une résistance est un dipôle linéaire et une diode est un dipôle non-linéaire.

a)

b)

Figure 1.5 : a) Schéma équivalent d’un dipôle et b) Schéma équivalent d’un quadripôle

Page 9: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

9

On appelle quadripôle un circuit à quatre bornes (deux bornes d’entrée A et B et deux bornes de sortie C et D sur la Figure 1.5.b)).

Circuits linéaires et non-linéaires :

Un circuit linéaire est un circuit tel que la différence de potentiel à ses bornes et le courant le traversant soient reliés par une relation du type v = ki, où k est une constante. Soient : A i1, correspond v1 = ki1 ; A i2, correspond v2 = ki2; A i1+i2, correspond v = v1 + v2 = k(i1 + i2). Un circuit non-linéaire ne vérifie pas cette propriété (f(A) + f(B) ≠ f(A + B)). Par exemple : Pour une loi du type v = ki2, où k est contant,

o A i1, correspond v1 = ki12 ;

o A i2, correspond v2 = ki22;

o A i1 + i2, correspond v = k(i1 + i2) 2 ≠ v1 + v2.

Pour une loi du type v = ki + k’, où k et k’ sont contant,

o A i1, correspond v1 = ki1 + k’; o A i2, correspond v2 = ki2 + k’; o A i1+i2, correspond v = k(i1 + i2) + k’ ≠ v1 + v2.

Ici, la loi est linéaire mais le circuit ne l’est pas. Exemples : - Composants linéaires : Résistances, capacités, inductances dans les

cas des courants ; - Composants non-linéaires : Varistance, diode, transistors, …

Remarques : - Un circuit linéaire est constitué de composants linéaires. Un circuit

non-linéaire est constitué de composants linéaires et non-linéaires. - Un dipôle passif est un dipôle dont la caractéristique3 statique I-V passe par l’origine (I = 0 ↔ V = 0). Dans le cas général où cette caractéristique n’est pas une droite, le dipôle est non-linéaire. Pour un dipôle passif non-linéaire, la loi d’Ohm V = RI, avec R constant, n’est plus valable. Mais, on peut définir en chaque point P0, le rapport V/I = R(P0). On parle alors de linéarisation.

3 La caractéristique I-V d’un composant est la réponse en courant I à une tension V appliquée à ses bornes. En régime continu, on parle de caractéristique statique.

Page 10: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

10

1.2 –PSPICE sous Windows et DOS :

Dans ce cours, nous allons nous intéresser au cœur de la simulation électronique par l’emploi du logiciel PSPICE.

Sous Windows (Microsim Design Eval 8 ou Orcad 9.1, 9.2), on dessine tout d’abord le schéma électrique (*.SCH) du circuit électrique à simuler à l’aide de l’éditeur graphique PSCHED.EXE en utilisant des composants disponibles dans des librairies ou en les créant (pour créer son propre modèle, on peut éventuellement utiliser PARTS.EXE qui permet de créer des modèles de composants à partir des abaques constructeurs ou réaliser un sous-circuits). Un fichier *.CIR est alors créé à partir du schéma électrique accompli. Après cette saisie, on peut choisir un type de simulation à effectuer. Le logiciel appelle alors automatiquement PSPICE.EXE qui réalise la simulation proprement dite. Les résultats sont fournis soit sous forme de texte *.OUT (affichable avec l’éditeur TEXTEDIT.EXE ), soit sous forme graphique *.DAT (visualisable avec PROBE.EXE). Enfin, deux sauvegardes internes sont créée, avec les extensions *.CBK et *.CFG. Tout cela est résumé à travers la Figure 1.6.

Figure 1.6 : Représentation des différents fichiers propre à SPICE

Sous la version DOS mais aussi avec certains simulateur tel que ELDO, l’éditeur de schéma

n’existe pas toujours. Le circuit doit alors être décrit dans un fichier d’entrée (*.CIR ) par une suite de lignes décrivant le circuit à analyser puis des commandes de simulation. Aussi, il est indispensable de maîtriser la syntaxe de ce type de fichier. De plus, en cas d’erreur de saisie de schéma, lors de la définition de la fenêtre de simulation ou autre4, c’est généralement grâce à la lecture de ce fichier que l’on remarque rapidement ce qu’il faut corriger. 1.2.i. Syntaxe du fichier d’entrée (*.CIR) :

Le fichier d’entrée ou fichier de simulation est l’image du circuit à analyser. Le fichier de simulation SPICE est composée de :

un titre, une "netlist" donnant une description topologique du circuit à analyser à partir du

type et de la valeur des différents composants actifs et passifs et de leur interconnexion,

un jeu de commandes pour fixer les analyses et le type de sortie à réaliser,

4 Penser aussi à regarder le contenu de la netlist et du fichier texte de sortie (*.OUT), lui aussi contient des indications sur l’éventuelle erreur faite.

Page 11: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

11

un jeu de directives de simulation, un jeu de paramètres de contrôle, un jeu de structures de données, une indication de fin de fichier.

La description effectuée dans la netlist est de type Nœud – Branche. Voici la syntaxe

proposée pour ce type de fichier, suivi d’un exemple :

Titre !!OBLIGATOIRE !! * Commentaires Vxx … Ixx … Définition des sources … Rxx … Qxx … Description du circuit (Netlist) … ORDRE .MODEL … .MODEL … Définition des modèles … .DC … .AC … Commandes de simulation PROPOSE .TR … … . PROBE Stockage des résultats … . OPTION … Option de simulation … * Commentaires .END Fin !!OBLIGATOIRE !!

Dans cet exemple, on souhaite réaliser l’analyse fréquentielle de 1 kHz à 1 MHz du circuit

de la figure 1.7, avec une source de tension V1 avec une composante DC de 1 V et une composante alternative de 0.5 V. Les résultats seront visualisés à travers le module graphique PROBE.

Figure 1.7 : Schématic d’un circuit RLC simulé sous SPICE

Cir_RLC * Exemple de fichier d’entrée nommé Cir_RLC V1 1 0 AC 0.5 DC 1 R1 1 2 1K L1 2 3 10U

Page 12: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

12

C1 3 0 1N .AC DEC 10 1K 1MEG * Analyse fréquentielle de 1kHz à 1 MHz avec 10 points par décade .PROBE .END

Syntaxe, grammaire et principales règles à suivre lors de la conception du fichier d’entrée :

⇒⇒⇒⇒ Commencer par l’identification des nœuds et la numérotation (sur papier). Les numéros attribués sont des entiers positifs, pas forcément consécutifs5.

⇒⇒⇒⇒ Un point de référence est toujours nécessaire : la Masse. Elle est toujours notée zéro 0.

⇒⇒⇒⇒ Le fichier d’entrée débute toujours par un Titre et finit toujours par un .END. Au centre, l’ordre de déclaration est arbitraire.

⇒⇒⇒⇒ Pour la description du circuit à proprement parlé (sources et composants du circuit), chaque ligne commence par la référence du composant, où la première lettre indique le type de composant (par exemple, R pour la résistance). Les champs suivant sont l’énumération des nœuds d’interconnexion. Puis, on peut trouver la référence à un modèle, la valeur du composant et éventuellement d’autre valeurs optionnelles6.

⇒⇒⇒⇒ Les commandes ou les directives de simulation commencent toujours par une point dans la première colonne (exemple : .OP).

⇒⇒⇒⇒ Les commentaires commencent toujours par un astérisque (* ) et peuvent être introduits n’importe où entre le titre et le .END.

⇒⇒⇒⇒ Aucune différenciation n’est faite entre minuscule et majuscule. Autrement dit, les identificateurs sont insensibles au casse (Npn = npn = NPN = …).

⇒⇒⇒⇒ Les différentes informations contenues sur une même ligne sont séparées par un nombre arbitraire d’espaces.

⇒⇒⇒⇒ On peut insérer un nombre quelconque de lignes vierges, n’importe où.

⇒⇒⇒⇒ Une ligne débutant par un plus « + » est interprétée comme une continuation de la ligne précédente.

⇒⇒⇒⇒ Sens des courants : dans un dipôle et une source de courant, le sens positif du courant est celui allant de la borne + à la borne -. Pour un générateur de tension, le sens positif est l’inverse, de la borne – à +.

⇒⇒⇒⇒ Broches Non Connectées : On peut souhaiter réaliser une analyse avec le pate d’un composant en l’air (circuit ouvert, haute impédance). Hors, tout nœud à connexion unique est interprété comme une erreur par le simulateur. Pour remédier à ce problème, l’astuce consiste à introduire une résistance de très forte valeur de ce point à la masse (mais cette nouvelle résistance génère une source de bruit supplémentaire qu’il faudra considérer le cas échéant).

⇒⇒⇒⇒ Les commandes d’analyse : .AC = Analyse alternative petit signal,

5 PSPICE admet aussi l’utilisation des lettres et de mots pour identifier les nœuds. D’autre part, si l’on regarde la numérotation des nœuds générée automatiquement par PSCHRD.EXE, celle – ci commencent toujours par $N. 6 Les valeurs optionnelles ont des valeurs prédéfinies. Si vous ne les précisez pas, le simulateur prendra ces valeurs par défaut.

Page 13: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

13

.NOISE = Analyse en bruit,

.PZ = Analyse pôles-zéros,

.SENS = Analyse en sensibilité,

.TF = Analyse de la fonction de transfert,

.DISTO = Analyse des distorsions,

.DC = Analyse statique multipoint,

.OP = Analyse statique monopoint,

.TRAN = Analyse transistoire,

.FOUR = Analyse de Fourier.

⇒⇒⇒⇒ Les commandes de sortie : .PRINT = Sortie listing d'un tableau des valeurs calculées, .PLOT = Sortie listing d'un graphique des valeurs calculées.

⇒⇒⇒⇒ Les directives de simulation : .OPTION = = = = Options, .NODESET = = = = Conditions initiales pour le statique, .IC =Conditions initiales pour le transitoire, .INCLUDE = Inclusion de fichiers, .END = Fin de fichier

⇒⇒⇒⇒ Les structures de donnée : Les modèles (.MODEL ) : certains composants (principalement les dispositifs intégrés)

nécessitent pour leur instanciation un grand nombre de paramètres, et très souvent un circuit utilise beaucoup de ces composants avec le même jeu de paramètres (emploi de la même technologie). Pour cette raison, SPICE permet de définir la notion de modèle qui est une structure de données définie une seule fois avec un nom unique et ensuite instanciée autant de fois que l'on veut en faisant référence à ce nom unique.

Les sous-circuits (.SUBCKT) : le sous-circuit est une structure de données répondant au mêmes principes que les modèles, à la différence près qu'il permet le regroupement de plusieurs instances dans un corps de fichier commençant par la directive de simulation .SUBCKT et se terminant par la directive de simulation .ENDS, et que l'instanciation se fait avec le nom du sous-circuit précédé de la lettre X.

1.2.ii. Facteurs d’échelle :

Symbole

Multiple

Unité

F ou f P ou p N ou n U ou u M ou m K ou k

MEG ou meg G ou g T ou t

10-15

10-12

10-9

10-6

10-3

103

106

109

1012

Femto Pico Nano Micro Milli Kilo Méga Giga Téra

Page 14: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

14

1.2.iii. Eléments électroniques de base : Sources I, V : o Indépendantes :

Continues : IDC, VDC Fréquentielles : IAC, VAC Temporelles : VEXP, ISIN, VPULSE, IPWL, VSSFM, …

o Dépendantes linéaires : Source de Courant Commandée en Courant F Source de Courant Commandée en Tension G Source de Tension Commandée en Courant H Source de Tension Commandée en Tension E

o Dépendantes non-linéaires B

Composants Passifs : o Résistance R o Capacité C o Inductance L

Lignes de transmission :

o Ligne sans perte T o Lignes avec pertes O o Lignes RC uniformément distribuées U

Composants Actifs : o Diode D o Transistor bipolaire Q o Transistor MOS M o Transistor JFET J o Transistor FET à AsGa B o Transistor MESFET Z o Amplificateur OPérationnel (LM324, …) o Circuits logiques (Inverseur, Bascules, …) o Convertisseur Analogique-Numérique (CAN) O o Convertisseur Numérique- Analogique (CAN) N

Composants Particuliers : o Interrupteurs Commandés En Tension S En Courant W

o Couplage inductif K o Fonction logique U o Sous – Circuit X

Composants numériques :

Toutes les fonctions de base: NOT, OR, NOR, AND, NAND, JK, convertisseur A/N, N/A, ROM, RAM, …

Page 15: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

15

1.2.iv. Les composants de la simulation :

Avant de faire une description des sources, il faut tout d’abord connaître les notions liées à la simulation. Les sources peuvent posséder deux paramètres différents (l’un, l’autre ou les deux). Le premier est lié à la simulation fréquentielle, l’autre à la simulation temporelle.

Dans l’analyse fréquentielle (AC Sweep en Anglais), le simulateur transforme le circuit en son équivalent petit signal et fait varier la fréquence des sources sinusoïdales, à l’aide de l’inversion de matrice complexe. Il calcule alors la réponse en fréquence. A cet effet, PSPICE utilise les paramètres d’analyse temporelle des sources (AC et DC), il met de côté les paramètres inutiles (les paramètres définissant des signaux non sinusoïdaux).

Dans l’analyse transitoire ou temporelle (Transient en Anglais), PSPICE effectue une simulation en fonction du temps, c’est la seule simulation qui permet d’observer la forme réelle des signaux. A cet effet, le simulateur utilise les paramètres temporels des sources.

L’analyse continue quand à elle correspond à f = 0Hz, soit t ∞. Pour ces différentes analyses, il faut utiliser différents types de sources :

Sources d’alimentation et d’excitation (STIMULI) :

o Les sources indépendantes :

Source continue : Source employée pour l’analyse continue (DC)

Courant : Ixx <Nœud+> <Nœud-> DC <Valeur> Tension : Vxx <Nœud+> <Nœud-> DC <Valeur>

où Valeur = Valeur de la tension continue appliquée entre les nœuds Nœud+ et

Nœud- ou Valeur du courant continue traversant la branche située entre les nœuds Nœud+ et Nœud-.

Source Alternative : Source employée pour l’analyse fréquentielle (AC)

Courant : Ixx <Nœud+> <Nœud-> AC <Amplitude> <Phase> Tension : Vxx <Nœud+> <Nœud-> AC <Amplitude> <Phase>

où Amplitude7 = Valeur de la tension alternative appliquée entre les nœuds

Nœud+ et Nœud- ou Valeur du courant alternatif traversant la branche située entre les nœuds Nœud+ et Nœud- ; Phase = Déphasage initial (en degré, 0 par défaut).

Source combinée : Source employée pour l’analyse continue et analyse

fréquentielle

Courant : Ixx <Nœud+> <Nœud-> AC <Amplitude> <Phase> DC <Valeur> Tension : Vxx <Nœud+> <Nœud-> AC <Amplitude> <Phase>

Exemples : I1 1 0 AC 0.001 → Source de courant I1 de 1mA dans le domaine

fréquentielle se trouvant entre les nœuds 1 et 0.

7 Généralement mis à 1 pour la détermination aisée d’un gain.

Page 16: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

16

V1 3 1 DC 3.3 → Source de tension V1 de composante continue 3.3V située entre les nœuds 3 et 1. V2 3 0 AC 0.01 DC 3.3 → Source de tension de composante continue 3.3V et d’une amplitude alternative de 10mV situé entre le nœud 3 et la masse 0. VEE 0 VEE DC 15 → Alimentation symétrique continue de 15V entre les nœuds VEE et la masse 0.

Figure 1.8 : Source de tension PWL définie par

V1 1 0 PWL (0, 0) (10u, 5) (50u, 5) (55u, 1) (60u, 0)

Signaux Périodiques : Source employée pour l’analyse temporelle

PWL : Nuage de Points, segments fonction du temps.

PWL(<T1>, <Val1>) ( <T2>, < Val 2>) … (<Tx>, < Val x>)

où Tx = Instant Tx ; Valx = Valeur (tension ou courant) à l’instant Tx.

Courant : Ixx <Nœud+> <Nœud-> PWL(…) Tension : Vxx <Nœud+> <Nœud-> PWL(…)

Exemple : V1 1 0 PWL (0, 0) (10u, 5) (50u, 5) (55u, 1) (60u, 0)

EXP : Somme de deux exponentielles (une croissante et l’autre

décroissante)

EXP(<ValIni> <ValMax> <TpsMont> <T cstMont> <TpsChute> <TcsteChute>)

où ValInit = Valeur initiale (tension ou courant) ;

ValMax = Valeur maximale atteinte ; TpsMont = Temps de début de front montant (0 par défaut) ; TcstMont = Constante de temps du front montant (Tstep par défaut) ; TpsChute = Temps de début de front descendant (Tstep + TpsMont par défaut) ;

Page 17: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

17

TcstChute = Constante de temps du front descendant (Tstep par défaut).

Courant : Ixx <Nœud+> <Nœud-> EXP(…) Tension : Vxx <Nœud+> <Nœud-> EXP(…)

Exemple : V1 1 0 EXP (0 1 1n 5n 10n 5n)

Figure 1.9 : Source de tension EXP définie V1 1 0 EXP (0 1 1n 5n 10n 5n)

PULSE : Impulsion avec un niveau haut et un niveau bas, définies par

différents temps.

PULSE( <ValInit> <ValImp> <TpsRet> <TpsMont> <TpsChute> <TpsImp> <TpsPer>)

où ValInit = Valeur initiale (Etat « OFF ») ; ValImp = Valeur de l’impulsion (Etat « ON ») ; TpsRet = Retard de début d’impulsion (0 par défaut) ; TpsMont = Temps de montée (toujours supérieur à 0, Tstep par défaut) ; TpsChute = Temps de descente (toujours supérieur à 0, Tstep par défaut) ; TpsImp = Largeur de l’impulsion (Tstop par défaut) ; TpsPer = Période (Tstop par défaut).

Figure 1.10 : Source de tension PULSE définie par V1 1 0 PULSE (0 1 1ns 1ns 1ns 5ns 15ns)

Courant : Ixx <Nœud+> <Nœud-> PULSE(…)

Page 18: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

18

Tension : Vxx <Nœud+> <Nœud-> PULSE(…)

Exemple : V1 1 0 PULSE (0 1 1ns 1ns 1ns 5ns 15ns)

SIN : Sinusoïde d’amplitude constante ou amortie.

SIN(<ValOffset> <ValAmpl> <Frq> <TpsRet> <FactAmort> <Phase>)

où ValOffset = Valeur continue ; ValAmpl = Amplitude de la sinusoïde ; Frq = Fréquence du signal sinusoïdal (1/Tstop par défaut) ; TpsRet = Retard du début d’amortissement ; FactAmort = Facteur d’amortissement ; Phase = Déphasage initial (en degré).

Exemple : V1 1 0 SIN (1 1 100M 1n 20M 0) Cette fonction dépendant du temps t a pour équation : V = ValOffset + ValAmpl*exp[(TpsRet-t)*FactAmort]*sin(2*π*Frq *t+ Phase)

Figure 1.11 : Source de tension SIN définie par V1 1 0 SIN (1 1 100M 1n 20M 0)

SFFM : Modulation de Fréquence

SFFM( <ValOffset> <ValAmpl> <FrqPort> <Modulation> <Frq_Signal>)

où ValOffset = Valeur continue ;

ValAmpl = Amplitude de la porteuse ; FrqPort = Fréquence du signal porteur (1/Tstop par défaut) ; Modulation = Amplitude du signal modulant (0 par défaut) ; Frq_Signal = Fréquence du signal modulant (1/Tstop par défaut).

Exemple : V1 1 0 SFFM (1 1 100M 2 30M) Cette fonction transitoire a pour équation : V = ValOffset + sin(2*π*FrqPort*t) + Modulation * sin(2*π*Frq_Signal*t) où t est le temps.

Page 19: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

19

Figure 1.12 : Source de tension SFFM définie par V1 1 0 SFFM (1 1 100M 2 30M)

Rappel : Chaque source temporelle d’un circuit à analyser peut contenir simultanément une

information DC, AC et temporelle (mais un seul type de fonction transitoire par source).

o Les sources commandées :

Le contrôle (la commande) peut être linéaire ou polynomial. Il existe 4 types de sources

commandées : E : Source de Tension Commandée en Tension (STCT)

→ Gain en tension G (s.u.)

Exx <Nœud_Con+> <Nœud_Con-> <Nœud_com+> <Nœud_com+> <Val_G> Exx <Nœud_Con+> <Nœud_Con-> POLY(1) (<Nœud_com+> <Nœud_com+>) Coefficients Exx <Nœud_Con+> <Nœud_Con-> POLY(2) (<Nœud_com1+> <Nœud_com1->) (<Nœud_com2+> <Nœud_com2->) Coefficients

Figure 1.13 : Source de tension commandée en tension

où <Nœud_Con+> et <Nœud_Con -> = Les deux bornes de la source de tension ;

<Nœud_com +> et <Nœud_com +> = Les deux nœuds entre lesquels est prise la tension de commande (V sur la figure 1.13) ; <Val_G> = Gain en tension (G dans le dessin de la Figure 1.13) :

Page 20: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

20

POLY(1) permet de réaliser une source commandée unidimentionnelle (i.e. ne dépendant que d’une seule différence de potentiel) suivant une loi polynomiale tel que :

V’ = G0 + G1*V + G2*V² … + Gn*Vn. POLY(2) permet de réaliser une source commandée bidimentionnelle (i.e.

dépendant de deux différences de potentiel différentes (Va et Vb) appartenant au circuit simulé) suivant la loi suivante :

V’ = G0+G1a*V a+G1b*V b +G2a*V a²+G2b*V b² … +Gna*V an+GnB*V b

n. Exemples : Eampli 3 0 1 2 1E5 → Représentation d’un amplificateur

opérationnel idéal de gain 10000, ayant pour sortie les nœuds 3 et 0 et en entrée, les nœuds 1 et 2. Epoly 3 0 POLY(1) (8 9) 1 0 0 2 → Source de tension Epoly de bornes 3 et 0 dont la tension de contrôle est V = V8 - V9 avec une loi de commande : V’ = 1 + 0*V + 0*Vb + 2*V².

Les mêmes règles s’appliquent aux autres sources commandées ci-dessous. Toutefois, on peut préciser la syntaxe lorsque la grandeur de commande est un courant. Un courant n’est pas défini par deux nœuds mais par le nom d’une source de courant indépendante qu’il traverse (branche). Pour mesurer le courant circulant dans une branche, on intercale parfois une source de tension de valeur nulle (dite source ampèremètre).

G : Source de Courant Commandée en Tension (SCCT)

→ Trancondutance gm (A/V)

Gxx <Nœud_Con+> <Nœud_Con-> <Nœud_com+> <Nœud_com-> <Val_gm>

Gxx <Nœud_Con+> <Nœud_Con-> POLY(1) (<Nœud_com+> <Nœud_com+>) Coefficients Gxx <Nœud_Con+> <Nœud_Con-> POLY(2) (<Nœud_com1+> <Nœud_com1->) Coefficients

Figure 1.14 : Source de courant commandée en tension

F : Source de Courant Commandée en Courant (SCCC)

→ Gain en courant Gi (s.u.)

Fxx <Nœud_Con+> <Nœud_Con-> <Nœud_com+> <Nœud_com-> <Val_Gi>

Page 21: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

21

Fxx <Nœud_Con+> <Nœud_Con-> POLY(1) (<Nœud_com+> <Nœud_com+>) Coefficients

Fxx <Nœud_Con+> <Nœud_Con-> POLY(2) (<Nœud_com1+> <Nœud_com1->) Coefficients

Exemple : Afin de réaliser un transistor bipolaire idéal de gain 300 (cf. Figure 1.15), on utilisera la netlist suivante : Vbase Base Emetteur 0 Ftransistor Collecteur Emetteur Vase 300 → Ici, la première ligne de code introduit une source de tension Vbase égale à 0V entre les nœuds Base et Emetteur (source ampèremètre). La seconde ligne définit un dipôle Collecteur-Emetteur par une SCCC avec un gain de 300 par le courant traversant Vbase.

Figure 1.15 : Schéma équivalent simplifiée d’un transistor bipolaire

H : Source de Tension Commandée en Courant (STCC)

→ Transrésistance R (Ω)

Hxx <Nœud_Con+> <Nœud_Con-> <Nœud_com +> <Nœud_com+> <Val_R>

Hxx <Nœud_Con+> <Nœud_Con-> POLY(1) (<Nœud_com+> <Nœud_com+>) Coefficients

Hxx <Nœud_Con+> <Nœud_Con-> POLY(2) (<Nœud_com1+> <Nœud_com1->)

Remarques : L´utilisation de l´opérateur POLY comporte quelques faiblesses et limitations intrinsèques parmi lesquelles on peut citer : - la complexité de mise en œuvre ; - toutes les fonctions non linéaires ne peuvent pas être décrites à l´aide de polynômes ; - l´impossibilité de décrire un comportement en fréquence.

o Les sources de modélisation comportementales8 :

La modélisation comportementale est une extension des sources contrôlées E et G.

Elle permet une description de toute fonction électronique par une fonction de transfert exprimée littéralement ou sous forme de tableau de valeurs, aussi bien dans le domaine temporel (VALUE, TABLE) que dans le domaine fréquentiel (LAPLACE, FREQ, CHEBYCHEV). Circuits non-linéaires :

8 Attention, suivant la version de PSPICE utilisée, certaines des fonctions décrites ici ne seront pas nécessairement présentes et donc pas nécessairement utilisables.

Page 22: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

22

Une relation indépendante du temps est définie entre l’entrée et la sortie.

Exx <Nœud +> <Nœud -> VALUE=Expression Gxx <Nœud +> <Nœud -> VALUE=Expression

où <Nœud +> et <Nœud -> = Nœuds de la source Exx ou Gxx (tension ou courant) ;

Expression = Equation mathématique entre accolades … contenant des constantes, des tensions en des points du réseau V(i) ou entre deux points V(i,j), des courants traversant des sources I(Vbase) (source ampèremètre).

Exemple : On souhaite créer une tension qui est proportionnelle à la puissance

dissipée dans un composant. Pour cela, il suffit de faire le produit de la tension et du courant le traversant. Attention, sauf si le composant est une source de tension, il faut introduire une source ampèremètre pour mesurer le courant (cf. Figure 1.16) :

Figure 1.16 : Réalisation d’une source de tension proportionnelle à la puissance dissipée dans

une résistance

R 2 0 2k Vamp 1 2 0 Ewattmetre 3 4 VALUE=V(1,0)*I(Vamp) → la tension entre 3 et 4 est proportionnelle à la puissance dissipée.

Remarques : - La possibilité de mélanger tensions et courants rend inutile

l’implantation des sources H et F. - PSPICE admet des commandes récursives. Ainsi, il est parfaitement

possible de définir une source à partir d’elle-même9. - Lors d’une analyse transitoire, le temps peut être introduit par le mot clé TIME (dans le cas où d’autre analyse que la simulation dans le domaine temporelle soit faite, TIME est mis à 0). Par exemple : Eam 6 0 VALUE=10*COS(6.28*1000*TIME) → On a un générateur sinusoïdal (similaire à VSIN) de fréquence 1000Hz et d’amplitude 10V. Mais L’expression doit tenir sur une seule ligne. Dès lors, pour limiter sa longueur, on peur faire appel à la directive .FUNC : .FUNC <Nom> <Expression> .FUNC <Nom> <variables> <Expression>

9 Par exemple, une tension aux bornes d’un dispositif en fonction du courant qui le traverse correspond à la définition d’une impédance.

Page 23: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

23

Exemple : .FUNC E(x) exp(x) .FUNC sh(x) ((exp(x)- exp(-x))/2) → Ici on fait appel à des fonctions préalablement définie dans le simulateur10 (exp).

La fonction TABLE peut aussi être employée :

TABLE(x,x1,y1,x2,y2,…xn,yn)

où si x < x1 alors y = y1, si x > xn alors y = yn. Entre ces limites, il y a interpolation linéaire.

La fonction LIMIT peut aussi être employée :

LIMIT(x,min,max)

où si x < min alors y = min, si x > max alors y = max et si min < x < max. alors y = x.

Utilisation d’un TABLE de valeurs :

La TABLE est une suite de couple de valeurs entrée-sortie (<ValE> <ValS>) entre lesquelles le logiciel effectue une extrapolation linéaire. Au delà des valeurs limites, la tension de sortie reste constante. Cette forme est souvent bien adaptée à la description de caractéristiques non-linéaire tel que les diodes tunnel ou les thyristors UJT.

Exx <Nœud +> <Nœud -> TABLE_Expression=(<ValE> <ValS>) (…) Gxx <Nœud +> <Nœud -> TABLE_Expression=(<ValE> <ValS>) (…)

Exemples : Elimité 2 0 TABLE_Vsortie=(-7.5 -15) (7.5 15) → On a ici un

gain de 2 et une limitation à ±15V. Un transistor unijonction (voir Figure 1.17) peut se définir ainsi :

Vamperemetre 2 0 TABLE_I(Vamparemetre)=(0 0) (10U 10) (1M 1) (20M 20)

Figure 1.17 : Transistor unijonction

Pour un amplificateur idéal de gain 10000, avec un écrêtage à ±15V, on peut définir un sous-circuit11 comme suit :

10 Ces fonctions sont les mêmes que celles présentent dans le module PROBE (voir paragraphe 1.4, plus loin). 11 Voir plus loin pour la syntaxe de description d’un sous-circuit.

Page 24: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

24

.SUBSCKT AOPX0 1 2 3 masse RINDIFF 1 2 10MEG EOUT 3 masse TABLE _V(3)-V(masse)=(-150E-6 -15) (150E-6 + 15) ROUT 3 masse 10MEG .ENDS

Définition de la transformée de LAPLACE : On peut aussi simuler des filtres à partir de leur fonction de transfert en s :

Exx <Nœud +> <Nœud -> LAPLACE_Expression=(Fonction de transfert en s) Gxx <Nœud +> <Nœud -> LAPLACE_Expression=(Fonction de transfert en s)

Exemple : On souhaite réaliser un filtre de Butterworth du 3ème ordre avec le

schéma de la figure 1.18. On veut l’entrée au nœud 1, la sortie au nœud 2, une pulsation de coupure de 1 et un gain à fréquence nul de 0.5.

Figure 1.18: Schématic employé pour la réalisation d’un filtre de Butterworth du 3ème ordre

Vin 1 0 AC 1 R1 1 0 1k R2 2 0 1k EBTW 2 0 LAPLACE_2*V(1)=(1/1+2*s+2*s*s+s*s*s)

Filtre de CHEBYSHEV : Les dernières versions de PSPICE permettent enfin de définir des filtres de Chebyshev à partir de leur gabarit, gains dans la bande passante et coupée et fréquences limites.

Figure 1.19 : Gabarit de différents types de filtres

Page 25: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

25

Exx <Nœud +> <Nœud -> CHEBYSHEV_Expression=<TYPE> <Fréquences de coupure> <Atténuations>

Gxx <Nœud +> <Nœud -> CHEBYSHEV_Expression=<TYPE> <Fréquences de coupure> <Atténuations>

où TYPE = LP pour un filtre passe bas (Low Pass), HP pour passe haut, BP

pour coupe bande. Exemple : Epassebande 4 0 CHEBYSHEV_V(2)= BP 800 1.2k 2k 3k

0.1dB 50dB →Filtre de Chebyshev qui en dessous de 800Hz et au dessus de 3kHz atténue d’au moins 50dB alors que l’atténuation ne dépasse pas 0.1dB dans la bande passante 1.2kHz à 2kHz.

Quelques composants analogiques de base

Résistance : Rxx <Nœud+> <Nœud-> <Val>

Rxx <Nœud+> <Nœud-> <Modèle > <Val> Rxx <Nœud+> <Nœud-> <Val> TC=<TC1>,<TC2> avec <Nœud+> et <Nœud-> = Nœuds de connexion ;

<Modèle > = Modèle employé ; <Val> = Valeur de la résistance. Celle-ci peut être positive ou négative, mais jamais nulle ; TC = Paramètre optionnel de dépendance en température. La dépendance en température est définit comment suit : TNOM = température nominale (27°C par défaut mais peut être modifiée en utilisant la commande .OPTIONS) DT = T – TNOM R(T) = R(TNOM)*(1+TC1*DT+TC2*DT)

Exemples : R25 5 2 2.2K → Résistance R25 de 2.2kΩ entre

les nœuds 5 et 2. Rcc 1 3 100 TC=0.001,.015 → Résistance Rcc de 100Ω entre les nœuds 1 et 3 avec une dépendance en température définie par TC1=0.001 et TC2=0.015.

Capacité : Cxx <Nœud+> <Nœud-> <Val>

Cxx <Nœud+> <Nœud-> <Modèle > <Val> Cxx <Nœud+> <Nœud-> <Val> IC=<Cond Init > avec : IC = Différence de potentiel se trouvant entre les 2

bornes de la capacité en début de simulation lors d’une analyse transitoire12 (soit à t=0).

Exemples : Cin 1 0 1U → Capacité Cin de 1µF entre les

nœuds 1 et 0.

12 Sous la version DOS, le mot clé UIC doit être présent dans l’analyse .TRAN pour que la commande IC soit utilisée.

Page 26: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

26

C1 4 5 POLY(1) 1U .1U .05U → Capacité C1 entre les nœuds 1 et 0 définie comme une fonction non-linéaire de la tension grâce au mot clé POLY et tel que :

C(V) = C0 + C1*V + C2*V² + …+ Cn*Vn, avec n ≤ 20. Soit ici : C(V) = 1U + 0.1U*V + 0.05U*V². Cload X Y 15P IC=5V → Capacité Cload de 15pF entre les nœuds X et Y, avec une condition initiale de 5V appliquée entre les bornes + et – du condensateur.

Inductance Lxx <Nœud+> <Nœud-> <Val>

Lxx <Nœud+> <Nœud-> <Modèle > <Val> Lxx <Nœud+> <Nœud-> <Val> IC=<Cond Init> Exemples : LA 2 3 2M → Inductance de 2mH entre les

nœuds 2 et 3. L1 4 5 POLY(1) 1m .1m .05m IC=.1 → Bobine L1 entre les nœuds 4 et 5 et définie comme une fonction non-linéaire de la tension et tel que :

L(V) = L0 + L1*I + L2*I² + … + Ln*In, avec n ≤ 20. Soit ici : L(V) = 1m + 0.1m*V + 0.05m*V². et aussi avec une condition initiale de I allant du nœud 4 vers le nœud 5) de 0.1A.

Diode : Dxx <Nœud+> <Nœud-> <Modèle >

Dxx <Nœud+> <Nœud-> <Modèle > [area] [OFF] [IC=<icval>] . lib eval.lib . model <Nom> D <Paramètres> avec : <Nœud+> = Anode ;

<Nœud-> = Cathode ; area = Facteur d’échelle (mis à 1 par défaut) ; OFF = Rend la diode bloquée au départ d’une analyse

DC ; <icval> = Valeur initiale du courant pour l’analyse

transitoire. Exemples : D1 1 2 MD

.model MD D IS=100p n=1.8 → Diode de modèle D située entre les nœuds 1 et 2 et appel de ce modèle par défaut D où on modifie deux des paramètres de ce modèle : les valeurs du courant de saturation IS et du coefficient d’émission n (les autres paramètres du modèle, tout aussi modifiables, gardent les paramètres par défaut).

D2 4 2 D1N4148 .LIB EVAL.LIB → Appel de la diode modélisant le comportement de la 1N4148.

Page 27: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

27

Dans le tableau ci-dessous, on trouve la liste des paramètres de l’un des modèles employé par le simulateur pour simuler le fonctionnement d’une diode. Chacun de ces paramètres peut être modifié par l’utilisateur. Il est à noter qu’il existe des modèles plus évolués faisant appel à un nombre de paramètres plus importants.

Nom Définition Unités Valeur par défaut Area

IS RS N TT CJ0 VJ M EG XTI

KF AF FC

BV IBV

Courant de saturation Résistance série

Coefficient d’émission Temps de transit

Capacité de jonction à V=0 Potentiel de jonction

Coefficient exponentiel de la jonction Energie d’activation (gap)

Exposant de la variation du courant de saturation en température

Coefficient du bruit en 1/f Exposant du bruit en 1/f

Coefficient pour la capacité de déplétion polarisée en inverse

Tension de claquage inverse Courant à la tension de claquage

A Ω - s F V -

eV - - - -

V A

1E-14 0 1 0 0 1

0.5 1.11

3 0 1

0.5

Infini 1E-10

* / * *

Transistor Bipolaire : Qxx <C> <B> <E> <Modèle> Qxx <C> <B> <E> [<S>] <Modèle>

Qxx <C> <B> <E> [Substrat] <Modèle> [area] [OFF] [IC=<vbe>,<vce>] . lib eval.lib . model <Nom> PNP <Paramètres> . model <Nom> NPN <Paramètres> . model <Nom> LNPN <Paramètres> avec : <C> = Collecteur ;

<B> = Base ; <E> = Emetteur ; <S> = Subtrat ; <vbe>, <vce> = valeur initiale des tensions pour l’analyse transitoire.

Exemples : Q1 2 7 9 Q2N2222A

.LIB EVAL.LIB → Il s’agit d’un transistor du commerce. Son collecteur est au nœud 2, la base au nœud 7 et son émetteur au nœud 9. Son modèle est donné par le constructeur dans la bibliothèque eval.lib. Q2 3 6 8 MD .MODEL MD NPN BF=100 VAF=10 → Il s’agit d’un transistor NPN où le gain en courant BF et la tension d’Early VAF sont

Page 28: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

28

redéfinies (pour un transistor PNP, le modèle sera appelé par le mot clé PNP).

Le tableau ci-dessous liste les principaux paramètres de l’un des modèles employé par le simulateur pour simuler le fonctionnement d’un transistor bipolaire :

Nom Définition Unités Valeur par défaut Area

IS BF NF

VAF IKF ISE NE BR NR

VAR IKR ISC NC RB IRB RBM RE RC CJE VJE MJE TF

XTF VTF ITF PTF CJC VJC MJC XCJC

TR CJS VJS MJS XTB EG XTI KF AF FC

Courant de saturation Béta max idéal en polarisation directe

Coeff. d’émission pour le courant en direct Tension Early en direct

Coude pour le courant fort en BF Courant de saturation B-E

Coeff. d’émission B-E Béta max idéal en polarisation inverse

Coeff. d’émission pour le courant en inverse Tension Early en inverse

Coude pour le béta inverse Courant de saturation B-C

Coeff. d’émission B-C Résistance de base à polarisation nulle

Courant pour lequel RB diminue de moitié RB min à fort courant Résistance d’émetteur

Résistance de collecteur Capacité de déplétion à VBE=0 Potentiel interne de jonction B-E

Facteur exponentiel de la jonction B-E Temps de transit idéal en direct

Coeff. pour la dépendance pour la base de TF Tension décrivant la dépendance de TF en VBC

Paramètre de fort courant pour TF Excès de phase à la fréquence 1/(2π*TF)

Capacité de déplétion à VCE=0 Potentiel interne de la jonction B-C

Facteur exponentiel de la jonction B-C Fraction de CJC connecté à la base interne

Temps de transit idéal en inverse Capacité de déplétion à vcs = 0

Potentiel interne de la jonction C-S Facteur exponentiel de la jonction C-S

Coeff. En température pour bêta Energie du gap

Exposant de la température pour IS Coeff. du bruit en 1/f

Exposant du bruit en 1/f Coeff. pour la capacité de déplétion en direct

A - - V A A - - - V A A - Ω A Ω Ω Ω F V - s - V A ° F V - - s F V - -

eV - - - -

1E-16 100 1

Infini Infini

0 1.5 1 1

Infini Infini

0 2 0

Infini 0 0 0 0

0.75 0.33

0 0

Infini 0 0 0

0.75 0.33

1 0 0

0.75 0 0

1.11 3 0 1

0.5

* * * * * / * / / / * * * *

Page 29: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

29

Transistor JFET : Jxx <D > <G> <S> <Modèle> Jxx <D > <G> <S> <Modèle> [area] [OFF] [IC=<vds>,<vgs>]

. model <Nom> NJF <Paramètres>

. model <Nom> PJF <Paramètres> avec : <D> = Drain ;

<G> = Grille ; <S> = Source ; <vds>, <vgs> = valeur initiale des tensions pour l’analyse transitoire.

Exemple : J1 2 3 2 0 MD

.model MD NJF → Transistor JFET de type N basé sur le modèle NJF (pour le type P, ce sera PJF).

Le tableau ci-dessous liste les principaux paramètres de l’un des modèles les plus simples employé par le simulateur pour simuler le fonctionnement d’un transistor JFET :

Nom Définition Unités Valeur par défaut Area VT0

BETA LAMBDA

RD RS

CGS CGD PB IS KF AF FC

Tension de seuil Transconductance

Paramètre de modulation de la longueur du canal

Résistance de drain Résistance de source

Capacité de jonction G-S à VGS = 0 Capacité de jonction G-D à VDS = 0

Potentiel de jonction de grille Courant de saturation de la jonction grille

Coeff. du bruit en 1/f Exposant du bruit en 1/f

Coeff. pour la capacité de déplétion polarisée en direct

V A/V 1/V

Ω Ω F F V A - - -

-2 1E-4

0 0 0 0 0 1

1E-14 0 1

0.5

* / / * * *

Transistor MOS : Mxx <D> <G> <S> <B> <Modèle>

Mxx <D> <G> <S> <S> <Modèle> [L=ValL] [W=ValW] [AD=ValAD] [AS=ValAS] [PD=ValPD] + [PS=ValPS] [NRD=ValNRD] [NRS=ValNRS] [OFF] [IC=<vds>,<vgs>,<vbs>]

. model <Nom> PMOS <Paramètres>

. model <Nom> NMOS <Paramètres>

avec : <D> = Drain ; <G> = Grille ;

<S> = Source ; <B> = Substrat (Bulk) ; L = Longueur du canal (100µm par défaut) ; W = Largeur du canal (100µm par défaut) ; AD, AS = Surface des diffusions de drain et de source13 (en m², 0 par défaut) ;

13 Ces valeurs peuvent être modifiées en utilisant la commande .OPTIONS.

Page 30: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

30

PD, PS = Périmètre du drain et de la source (en µm, 0 par défaut) ; NRD, NRS = Nombre de carrés équivalents aux diffusions de drain et de source. Ces valeurs sont multipliées par la résistance par carré RSH pour obtenir les résistances séries de drain et de source (1 par défaut) ; <vds>, <vgs>, <vbs> = valeur initiale des tensions pour l’analyse transitoire.

Différents niveaux de modèles peuvent être utilisés. On peut citer en autre : - LEVEL=1 MOS1, Schichman-Hodges ; - LEVEL=2 MOS2, A. Vladimirescu & S. Liu ; - LEVEL=3 MOS3, Model semi-empirique de A. Vladimirescu & S. Liu.

Nom définition Unités Valeur par défaut

LEVEL VT0 KP

GAMMA PHI

LAMBDA RD RS

CBD CBS IS PB

CGS0 CGD0 RSH CJ MJ

CJSW MJSW

JS TOX

NSUB NSS NFS TPG XJ LD U0

UCRIT

UEXP UTRA

Référence du modèle Tension de seuil

Transconductance Paramètre de seuil pour le substrat

Potentiel de surface Modulation de la longueur du canal (MOS1 & 2)

Résistance ohmique du drain Résistance ohmique de la source

Capacité de la jonction B-D à VBD = 0 Capacité de la jonction B-S à VBS = 0

Courant de saturation pour la jonction substrat Potentiel de la jonction substrat Capacité de recouvrement G-S Capacité de recouvrement G-D

Résistance par carré des diffusions drain et source Capacité de la jonction substrat vertical à V =0

Coeff. exponentiel de la jonction substrat vertical Capacité de la jonction substrat horizontal à V =0 Coeff. exponentiel de la jonction substrat horizontal

Densité de courant de saturation de la jonction substrat Epaisseur d’oxyde Dopage du substrat

Densité d’états de surface Densité d’états de surface rapides

Type de matériau de grille (1=-B, -1=B, 0 sinon) Epaisseur de la jonction métallique

Diffusion latérale Mobilité de surface

Champ critique pour la dégradation de mobilité (MOS2)

Exposant du champ critique pour la mobilité (MOS2) Coeff. du champ transverse de dégradation de mobilité

- V

A/V V0.5 V

1/V Ω Ω F F A V

F/m F/m Ω/ F/m

- F/m

- A/m M

cm-3 cm-2 cm-2

- m m

cm/Vs V/cm

- -

1 0

2E-5 0 .6 0 0 0 0 0

1E-14 .8 0 0 0 0 0

0.5 0

.33 1E-8 1E-7

0 0 1

1U .8U 600 1E4

0 0

Page 31: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

31

VMAX NEFF XQC KF AF FC

DELTA THETA

ETA KAPPA

Vitesse de drift maximale des porteurs Coeff. de charge totale du canal

Proportion de charges du canal attribuée au drain Coeff. du bruit 1/f

Exposant du bruit 1/f Coeff. pour la capacité de déplétion en direct

Effet de largeur sur la tension de seuil (MOS2 & 3) Modulation de mobilité (MOS3)

Feedback statique (MOS3) Facteur de champ de saturation (MOS3)

m/s - - - - - -

1/V - -

0 1 1 0 1 .5 0 0 0 .2

Exemple : Mc 2 3 2 0 MD W=10U L=1U

.model MD NMOS → Transistor NMOS, faisant appel au modèle nommé NMOS de largeur de grille 10µm et de longueur 1µm, les autres paramètres restent ceux par défaut. .MODELE nmos1 NMOS LEVEL 1 TOX=1.264e-8 + KP=100e-6 LAMBDA=0.03 VT0=0.7 + GAMMA=0.8 PHI=0.5 CJ=0.35e-3 MJ=0.450 + CJSW=0.31e-9 MJSW=0.49 mn1 d1 g 0 0 nmos1 W=47u L=1.0u → Transistor NMOS, faisant appel au modèle nommé NMOS de level , avec de largeur de grille 47µm et de longueur 1µm. Ici, un certain nombre de paramètre ont été modifié.

Les structures hiérarchiques et sous - circuits :

Afin d’alléger le fichier d’entrée, principalement quand une structure se répète plusieurs fois, on associe un ensemble d’éléments à un bloc nommée sous-circuit. La syntaxe employée est alors la suivante :

.SUBCKT <nom> <nœud_1> <nœud_2> … <nœud_X> … … Description des branches identiques (Netlist)

.ENDS Exemple : Afin de réaliser la simulation du circuit de la figure 1.20, on va créer la netlist du sous-

cicuit correspondant à la figure 1.21 : CircDoubleRC Vin 1 0 AC 1 .subckt SS_circuit n1 n2 n3

R1 n2 n3 1k C1 n1 n2 1n

.ends … XscRC1 1 2 0 SS_circuit XscRC2 2 3 0 SS_circuit … .end

Page 32: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

32

Figure 1.20 : Double circuit RC

Figure 1.21 : Sous-circuit réalisé d’un RC

Page 33: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

33

1.3 – Simulations sous PSPICE :

Ces simulations ne sont pas exclusives et peuvent être définies simultanément dans le même fichier pour une exécution enchaînée. Les commandes qui suivent ne génèrent des informations que sur la spécification des commandes .PRINT, .PLOT ou .PROBE. Nous nous attarderons ici sur les analyses principales.

1.3.i. Simulation en régime continu :

Le régime continu correspond à un signal indépendant du temps. Seules les sources DC sont alors considérées, les autres sources sont ignorées. Les sources de courant non continues sont alors des circuits ouverts14 et les sources de tensions non continues deviennent des court-circuits15. Différentes commandes sont disponibles en fonction de ce que l’on veut visualiser :

o .OP : Analyse du point de fonctionnement (I0 – V0).

Par cette commande, on évalue le courant de chaque branche et les tensions de tous les nœuds du circuit dans des conditions d’état stable établies. Le calcul de ce point est effectué en remplaçant les capacités par des circuits ouverts et les inductances par des court-circuits. Pendant ce calcul, on rappellera que seuls sont considérés les sources définies en continue, les autres étant ignorées. Il est aussi à noter que ce calcul est systématiquement effectué avant chaque analyse en continu ou temporel, la commande .OP ne sert qu’à générer le détail de ce calcul dans le fichier de sortie. Syntaxe : L’appel de la commande dans le fichier d’entrée est simplement : .OP. Elle ne requière aucun argument supplémentaire ou définition de grandeur de sortie.

o .DC : Analyse de balayage en continu.

Elle permet de simuler la variation continue d’un paramètre du circuit ou d’affecter des valeurs à un paramètre à modifier et d’en mesurer les conséquences (par exemple, la variation du courant en fonction de la tension appliquée).

On peut la considérer comme une succession de calculs de point de fonctionnement, où la liste de ces points de calcul est déterminée soit par sa loi de variation (linéaire LIN, Décimal DEC et Octale OCT), soit par une liste d’échantillons.

Pour des raisons de rapidité de calcul, ce calcul n’est pas effectué pour chaque itération mais par extrapolation du résultat du premier point puis des deux derniers points calculés afin de servir de base de calcul du point suivant.

Certaines limitations sont cependant à remarquer. En effet, l’analyse en continu ne permet pas de simuler : - des charges de capacités autour d’une valeur moyenne ;

14 Idéalement, leur impédance est infinie. 15 Impédance idéalement nulle.

Page 34: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

34

−=

...

...

Ij

...

Ij

...

...

...

...

Vk

...

Vj

...

...

*

.....................

.....................

.....................

......Rk/1......Rk/1...

.....................

......Rk/1......Rk/1...

.....................

Figure 1.22 : Illustration de la matrice des

admittances

- des phénomènes non linéaires intervenant entre deux points simulés. Syntaxe :

.DC <Loi_Var> <Variable> <Valeur_Deb> <Valeur_Fin> <Pas>

.DC <Loi_Var> <Variable> <Valeur_Deb> <Valeur_Fin> <Nb_Points>

.DC <Variable> LIST <Valeur1 > <Valeur2 >…<ValeurX >

où Loi_Var = Mode de variation du paramètre (LIN, DEC ou OCT) ; Variable = Nom du paramètre variant ; Valeur_Deb = Valeur initiale du paramètre ; Valeur_Fin = Valeur final du paramètre ; Pas = Pas de variation ; Nb_Points = Nombre de points simulés entre Valeur_Deb et Valeur_Fin ; LIST … = Suite de valeurs prises successivement le paramètre.

Exemple : .DC VIN -0.25 0.25 0.05 → Le générateur de tension VIN

varie de -0.25V à 0.25V par pas de 0.05V. .DC TEMP LIST -50 0 20 50 80 → Calcul de cinq points de polarisation en fonction de la température (TEMP). Il est à noter que la commande .TEMP LIST -50 0 20 50 80 permet une simulation équivalente.

Algorithme de simulation :

- Pour les circuits linéaires, on peut résumer l’algorithme de simulation en régime continu par le diagramme suivant :

1 - Description de la structure du circuit

2 - Analyse de la description

3 - Mise sous la forme d’un système mathématique de la

forme [Y] * [V] = [I] (méthode nodale, cf. Figure 1.22).

4 - Résolution numérique du système

(méthode du pivot, …)

5 - Résultats : V1, V2, …, Vj

Page 35: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

35

Remarque : Le calcul du couple (I, V) sous SPICE emploie la méthode nodale à partir de la matrice des admittances [Y] (inverse de l’impédance) et les vecteurs courants [I] et des tensions [V]. Ceux-ci ont précédemment été établis à partir de la netlist du fichier d’entrée.

- Pour les circuits contenant des éléments non-linéaires (circuit, par conséquent, non-

linéaire), après avoir effectué les deux premières étapes de l’algorithme précédent, la procédure suivie devient :

3 - Linéarisation des composants (Développement de Taylor au 1er ordre)

I = I0 + [dI/dV] * [V-V0] = G* V + F ⇒⇒⇒⇒ Modèle linéarisé des composants

4 - Mise sous la forme d’un système mathématique de la forme : [Y] * [V] = [I]

5 - Résolution du système et comparaison au modèle réel

Oui 6 - Convergence Non Les valeurs (I, V) obtenues à la Xième itérations vérifient ou non à un epsilon près les valeurs trouvées avec le modèle réel (Algorithme de Newton-Raptson,…).

Fin Solution ou non convergence

Exemple d’un circuit à diode :

Figure 1.23 : Illustration de la méthode utilisée lors d’une analyse DC pour un circuit non-linéaire

Page 36: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

36

Id = Is [exp(qVd/nkT) - 1] → dId/dVd = (qIs/nkT)exp(qVd/nkT) ≈ (q/nkT) (I – I0)

→ Linéarisation: Id = I0 + (dId/dVd)*(V - V 0)

≈ (q/nkT) (I0 - Is)*V - (q/nkT) (I0 - Is)*V 0 – I0

≈ G * V – F

1.3.ii. Simulation dans le domaine fréquentiel (ou harmonique) :

Le simulateur procède d’abord à la linéarisation (développement limité à l’ordre 1) de tous les composants du circuit électrique autour du point de fonctionnement. Puis, la simulation proprement dite est effectuée à partir de ce schéma équivalent petit signal obtenu. Il fait alors varier la fréquence des sources sinusoïdales16. A l’aide de l’inversion de la matrice complexe des admittances, le simulateur calcule alors la réponse en fréquence (méthode nodale). Les sources autres qu’alternatives sont alors ignorées dans ce schéma électrique équivalent. Il est à noter que ce type d’analyse ne permet pas la détection de la saturation et de non-linéarité(s) de certains composants. Il est donc nécessaire de vérifier, au préalable, que le circuit se trouve dans une zone de linéarité du montage par une analyse temporelle. Dans le cas contraire, cela peut conduire à des erreurs et donc une mauvaise interprétation des résultats observés.

o .AC : Analyse fréquentielle

Par ce type d’analyse, il est possible d’obtenir un certain nombre de paramètres de performance du circuit des plus pertinents (voir Remarques).

Syntaxe : .AC <Loi_Var> <Nb_Points> <Frq_Deb> <Frq_Fin>

où Loi_Var = Loi de variation (LIN, DEC ou OCT) ;

Nb_Points = Nombre de points par unité de variation ; Frq_Deb = Fréquence de début d’analyse ; Frq_Fin = Fréquence de fin d’analyse.

Exemple : .AC DEC 20 1MEG 100MEG → On fait varier la fréquence de

simulation de 1MHz et 100MHz avec 20 points par décade. .AC LIN 21 1K 100K → Analyse en courant alternatif de 21 points de fréquence, distribués linéairement entre 1kHz et 100kHz.

Remarques : Grâce au module PROBE.EXE, on peut ainsi obtenir sous DOS un tracé diagramme de Bode (gain et phase en fonction de la fréquence : VDB(VOUT) – VDB(VIN) et VP(VOUT) versus Frequency), de Nichols (gain en fonction de la phase : VDB(VOUT) – VDB(VIN) versus VP(VOUT) ) ou même Nyquist (pour la vérification de la stabilité d’un système). Mais cette simulation permet aussi le calcul des impédances

16 Ce paramètre AC ne doit pas être confondu avec les sources VSIN et ISIN qui sont des sources sinusoïdales employées lors de simulations dans le domaine temporel.

Page 37: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

37

d’entrée et de sortie d’un montage (V(VIN)/I(VIN)) et V(VOUT)/I(OUT) versus FREQUENCY ).

Algorithme de simulation : Applicable qu’aux circuits linéaires équivalents,

l’algorithme employé est similaire au cas DC. Cependant, par rapport au cas continu les admittances, tensions et courants sont ici complexes (ou amplitude et phase) et chaque terme est exprimé à une fréquence donnée.

1.3.iii. Simulation dans le domaine temporelle :

Autrement nommée analyse transitoire, ce type de simulation

correspond à ce que nous pourrions observer à partir d’un oscilloscope, l’examen du signal dans l’espace des temps.

o .TRAN : Analyse transitoire (TRANSCIENT sous Windows) Syntaxe : .TRAN <Pas_Max > <Durée_Ana>

.TRAN <Pas_Max > <Durée_Ana> <Delai> .TRAN <Pas_Max > <Durée_Ana> <Delai> <Pas_Ana> où Pas_Max = Pas de génération des résultats ;

Durée_Analyse = Dimension de la fenêtre de simulation ; Delai = Retard avant le début de l’enregistrement des données de l’analyse ; Pas_Ana = Pas d’analyse.

Exemple : .TRAN 1nS 100nS 10nS → Définition d’une fenêtre de simulation de [0 ; 100nS] avec un pas maximal de 1nS avec un retard de 10nS de début de stockage des résultats de simulation. .TRAN 1M 100M → Analyse effectuée à partir de t = 0s (valeur par défaut) jusqu’à 100ms avec un pas d’échantillonnage de 1ms.

Remarques : Ce type de simulation doit tenir compte de la fréquence des signaux

(minimum et maximum) à travers le pas de simulation. Par défaut, le pas équivaut à un cinquantième de la durée de la simulation. Puis, il sera automatiquement réduit en cas de nécessité pour des raisons de convergence (paramètre RELTOL ). Si ce pas est trop grand, les erreurs de convergence ne sont pas toujours détectées. Il conviendra donc de toujours spécifier un pas d’analyse inférieur à la durée des événements à analyser. Typiquement, on prendra un pas de 1/100 à 1/1000 de la durée de simulation. Ce type de problème se rencontre souvent dans les systèmes oscillants, résonnants ou, plus généralement, dans le cas de fortes variations des signaux. Le retard de début d’analyse permet d’éviter de générer des résultats avant l’établissement du régime établi (ce temps peut aussi être réduit par l’emploi des commandes .IC ou .NODESET).

Algorithme de simulation : Pour des circuits linéaires, l’analyse transitoire

possède un algorithme de calcul se résumant à :

Page 38: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

38

Calcul du point de fonctionnement à t

Pour chaque valeur de t : Etablissement d’un modèle équivalent à chaque composant du circuit Calcul des matrices [Y], [V] et [I] (ou G, F) Résolution du système (similaire aux cas précédents) Mémorisation des résultats obtenus

Oui Fin Non, t = t + ∆t

Remarque : Les sources contrôlées définies dans le domaine des fréquences voient

évoluée leur réponse à une impulsion.

Figure 1.24 : Exemple d’un circuit linéaire, la capacité

Page 39: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

39

Figure 1.25 : Cas des circuits non - linéaires :

1.3.iv. Simulations complémentaires :

Les Conditions Initiales : Cette simulation permet d’imposer un potentiel à un nœud en début de simulation par

l’intermédiaire de certains composants tels que les capacités, les inductances et les lignes de transmission. On lève ainsi toute ambiguïté sur l’état de ce nœud, mais elle permet aussi de définir le point de fonctionnement d’un système dans des temps de calcul plus réduits lors de simulations multiples et de régler d’éventuels problèmes de convergence.

Ces définitions ne sont permises qu’en tension d’une façon relative entre deux nœuds ou d’une façon absolue entre le nœud et la masse. La commande .IC est la plus employée mais la commande .NODESET est tout aussi possible (la différence étant que .NODESET ne force pas de niveaux. Elle ne sert qu’à indiquer une valeur initiale préalable à la recherche du point de fonctionnement).

Syntaxe : .IC V<Nœud(s)> = <Valeur>

Exemple : .IC V(1, 2) = 10V → Tension de 10V imposée dans la branche située entre les nœuds 1 et 2 à t = 0s. .IC V(3) = 3.3V → Tension de 3.3V imposée au nœud 3 à l’instant initial.

Principe : PSPICE définit une source de tension mise en série avec une résistance de 2mΩ pour

chaque nœud caractérisé par des conditions initiales. Cette opération n’est effectuée que lors de la recherche du point de fonctionnement. Le logiciel libère ensuite les nœuds afin qu’ils puissent prendre toutes les valeurs nécessaires à l’évolution correcte des signaux simulés.

Page 40: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

40

Simulations multiples : Par simulations multiples, on entend effectuer plusieurs fois la même simulation en faisant

varier la valeur d’un paramètre, d’une variable (température, tension d’un nœud, ou paramètre du modèle, …).

Syntaxe : .STEP <LoiVar> <Var> <ValDebut> <ValFin> <Pas> .STEP <LoiVar> <Var> <ValDebut> <ValFin> <Nb_Pt> .STEP <Var> LIST <Valeur> où: LoiVar = Loi de variation ;

Var = Variable ; ValDebut = Valeur de début de la variable ; ValFin = Valeur de fin de la variable ; Pas = Pas de simulation ; Nb_Pt = Nombre de point de simulation ; Val = Valeurs prises successivement par la variable.

L’utilisation des variables s’effectue par l’emploi de la commande .PARAM . Elles sont alors utilisées entre accolades (Nom_Var ). Par défaut, la température TEMP et le temps TIME sont deux variables internes au système. Syntaxe : .PARAM <Var> = <Valeur>

.STEP PARAM <Var> <Loi_Var>

où Var = Variable dont on fait varier la valeur ; Valeur = Valeur initiale de la variable ; Loi_Var = Loi de variation de la variable.

Exemple : RL 1 2 RLOAD

… .PARAM RLOAD 1.5K .STEP PARAM RLOAD LIST 10 50 100 400 1K → Cinq simulations sont effectuées sur la variable RLOAD, définissant la résistance RL, située entre les nœuds 1 et 2.

Fonction de transfert : Par la commande .TF, le calcul de la fonction de transfert en petits signaux est effectué en

complément du calcul du point de polarisation du circuit (linéarisation autour du point de fonctionnement). Celui-ci est effectué dans le domaine statique et ne tient pas compte d’un éventuel comportement en fréquence. Le gain en petits signaux de la fonction de transfert est alors obtenu en effectuant la dérivée du signal de sortie par rapport à l’entrée. Comme durant l’analyse fréquentielle, les impédances d’entrée et de sortie peuvent aussi être calculées lors de cette analyse.

Syntaxe : .TF <Variable_Sortie> <Générateur>

où: Variable_Sortie = Signal de sortie ;

Générateur = Signal d’entrée.

Page 41: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

41

Exemple : .TF V(6) VIN → Calcul de la fonction de transfert par linéarisation autour du point de fonctionnement, l’entrée étant le signal VIN et le signal de sortie étant la tension au nœud 6.

Analyse de la distorsion : On peut vouloir qualifier la linéarité de la caractéristique statique d'un circuit. Si cette

caractéristique est linéaire, le système répond à une sinusoïde par une sinusoïde, sinon il introduit une distorsion et le signal de sortie n'est plus sinusoïdal, mais a acquis des harmoniques. Sous SPICE, la distorsion harmonique est calculée en conjonction avec l’analyse AC. Il calcule les distorsions (résultats des inter-modulations et harmoniques) dues à un signal d'entrée de petite amplitude. Si les signaux d'entrée du circuit sont à la même fréquence, les valeurs complexes des deuxième et troisième harmoniques sont déterminées à tous les points du circuit. Si les signaux d'entrée sont de deux fréquences différentes f1 et f2 (avec f1 > f2), l'analyse retourne les valeurs complexes des variables du circuit aux fréquences f1+ f2, f1- f2 et seconde harmonique de f1- f2. Une analyse DISTO peut être pratique si le circuit contient des composants linéaires et d'autres non-linéaires de la liste suivante: diodes, BJT, JFET, MOSFET (niveaux 1, 2, 3, 4/BSIM1, 5/BSIM2 et 6) et MESFET.

Syntaxe : .DISTO (DEC | OCT | LIN) Pts Fstart Fstop <F2overF1>

où: (DEC | LIN | OCT), Pts, Fstart et Fstop = paramètres de l'analyse AC pendant laquelle est calculée la distorsion.

Si le paramètre optionnel F2overF1 n'est pas spécifié, SPICE fait une analyse harmonique, c'est à dire qu’il analyse la distorsion dans le circuit en utilisant uniquement la fréquence f1 définie comme pour l’analyse AC. Seront alors enregistrées toutes les tensions de tous les nœuds du circuit ; tous les courants de toutes les branches aux fréquences 2f1, 3f1, tandis que f1 varie (une valeur de 1 signifie alors cos(2π2f1t) pour la fréquence 2f1 et cos(2π3f1t) pour la fréquence 3f1). Si par contre F2overF1 est spécifié, il devra être un réel compris entre 0 et 1 (la valeur 0 lui est interdite). Dans ce cas, SPICE fait une analyse spectrale. Il considère le circuit avec des entrées sinusoïdales à deux fréquences, f1 et f2. f1 est définie dans la commande .DISTO comme pour une analyse AC, et f2 est fixe et égale à F2overF1*Fstart. Chaque source indépendante du circuit peut avoir deux entrées sinusoïdales superposées pour la distorsion aux fréquences f1 et f2. L'amplitude et la phase du signal de fréquence f1 sont données par les paramètres du mot-clé DISTOF1 de la déclaration de la source ; l'amplitude et la phase du signal de fréquence f2 sont déterminées par les arguments de DISTOF2. SPICE va calculer toutes les tensions à tous les nœuds et les courants dans toutes les branches du circuit aux fréquences f1+ f2, f1- f2 et 2f1- f2 tandis que f1 varie. Toutefois, si les mots-clés DISTOF1 et DISTOF2, manquent dans la description d'une source indépendante, alors la source sera supposée ne pas avoir de signal à cette fréquence. Les valeurs par défaut de l'amplitude et de la phase sont respectivement 1 et 0 (la phase est exprimée en degrés).

Exemple : .DISTO DEC 10 1K 100M 0.9 → SPICE va calculer toutes les

tensions et tous les courants du circuit pour 10 valeurs de f1 entre 1KHz et 100MHz et f2 égal à 0.9KHz aux fréquences f1- f2; f1+ f2 et 2 f1- f2.

Page 42: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

42

Analyse de Sensibilité : Ce type d’analyse permet de quantifier le degré d’influence de chaque composant sur un

signal de sortie donné, autour du point de fonctionnement du circuit. Effectuée suite à la recherche du point de polarisation, on dérive le signal de sortie en fonction des variations de la valeur des composants du circuit (capacités, sources de tensions ou de courant indépendantes, certains modèles de diodes et transistors).

On notera que ce type de simulation s’effectue aussi dans le domaine statique et ne tient donc pas compte du comportement fréquentiel du montage.

Syntaxe : .SENS <Variables_Sortie>

Exemple : .SENS V(6) → Calcul des sensibilités de la tension au nœud 6.

En sortie, le fichier texte de résultat nous donne un tableau contenant le nom de l’élément, la valeur de celui-ci, la variation de la grandeur de sortie en fonction d’une variation unitaire de l’élément et la variation normalisée à la valeur de l’élément de la grandeur de sortie exprimée en pourcentage.

Analyse de Bruit : L’analyse en bruit s’effectue dans le domaine des fréquences. Elle suit donc une simulation

AC. Les résistances, les composants actifs et certains amplificateurs sont alors associés à des générateurs de signaux parasites.

Syntaxe : .NOISE < Noeud> <Source_Bruit> [Intervalle]

où: Nœud = Nœud où on calcule la tension de bruit ;

Source_Bruit = Source équivalente de bruit considérée en entrée ; Intervalle = Intervalle de fréquence de simulation.

Exemples : .NOISE V(12) VIN → Analyse de la tension de bruit au nœud 12 en considérant VIN comme la source équivalente de bruit en entrée (en tension). .NOISE V(2) I(R1) → Analyse de la tension de bruit au nœud 2 en considérant I(R1) comme la source équivalente de bruit en entrée).

Décomposition Harmonique de Fourier : Tout signal périodique peut être décomposé en une série de sinusoïdes. Cette série de

Fourier permet de faire apparaître la fréquence fondamentale et sa suite d’harmoniques, ainsi que les amplitudes respectives de chaque composante. Elle nécessite cependant, au préalable, une analyse transitoire.

Syntaxe : .FOUR <Frq_Fond> <Liste_Noeud>

.FOUR <Frq_Fond> <Nb_Harmo> <Liste_Noeud>

où : Frq_Fond = Fréquence fondamentale du signal ; Nb_Harmo = Nombre d’harmoniques analysées (9 par défaut) ; Liste_Noeud Variables d’analyse.

Page 43: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

43

Exemple : .FOUR 10KHz V(5) I(R1) → Analyse de Fourier par rapport aux variables V(5) et I(R1), pour une fondamentale de 10KHz (ce qui suppose une analyse temporelle préalable de 1/10KHz, au minimum).

1.3.v. Analyses avancées :

Ce cours n’étant qu’une initiation à PSPICE, nous ne rentrerons pas dans les détails de ces

différentes analyses. Afin d’avoir plus d’information sur ces différentes analyses, on pourra se référer au chapitre 4 (notamment, les paragraphes 4.8 et 4.9).

Simulation Min/Max ou Worst-Case : La simulation pire – cas (commande .WCASE) se propose de fournir la différence la plus

grande par rapport au résultat obtenu en utilisant les valeurs nominales des composants (DEV). Faisant appel à la notion de dispersion sur la valeur et les paramètres d’un composant, elle révèle l’influence de ceux – ci sur le résultat généré par le circuit. Le résultat est obtenu après une analyse de sensibilité.

Analyse Monte-Carlo : Cette analyse permet de tenir compte des statistiques de dispersion sur les composants

(leurs paramètres) et fournit la dispersion engendrée sur les résultats. On obtient alors un gabarit de fonctionnement moyen qui peut être comparé à un cahier des charges.

Modélisation comportementales : Ce type de modélisation consiste à modéliser un circuit par sa fonction de transfert (soit un

générateur de courant ou de tension obéissant à une loi de variation décrite suivant un polynôme, une expression mathématique, un tableau de valeurs, une définition dans le domaine des fréquences,…). L’emploi des sources contrôlées peut alors s’avérer des plus utiles (voir avant, les sources de modélisation comportementales au chapitre 2.4.ii).

Simulations numériques : Sous Microsim, grâce au module Plogic, PSPICE permet aussi la simulation de circuit

mixte (numérique/analogique). Dès lors, les comportements fonctionnel et temporel de systèmes mixtes sont alors analysables. Il est aussi possible de générer ses propres stimuli. 1.3.vi. La directive de simulation .OPTION :

Les paramètres de contrôle d'impression : o ACCT : Impression des statistiques de simulation, o LIST : Impression du fichier de description d'entrée, o NODE: Impression de la table des nœuds du circuit, o NOMOD : Suppression de l'impression des paramètres des modèles, o NOPAGE: Suppression des sauts de page.

Les paramètres de contrôle des modèles : Toutes ces options peuvent être annulées pour un composant particulier si la spécification

considérée est explicitement formulée dans les paramètres d'appel du composant. Les principaux sont :

o GMIN : Conductance minimum implicite. Par défaut, elle est fixée à 10-12. Cette conductance est placée en parallèle sur toutes les jonctions PN des composants actifs du circuit.

Page 44: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

44

o TEMP : Température implicite de simulation du circuit. Par défaut, elle est fixée à 27°C.

o TNOM : Température implicite de caractérisation des modèles. Par défaut, elle est fixée à 27°C.

o BADMOS3 : Utilisation de la première version pour un transistor de niveau 3. o DEFAD : Valeur implicite de l'aire de drain pour le calcul des capacités de

jonction des transistors MOS. Par défaut, elle est fixée à 0. o DEFAS : Valeur implicite de l'aire de source pour le calcul des capacités de

jonction des transistors MOS. Par défaut, elle est fixée à 0. o DEFL : Valeur implicite de la longueur des transistors MOS. Par défaut, elle est

fixée à 100µm. o DEFL : Valeur implicite de la largeur des transistors MOS. Par défaut, elle est

fixée à 100µm. Les paramètres de contrôle de la méthode de Newton-Raphson :

o VNTOL : Tolérance absolue pour le critère de la convergence de la différence. Par défaut, elle est fixée à 1µV.

o ABSTOL : Tolérance absolue pour le critère de la convergence résiduel. Par défaut, elle est fixée à 1pA.

o RELTOL : Tolérance relative, par défaut elle est fixée à 0.001. Les paramètres de contrôle spécifiques à .DC :

o ITL1 : Nombre d'itérations maximum pour une analyse statique sur un point. Par défaut, il est fixé à 100.

o ITL2 : Nombre d'itérations maximum pour une analyse statique sur un multipoint (caractéristiques de transfert). Par défaut, il est fixé à 50.

Les paramètres de contrôle spécifiques à .TRAN :

o METHOD : méthode d'intégration "gear" ou "trapézoïdal". Par défaut, elle est fixée à "trapézoïdal".

o CHGTOL : Tolérance absolue pour la variable considérée (charge pour un condensateur ou flux pour une inductance) lors du contrôle du pas d'intégration par l'erreur de troncature locale (LTE). Par défaut, elle est fixée à 10-14.

o TRTOL : Facteur de pondération de l'erreur de troncature locale. Par défaut, il est fixé à 7.

o ITL4 : Nombre d'itérations maximum sur un pas d'intégration. Par défaut, il est fixé à 10.

Les paramètres de contrôle de la méthode de d'élimination de Gauss :

o PIVTOL : Valeur minimum pour qu'un coefficient puisse être considéré comme pivot. Par défaut, il est fixé à 10-13.

o PIVREL : rapport entre une valeur acceptable de pivot et le plus grand coefficient de la colonne correspondante, par défaut il est fixé à 10-3.

Page 45: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

45

1.4 – Le module graphique PROBE :

Permettant la visualisation graphique des résultats de simulation spécifiques à PSPICE, ce module extrait ces informations du fichier binaire *.DAT . Cette extraction s’effectue sous la version DOS par l’emploi de la commande .PROBE mise dans le fichier d’entrée.

La sélection des signaux est faite aux moyens de la commande Trace >> Add Trace et en sélectionnant le signal voulu dans la liste proposée. Il est à noter que les signaux calculés et mémorisés sont accessibles par la touche F4 dans le menu Add Trace.

Plusieurs courbes peuvent alors être affichées sur un même dessin par la commande Plot >> Add Y Axis. Des curseurs permettent le relevé aisé des coordonnées de certains points ou la différence entre deux points (décrit plus loin).

Outre les quatre opérateurs +, -, = et /, un certain nombre d’opérations arithmétiques sont aussi possibles, en voici une liste exhaustive dans le tableau ci-dessous.

Fonction

Description

ABS(x), M(x) SGN(x) SQRT(x), EXP(x) LOG(x), LOG10(x) P(x), DB(x) R(x), IM(x) G(x) PWR(x, y) SIN(x), COS(x), TAN(x) ATAN(x), ARCTAN(x, y) D(x), S(x) AVG(x), AVG(x,d) RMS(x) MIN(x), MAX(x)

Valeur absolue et magnitude de x Signe de x Racine carrée et exponentiel de x Logarithme népérien et décimal de x Phase et valeur en décibels de x (20log10(x)) Partie réelle et partie imaginaire de x Délai de groupe de x x puissance y Sinus, cosinus et tangente de x Arc tangente de x et arc tangente de y/x Dérivée et intégrale de x par rapport à l’abscisse Valeur moyenne de x, valeur moyenne de x sur l’intervalle (x-d,x) Racine carrée de la valeur quadratique moyenne de x Minimum et maximum de x

Exemple : P(V(4)) → Phase du potentiel au nœud 4 ;

DB(V(R(5))) → Amplitude en dB du courant circulant dans la résistance R.

Un certain nombre de fonctions sont aussi prédéfinies sous forme de macros (détermination

de la bande passante, du temps de montée,…). Nous reviendrons sur cela plus loin.

Page 46: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

46

2 – Simulation sous MICROSIM : La version Windows employée en TP, MicroSim DesignLab Eval 8 ou Orcad 9.1 version

Student , est un logiciel de simulation électronique mixte des plus complet qui permet d’évaluer de manière très précise les performances d’un circuit électronique, grâce au module PSPICE auquel a été adjoint de nombreuses fonctionnalités permettant, en autre, l’optimisation de paramètres, la création de modèles, la création de circuits imprimées, le routage,…

Cependant, dans la version d’évaluation employée en TP, certaines limitations sont à noter. Pour MicroSim DesignLab Eval 8, ces spécifications sont :

- Une page de schéma de format A4 ; - 50 symboles par schéma ; - 10 bibliothèques de symboles ; - 20 symboles dans votre bibliothèque personnelle ; - 70 nœuds pour la simulation ; - 10 transistors ou 65 portes logiques ;

- 10 lignes de transmission idéales mais pas plus de 4 lignes à perte et 4 lignes couplées ; - Pour la création de modèle, cette version de démonstration nous limite à la caractérisation des diodes - Une bibliothèque d’évaluation (eval) comportant plus de 20 composants analogiques (lire avec un éditeur de texte le fichier eval.lib dans le sous-répertoire lib pour avoir plus de renseignements) ; - Stimuli : Signal sinusoïdal et signal d’horloge ; - L’optimisation n’est possible que sur un seul paramètre à la fois.

Remarque : Il est possible de télécharger une version d'évaluation PSPICE STUDENTS sur

différents sites internet dont : http://www.engr.uky.edu/~cathey/pspice061301.html.

Page 47: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

47

2.1 - Principe de fonctionnement de PSPICE sous Windows :

La version Windows employée est un logiciel complet dont on peut observer la plate-forme

à travers la Figure 2.1 ci-dessous.

PCBOARDS.EXE MSGVIEW .EXE

PDESIGN.EXE

OPTIMIZE.EXE

PARTS.EXE

PSCHED.EXE PSPICE.EXE

STMED.EXE

SPECCTRA.EXE

Edition et saisie de schémas

fichier.schSimulation Spice

fichier.cir

Modélisation composantsfichier.dat

Création de stimuli

fichier.stl

fichier.stl

Réalisation

circuits imprimés

fichier.pca

Routage automatiqueOptimisation paramètres

fichier.opt

fichier.out

Affichage des erreurs

Programme de base

PROBE.EXE TEXTEDIT.EXE

Visualisation graphique

des résultats de simulation

Visualisation format texte

des résultats de simulation

fichier.opt

Librairies (*.lib et *.slb)

Librairies fournies

Librairies créées

Librairies importées

Figure 2.1 : Les différents modules constituant PSPICE

Remarque : Depuis le rachat d’Orcad par Cadence, un autre module nommé Capture est aussi présent dans cet environnement. Comment Schematics (avec PSCHED.EXE), il permet de réaliser la saisie des schémas. Nous ne nous attarderons pas sur ce module.

Page 48: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

48

2.2 – Ouverture d’un projet sous Design Manager :

A l’ouverture d’un nouveau projet, un répertoire au nom du projet est créé dans lequel seront rangés tous les fichiers liés à ce projet. La gestion des applications sous forme de projets permet une organisation optimale du travail. Toutes les manipulations de fichiers (copie, déplacement, suppression etc.) sont accessibles dans le menu principal de Design Manager.

Après avoir cliqué sur l’icône , on obtient la fenêtre de la Figure 2.2. Pour l’ouverture

d’un nouveau projet, cliquer sur le premier icône de gauche . Pour ouvrir un projet existant ou

le chercher, sélectionner l’icône .

Figure 2.2 : La fenètre Design Manager sous Microsim

Pour chaque schéma du projet, un répertoire sera également créé, dans lequel seront sauvegardés les fichiers ci-dessous :

Le fichier schéma (.sch) ; Les fichiers de sortie de la simulation (.DAT) et les fichiers de sortie après

visualisation sous Probe dans Simulation Output ; La liste des librairies utilisées dans System Dependencies ; La liste des fichiers créés pendant la simulation rendant l’étude exploitable dans

System Files : La liste des alias (nom donné à chaque équipotentielle) : .als ; Le fichier circuit pour PSpice : .cir ; Le fichier de configuration : .MLV ; Le fichier netlist de la saisie de schéma : .net ;

Saisie de schéma : Schematics Simulation : PSpice AD Routage : PCBOARD Spice OPTIMIZER Editeur de PARTS Editeur graphique : PROBE Editeur de STIMULI Editeur de texte

Page 49: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

49

Le fichier d’impression effectué : .prb. Le fichier de configuration de Design Manager : MicroSim Miscellaneous

Files ; Les autres fichiers liés au projet (ex. : clipboard, import, etc.) dans User Files.

Page 50: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

50

2.3 – Présentation du menu principal de Schematics :

Afin de réaliser le schématic d’un circuit que nous voulons simuler, lancer le logiciel à partir de Démarrer >> DesignLab Eval 8 >> Schematics ou par Démarrer >> DesignLab

Eval 8 >> Design Manager et en cliquant ensuite suite l’icône Schematic se trouvant dans la partie gauche de la fenêtre de la Figure 2.2.

Comme sur la plupart des logiciels sous Windows, les fenêtres de PSPICE se présentent avec une barre supérieure et des menus déroulants. Un ensemble d’icônes (paramétrables) sont des raccourcis pour les commandes les plus courantes. Un nouveau document est ouvert par défaut, il faut tout d’abord lui donner un nom, pour cela faire : File >> Save as en donnant un nom choisi.

Voici, dans la Figure 2.3, la barre d'outils de Schematics et les fonctions principales associées aux différents icônes :

Figure 2.3 : Barre d’outils du module Schématics

Dans le tableau ci-dessous, vous trouverez une brève description des différents boutons qui constituent cette barre d’outils.

Page 51: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

51

Créer un nouveau schéma (création de

répertoires et fichiers). Editeur de symboles.

Ouvrir un schéma existant (la recherche est guidée). SIMULATION

Enregistrer le fichier ouvert courant. Définitions des directives et types d'analyses.

Enregistrer (un élément sélectionné ou une sélection d'éléments).

Lancement de la simulation.

Imprimer le fichier (ou la sélection). Couleurs des marqueurs (signaux visualisés sous Probe).

Copier (un élément sélectionner ou une sélection d'éléments).

Placement d'un marqueur tension / courant.

Rafraîchir l'écran. Validation de l'affichage des tensions du point de départ ou de repos sur le schéma / suppression de l'affichage.

Couper, supprimer (un élément sélectionné ou une sélection d'éléments).

Annuler l'action précédente. Validation de l'affichage de courants du point de départ ou de repos sur le schéma / suppression de l'affichage.

Répéter l'action précédente.

Zoom moins (diminution en taille des éléments de la fenêtre courante).

Zoom plus (agrandissement en taille des éléments de la fenêtre courante).

Zoom de la fenêtre sélectionnée (apparition plein écran de la fenêtre). ANNOTATIONS

Affichage plein écran du schéma complet. Tracé de courbe.

DESSIN Tracé de rectangle.

Tracé des fils /des bus. Tracé de cercle.

Edition des blocs de sous schémas (la forme courante apparaissant est fiable).

Tracé de segment de droite.

Recherche et capture d'éléments ou symboles issus des bibliothèques.

Insertion d'images.

Editeur d'attributs. Insertion d'une fenêtre de texte et choix de la police du texte.

Pour réaliser une simulation, la méthodologie sous Schematics consiste à : - Saisir le schéma (le dessiner) ; - Editer les composants du schéma ; - Définir les paramètres de la simulation ; - Lancer la simulation, puis exploiter les tracés obtenus.

Dans ce qui suit, nous allons décrire chacune de ces étapes.

Page 52: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

52

2.4– Saisie du schéma à simuler :

L’appel des composants se fait généralement par Draw >> Get New Part (ou en cliquant

sur l’icône adéquat ). Cela affiche une fenêtre permettant la sélection (il existe bien d’autre manière mais celle-ci est la plus commode à utiliser). Dans cette fenêtre, pour rechercher un composant, on peut :

Figure 2.4 : La fenêtre d’appel des composants

1/ Taper le nom du composant si on le connaît avec éventuellement les caractères * ou/et ?. Ainsi, si on tape : Part Name = 7*0?, tous les composants dont le nom commence par 7 et qui possèdent un 0 en avant-dernière position seront affichés ; 2/ Effectuer une recherche descriptive (en anglais bien sûr …) : Advanced >> Description Search = *invert*, par exemple, listera tous les composants qui possèdent la chaîne « invert » (inverseur) dans leur description. Attention : Pour avoir de nouveau accès à l’ensemble des composants des librairies, remettre

ensuite Description Search = * et cliquer sur Search. 3/ Si le logiciel a déjà été utilisée, les dix derniers composants sont présents dans le menu

déroulant se trouvant entre l’icône de la recherche et capture d'éléments et l’icône d’éditeur d’attribut. Un simple clic sur l’élément voulu le sélectionne et le place sur le schéma. 4/ Se promener dans les librairies : Si on clique sur Libraries , la liste et le contenu des bibliothèques apparaissent. On y trouve :

- ABM.SLB : Blocs fonctionnels (additionneurs, filtres, intégrateur, …) ; - ANALOG.SLB : Résistances, condensateurs, inductances, lignes, sources contrôlées ; - BREAKOUT.SLB : Eléments de base pour la génération de modèles particuliers ; - CONNECT.SLB : Connecteurs ; - EVAL.SLB : Bibliothèque de composants analogiques et d’éléments digitaux ;

Page 53: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

53

- PORT.SLB : Etiquettes d’interconnexions, états logiques 0 et 1 pour la simulation logique et mixte ; - SOURCE.SLB et SOURCSTM.SLB : Sources de tension et de courant analogiques, générateurs numériques ; - SPECIAL.SLB : Eléments de contrôle de la simulation ;

Remarque : Pour les novices, le choix des composants n’est pas toujours trivial, aussi, les

quelques lignes de description (se trouvant dans la Fig. 28) peuvent être d’une grande utilité.

2-4.i. Les composants électroniques de bases :

Dans la figure 2.5 ci-dessous, vous trouverez la liste des principaux symboles de composants analogiques et, dans la figure 2.6, le symbole des sources commandées.

Figure 2.6 : Symbole des principaux composants électroniques

Page 54: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009/2010

54

Figure 2.7 : Symbole des 4 types de sources commandées disponibles.

Concernant les composants numériques, la version de démonstration proposée en TP possède un assez large échantillon de composants, essentiellement de la famille TTL et même un exemple de composant logique programmable (PLD et PAL). L’appel des fonctions des divers composants se fait par leur nom (par exemple, 74xx) et ils sont affichés selon la norme américaine. Toutes les fonctions de base sont implantées : NOT, OR, NOR, AND, NAND, JK, …, convertisseur A/N, N/A, ROM et RAM, PLD (Simulation à partir de fichier JEDEC)

Ces composants digitaux sont simulés à partir de modèles extrêmement fidèles. En effet, non seulement les temps de propagation sont pris en compte lors de la simulation, mais également les caractéristiques d’entrées/sorties (Capacité d’entrée, diodes de clamping, diode Zener,…).

PSPICE étant essentiellement utilisé pour la simulation analogique, nous ne nous étendrons donc pas plus sur le sujet.

Source de Tension Contrôlée par une Tension

Source de Courant Contrôlée par un Courant

Source de Courant Contrôlée par une Tension

Source de Tension Contrôlée par un Courant

Page 55: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

55

2-4.ii. Les sources :

Comme il a été précisé dans le chapitre précédent, le choix des sources est très important, car il définit indirectement le type d'analyse qui va être effectuée. Voici ci-dessous le symbole des principales sources de tension employées en fonction du domaine d’analyse désirée. Pour toutes informations complémentaires sur ces différentes sources, n’hésitez pas à retourner au niveau de la page 13. 1/ Analyse en continu : VDC 2/ Analyse en fréquence : VAC

3/ Analyse temporelle : VSIN, VPWL, VEXP, VPULSE.

Remarques : - Dans la fenêtre de la figure 34, les attributs précédés de * ne sont pas

modifiables sous Schematics ; - TEMPLATE défnit le nom et l’ordre des broches lors de la création de la

netlist; PARTS est le nom d’appel du composant défini à sa création ; PKGREF correspond à la réference du boitier ; avec SIMULATIONONLY, il est possible de spécifier que cette source ne soit pas utilisée pour la simulation et n’existe pas dans la netlist du routage par exemple ; AC et DC fixe la valeur de la source lors des analyses en continu et en alternatif.

Source de forme sinusoïdale VOFF : tension de décalage VAMPL : amplitude FREQ : fréquence TD : temps de retard DF : facteur d’amortissement PHASE : décalage initial

Figure 2.8 Figure 2.9

Figure 2.10.a

Figure 2.10.b

Page 56: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

56

Source de forme rectangulaire V1 : valeur du niveau bas V2 : valeur du niveau haut TD : temps de retard TR : temps de montée TF : temps de descente PW : temps à l’état haut PER : période

Source de forme exponentielle V1 : valeur initiale V2 : valeur maximum TD1 : temps de début du front montant TC1 : constante de temps du front montant TD2 : temps de début du front descendant TC2 : constante de temps du front descendant Figure 2.12.a

Source de forme définie par segments Les segments relient (T1,V1) à (T2, V2), puis (T2, V2) à (T3, V3), (T3, V3) à (T4, V4), …

Figure 2.11.a

Figure 2.11.b

Figure 2.13.a

Figure 2.12.b

Page 57: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

57

Pour les simulations numériques, on peut définir comme source logique un stimulus de

1 bit STM1 . Il est également possible de définir des stimuli de 4, 8 ou 16 bits pour des simulations particulières. Ce signal binaire se définit en termes de temps et niveau logique. Donc, dans la fenêtre d’édition préciser pour chaque ligne notée COMMAND : le temps puis le niveau logique en laissant un espace entre les deux. Compléter éventuellement la ligne PKGREF pour modifier sa désignation. Ne compléter la ligne TIMESTEP qu’avec précaution. Eviter de modifier les autres lignes. De cette manière, il est possible d’éditer n’importe quelle allure de signal binaire non périodique et même un signal d’horloge (périodique).

On pourra aussi configurer des stimuli particuliers à partir des sources nommés DIGCLOCK, DIGSTIM et VSTIM. Après avoir placée l’une de ces sources, en double cliquant sur le symbole, il est alors possible d’ouvrir l’éditeur graphique de stimuli et d’éditer un stimulus en complétant les deux fenêtres qui apparaitront successivement (cela ne doit poser aucun problème). Pensez ensuite à sauvegarder le stimulus que vous venez de générer et continuez la saisie de votre schéma.

Figure 2.14 Remarques : - Nous n’avons ici présenté que les sources de tension. Dans le cas des sources

de courant (en remplaçant V par I), les champs à compléter sont identiques ; - Hormis pour VAC et VDC, ces sources sont principalement utilisées en analyse transitoire. Cependant, si on effectue avec celles-ci une analyse fréquentielle par exemple, les sources deviennent sinusoïdales et utilisent les paramètres AC et DC. Ces champs doivent alors impérativement être complétés au préalable ;

Figure 2.13.b

Page 58: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

58

- Veillez à ce que les options « Include … » (en bas de la fenêtre de la figure 41 par exemple) soient sélectionnés (). Dans le cas contraire, la liste des paramètres apparaissant est des plus limitée.

Une fois le composant désiré sélectionné, validez Place & Close ou appuyez sur la touche Entrée. Il suffit ensuite de le placer où on désire à l’aide de la souris : le bouton gauche permet de placer autant de composants de ce type que l’on veut, le bouton droit permet de sortir de la fonction de placement. Pour tourner le composant, utilisez Edit >> Rotate ou le raccourci (CTRL+R). Pour faire un effet miroir, utilisez Edit >> Flip (ou CTRL+F). Il est à noter que les fonctions ci-dessus sont également valables pour du texte et les fils. Ces opérations peuvent également se faire sur un groupe de composants en définissant une fenêtre avec le bouton gauche de la souris.

Puis, on tracera les liaisons électriques entre composants : pour cela, utiliser le menu

Draw, puis Wire ou plus simplement l’icône correspondant . Les jonctions se dessinent alors automatiquement.

Tout schéma électronique doit absolument comporter un potentiel de référence 0V (GND

ou ground), qui sera matérialisé par le symbole GND ANALOG ou GND EARTH

(bibliothèque PORT.SLB).

Page 59: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

59

2.5 – Edition des composants : A chaque élément est associé des attributs. Il faut ensuite donc éditer les composants.

Comme sous la version DOS, en fonction du type de composant, un ou plusieurs paramètres sont à modifier. Par exemple, pour une résistance, R1 désignera sa référence et 1k sa valeur ; pour un circuit intégré U1A désigne sa référence et 7400 le type de fonction (ici une fonction NAND).

Pour l’édition, deux solutions sont possibles :

1/ Double-clic sur la référence ou la valeur à modifier avoisinant le corps du composant. Une fenêtre s’ouvre alors, y apporter les modifications nécessaires (cette solution n’est pas non valable pour les générateurs).

2/ Double-clic sur le corps du composant (son symbole). Dans la fenêtre s’ouvrant, ne modifier alors que les paramètres voulus, soient, en général, sa valeur (ligne notée : Value) et éventuellement sa référence (ligne : PKGREF tout en bas de la fenêtre d'édition).

Remarque : - Attention, dans l’édition de la valeur des composants, ne pas laisse d’espace entre la valeur et le facteur d’echelle.

- Les paramètres ayant un astérisque * ne peuvent pas être modifiés (choix effectué au niveau de l’éditeur de composants).

- Ne pas oublier de sauvegarder avec Save Attr après chaque modification.

On édite des connexions (fils, bus) : en faisant un double-clic sur le fil concerné et en lui affectant un nom (LABEL). L’édition des connexions est des plus conseillée. Cela permet deux fonctions primordiales :

• Réaliser une éventuelle liaison équipotentielle (fil virtuel), qui remplace certains fils afin d’éviter des croisements, d’où une meilleur lisibilité ;

• Ces noms donnés sont pris en compte par PROBE, lors de la visualisation graphique des résultats, ce qui permet de mieux identifier les signaux que l’on veut visualiser dans la liste proposée.

Dans le cas de fils connectés à un bus, c’est impératif : Ils doivent posséder le même LABEL. Il est d’ailleurs possible d’automatiser cette édition. Commencer par double-cliquez sur le fil relié au bus puis Options >> Auto Naming. Après avoir libellé le premier fil, un appui sur la barre d’espace sur le second fil, lui éditera son label et incrémentera l’ordre d’un fil automatiquement.

Remarque : Pour tous les composants l’unité est implicite, mais prenez

l’habitude de les préciser ; par exemple : F (Farad) pour les condensateurs ; H (Henry) pour les bobines ; s (seconde) pour l’unité de temps ; ne pas indiquer l’unité des résistances

(Ω : oméga), car le symbole Ω n’existe pas sous la version Microsim.

Exemple : Création d’une alimentation symétrique sous Microsim

Figure 2.15 : Exemple de réalisation d’une alimentation symétrique

Page 60: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

60

Ce type d’alimentation est très utile lors de la simulation de circuit constitué d’amplificateur opérationnel, par exemple. Pour la réaliser (cf. Figure 2.15), utiliser les nœuds de connexion (Connection bubble dans Part Browser Advanced) auxquels vous attribuez un nom (par exemple, +VCC). Ainsi tous les nœuds de connexion du montage qui ont ce nom seront affectés à une valeur de potentiel (ici 15V).

Page 61: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

61

2.6 – Structures hiérarchiques et sous-circuits :

Dans le cas de circuits relativement complexes, il est possible d’organiser son schéma en plusieurs niveaux ou sous-schéma. La création d’un bloc hérarchique se réalise par l’icône

. Après placement et dimensionnement du bloc, les connexions sont réalisées par une simple connexion de fils (wire) qui deviennent des modules ports devant être caractérisés. Par défaut, les connexions placées à droite du bloc sont définies en sortie et les connexions placées à gauche du bloc sont les entrées.

Un doucle-clic sur le nom de la connexion que vous venez de réaliser ouvre une fenêtre (voir figure ci-dessous) où l’on peut personnaliser le nom de la connexion (visualisable ou non sur le schéma), ... Le champ ERC définit le type de connexion pour la vérification électrique et Float caractérise la non-connexion. Le menu navigate dans le menu principal permet de se déplacer dans une structure hiérarchique. Un double-clic dans un bloc ou F2 permet de descendre dans la hiérarchie. F3 permet de remonter d’un niveau.

A la première descente d’un niveau, le nom du sous-schéma est demandé. Un fichier schéma est automatiquement créé sous Design Manager. Lors de la descente dans un sous-schéma, les modules ports avec les labels correspondants sont créés automatiquement et apparaissent en haut à gauche de l’écran. Les entrées sont différenciées des sorties par leur symbole.

Figure 2.16 : Fenêtre de personnalisation des interconnexions

Page 62: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

62

2.7 – Simuler et observer les résultats : 2.7.i. Simuler :

Comme nous l’avons vu dans le chapitre précédent, il existe de nombreux types de simulations, on les configure à l’aide de la fenètre Analysis Setup (cf. Figure 44). Cliquer sur

Analysis, puis Setup ou directement par l’icône équivalent et sélectionner (cocher ) la ou les cases qui vous intéresse suivant les performances que vous voulez quantifier. Pour la plupart des applications des travaux pratiques, on utilisera essentiellement les 4 simulations suivantes :

1/ Bias Point Detail : Analyse du point de fonctionnement,

2/ DC Sweep : Analyse en continu, 3/ AC Sweep : Analyse fréquentielle petit signal, 4/ Transient : Analyse temporelle17 (transitoire). Celles-ci seront éventuellement enrichies d’une analyse paramétrique ou/et de conditions initiales.

Afin de définir les paramètres de simulation, cliquer dans cette même fenêtre sur le bouton de l’analyse sélectionnée. Une fois tous les paramètres indiqués, fermer Analysis Setup et lancer la simulation par F11 ou le menu Analysis, puis Simulate ou encore directement par

l’icône équivalent .

Figure 2.17 : Fenêtre de choix des analyses à effectuer o L’analyse du point de polarisation (Bias Point Detail) est toujours sélectionnée par

défaut. Après cette simulation, afin d’analyser les résultats de l’analyse du point

d’opération, on peut placer des sondes Viewpoint (Voltmètre) et Iprobe

(Ampèremètre) qui permettent d’afficher les tensions et courants continus aux divers points du circuit18. La commande Analysis >> Examine Output permet

17 Pour l’analyse de circuits numériques, on utilisera généralement l’analyse temporelle. Toutefois, on pourra aussi enmployer l’analse nommée Digital Setup…, qui est une analyse temporelle spécifique pour les circuits logiques. On peut, par exemple, sélectionner « Digital Worst-case timing » pour calculer la simulation dans le pire des cas. 18 Icones visibles si dans le menu Analysis, Display Results on Schematics est enable.

Page 63: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

63

d’examiner le fichier texte des résultats. Ce fichier peut sembler un peu obscur au débutant, mais il faut savoir qu’il contient toutes les informations utiles du point de fonctionnement avec le potentiel de tous les nœuds du circuit, le courant débité par les sources, ...

Remarque : Si les sources décrites dans le fichier d’entrée ne possèdent aucun

paramètre DC, le logiciel n’effectuera pas l’analyse et nous indiquera une erreur.

Figure 2.18 : Fenêtre de paramétrage de l’analyse DC Sweep

o Pour l’analyse DC, cliquer sur DC Sweep dans la fenêtre de la Figure 2.17. Si vous cherchez par exemple à voir l’évolution de la tension de sortir en fonction de la tension d’entrée, choisir la source à faire varier en indiquant son nom (dans la Figure 2.18, il s’agit de v1). Fixer les valeurs données à cette source (valeur initiale, valeur finale, pas de progression). Dans le cas où une seconde source est choisie cliquer dans Nested Sweep pour fixer les paramètres de cette source (valeur initiale, valeur finale, pas de progression). Ne pas oublier d'activer Enable Nested Sweep pour rendre la seconde source active. Dès que PSPICE a terminé, il lance PROBE avec en abscisse la source continue qui a varié (v1 dans notre cas). Son utilisation est assez ergonomique et ne devrait pas poser spécialement de problème. Si on désire, par exemple, afficher les tensions nommées Vref et Vs en fonction de cette tension d’alimentation, voilà la méthode à employer : Faites Trace >> Add et sélectionnez V(Vref) (ou tapez-le manuellement), faire de même avec V(Vs). Si l’on désire ensuite examiner des points précis, on peut utiliser le curseur à l’aide

de Tools >> Cursor >> Display ou de l’icône correspondant , ce qui permet de déplacer deux curseurs sur une ou plusieurs courbes. A cet effet, il faut tout d’abord sélectionner la courbe sur la quelle on veut déplacer le curseur (en cliquant-gauche sur sa légende en bas à gauche). On peut ensuite déplacer les curseurs en utilisant les boutons gauche et droit de la souris ou les flèches du clavier (avec ou sans Shift).

Page 64: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

64

o Pour l’analyse fréquentielle, dévalidez éventuellement, dans la fenêtre correspondant à la Figure 2.17, les analyses inutiles (Bias Point Detail, DC Sweep) et validez AC Sweep et fixer, le type d'analyse AC (linéaire, par octave, par décade) et les valeurs données au balayage en fréquence de la source (valeur initiale, valeur finale, nombre de points de mesure : 101 points par décade est un bon compromis entre précision de la simulation et temps de calcul).

Figure 2.19 : Fenêtre de paramétrage de l’analyse AC Sweep (et bruit) Outre le tracé habituel des tensions et courants en fonction de la fréquence, sous PROBE, il est alors aussi possible d’obtenir des tracés des plus intéressant tels que la transmittance en tapant V(Vs)/V(Ve). A l’aide des deux curseurs il est alors aisé de repérer les fréquences de coupure et d’en déduire la bande passante à -3dB (la fenêtre des curseurs affiche les deux coordonnées et leurs différences). Il existe aussi des macros calculant automatiquement un certain nombre de paramètres : en faisant Trace >> Eval Goal Function >> Bandwidth(V(vs)/V(ve),-3) on évalue la bande passante à -3dB. On dispose ainsi de toute une série de macros fort utiles (temps de montée, temps de réponse, ...). Si on veut le diagramme de Bode complet, on peut aussi tracer la phase simplement sur un autre graphe, pour cela faire Plot >> Add Plot puis demander de tracer P(V(Vs)) par exemple.

Remarque : La liste des Macro de calcul de fonctions (DB, valeur absolue,

...) apparaît dans la fenêtre Add Traces de PROBE, cette liste permettant de calculer de nombreux paramètres est accessible dans le menu Trace >> Goal Functions. On notera que l’on peut assez facilement éditer, modifier ou créer une macro (voir 3.1 pour la création de macro).

Page 65: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

65

Figure 2.18 : Fenêtre de paramétrage de l’analyse temporelle

o L’analyse temporelle (Transient) du fonctionnement d’un circuit est la seule analyse valable pour observer un signal de sortie (voir s’il n’y a pas saturation,...). Il faut tout d’abord choisir la durée d'analyse (Final Time), puis le pas d'impression (Print Step) et le pas de calcul (Step Ceiling). Ce dernier paramètre est important car sinon PSPICE choisit lui-même un pas de calcul (une valeur de un pour cent à un pour mille de la durée d'analyse est une valeur raisonnable). PSPICE stockera alors les résultats avec un pas temporel Print Step, et pour t ∈ [No-Print Delay, Final Time]. Dans le cas où l'on souhaite visualiser le spectre en fréquence, alors rendre l'analyse de Fourrier active. Toutefois, sous PROBE, on peut aussi demander la transformée

de Fourier (à l’aide de Trace >> Fourier ou de l’icône correspondante ). On observe alors la transformée rapide de Fourier (FFT).

o Si l’on veut étudier le comportement d’un circuit avec un composant dont la valeur

varie, il faut le déclarer en paramètre (analyse paramétrique). A cet effet, au lieu de lui donner une valeur (champ VALUE ), donnez un nom de variable arbitraire entre accolades, par exemple RVAR si c’est la valeur d’une résistance qu’il faut chercher à optimiser. Insérez ensuite le composant PARAM et déclarez, après avoir double-cliqué dessus, les champs NAME1 = RVAR et VALUE1 = la valeur par défaut de la résistance. Pour réaliser une simulation en fonction de ce paramètre, faites Analysis >> Setup >> Parametric (ou cliquer sur l'icône Paramètres de l'analyse) et déclarez la variable RVAR en paramètre global (Global Parameter). Choisissez les variations désirées (Linéaire, par Octave, par Décade, ou une liste de valeurs) et enfin le type général d’analyse (Cf. Figures 2.19 et 2.20). Après la simulation, on peut ensuite afficher, sous PROBE, les différentes réponses pour les différentes valeurs du paramètre. En double-cliquant sur le symbole (en bas à gauche) de chaque courbe, on peut entre autre avoir la valeur du paramètre pour la courbe.

Page 66: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

66

Figure 2.19 : Fenêtre de définition pour une analyse paramétrique

o En complément des dires du chapitre précédent, l’imposition de conditions initiales s’avère des plus utiles pour l’étude de certains oscillateurs. En effet, avant toute analyse, PSPICE effectue une simulation du point de fonctionnement stable et il débute donc l’analyse en supposant le circuit dans ce point de fonctionnement. A cause de ce principe, les oscillateurs peuvent alors ne jamais démarrer. Cette remarque est des plus valable pour l’astable à 2 transistors et 2 condensateurs : dans la réalité, les tensions de bruit font qu’une des capacités est initialement à un potentiel différent de l’autre or PSPICE les placera au même potentiel au démarrage, ce qui empêchera les oscillations de débuter. Pour remédier à cet inconvénient, l’astuce consiste à déclarer qu’une des capacités est initialement chargée en double-cliquant sur la capacité concernée et en déclarant la tension initiale dans IC= … (Initial Condition ). On doit ensuite demander une analyse transitoire en tenant compte des conditions initiales (valider Skip initial transient solution dans le Setup de Transient). La simulation est alors correcte mais évitez tout de même de considérer les 1ers instants de la simulation où l’effet des conditions initiales influe sur les signaux observés.

Figure 2.18 : Fenêtre de paramétrage de l’analyse paramétrique

Page 67: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio - 2007

2.7.ii. Observer les résultats de simulation :

Une fois la simulation lancée, le tracé de courbes suit grâce au module PROBE. En voici la barre des taches :

Figure 2.21 : Barre d’outils du module PROBE

Page 68: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

68

Dans le cas où un (des) marqueur(s) a (ont) été placé(s) sur le dessin , la courbe s'affiche automatiquement. Dans le cas où cela n’a pas été fait ou pour afficher une nouvelle

courbe cliquer sur l’icône d’ajout de courbes ou aller dans le menu Trace >> Add Trace et choisir le signal désirée dans la liste de droite de la Figure 2.22.

Figure 2.22 : Fenêtre d’ajout de résultats sous forme graphique

A partir de cette même fenêtre, on peut afficher toutes sortes de courbes. Les tensions et les courants mais aussi des combinaisons mathématiques de ces fonctions grâce aux macros se trouvant dans la partie gauche de la figure 2.22.

Pour fixer les caractéristiques des axes abscisses et ordonnées, aller dans le menu Plot >> Axis Settings. Pour l'axe X, on peut modifier l'échelle ou l'affichage (linéaire ou logarithmique) ou encore choisir la variable de l'axe X. Pour cela, cliquer Axis Variable et faire son choix. Pour l'axe Y (ou les axes), on peut modifier l'échelle ou l'affichage (linéaire ou en dB). D’autre part, si l'on souhaite avoir deux courbes avec un seul axe Y, aller dans le menu Trace >> Add Trace. Si l'on souhaite avoir deux courbes avec deux axes Y sur le même axe Y, aller dans le menu Plot >> Add Y Axis. On pourra par la suite supprimer cet axe en allant dans le menu Plot >> Delete Y Axis). Si l'on souhaite avoir deux figures distinctes, aller dans le menu Plot >> Add Plot to Window. Puis ajouter la courbe voulue. S’il y a plusieurs courbes (mode paramétrage), on peut passer d'une courbe à l'autre cliquer-gauche sur la légende correspondante en bas à gauche. Enfin, on rappellera qu’il y a deux curseurs. On passe de l'un à l'autre en cliquant la souris à droite ou à gauche. Les courbes peuvent être imprimées ou sauvegardées à l’aide respectivement de File >> Print et de Tools >> Display Control. On peut aussi insérer les graphes (ou les schémas) dans un autre document (Un document Word par exemple) à l’aide de Tools >> Copy to Clipboard puis en faisant Edition >> Coller (sous Word). Cependant l’image est enregistrée en point par point, ce qui occupe beaucoup de place et il faut modifier la couleur du fond (noir par défaut). On lui préférera généralement la fonction Impression d’écran.

Page 69: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

69

Pour illustrer l’utilisation de tout cela, on veut tracer le diagramme de Nyquist (partie

imaginaire de la fonction de transfert en fonction de sa partie réelle) du filtre ci-dessous.

Figure 2.23 : Exemple d’un circuit triple RC

Après avoir dessiné et simulé le schéma (AC Sweep), on observe la fenêtre Probe vide. Ouvrons Trace >> Add et choisissons les fonctions R() et IMG() auxquelles on attribuera l’argument V(Sf). Modifions l’axe des abscisses et son échelle (Plot >> XAxis Settings …) pour observer le diagramme de Nyquist.

Figure 2.24 : Exemple de résultat obtenu avec PROBE

Pour éviter d’avoir à répéter ces différentes opérations chaque fois que l’on effectue la simulation, on peut les sauvegarder en ouvrant Windows >> Display Control : un fichier d’extension *.prb est créé. Donner un nom au fichier (par exemple le même que celui du fichier de simulation) et cliquer sur Save. Fermer Probe, supprimer la dernière cellule RC en conservant Sf comme label de sortie. Sauver le nouveau schéma sous un autre nom avant de lancer la

Page 70: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

70

simulation. Ouvrir ensuite Windows >> Display Control, cliquer sur Load, cliquer sur le nom du fichier d’extension *.prb sauvé précédemment puis sur Ouvrir. Cliquer à nouveau sur le nom du fichier pour qu’il apparaisse dans la fenêtre New Name, cliquer enfin sur Restore : le nouveau tracé de Nyquist apparaît.

Page 71: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

71

2.8 – Simuler à partir d’un fichier d’entrée .CIR :

Voici la procédure à effectuer dans le cas où vous utilisez la version 8.0 de Microsim. Dans le cas où vous utilisez une version plus récente de PSpice, la procédure peut être légèrement différent mais elle est tout à fait réalisable sur le même principe (voir fin du paragraphe).

A partir de la fenêtre DesignLab Design Manager, cliquer sur l’onglet Run TextEdit (Cf. figure 2.2, p. 47) de manière à lancer l’éditeur de texte et saisir la description du circuit à simuler (ne pas oublier le .PROBE à la fin de votre fichier .CIR). Par exemple : Courant d’une diode en fonction de la polarisation à ses bornes pour deux températures

Figure 2.25 : Exemple d’un circuit à diode

ID vs VD pour 2 Temp V1 1 0 DC 0.5 * on impose par défaut une valeur à V1 mais qui est modifiée par la suite R1 1 2 1 D1 2 0 MD * Diode nommée D1 et faisant appel à un modèle nommé MD .MODEL MD D IS=100pA n=1.679 * on change 2 des paramètres du modèle de la diode .DC V1 -1 1 5m * Analyse DC : on fait varier la source de tension continue V1 de -1V à +1V par pas de 5mV .TEMP -15 +37 * Analyse DC se faisant pour deux températures : -15°C et 37°C .PROBE * Permet l'affichage sous le module PROBE .END

Une fois la saisie effectuer, sauvegarder votre fichier avec un nom judicieux et aller de nouveau dans la fenêtre DesignLab Design Manager. Cliquer sur l’icône Run PSPICE A/D et, dans la nouvelle fenêtre apparaissant (nommée PSPICE A/D), charger le fichier .CIR que vous venez que créer par File >> Open... La simulation de votre circuit est alors lancée et la fenêtre ci-dessous doit apparaître (un autre fenêtre apparaît vous indiquant les éventuelles erreurs).

Page 72: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

72

Figure 2.26 : Fenêtre du module PspiceAD

Il faut maintenant visualiser les résultats de votre simulation à travers le module PROBE.

Pour cela, toujours à partir de la fenêtre DesignLab Design Manager, cliquer sur l’icône Run Probe et, dans la nouvelle fenêtre, faire File >> Open et charger le fichier de résultat qui a pour extension .DAT et qui porte le même nom que celui que vous avez donné à votre fichier .CIR. Puis, faire Trace >> Add… et sélectionner dans la liste de gauche les variables (courants, tensions ou autres) que vous désirez observer.

Dans le cas où vous utiliser une version plus récente de PSpice (9.2 par exemple) à ce moment là, tout ce fait à partir du module PSpice A/D par l’icône Run PSpice dans le DesignLab Design Manager. L’éditeur de texte est inclut dans cette interface. Faire File >> New >> Text File, écrire votre fichier d’entrée, puis le sauvegarder à l’endroit qu’il faut avec l’extension .CIR. Par mesure de précaution, faire View >> Circuit File (dans le cas où vous voulez ouvrir un fichier déjà existant, le fait de faire File >> Open … charge le fichier en question mais ne le fait pas nécessairement apparaître. Il est alors indispensable de faire la procédure que je viens de vous proposer afin de pouvoir visualiser le fichier .CIR en question). Puis, lancer la simulation comme suit : Simulation >> Run … La simulation se lance alors et vous pouvez visualiser vos résultats en cliquant sur l’icône à gauche View Simulation Results.

Figure 2.28 : Fenêtre de résultat obtenu à partir de PSpice AD (équivalent du module

PROBE)

Page 73: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

73

3 – Les fonctions avancées : Cette partie concerne des aspects plus avancés de PSPICE auquel le concepteur se voit confronter dans son travail de tous les jours. Pour le novice, il sera préférable de passer directement à la partie 4 afin de bien maîtriser les concepts de base et revenir à cette partie ensuite.

D’autre part, il est à noter que suivant la version de PSPICE utilisée, il est possible que la procédure décrite dans ce qui suit pour la réalisation de certaines des fonctions soit légèrement sur votre version que vous allez employer. 3.1. Création d’une macro-fonction :

Certaines fonctions, dont on se sert souvent, ne sont pas définies dans PROBE. Il est possible dans ce cas, de créer des macro-fonctions.

Par exemple, le gain d’un quadripôle n’étant pas défini, il est commode d’introduire une macro-fonction qui lui est dédiée. Pour cela, ouvrir Trace >> Macros et définir le gain de la manière suivante :

Figure 3.1 : Fenêtre des macros Le choix des termes S, E et Gain est personnel. En revanche, DB(…) est associé au Marker destiné à la mesure d’une tension en décibels. On sauvegardera la macro en cliquant sur Save pour pouvoir en disposer dans toutes les applications ou sur Save To pour l’associer à une seule application. Les variables E et S seront remplacées par les variables de l’application en cours lors de l’appel de la macro-fonction.

Par exemple, si l’entrée et la sortie d’un filtre s’appellent respectivement EF et SF, pour en mesurer et afficher le gain, on ouvrira Trace >> Add et l’on précisera les arguments du gain comme indiqué ci-dessous. Le gain du filtre sera tracé dès que l’on aura cliqué sur OK .

Page 74: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

74

Figure 3.2 : Fenêtre d’ajout de résultat sous forma graphique, avec à droite les macros diponibles

Page 75: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

75

3.2. Les "Goal Functions" :

Les "Goal Functions" sont des fonctions prédéfinies ou que l'on peut créer soit même en fonction de ses besoins.

Pour illustrer comment les employer, prenons un exemple : On se propose de mesurer le temps de montée de signaux créés précédemment. Après simulation, dans PROBE, pour accéder aux "Goal Functions", on ouvrira Trace >> Eval Goal Function. Dans Functions or Macros sélectionner Goal Functions. La liste des Goal Functions s'affiche à droite dans la Figure 3.3. Cliquer sur Risetime(1). Risetime() s'inscrit dans la fenêtre Trace Expression. Cliquer sur V(S) puis sur OK .

Figure 3.3 : Fenêtre des Goal Functions Aux courbes se superpose la fenêtre de la figure 3.4 qui donne la valeur numérique du temps de montée du signal de sortie V(S) de 10% à 90%. On pourra comparer éventuellement cette valeur

à celle obtenue en utilisant les deux curseurs. Cette fonction ne s'applique qu'aux signaux ne présentant

pas de dépassement. Dans le cas contraire on utilisera la fonction GenRise.

Avant de créer une "Goal Function", il serait bon de voir comment elles sont constituées : Dans PROBE, ouvrir Trace >> Goal Functions et choisir Risetime dans la liste puis cliquer sur Edit (ou View car nous ne la modifierons pas). La fenêtre décrivant la fonction temps de montée s'ouvre :

Figure 3.4 : Exemple de résultat obtenu

Page 76: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

76

Figure 3.6 : Goal Functions disponibles

Figure 3.5 : Edition d’une Goal Function Tout ce qui est précédé d'un astérisque est un commentaire. Les lignes utiles sont donc la première et les dernières. Commençons par analyser l'avant dernière ligne : il s'agit de rechercher la valeur de x, x1 pour laquelle la valeur instantanée du signal représente 10% de son amplitude sur une pente positive (p). La dernière ligne est identique à la précédente au pourcentage près, quant à la première, elle définit le temps de montée comme étant la différence des deux temps appelés x1 et x2.

Cette "Goal Function", comme les autres est sauvegardée dans le fichier msim.prb dans le sous-répertoire Common. Ouvrons ce fichier avec un éditeur de texte quelconque (l’éditeur de texte de DesignLab DesignManager ou le bloc-notes, par exemple). Nous constatons que les "goal functions" sont classées par catégorie pour les retrouver plus facilement.

Pour créer notre propre "Goal Function", il suffit d'écrire un texte ASCII en respectant la syntaxe imposée. On peut l’écrire directement dans l’éditeur de texte mais on préfèrera la créer dans PROBE.

Page 77: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

77

On se propose de créer une "Goal Function" capable de mesurer le temps de réponse à 5% d'un signal ne présentant pas de dépassement que nous l'appellerons Tr5 . Fermons l’éditeur de texte et retournons à PROBE. Ouvrir Trace >> Goal Functions. Cliquer sur New.

Figure 3.7 : Fenêtre pour la création d’une Goal Function

Figure 3.8 : Fenêtre d’édition de la Goal function Dans la fenêtre de la Figure 3.7, taper le nom de la Goal Function : Tr5 et sélectionner :

• use local file pour qu’elle soit attachée uniquement au fichier actuel et sauvegardée dans un fichier de même nom et d’extension prb ;

• use global file pour qu’elle soit utilisable dans toute application ;

Page 78: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

78

• other file pour choisir le nom du fichier.

Compléter la fenêtre d’édition de la fonction (cf. Figure 3.8). Les commentaires sont facultatifs mais aident l'utilisateur à comprendre la fonction réalisée. Les commentaires précédés de #Desc# apparaissent lorsque l’on effectue une analyse de performances. Cliquer sur OK . La "Goal Function" est maintenant disponible. Toutefois, lorsqu'on crée une "Goal Function" proche d'une autre dans sa description, on peut partir de la fonction et procéder par copie et modification du texte. Ainsi pour créer Tr5, on peut partir de Risetime. Pour cela :

• dans PROBE ouvrir Trace >> Goal Functions ; • cliquer sur Copy ; • donner un nom à la nouvelle "Goal Function" ; • cocher la case use local file.

Figure 3.9 : Fenêtre de copie d’une Goal Function Risetime est recopiée sous le nom Tr5. Cliquer maintenant sur Tr5 et sur Edit pour modifier le texte. Terminer en cliquant sur OK .

Créons maintenant une "Goal Function", que nous appellerons Tr5u , capable de mesurer le temps de réponse à 5% d’un signal avec ou sans dépassement. On procédera de la même manière que précédemment et l’on complètera la fenêtre d’édition de la manière suivante : Tr5u(1) =x1 * *#Desc#* Temps de réponse à 5 % près d'un signal avec ou sans dépassement *#Desc#* L'argument de Tr5u doit être égal à : abs(V(S)/V(Sinfini)-1) * *#Arg#* abs(V(S)/V(Sinfini)-1) * 1| Search backward/end/level(0.05) !1; Vous pourrez tester ces différentes "Goal Functions" à partir des circuits RC et RLC décrits dans le chapitre 4 et comparer les résultats aux mesures effectuées à l’aide des curseurs.

Page 79: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

79

3.3. Analyse des performances :

Lorsque l’on effectue une analyse paramétrique d’un système, on peut étudier l’influence d’un paramètre sur l’une des caractéristiques du système : bande passante, temps de montée,… Pour cela, on utilise les "Goal Functions" qui existent ou que l’on a créées pour l’occasion.

Voyons par exemple l’influence de la résistance du circuit RLC de la Figure 4.16 au paragraphe 4.4 sur le temps de réponse à 5% du circuit. Ouvrons Trace >> Analysis Performance, cliquons sur Wizard et laissons nous guider par l’assistant. Choisissons Tr5u (créée dans le chapitre précédent).

Figure 3.10 : Fenêtre didactique pour l’analyse des performances

Dans Name of trace to search, tapons abs(V(S)/10-1) et cliquons sur Next. Une première fenêtre donnant le temps de réponse à 5% en fonction du temps s’affiche. La dernière fenêtre représente le temps de réponse en fonction de la résistance R. On remarque qu’il passe par un minimum.

En modifiant les valeurs de R, (en utilisant un balayage linéaire par exemple), on peut

montrer que ce minimum a lieu pour un coefficient d’amortissement m ≈ 0,7 soit R mLC

= 2 ≈

335Ω.

Page 80: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

80

3.4. Fichiers de commande PROBE :

Certaines commandes doivent être répétées systématiquement lorsqu’on travaille sous PROBE. Par exemple, lors de tracés de diagrammes de Bode, si l’on veut séparer le gain et l’argument sur l’écran il faut effectuer cinq commandes.

Pour s’affranchir de ces tâches fastidieuses, on peut enregistrer la séquence de commandes en ouvrant File >> Logs Command et la relancer ultérieurement en ouvrant File >> Run Command.

A titre d’exemple, prenons le circuit RC en régime harmonique de la figure 80 au paragraphe 4.3 et lançons la simulation. Ensuite, sous PROBE, faire :

• Faire File >> Logs Command et donner un nom au fichier de commande, par exemple G_et_Phi ;

• Faire Plot >> Add Plot pour ajouter un graphe ; • Faire Trace >> Add ; • Taper P(S) dans la boite de texte Trace Expression et cliquer sur OK ; • Dans l’autre graphe, taper DB(S) dans la boite de texte Trace Expression et cliquer sur

OK ; • Ouvrir File >> Logs Command.

La séquence de commande placée entre la première et la dernière ligne est maintenant enregistrée. Sortons de PROBE et relançons la simulation. Pour séparer les courbes de gain et d’argument, il suffit maintenant d’ouvrir File >> Run Command et de choisir le fichier de commande précédemment enregistré. L’avantage de cette méthode est qu’elle peut être utilisée avec d’autres circuits simulés. Quel que soit le circuit simulé, si les grandeurs DB(S) et P(S) sont définies, le fait d’ouvrir File >> Run Command séparera les courbes de gain et d’argument.

Page 81: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

81

3.5. Modifier le symbole d’un composant :

Sous Schematics, le symbole d'origine de la résistance (zig-zag au niveau international) a été remplacé par le symbole normalisé en France (rectangle). Afin de corriger cela, voici la procédure :

Dans Schematics ouvrir File >> Edit Library ou cliquer sur l'icône . Répondre OK à la fenêtre qui s'ouvre (On peut également cocher la case : "Don't show this dialog again" afin que cette fenêtre ne s'ouvre plus dans le futur). On se trouve alors dans l'éditeur de symbole. Faire alors File >> Open ou cliquer sur

et choisir la bibliothèque dans laquelle se trouve le symbole. Dans le cas présent, on choisit la bibliothèque Analog et on clique sur Ouvrir . Ouvrir Part >> Get ou cliquer sur l’icône

et choisir dans la liste R puis cliquer sur Edit . Sélectionner avec la souris le zigzag et appuyer sur la touche Suppr pour le supprimer.

Figure 3.12 : Fenêtre de réalisation des symboles Sélectionner Options >> Display Options et remplacer, le cas échéant, la valeur actuelle de Grid Spacing par 00.05 puis cliquer sur OK .

Figure 3.11

Page 82: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

82

Figure 3.13 : Fenêtre de définition l’affichage

Cliquer sur Graphics >> Box ou bien cliquer sur l'icône . Un crayon apparaît, cliquer avec sa pointe dans un coin du rectangle que l'on veut dessiner, puis dans le coin diagonalement opposé :

un rectangle est alors dessiné. Cliquer sur l'icône (ou bien ouvrir Part >> Save to Library). On pourra faire de même pour tous les autres symboles.

Figure 3.14 : Nouveau symbole de la résistance

Page 83: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

83

3.6. Importer des modèles extérieurs :

Les modèles peuvent être fournis par les fabricants de composants. Pour éviter d'utiliser des bibliothèques volumineuses, on commencera par créer un fichier d'extension .lib dans lequel on placera les modèles de composants dont nous avons besoin.

Ce fichier ASCII peut être créé rapidement à partir d'un éditeur de texte, en utilisant le "copier-coller" entre les documents fournis par le fabricant et notre fichier que l'on nommera ici MaBibli.lib et que l'on ajoutera aux fichiers .lib existants (dans le sous-répertoire LIB ) .

On se propose d'ajouter deux modèles :

• celui d'une diode zener 9,1V de type 1N757 ; • celui d'un amplificateur opérationnel de type TL081.

Notre fichier MaBibli.lib aura donc l'allure ci-dessous (les commentaires étant précédés d'un astérisque : *************************************************** ************** ************************** MaBibli ************ ************** *************************************************** ************** *************************************************** ************** * * * Diodes Zener * * * *************************************************** ************** *************************************************** ************** .model D1N757 D(Is=2.453f Rs=2.9 Ikf=0 N=1 Xti=3 Eg=1.11 Cjo=78p + M=.4399 Vj=.75 Fc=.5 Isr=1.762n Nr=2 Bv=9.1 Ibv=.48516 + Nbv=.7022 Ibvl=1m Nbvl=.13785 Tbv1=604.396u) * Motorola pid=1N757 case=DO-35 * 89-9-18 gjg * Vz=9.1 @ 20mA, Zz=21 @ 1mA, Zz=7.25 @ 5mA, Zz=2.7 @ 20mA *************************************************** **************

Page 84: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

84

*************************************************** **************** * * * AOP * * * *************************************************** ************** *************************************************** ************** * TL081 operational amplifier "macromodel" subcircu it * connections: non-inverting input * | inverting input * | | positive power supply * | | | negative power supply * | | | | output * | | | | | .subckt TL081 1 2 3 4 5 * c1 11 12 3.498E-12 c2 6 7 15.00E-12 dc 5 53 dx de 54 5 dx dlp 90 91 dx dln 92 90 dx dp 4 3 dx egnd1 98 0 3 0 0.500000 egnd2 99 98 4 0 0.500000 fb1 7 99 vb 4715000.000000 fb2 7 99 vc -5000000.000000 fb3 7 99 ve 5000000.000000 fb4 7 99 vlp 5000000.000000 fb5 7 99 vln -5000000.000000 ga 6 0 11 12 282.8E-6 gcm 0 6 10 99 8.942E-9 iss 3 10 dc 195.0E-6 hlim 90 0 vlim 1K j1 11 2 10 jx j2 12 1 10 jx r2 6 9 100.0E3 rd1 4 11 3.536E3 rd2 4 12 3.536E3 ro1 8 5 150 ro2 7 99 150 rp 3 4 2.143E3 rss 10 99 1.026E6 vb 9 0 dc 0 vc 3 53 dc 2.200 ve 54 4 dc 2.200 vlim 7 8 dc 0 vlp 91 0 dc 25 vln 0 92 dc 25

Page 85: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

85

.model dx D(Is=800.0E-18)

.model jx PJF(Is=15.00E-12 Beta=270.1E-6 Vto=-1)

.ends *************************************************** **************

Pour pouvoir utiliser notre bibliothèque il faut ouvrir Analysis >> Library and Include Files et taper MaBibli.lib dans la fenêtre File Name puis cliquer sur Add Library* et OK : notre nouvelle bibliothèque est maintenant accessible à toutes les applications.

3.6.i. Ajout du modèle de la diode 1N757 :

a) Depuis Schematics ouvrir File >> Edit Library ou cliquer sur l'icône . On se trouve alors dans l'éditeur de symbole.

b) Ouvrir Part >> Copy, cliquer sur Select Lib et choisir une bibliothèque dans laquelle un modèle de diode est déjà existant (c'est le cas de la bibliothèque Eval ou diode). Cliquer sur Ouvrir . Cliquer, dans la fenêtre Part, sur la diode D1N750 (de la même famille que la 1N757), dans la boite de dialogue Part. Remplacer D1N750 par D1N757 dans la case New Part Name et cliquer sur OK , le symbole de la diode 1N757 apparaît alors à l'écran.

c) Ouvrir Part >> Attributes (cf. Figure 3.16), cliquer successivement sur Part, Model et Component en remplaçant dans la fenêtre Value D1N750 par D1N757, et valider la modification en cliquant sur Save Attr. Terminer en cliquant sur OK .

Figure 3.15 : Copie d’un modèle de diode

Page 86: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

86

Figure 3.16 : Attribut du modèle de diode sélectionné

d) Ouvrir File >> Save as, dans la fenêtre du Nom, taper MaBibli et cliquer sur Enregistrer (répondre "oui" à la demande d'ajout aux bibliothèques présentes) : un fichier MaBibli.slb est alors créé. Avec une version évaluation de Pspice 7.1, il est composé ainsi (les versions plus récentes comme la version 9.2 donnent généralement le même résultat) :

*version 7.1 1625318918 @index symloc D1N757 0 490 *symbol D1N757 d zener diode @type p @attributes a 0 u 0 0 0 0 hln 100 value= a 0 sp 11 0 13 31 hln 100 PART=D1N757 a 0 sp 0 0 15 25 hln 100 MODEL=D1N757 a 0 s 0 0 15 25 hln 100 COMPONENT=1N757 a 0 s 9 0 15 0 hln 100 refdes=D? a 1 sp 0 0 0 0 hln 100 template=D^@refdes %1 %2 @MODEL ?value/@value/ @pins p 0 5 10 hln 100 1 n 0 10 h p 0 25 10 hln 100 2 n 30 10 u @graphics 30 20 0 10 10 v 0 10 5 10 15 ; v 0 10 15 20 10 ; v 0 20 10 10 5

Page 87: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

87

; v 0 20 5 20 15 ; v 0 10 10 20 10 ; v 0 20 15 18 15 ;

3.6.ii. Ajout du modèle de l’AOP TL081 :

Pour ajouter le modèle associé au TL081, on part de l'AOP de type 741. Si l'on se place dans l'éditeur de symbole (depuis Schematics ouvrir File >> Edit Library ) et que l'on ouvre la bibliothèque Eval (ouvrir File >> Open sélectionner Eval ou opamp et cliquer sur Ouvrir ), on peut lire le contenu de cette bibliothèque en ouvrant Part >> Get. On constate que l'AOP de type 741 se trouve à deux endroits, tout d'abord sous la forme uA741 (AKO 741/OP) puis à la fin de la liste, 741/OP Le premier est une sorte de composant (A Kind Of Part : AKO Part ) qui hérite du composant de base mais auquel des attributs peuvent se substituer ou s'ajouter (un AKO ne pouvant faire référence qu'à un composant de base de sa propre bibliothèque). Le second est un composant de base (Base Part) qui contient des informations graphiques concernant le symbole et le minimum d'attributs nécessaire à son fonctionnement.

Pour ajouter plusieurs AOP ayant même composant de base, on procède en deux étapes :

• copie du composant de base ; • copie de (ou des) l'AKO.

Copie du composant de base (Base Part) : a) Depuis Schematics ouvrir File >> Edit Library . b) Faire File >> Open, cliquer sur MaBibli puis sur Ouvrir . c) Faire Part >> Copy, cliquer sur Select Lib et choisir une bibliothèque dans laquelle se trouve

le modèle du 741. Cliquer sur Ouvrir . Cliquer, dans la fenêtre Part, sur 741/OP (Base Part), dans la boite de dialogue Part. Remplacer 741/OP par A0P5, par exemple19, dans la case New Part Name et cliquer sur OK . Le symbole de l'AOP apparaît à l'écran.

d) Faire Part >> Attributes , cliquer sur Part, taper le nom du modèle : AOP5 et cliquer sur Save Attr. Cliquer ensuite sur Model et procéder de la même façon. Terminer en cliquant sur OK .

e) Faire File >> Save.

Ajout d’un symbole AKO : a) Faire File >> Open, cliquer sur MaBibli puis sur Ouvrir. b) Faire Part >> New, décrire brièvement le composant (par exemple AOP standard), taper le

nom du composant : TL081 (c'est généralement le nom du modèle). Taper le nom de l'AKO associé : AOP5 et cliquer sur OK .

c) Faire Part >> Attributes , cliquer sur Part, taper le nom du symbole : TL081, et cliquer sur Save Attr. Cliquer ensuite sur Model et procéder de la même façon. Terminer en cliquant sur

19 AOP5 car ce type d'AOP possède 5 entrées-sorties utilisables (voir .subckt TL081 ci-dessus).

Page 88: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

88

OK . Model doit avoir exactement le même nom du composant défini dans le fichier .lib (ici MaBibli.lib), à la suite de .SUBCKT.

d) Faire File >> Save.

Page 89: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

89

3.7. La macromodélisation :

L'objet principal de la macromodélisation est de remplacer un système électronique ou une partie de ce système (une fonction ou un dispositif actif) par un modèle afin de réduire significativement le temps requis par les nombreuses simulations électriques effectuées en phase de conception. Pour ce faire, un macromodèle doit répondre à deux exigences conflictuelles: il doit être structurellement le plus simple possible et en même temps simuler le comportement du circuit avec le maximum de précision. Selon leur mode de construction et leur niveau d'abstraction, on distingue essentiellement trois catégories de macromodèles:

1- Les modèles analytiques écrits dans un language de programmation de type C ou un language spécifique de type AHDL (Analog Hardware Description Language), VHDL-AMS ou SystemC ; 2- Les modèles électriques construits à partir d'éléments idéaux linéaires: sources contrôlées et composants passifs ; 3- Les modèles physico-électriques construits à partir d'éléments idéaux et d'un nombre réduit de composants actifs physiques, essentiellement des diodes et des transistors MOS décrits par un modèle non linéaire de bas niveau, typiquement de niveau 1 SPICE.

Pour les deux dernières catégories de macromodèles, implantables sur la plupart des

simulateurs électriques standards de type SPICE, trois approches sont traditionnellement utilisées. La première approche consiste à partir du dispositif original et à remplacer une circuiterie ou une partie de circuiterie par une circuiterie plus simple constituée d'éléments idéaux. La deuxième approche consiste à réaliser une macromodélisation comportementale au sens où on cherche à satisfaire un jeu de spécifications électriques sans nécessairement recopier la topologie du dispositif original, mais en prenant en compte les éventuelles interactions électriques avec l'environnement électrique externe. Quant à la troisième approche, on reste dans le cadre d'une macromodélisation comportementale, mais sans recopie des interactions avec l'environnement électrique externe, dans ce cas on est dans le domaine de la macromodélisation fonctionnelle.

3.7.i. Exemple de macromodélisation, les amplificateurs opérationnels :

En terme de théorie des réseaux, le amplificateur opérationnel (AOP) regroupe quatre amplificateur idéaux à gain infini : l'amplificateur tension-tension (AOV), l'amplificateur courant-courant (AOI), l'amplificateur tension-courant (AOT) et l'amplificateur courant-tension (AOR). L'amplificateur opérationnel mode tension :

C'est l'amplificateur opérationnel le plus couramment utilisé en macromodélisation, et la plupart du temps on le désigne simplement par l'acronyme AOP. Sa sortie basse impédance, idéalement nulle, l'isole des effets de charge, permettant une modélisation fonctionnelle des principaux indices de performance de l'amplificateur opérationnel.

o L'AOV à gain fini

Prise en compte du gain statique La spécification à prendre en compte est le gain en tension fini. Ce macromodèle (Cf.

Figure X.1) correspond simplement à une source de tension commandée en tension Si le gain Ad0 est très grand, idéalement infini, on obtient le modèle AOP "idéal" totalement indépendant de son environnement. La tension VSMC permet de fixer la valeur du potentiel statique de mode

Page 90: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

90

commun pour la sortie. Cette valeur est généralement choisie à la moitié de la tension d'alimentation des circuits, pour symétriser l'excursion de la tension en sortie de l'amplificateur.

Figure 3.17 : Macromodèle d’un AOV à gain fini

Prise en compte de la résistance de sortie

Une prise en compte d'une résistance de sortie non nulle peut être simplement réalisée par l'adjonction d'une résistance en série sur la sortie du dispositif (voir Figure 3.18).

Figure 3.18 : Macromodèle d’un AOV à gain fini avec résistance de sortie

Une autre macromodélisation du gain fini et de la résistance de sortie peut également être réalisée à partir du schéma électrique de la figure 3.19. La transformation de la source de tension par une source de courant avec gs = 1/Rs est avantageuse en terme de nombre de nœuds lors de la modélisation des pôles de la fonction de transfert de l'amplificateur opérationnel. La tension de sortie étant référencée par rapport à la tension de mode communVSMC avec Vs = gsV1/gs = (gmd/gs)(VEP - VEM). Il suffit, par exemple, de poser gmd = 1 et gd = 1/ Ad0 pour établir la correspondance entre les deux modes de macromodélisation.

Figure 3.19 : Autre macromodèle d’un AOV

Prise en compte du gain de mode commun

Si on considère le modèle de la Figure 3.20, la tension de sortie étant référencée par rapport à VSMC, avec Vs = V1 = (gmd/gs)(VEP - VEM) + (gmc/gd)(VEP+VEM). Il suffit de poser gmc = (Ac0/ Ad0)gmd. Pour obtenir avec le formalisme recherché : Vs = Ad0(VEP - VEM) + Ac0(VEP + VEM)/2. En terme de rapport de réjection de mode commun, c'est à dire avec RRMC = |Ad0/Ac0|.On posera par exemple : gmd = 1, gd = 1/Ad0 et gmc = 1/RRMC.

Page 91: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

91

Figure 3.20 : Macromodélisation du gain en mode commun

Prise en compte de la tension de décalage

Sachant que par définition, la tension de décalage est la tension continue qu'il faut placer à l'entrée de l'amplificateur opérationnel pour annuler les erreurs statiques, on vérifie directement sur le schéma de la Figure 3.21, que la tension de sortie étant référencée par rapport à VSMC, une prise en compte de la tension de décalage est réalisée avec Vs = Ad0(VEP - VEM) – ED0Ad0.

Figure 3.21 : Macromodélisation de la tension de décalge

Prise en compte de la limitation de l'excursion de sortie

La tension d'alimentation d'un amplificateur opérationnel étant évidemment limitée, la tension d'excursion en sortie ne peut jamais être supérieure à une valeur Vsmax imposée par l'alimentation haute, et ne peut jamais être inférieure à une valeur Vsmin imposée par l'alimentation basse. La limitation de l'excursion de sortie est donc un phénomène non-linéaire qui peut être pris en compte par un modèle physico-électrique construit à partir d'une diode "idéale" de niveau 1 SPICE et d'une source de tension continue. En effet, une diode étant modélisable analytiquement dans le sens direct (passant) par Id = Is(exp(Vd/nUT)-1) et dans le sens indirect (bloqué) par Id = 0. La tension thermique (UT ~ 26mV) et le courant de saturation Is étant essentiellement des paramètres technologiques, on constate que, de par la fonction logarithmique la tension Vd = nUTlog((Id/Is) - 1) est principalement contrôlable par son coefficient d'émission n. Il suffit ainsi de choisir pour ce dernier une valeur nettement inférieure à sa valeur par défaut de un (typiquement 0,001). Pour simuler un interrupteur commandé en tension, on obtient ainsi le macromodèle de la Figure 3.22.

Figure 3.22 : Modélisation de l'excursion maximum de sortie

o L'AOV à un pôle réel

Paramètres d'entrée du modèle

Page 92: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

92

Le dispositif est caractérisé par une réponse en fréquence du premier ordre paramétrée par son gain fini Ad0 et sa fréquence de transition FT (cf. Figure 3.23). C'est un modèle petit signal.

Figure 3.23 : Macromodéle d’un AOV petit signal à un pôle

Paramètres de synthèse du modèle

La tension de sortie référencée par rapport à la tension de sortie mode commun VSMC

s'écrivant

c

EMEPd

d

EMEP

d

mds

w

pVV

Ap

g

CVV

g

gV

+

−=

+

−=

110 et FC étant la fréquence de coupure de l'AOP

avec 1²/ 0 −= dTC AFF .On détermine pour le modèle un jeu possible de paramètres de

synthèse avec gd = 1/Ad0, gmd = 1 et C = Td

d

FA

A

π2

11²

0

0 −.

o L'AOV à deux pôles réels Paramètres d'entrée du modèle

Le dispositif est caractérisé par une réponse en fréquence du deuxième ordre paramétrée par son gain fini Ad0, sa fréquence de transition FT et sa marge de phase correspondante MP (voir Figure 3.24).

Figure 3.24 : Macromodéle d’un AOV petit signal à deux pôles

Paramètres de synthèse du modèle

La tension de sortie référencée par rapport à la tension de sortie de mode commun VSMC

s'écrit

+

+

−=

+

+

−=

21

0

21

2

2

1

1

1111cc

EMEPd

dd

EMEP

d

m

d

ms

w

p

w

p

VVA

pg

Cp

g

C

VV

g

g

g

gV .

A partir de l'expression de la marge de phase MP ~ arctg(w2/wT) et de la définition de la

fréquence de transition FT, 1

1122

2

21

2

0 =

+

+

c

T

c

T

d

w

w

w

w

A et on détermine la pulsation du pôle

Page 93: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

93

dominant conduisant à un jeu de paramètres de synthèse donné par : F2 = FTtg(MP), gm1 = gm2 =

gd2 =1, C1 =

22

2

0

1

12

F

F

A

F

g

T

d

T

d

+π, C2 = gd2/(2πFTtan(MP)).

Modélisation des capacités parasites d'entrée

Inévitablement, tout amplificateur opérationnel présente sur ses deux entrées une capacité parasite structurelle. Ces deux capacités sont modélisées à partir du schéma de la Figure 3.25. On notera que celles-ci sont considérées par rapport à la masse petit signal et non pas entre les deux entrées, elles englobent ainsi la capacité d'entrée différentielle (multipliée par un facteur 2 de part le principe du demi-circuit) et d'éventuelles capacités parasites de mode commun.

Figure 3.25 : Macromodéle d’un AOV avec ses capacités d’entrée

Modélisation du slew-rate

Le slew rate SR (vitesse limite d'excursion) est un phénomène non-linéaire qui peut être pris en compte par un modèle physico-électrique construit, comme la limitation de le tension de sortie, à partir de diodes "idéales" de niveau 1 SPICE et de sources de tension continues comme indiqué sur la Figure 3.26. Si on considère le premier circuit à diodes idéales, modélisant le slew-rate positif, un courant IX < IXMAX implique la conduction de la diode D2 qui agit idéalement comme un court-circuit, l'ensemble D1 et VMAX est un limiteur de tension qui ne conduit que si VX > VsMAX. Alors qu'un courant IX ≥ IXMAX implique la conduction de la diode D1, établissant un courant dans le condensateur de valeur IC = IX1 – ID1 = IMAX , avec IMAX = C*SR, le courant IC est constant, modélisant ainsi le phénomène du slew-rate. De même, le circuit constitué des diodes D3 et D4 modélise le slew-rate négatif.

Figure 3.26 : Modélisation du Slew-rate

Modélisation du bruit

En terme de densité spectrale, un AOP bruité est modélisable par le schéma de la Figure 3.27. Ainsi, une modélisation de l'amplificateur opérationnel bruité peut être réalisée si on sait

Page 94: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

94

générer à partir d'un simulateur électrique standard un courant de densité spectrale SJ et une tension de densité spectrale SE.

Figure 3.27 : Modélisation du schéma équivalent d’un AOP bruité

• Modélisation du bruit thermique

Electriquement, le bruit thermique aux bornes d'une résistance est modélisable à partir d'une source de courant aléatoire de densité spectrale Sin = 4kTG (où k est la constante de Boltzmann, T la température et G la conductance) en parallèle avec une résistance sans bruit de valeur R = 1/G. Ainsi, si on désire générer une tension de bruit de densité spectrale Svn et un courant de bruit de densité spectrale Sin, on peut considérer le modèle fonctionnel de la Figure

3.28 avec : R = 4kT/Sinref, H = inrefvn SS / ou F = inrefin SS / .

On notera qu'à la température ambiante une résistance de 16.56kΩ génère une densité spectrale

de bruit Sin de 10-24A/Hz, correspondant à un courant efficace in HzpA/1≈ . Pour une

résistance de 1kΩ, on obtient vn HznV /1≈ .

Figure 3.28 : Génération d’une tension et d’un courant de bruit thermique

• Modélisation du bruit en 1/f

Le bruit en 1/f est associé à un composant actif. Ainsi, pour une diode, le niveau 1 SPICE fournit un courant de bruit de densité spectrale : Sin(f) = KF*I D0

AF/f + 2qID0, où KF est le coefficient du bruit, AF en est l'exposant, q est la charge de l'électron et ID0 est le courant de polarisation de la diode. En se donnant AF = 1, on peut écrire : Sin(f) = 2q ID0(1+fc/f) avec fc = KF/2q. Pour un courant de polarisation de la diode déterminé par ID0 = Sinref/2q, le coefficient du bruit est

donné par la fréquence de coupure du bruit en 1/f, avec KF = 2qfc. Ainsi, avec H = inrefvn SS /

Page 95: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

95

et F = inrefin SS / , la génération d'une tension et d'un courant de bruit ayant une composante en

1/f peut être assurée fonctionnellement par le circuit de la Figure 3.29, le condensateur de blocage Cb de trés forte valeur (1F), permet le prélèvement du courant de bruit de la diode (par une sonde), sans perturber sa polarisation. On notera que, contrairement au modèle "bruit thermique résistif", le modèle "diode" ne permet pas la prise de la température lors du changement des conditions de simulation.

Figure 3.29 : Génération d’une tension et d’un courant en 1/f

L'amplificateur opérationnel à sortie différentiell e :

La prise en compte d'une sortie différentielle est réalisée par le schéma de la Figure 3.30, avec : Vsp = VSMC + VSMC0 + V1/2 et Vsm = VSMC + VSMC0 - V1/2. La sortie de mode différentiel Vsd = Vsp - Vsm est égale à V1 et la sortie de mode commun Vsp = (Vsp+Vsm)/2 est égale à VSMC0 + VSMC. L'amplificateur opérationnel à sortie différentielle ainsi macromodélisé est parfaitement équilibré, et la tension VSMC0 est la tension de sortie résiduelle de mode commun.

Figure 3.30 : Modélisation d’un amplificateur différentiel

Prise en compte des dispersions statistiques

Si la prise en compte des dispersions statistiques sur un paramètre primaire comme la tension de décalage est directe, il n'en est pas de même pour les différentes spécifications fréquencielles qui sont formellement liées. Ainsi, une variation sur le gain statique doit conduire à une variation dans le sens inverse sur la fréquence de coupure puisque les deux caractéristiques dépendent d'une même conductance. De part le formalisme utilisé pour la détermination des composants des macromodèles à un pôle et à deux pôles, une prise en compte "comportementale" statistique des principaux indices de performance fréquenciels peut être réalisée directement sur le paramètre gd du macromodèle à un pôle et sur le paramètre gd1 du macromodèle à deux pôles.

Page 96: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

96

L'amplificateur opérationnel de transconductance :

L'amplificateur opérationnel de transconductance (AOT pour Operational Tranconductance Amplifier) est l'amplificateur opérationnel le plus couramment rencontré en microélecronique. En effet, dans un environnement "haute impédance", la résistance de sortie de l'amplificateur peut être également grande et ainsi permettre une simplification notable de son architecture. L'exemple typique, est lorsque l'environnement est de type capacités commutées, c'est à dire purement capacitif, où l'impédance de sortie du dispositif actif peut être théoriquement infinie. La prise en compte d'une sortie haute impédance permet de modéliser deux caractéristiques importantes. D'une part un mode de fonctionnement particulier pour les circuits à capacités commutées, avec des discontinuités en régime transitoire sur les fronts d'horloge. D'autre part une dépendance fonctionnelle des principaux indices de performance avec l'environnement extérieur principalement fixée par le nombre de nœuds haute impédance présenté par l’amplificateur.

o L'OTA à un nœud haute impédance

L'OTA à gain statique fini L'OTA à gain statique fini de la Figure 3.31 est simplement caractérisé par un gain Ad0 =

gm/(gs + Gl), prenant en compte la conductance de sortie gs et l'effet de charge statique procuré par Gl.

Figure 3.31 : OTA à gain statique fini

L'OTA à un pôle réel

• Paramètres d'entrée du modèle Le dispositif est caractérisé par une réponse en fréquence du premier ordre paramétrée par

son gain fini Ad0, sa fréquence de transition FT, sa conductance de charge Gl et sa capacité de charge Cl (voir Figure 3.32).

Figure 3.32 : OTA à pôle réel

Page 97: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

97

• Paramètres de synthèse du modèle La tension de sortie référencée par rapport à la tension de sortie mode commun VSMC

s'écrivant

c

EMEPd

ls

l

EMEP

ls

ms

w

pVV

A

pGg

C

VV

Gg

gV

+

−=

++

−+

=11

0 et 12

0 −=

d

Tc

A

ff étant la fréquence de

coupure de l'AOP, on détermine pour le modèle, un jeu de paramètres de synthèse avec :

ll

d

Ts GC

A

fg −

−=

1

220

π et ( )lsdm GgAg += 0 .

On notera que pour une conductance de sortie Gl différente de zéro, la conductance de charge gs devant être positive, il y a une contrainte sur la valeur basse de la fréquence de coupure, c'est une caractéristique de l'OTA qui a pour vocation de travailler dans un environnement "fortement" capacitif.

L'OTA à deux pôles réels • Paramètres d'entrée du modèle

L'amplificateur opérationnel est caractérisé par une réponse en fréquence du deuxième ordre paramétrée par son gain fini Ad0, sa fréquence de transition FT, sa marge de phase MP, sa conductance de charge Gl et par sa capacité de charge Cl (cf. Figure 3.33).

Figure 3.33 : OTA à deux pôles réels

• Paramètres de synthèse du modèle

Comme pour l'AOV correspondant, le pôle non dominant est fixé par la marge de phase et la fréquence de transition avec w2 = gd2/C2 = wTtan(MP), alors que le gain statique est donné par

( )lsds

mmd

Ggg

ggA

+=

2

210 et que le pôle dominant dépendant de la charge est donné par

220

1 1w

w

A

w

C

Ggw T

d

T

l

ls +=+

= . On détermine ainsi un jeu de paramètres de synthèse avec

lT

d

Tls G

w

w

A

wCg −+=

22

2

0

1 , ( )lsddmm GgAggg +=== 022 et )tan(

22

MPw

gC

T

d= .

On notera que d'une part, comme l'OTA à un pôle, pour une conductance de sortie Gl différente de zéro, la conductance de charge gs devant être positive, il y a une contrainte sur la valeur basse de la fréquence de coupure, et que d'autre part toute augmentation de la capacité de charge produit une augmentation de la marge de phase. Ceci est une caractéristique essentielle des dispositifs actifs à un nœud haute impédance.

Page 98: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

98

• Prise en compte des autres non-idéalités La modélisation du gain de mode commun, de la tension de décalage, de l'excursion de

sortie, des capacités d'entrées, du slew-rate et du bruit est identique à celle de l'amplificateur opérationnel mode tension. Quant aux dispersions statisques sur le gain statique et sur les indices de performance fréquenciels, elles peuvent être simplement prises en compte (partiellement comme le "comportement" l'exige) par la conductance de sortie gs. Remarques : Les OTA à deux nœuds haute impédance sont principalement caractérisés par le

fait que toute augmentation de la capacité de charge produit une diminution de la marge de phase. Ceci est du à la structure à deux étages et à l'action de la capacité de compensation qui permet de générer le pôle non dominant par l'étage de sortie. Les caractéristiques en fréquence étant fortement dépendantes du type de compensation interne, il est difficile de concevoir un macromodèle générique.

Transformateur parfait :

o Le transformateur idéal Le transformateur idéal ou parfait est une conceptualisation du transformateur inductif

réel, valable pour tous les types d'analyse utilisés en simulation, l'alternatif, le transitoire et surtout le statique. De part son jeu d'équations de fonctionnement constitué du couple V2 = nV1 et I2 = - I1/n. Il est modélisable par une source de tension et une source de courant contrôlées comme indiqué sur la Figure 3.34.

Figure 3.34 : Symbole et modélisation d’un transformateur idéal

o Le transformateur différentiel parfait de tension

Lorsque l'on désire caractériser un amplificateur différentiel, en termes de performances électriques, il est impératif de le caractériser pour ses propriétés de mode différentiel et de mode commun, mais également en fonction de ses gains de conversion traduisant le couplage entre les deux modes principaux. Pour ce faire, pratiquement on utilise le transformateur différentiel ou "balun" de la Figure 3.35.

Page 99: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

99

Figure 3.35 : Symbole d’un transformateur différentiel Si on considère les équations fondamentales du transformateur idéal, on peut écrire pour le transformateur différentiel VD = 2(V1 – VC) et VD = 2(VC – V2). Soit VD = V1 – V2 et VC = (V1 + V2)/2 ou V1 = VD/2 + VC et V2 = -VD/2 + VC. Le transformateur différentiel est donc un dispositif bidirectionnel qui convertit deux tensions assymétriques V1 et V2 en une composante de mode différentielle VD et une composante de mode commun VC, et inversement, qui convertit un couple de tension de mode différentielle et de mode commun en un couple de tensions assymétriques. En terme de macromodèle comportementale, en condérant le modèle du transformateur idéal de la Figure 3.34, en tension, on peut le représenter par le schéma équivalent électrique de la Figure 3.36.

Figure 3.36 : Macromodèle d’un transformateur differentiel de tension

En simulation, ce macromodèle peut être utilisé pour effectuer directement, c'est à dire sans opération mathématique sur les différents signaux, la mesure des principales fonctions de réseaux des amplificateurs différentiels de tension.

Page 100: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

100

o Le transformateur différentiel parfait de courant

L'écriture des courants aux accès montre que le dispositif précédent n'est pas adapté pour le transfert en courant. On vérifie facilement que la sonde différentielle de courant de la Figure X.21 convertit deux courants asymétriques I1 et I2 en une composante de mode différentielle ID et une composante de mode commun IC telles que ID = I1 – I2 et IC = (I1 + i2)/2 et I1 = ID/2 + IC et I2 = -ID/2 + IC.

Figure 3.37 : La sonde différentielle de courant et sa représentation à sources contrôlées

Page 101: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

101

4 – Quelques exemples : Voici quelques exemples de circuits simulés sous MicromSim avec une brève description de la procédure à suivre dans chacun des cas. 4.1. – Pont résistif : On se propose de réaliser le schéma suivant de la figure 70 et de faire une analyse du point de fonctionnement.

Figure 4.1 : Pont diviseur

Lancer l'éditeur de schéma Schematics et réaliser le schéma.

Résistances ( R ) :

Cliquer sur l'icône (équivalent de Draw >> Get New Part ou CTRL + G). Cliquer sur Libraries et choisir la bibliothèque Analog.slb dans la fenêtre Library puis R dans la fenêtre Part ou bien taper R dans la fenêtre PartName. Cliquer sur OK puis sur Close. Placer la première résistance en cliquant sur le bouton gauche de la souris. Placer la seconde résistance en position horizontale pour l'instant. Pour quitter le symbole résistance, cliquer sur le bouton droit de la souris. Pour faire tourner la seconde résistance, cliquer dessus, avec le bouton gauche, pour la sélectionner puis soit faire CTRL + R, soit ouvrir Edit >> Rotate.

Source de tension continue (VDC) : Procéder de la même manière que pour les résistances mais en choisissant, dans la

bibliothèque source.slb, le composant VDC.

La masse (GND_ANALOG) : Procéder de la même manière que pour les résistances mais en choisissant, dans la

bibliothèque ports.slb, le composant GND_ANALOG.

Remarques : - Vous pouvez utiliser avec profit les différents symboles de loupe . Celui-ci permet d'afficher à l'écran la totalité du schéma tout en le centrant.

Page 102: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

102

- Pour déplacer un composant, on le sélectionne en cliquant dessus avec le bouton gauche, et on le déplace en maintenant le bouton enfoncé. - Pour supprimer un composant, après l'avoir sélectionné :

• Soit presser sur Suppr ; • Soit ouvrir Draw >> Delete.

- Pour redessiner le schéma : soit cliquer sur l'icône, , soit faire CTRL + L ou ouvrir View >> Redraw.

Relier les composants entre eux :

Cliquer sur l'icône (équivalent de Draw >> Wire ou Control W ). Amener la pointe du crayon sur l'extrémité supérieure de la source de tension, cliquer sur le bouton gauche et déplacer la souris, sans maintenir le bouton enfoncé, jusqu'à l'extrémité gauche de la première résistance, cliquer à nouveau sur le bouton gauche. Cliquer maintenant sur l'extrémité droite de la résistance et procéder de la même manière pour la relier à la seconde résistance. Pour quitter le mode fil, cliquer sur le bouton droit de la souris.

Attribuer des valeurs aux composants : Actuellement, la tension continue de la source VDC (nommée V1 sur la figure 70) vaut

zéro volt. Pour la modifier, cliquer deux fois sur sa valeur : une fenêtre Set Attribute Value s’ouvre. Remplacer 0V par 10V et cliquer sur OK . De la même façon, on peut modifier les valeurs des résistances.

Placer des appareils de mesure :

• Voltmètre continu : Sélectionner, dans la bibliothèque Special.slb, l'élément VIEWPOINT. Placer le voltmètre entre les deux résistances.

• Ampèremètre continu : Sélectionner, dans la bibliothèque Special.slb, l'élément IPROBE. Le placer en série avec R2. Terminer avec le fil reliant l'ampèremètre à la source.

Sauvegarder le travail en cliquant sur l'icône de disquette :

Paramétrer la simulation :

Sélectionner l'icône (équivalent de Analysis >> SetUp). Cocher la case Bias Point Detail pour calculer le point de repos. Cliquer sur Close.

Remarque : Le fait de cocher la case ajoute des points de calcul, mais le point de repos est

toujours calculé lorsqu’on effectue une simulation quelquonque.

Lancer la simulation :

Cliquer sur l'icône (équivalent de Analysis >> Simulate ou de F11). La fenêtre du simulateur PSpice s'ouvre pendant la simulation. Fermer éventuellement cette fenêtre à la fin de la simulation.

Page 103: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

103

Visualiser les valeurs des tensions et intensités continues du schéma : Si dans le menu Analysis, si Display Results on Schématic est ‘’Enable’’ , les potentiels

des noeuds et les intensités des courants dans les composants peuvent s’afficher automatiquement.

On peut se limiter à l’affichage des tensions en cliquant sur l’icône ou en validant Enable Voltage Display dans Analysis >> Display Results on Schématic. On peut aussi se

limiter à l’affichage des intensités en cliquant sur l’icône ou en validant Enable Current Display dans Analysis >> Display Results on Schématic. On peut, en cliquant sur un noeud

valider ou non l’affichage de son potentiel en cliquant sur l’icône . On peut, en cliquant sur un composant valider ou non l’affichage de l’intensité du courant qui le traverse en cliquant sur

l’icône .

Examiner la liste des nœuds du circuit : En ouvrant Analysis >> Examine Netlist, on obtient :

* Schematics Netlist * R_R1 $N_0002 $N_0001 1k V_V1 $N_0002 0 10V R_R2 $N_0003 $N_0001 1k v_V2 $N_0003 0 0 ce qui rend compte des différents objets utilisés et des liaisons entre eux. Remarques : - Les numéros des nœuds sont précédés de $N.

- La masse est ici considérée comme une source de tension de 0V.

Examiner le fichier de sortie : En ouvrant Analysis >> Examine Output, on obtient des informations sur les différents

fichiers nécessaires à la simulation et à l’affichage des résultats. C’est également dans ce fichier que l’on trouvera la liste des éventuelles erreurs.

Page 104: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

104

4.2. – Circuit RC en régime transitoire :

Dans le menu File cliquer sur New et dessiner le schéma suivant :

Figure 4.2 : Circut RC

La source de tension VPULSE se trouve dans la bibliothèque Source.lsb. On attribuera les valeurs suivantes à la source : V1 = 0 ; V2 = 10 ; TD = 0 ; TR = 0 ; TF = 0 ; PW = 1m ; PER = 2 m.

Placer des étiquettes (E et S) en cliquant sur un fil et en ouvrant Edit >> Label (ou CTRL + E).

Les voltmètres s'obtiennent en cliquant sur

l’icône ou en ouvrant : Markers >> Mark Voltage >> Level, ou encore en faisant CTRL + M. On peut choisir la couleur de la trace en cliquant sur Marker color . L'ampèremètre s’obtient en en cliquant

sur ou en ouvrant : Markers >> Mark Current into Pin.

Paramétrer ensuite la simulation en cochant la case Transient et en cliquant sur Transient dans la figure 72. Choisir le pas d'affichage, 5µs, en écrivant 5u dans Print Step et la durée de la simulation, 2ms, en écrivant 2m dans Final Time. Cliquer sur OK , puis sur Close.

Sauver le schéma et lancer la simulation (F11). Une fenêtre de résultats (PROBE) s'ouvre :

Figure 4.3 : Paramètres de l’analyse transitoire

Page 105: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

105

Figure 4.4 : Résultat de l’analyse transitoire du filtre RC Les courbes de tension sont affichées mais, attention, la courbe du courant n'est pas visible car l'échelle de l'axe des ordonnées n'est pas adaptée.

Des curseurs peuvent être utilisés pour effectuer des mesures sur les courbes en cliquant

sur l'icône (équivalent de Tools >> Cursor >> Display ou CTRL + SHIFT + C ). Deux curseurs sont disponibles (l'un associé au bouton gauche, l'autre au bouton droit de la souris). Cela permet d'obtenir les coordonnées de deux points et leur différence. On peut choisir la (ou les) courbe(s) sur laquelle on effectue les « mesures » en cliquant sur le symbole de même couleur situé sous l'axe des abscisses (un carré vert pour V(E) ci-dessus) avec le bouton gauche ou droit.

Quantifier, par exemple, le temps écoulé entre 0 et 63% de la valeur finale de la tension de sortie. Le comparer à la constante de temps du circuit.

Le menu Tools >> Cursor et les boutons de la barre d'outils offrent de nombreuses options pour le curseur : Pour visualiser le courant :

• Ouvrir Plot >> Axis Settings ; • Cocher User Defined ; • Ecrire - 1mA et 1mA dans les deux fenêtres situées en dessous.

On peut également éliminer les courbes de tension en cliquant sur leur nom (en dessous de l'axe des abscisses, à gauche) et en appuyant sur Suppr. On les rétablira en ouvrant Trace >> Add ou

en cliquant sur et en sélectionnant dans la liste les courbes précédentes (V(E) et V(S)).

Page 106: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

106

Les méthodes ci-dessus ne permettent pas de visualiser simultanément l’intensité du

courant et les tensions d’entrée et de sortie. Pour y parvenir, il est nécessaire de créer un second axe vertical : Les trois traces étant présentes, supprimons la trace correspondant à l’intensité du courant (on peut également supprimer la sonde de courant dans Schematics) :

• Suprimer d’abord –I(C1) ; • Ouvrir Plot >> Add Y Axis : un second axe vertical (de numéro 2) est ajouté à gauche de

la fenêtre ; • Ouvrir Plot >> Y Axis Settings, et compléter la boite de dialogue ci-dessous ; • Sélectionner dans Y Axis Number le premier axe et préciser dans Axis title qu’il s’agit

d’un axe de tensions en écrivant ‘’U’’, terminer en cliquant sur OK. • Ouvrir Trace >> Add et choisir I(R1)

Figure 4.5 : Changement sur les axes des ordonnées

Remarques : - Les écrans précédents obtenus en mode VGA (640X480) ne permettaient pas de visualiser l’ensemble des boutons de commande, en SVGA (800X600), ce n’est plus le cas. - Les couleurs, en particulier la couleur de fond de l’écran peut être modifiée en ouvrant le fichier msim_evl.ini et en remplaçant les paramètres de Probe display colors notamment Background et Foreground.

On se propose maintenant de faire une analyse de Fourier des signaux précédents, pour

cela, ouvrir Trace >> Fourier ou cliquer sur l'icône . Le spectre d'amplitude apparaît à l'écran :

Page 107: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

107

Figure 4.6 : Résultats de simulation

Figure 4.7 : FFT des résultats de la Figure 4.6

Pour une meilleure observation, on pourra modifier l'échelle des abscisses en ouvrant Plot >> XAxis Settings : • cocher la case User Defined ; • définir les fréquences minimale et maximale d'observation (0 et 10 kHz dans la figure 77).

Page 108: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

108

Figure 4.8 : Changement de l’axe des x

Le spectre a alors l'allure de la figure 4.9 ci-dessous :

Figure 4.9 : FFT élargi sur l’axe des x de la Figure 4.7 La largeur des raies des spectres est manifestement trop importante. Cela est dû au fait que nous n'avons observé qu'une période du signal, la largeur d'une raie étant égale à 2f (f = fréquence des signaux), soit ici 1kHz. Pour la diminuer, il faut donc augmenter la durée d'observation (Final time). En faisant passer Final Time à 20 ms, par exemple, la largeur de raie sera 10 fois plus faible c'est à dire 100 Hz. Le spectre du signal d'entrée prend alors l'allure de la figure 4.10.

Page 109: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

109

Figure 4.10 : FFT avec une durée d’observation plus adaptée

Avec les curseurs, on pourra vérifier la décomposition spectrale du signal rectangulaire (fréquence et amplitude).

e tV V

t t t( ) sin( ) sin( ) sin( ) ...= + + + +

2 2

22

13

315

ω ω ω

si V2 est l'amplitude de e(t).

Le bouton d'icône permet de passer facilement au maximum suivant. Placer à l’aide

de l’icône des étiquettes indiquant les coordonnées du curseur sur différentes raies du spectre.

On peut revenir aux signaux en fonction du temps en ouvrant Trace >> End Fourier ou

en cliquant à nouveau sur l’icône .

Page 110: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

110

4.3. – Circuit RC en régime sinusoïdal :

Remplacer la source précédente par la source VAC . Fixer l'amplitude de la composante alternative à 10 V.

Figure 4.11

Pour obtenir la tension de sortie en décibels choisir le voltmètre vdb dans Markers >> Mark Advanced. La phase peut également être tracée en choisissant vphase.

Paramétrer la simulation en cochant la case AC Sweep (cf. Figure 4.12) et en choisissant les fréquences minimale et maximale, le type de balayage ainsi que le nombre de points par décade comme indiqué dans la figure 82 (qui peut être choisi plus faible).

Figure 4.12 : Type de simulation choisie

Page 111: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

111

Figure 4.13 : Paramètre de la simulation AC désirée On obtient les tracés de Bode ci-dessous :

Figure 4.14 : Diagramme de Bode obtenu à partir de l’analyse AC L'échelle des ordonnées est commune à l'amplitude (exprimée en dB) et à la phase du signal de sortie (exprimée en degrés).

Pour obtenir le gain du montage et séparer les deux courbes, on peut procéder de la manière suivante :

• Ouvrir Window >> New : une nouvelle fenêtre s'ouvre ; • Ouvrir Trace >> Add et dans la fenêtre Trace Expression, écrire VDB(S)-VDB(E)

puis cliquer sur OK : le gain du montage est représenté dans la nouvelle fenêtre ;

Page 112: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

112

• Ouvrir Window >> Tile Horizontal : les deux fenêtres sont placées l'une au dessus de l'autre ;

• Cliquer sur la fenêtre inférieure puis sur VDB(S) et appuyer sur la touche Suppr pour supprimer cette courbe.

Les deux fenêtres portent le nom du fichier enregistré. Pour le modifier, ouvrir Window >> Title et proposer un nouveau titre, par exemple "Phase(degrés)" et cliquer sur OK . Procéder de même pour le gain en sélectionnant la courbe de gain.

Les deux fenêtres visualisées simultanément ne permettent pas d'effectuer des « mesures » précises. Pour visualiser une seule des deux fenêtres il suffit de cliquer deux fois dessus. On pourra, en s'aidant des curseurs mesurer la fréquence de coupure à -3dB, la phase à cette fréquence et la pente de l'asymptote oblique du gain aux fréquences très supérieures à la fréquence de coupure.

Figure 4.15 : Diagramme de Bode sur fenêtre séparé

Page 113: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

113

4.4. – Analyse paramétrique d’un circuit RLC :

On se propose de faire varier une grandeur dans un circuit : la résistance d'un circuit résonant RLC qui prendra successivement les valeurs 50, 100, 200, 400, 800Ω.

Dessiner le schéma suivant en gardant la même source VPULSE que dans l’exemple précédent :

Figure 4.16 : Circuit RLC

Cliquer sur la valeur de R1 pour remplacer sa valeur numérique par une variable (ici Rvar) placée entre accolades comme sur la Figure 4.17. Choisir, dans la bibliothèque Special.slb, l'élément PARAM. Une fois en place, cliquer sur PARAMETERS pour introduire les paramètres. On complétera les cases Value de NAME1 et de Value1 (voir figure 4.17).

Figure 4.17 : Valeur RVAR attribuée à la résistance R

Figure 4.18 : Définition de RVAR si l’analyse paramétrique n’est pas effectué

Page 114: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

114

Dans Analysis >> Setup, cocher Transient et cliquer dessus. Compte tenu des valeurs numériques de L et C on choisit une durée d'observation de 0,5ms.

Figure 4.19 : Définition de l’analyse transitoire à simuler

Dans Analysis >> Setup, cocher Parametric et compléter les cases comme indiqué ci-dessous :

Figure 4.20 : Définition des valeurs que va prendre RVAR succéssivement Attention : Dans la Figure 4.20, la dernière valeur de la fenêtre Values est 800 (et non pas

80 !!).

Page 115: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

115

Lancer la simulation. La fenêtre Available Section s'ouvre : répondre OK.

Figure 4.21 : Premiere fenêtre de résultat de l’analyse paramétrique Remarque : On peut supprimer une (ou des) courbe(s) à l'affichage en cliquant sur la ligne la

concernant pour la désélectionner.

Figure 4.22 : Résultat de l’analyse transitoire pour différentes valeur de R

On constate que le nombre de points de mesures est insuffisant, ce qui se traduit par un aspect segmenté des courbes. En cliquant sur le carré vert en dessous de l'axe des abscisses on obtient les caractéristiques de la courbe verte. Le nombre de points de calcul est égal à 75 et 87 points sont affichés (cf. Figure 4.23).

Page 116: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

116

Figure 4.23 : Information sur l’une des courbes affichées Pour améliorer la précision d'un calcul ou de l'affichage, on peut imposer un pas maximal de calcul en ajoutant dans le paramétrage de Transient (Analysis >> SetUp du logiciel Schematics) une valeur de Step Ceiling (pas plafond). En introduisant une valeur de 1µs, on obtient une nette amélioration. Le nombre de points de calcul est passé à 518 et le nombre de points affichés à 522, ce qui améliore la précision des calculs et la qualité des courbes.

Figure 4.24 : Information sur l’une des courbes affichées

Explication : - Durant une simulation analogique, le simulateur ajuste le pas interne de calcul

afin de maintenir une précision suffisante mais en évitant les calculs inutiles lorsque le signal présente peu de variations. Par défaut, le pas interne maximum est choisi égal à 2% de la durée totale (Final time). Cette valeur peut être modifiée en spécifiant un autre pas maximum (Step Ceiling).

D'après la documentation de Pspice la valeur de Print Step n'a pas d'action sur le fichier de Probe. L'expérience montre que ce n'est pas le cas. Pour s'en convaincre, il suffit de modifier sa valeur actuelle et de la porter à 100us par exemple. En conclusion pour obtenir de bons résultats, il est préférable de choisir Step Ceiling et Print Step faibles, par exemple égaux à Final time/500 - Pour ajouter des commentaires (Text), des lignes (Line), des polygones ouverts ou fermés (Poly-line), des flèches (Arrow ), des rectangles (Box), des cercles (Circle), des ellipses (Ellipse), on ouvrira le menu Tools >> Label. Du texte peut

Page 117: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

117

également être ajouté en cliquant sur l'icône . Toutefois, il est à noter que suivant la version employer, ces fonctions ne sont pas toujours possibles (Tools >> Label non présent sous Orcad PSpice 9.2 mais présent sur Microsim PSpice 8).

Enfin, pour visualiser une ou plusieurs courbes paramétrées, voici la procédure :

• Cliquer sur V(S) en bas de l’écran ; • Appuyer sur la touche Suppr du clavier : les courbes disparaissent ; • Ouvrir Trace >> Add ; • Spécifier V(S)@1 V(S)@5 dans Trace Expression pour observer les deux courbes

extrêmes (correspondant à Rmin et Rmax).

Figure 4.25 : Résultat de l’analyse transitoire pour 2 valeurs particulière de R

Page 118: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

118

4.5. – Simulation de composants actifs :

Les composants actifs nécessitent une ou plusieurs alimentations. Celles-ci (VDC) peuvent être reliées directement aux bornes d'alimentation du composant mais cela surcharge le schéma inutilement. On préfère associer à chaque alimentation une bulle (Bubble dans la bibliothèque Port.slb) et associer à chacune d'elles une étiquette (+Vcc, par exemple) en cliquant dessus. On fait de même du côté du composant. Une liaison électrique invisible est alors réalisée.

Effectuer une simulation sur le montage ci-dessous en réglant l'amplitude de la tension d'entrée à 2V et sa fréquence à 1kHz. Choisir correctement les paramètres de l'analyse transitoire.

Figure 4.26 : Amplificateur à AOP

Les résultats coïncident avec ce que l'on pouvait espérer : montage inverseur et saturation du signal de sortie lorsque l'amplitude dépasse 14,6V.

Figure 4.27 : Résultat de simulation de l’analyse temporelle

Page 119: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

119

Si l'on règle le paramètre AC de la source Vsin à 2V et que l’on réalise une analyse harmonique, on constate que la tension de sortie atteint une amplitude 20V en basse fréquence : l'analyse harmonique ne tient pas compte des tensions de saturation !

Figure 4.28 : Résultat de l’analyse alternative petit signal

Page 120: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

120

4.6. – Caractéristiques de composants : 4.6.i. Diode Zener :

On se propose de tracer la caractéristique Vz(Iz) d’une diode zener. Dessiner le schéma de la Figure 4.29. Dans Analysis >> Setup, cocher DCSweep puis cliquer sur DCSweep. Compléter ensuite les cases de la fenêtre de la Figure 4.30. Cocher : - Current Source ;

- Decade. Puis, remplir :

• Name : I1 (nom de la source de courant) ; • Start Value : 10u (valeur minimale de

l’intensité du courant) ; • End Value : 10m (valeur maximale de

l’intensité du courant) ; • Pts/Decade : 20 (nombre de points par

décade).

Lancer la simulation : on obtient la caractéristique Vz en fonction de Iz.

4.6.ii. Transistor à effet de champ :

Caractéristique IDS(VGS) : Dessiner le schéma ci-dessous. Les sources

sont du type VSRC.

Figure 4.29 : Circuit de dessin de la caractéristique statique d’une diode

Figure 4.30 : Paramètres de simulation utilisés

Figure 4.32 : Circuit de dessin de la caractéristique statique d’unTEC

Page 121: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

121

Caractéristique IDS(VDS) : Pour tracer le réseau de caractéristiques IDS(VDS) pour différentes valeurs de VGS, il faut

effectuer deux balayages en tension : VDS et VGS.

Figure 4.34 : Suite des paramètres de simulation utilisés

Figure 4.33 : Paramètres de simulation utilisés

Page 122: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

122

On procède en deux étapes :

• Un balayage linéaire de VDS, entre 0 et 10V, par pas de 0,1V ; • Un balayage linéaire de VGS, entre 0 et -3V, par pas de -0,5V.

Pour cela on :

• Ouvrira Analysis >> Setup ; • Cochera DC Sweep ; • Cliquera sur DC Sweep ; • Remplira la fenêtre DC Sweep ; • Cliquera sur Nested Sweep ; • Remplira la fenêtre Nested DC Sweep et cocher Enable Nested Sweep comme sur la

Figure 4.35; • Fermera les fenêtres en cliquant sur OK et Close.

Figure 4.35 : Suite des paramètres de simulation utilisés

Page 123: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

123

Figure 4.36 : Résultat de simulation

Page 124: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

124

4.7. – Calcul du bruit généré par des composants :

On s’intéressera au bruit généré par une diode zener polarisée par une source de tension continue de 10 V et une résistance de 100 kΩ.

Dessiner le schéma ci-dessous où V1 est une source VAC avec DC = 10V.

Figure 4.37 : Circuit à diode

Ouvrir Analysis >> Setup et cocher AC Sweep et cliquer sur AC Sweep. Puis, procéder

aux réglages ci-contre.

• Type de balayage : Decade • Pts/Decade : 101 • Start Freq : 10 • End Freq : 500k • Noise Enabled : coché • Output Voltage : V(S) • I/V : V1 • Interval : ne pas remplir

Lancer la simulation.

Dans PROBE, ouvrir Trace >> Add et sélectionner V(ONOISE). On obtient l’affichage de la densité spectrale de tension de bruit en sortie (en V/(Hz)1/2), en fonction de la fréquence. On pourra remarquer qu’en augmentant la valeur de R, la tension de bruit augmente tandis que la fréquence de coupure diminue comme on pouvait s’y attendre (la tension de bruit dans une résistance étant proportionnelle à la racine carrée de sa valeur et les capacités parasites de la diode associées à la résistance formant un filtre passe-bas). Pour plus de renseignements sur le calcul des densités spectrales de puissance et de tension de bruit, vous pouvez obtenir l’aide en ligne en ouvrant : Help >> Search For Help On et en recherchant AC Analysis ou encore en ouvrant Help >> Schematics User’s Guide.

Figure 4.38 : Paramètre de simulation

Page 125: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

125

4.8. – Simulation de composants numériques : On se propose de réaliser un compteur par 4 asynchrone à l’aide de bascules JK (de type 74107, dont le fonctionnement normal a lieu quand CLR est à l’état bas). Le changement d’états se fait sur fronts montants. Les inverseurs sont de type 7404. La fréquence d’horloge est de 10kHz.

Figure 4.39 : Circuit numérique simulé

Configurer la simulation comme présentée dans les figures 4.40 et 4.41.

Figure 4.40 : Paramètre d’initialisation des composants numériques

Page 126: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

126

Figure 4.41 : Paramètres de simulation Lancez ensuite la simulation et observez les signaux Q0 et Q1. Comme sur la figure 4.42, on doit voir se réaliser un compteur par 4 : soit Q0 Q1 prennent successivement les valeurs 00, 01, 10,11, ...

Figure 4.42 : Résultat de simulation

Page 127: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

127

4.9. – Simulations statistiques Monté-Carlo et Worst-case

Lorsqu’on construit un équipement en série, les performances obtenues ainsi que les points de polarisation des composants peuvent varier énormément d’un composant à l’autre à cause des dispersions des valeurs des éléments. Si une grandeur est une fonction simple d’une autre (par exemple la tension de collecteur d’un transistor bipolaire en fonction du β de ce dernier), il est facile de calculer la dispersion des valeurs de VCE si l’on connaît la loi de répartition des β (par exemple, une loi gaussienne centrée sur 200 avec une variance de 10, soit 5%). Par contre, lorsque le nombre d’éléments du circuit à simuler croit et que la relation mathématique devient complexe, ce calcul peut se révéler très difficile, voir même impossible. On fait alors appel à des méthodes statiques telles que l’analyse Monté-Carlo et pire-cas (worst-case). 4.9.i. Analyse Monté-Carlo :

Cette analyse consiste à effectuer de nombreuses simulations du circuit complet en prenant pour chacune des valeurs tirées au hasard, compte tenu des lois de dispersion connues des composants (ou plutôt de leurs paramètres). Aussi, avant tout lancement d’une analyse Monté-Carlo, des tolérances doivent être introduites dans les modèles utilisés lors de la simulation. Dans les versions DOS, pour une résistance, on introduit dans la netlist la ligne de commande suivante :

.MODEL RTYPE1 RES(R=1 DEV=10%) où RTYPE1 = Nom d’un type de résistance, RES = Nom du modèle des résistances en général,

DEV20 = Déviation en %. Il est à noter que, sans précision, la répartition est uniforme et qu’en écrivant DEV/GAUSS, la répartition sera gaussienne (DEV est alors σ).

Dans les versions Windows, la commande est semblable à partir de la boite ouverte par Edit Attibute.

Pour illustrer cela, prenons l’exemple d’un amplificateur HF à transistor bipolaire de la

Figure 4.43 et étudions la simple influence de la valeur du condensateur d’accord sur le gain. Pour cela, activons d’abord le condensateur C3 en cliquant dessus (il devient rouge) puis faire Edit Attibute. La fenêtre de la Figure 4.44 s’ouvre alors et introduisons la valeur 10% dans le champ TOLERANCE, puis faire OK … Il suffit ensuite de programmer l’analyse Monté-Carlo par Analysis Setup Monte-Carlo. Dans la fenêtre correspondant à la Figure 4.45, choisir les options suivantes :

- Analysis = Monté-Carlo, - MC Runs = 10, c’est le nombre d’analyse qui vont être effectuées avec des valeurs

aléatoires (de 10 à 100), - Output Var = V(out), - Analyse Type = AC, mais toute autre analyse est possible, - Function = Concerne les données qui seront écrites dans le fichier .OUT (fichier texte).

Pour réduire le volume des résultats, on peut ne noter, dans ce fichier, que l’écart

20 Il existe une seconde commande LOT qui est l’écart maximal de la valeur centrale d’un lot de composants par rapport à la valeur nominale. Les deux écarts s’ajoutent (val = val nom ± a DEV ± b LOT, où a et b sont les coefficients aléatoires compris entre 0 et 1 et où LOT et DEV sont exprimés en %).

Page 128: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

128

maximal, avec la valeur nominale par YMAX, la valeur MAX ou MIN, ou bien combien de fois un résultat a été trouvé supérieur à une zone définie par Range Lo, Range Hi + RISE ou inférieur à cette zone par Range Lo, Range Hi + FALL.

- MC Options = Permet de choisir le nombre de courbes qui seront affichées à l’écran : None pour aucune, All pour toutes, First n pour les n premières (où n est un entier positif), Every n pour toutes les n, Runs pour celles qui seront précisées par leur numéro sous forme de liste dans la partie gauche adjointe.

Ensuite, il faut bien sur définir l’analyse que nous désirons effectuer. Ici, il s’agira d’une

analyse AC, soit Analysis Setup AC sweep et définir, par exemple, une zone d’analyse allant de 100kHz à 200kHz avec 101 points par décade. Et, enfin lancer la simulation.

Vous pouvez voir le résultat obtenu à travers la Figure 4.46 par le module PROBE. On notera que C3 influence de manière non-négligeable la fréquence où le gain est maximum mais n’influe pas la valeur de celui-ci.

Figure 4.43 : Circuit à transistor bipolaire

Figure 4.44 : Définition de la tolérance de

C3

Figure 4.45 : Résultat de simulation

La même méthode peut être appliquée aux éléments actifs. Etudions, par exemple,

l’influence du gain interne du transistor. Pour cela, supprimons d’abord la tolérance de 10% sur la capacité C3, puis sélectionnons le transistor (qui doit apparaître en rouge) et faire Edit Model Edit Instance Model (text). Dans la liste des paramètres qui apparaît, il faut alors modifier la ligne Bf = 255.6 par Bf = 255.6 DEV 10% et cliquer sur OK . Ainsi, une tolérance d’erreur de 10% a été introduite sur le béta du transistor. Il suffit alors (si nécessaire) de re-paramétrer l’analyse comme précédemment et lancer l’analyse afin de visualiser le résultat (cf. Figure 4.46).

Page 129: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

129

On notera que Bf n’influe qu’assez peu sur le gain du montage (de part la présence de la résistance d’émetteur R11 sur la Figure 4.43).

Pour conclure, dans l’exemple précédent, un seul composant et un seul paramètre n’était considéré comme « variable » mais, généralement, ce sont tous les composants d’un circuit qui ont des tolérances et il faut définir la tolérance de ces différents paramètres avant toute analyse.

Figure 4.46: Résultat de simulation

4.9.ii. Analyse Worst-case : L’analyse Worst-case correspond à une analyse du pire cas. La directive .WCASE permet de réaliser cette analyse de fonctionnement en permettant de déterminer (compte-tenu des tolérances sur les différents composants utilisés) quel est le plus défavorable par rapport au but recherché. Pour cela, PSPICE recherche d’abord pour chaque composant dont les tolérances ont été précisées quelle est la valeur possible la plus défavorable, puis il effectue une dernière analyse avec toutes les valeurs ainsi trouvées. Il est à remarquer que les résultats trouvés sont (le plus souvent) différents de ceux obtenus par une analyse type Monté-Carlo car, dans notre cas, les valeurs les plus défavorables ne sont pas nécessairement celles tirées au sort par le logiciel durant l’analyse Monté-Carlo. Comme précédemment, il faut pour effectuer cette analyse compléter la fenêtre de configuration de la simulation. Vous en avez un exemple à la Figure 4.47. Dans celle-ci, on trouve :

- Analysis = Worst case, - Analyse Type = AC, DC ou TRAN, - Output Var = V(out) par exemple, - Function = Type d’opération qui doit être effectuée sur la variable de sortie afin de réduire

les résultats d’une analyse à une valeur unique définissant la différence par rapport à la valeur nominale : YMAX pour un écart maximal avec la valeur nominale, MAX pour une valeur maximale durant chaque analyse, MIN pour une valeur minimale, RISE pour avoir la première occurrence de chaque analyse supérieure à la valeur spécifiée, FALL pour avoir la première occurrence de chaque analyse inférieure à la valeur spécifiée. Range Hi et Range Lo pour restreindre l’intervalle pour laquelle l’opération fonction est évaluée.

- WCase Options = Output All pour envoyer tous les résultats ou List pour choisir une liste,

Page 130: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

130

- Vary = Utilisation des spécifications de tolérances DEV, LOT ou les deux (Both), - Direction = HI ou LOW pour définir si le cas défavorable est celui qui est la plus grand ou

le plus petit.

A titre d’exemple, prenons le cas d’un filtre réjecteur double T de la figure 4.48. Ici, toutes les résistances ont été créées par duplication (i.e., on définit la tolérance etc. d’une résistance puis on ajoute les autres résistances par copier-coller) avec une tolérance de 10%. Il en est de même pour les condensateurs. D’autre part, le pire cas correspond ici à la valeur maximale de la tension de sortie, d’où le fait d’avoir sélectionné HI dans le champ Direction. Vous pouvez voir le résultat obtenu dans la figure 4.49.

Figure 4.47 : Fenêtre de paramétrage des

analyse Monte-Carlo et Worst-Case

Figure 4.48 : Circuit simulé

Figure 4.49 : Résultat de simulation

Page 131: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

131

5 – Capture :

Comme Schematics, le module Capture d’Orcad est utilisé au début d’un projet pour la saisie du schéma électronique (analogique, numérique, logique) à simuler. Comme le module est très proche de ce qui a été vu précédemment, nous n’insisterons que sur certains points. Pour le reste, il conviendra de maitriser le contenu des chapitres précédents. 5.1 Création d’un nouveau projet :

Nous allons d’abord ouvrir le module Capture. Ensuite, nous créons un nouveau projet en

cliquant sur File >> New >> Project ou en cliquant sur l’icône . La fenêtre de la figure 1 apparaît :

Figure 5.1 : Fenêtre Capture pour la création d’un nouveau projet.

Nous choisissons, dans un premier temps, un nom pour notre projet21, par exemple astable. Nous sélectionnons ensuite Analog or Mixed-Signal Circuit Wizard afin de pouvoir réaliser

21 Attention, les lettres accentuées sont interdites.

Page 132: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

132

un circuit puis le simuler et/ou le router. Il faut ensuite choisir un répertoire dans lequel tous les fichiers relatifs au projet seront enregistrés22. Enfin, on valide cette étape en cliquant sur OK .

Lors de la première utilisation du logiciel, Orcad demande les librairies à inclure. Ceci permet de choisir le(s) bibliothèque(s) à utiliser contenant les modèles Pspice des composants. Ces modèles seront nécessaires pour la simulation23. Néanmoins, si on avait oublié des librairies, il est possible d’en ajouter lors du placement des composants.

Une fenêtre demande alors si on souhaite utiliser une trame pour notre projet ou si on préfère travailler sur un projet vierge. Nous choisirons cette dernière option avec Create a blank project . 5.2 Travail à partir d’un projet existant :

Il est bien évidemment possible de retravailler un projet enregistré par le passé. Pour

cela, il faut cliquer sur File >> Open/Project ou sur l’icône 5.3 Barre d’icônes : 5-3.i. Icônes de gestion de projet :

22 On préfèrera créer un nouveau répertoire à chaque projet, la quantité de fichiers générés pour un projet pouvant être relativement importante. 23 Attention car il peut exister des composants sans modèle de simulation.

Page 133: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

133

5-3.ii. Icônes de placement des composants :

5.4 Gestion de projets :

Le gestionnaire de projet, comme son nom l’indique est un élément central puisqu’il permet de regrouper tous les fichiers relatifs au projet dans une arborescence. Dans un premier temps, nous nous intéressons à la partie Design Ressources. C’est cette partie qui permet d’avoir accès au « schematic » qui lui contient la (les) page(s). On remarquera que les actions possibles ne sont pas les mêmes si la page de conception est active ou si le gestionnaire de projet est actif.

Page 134: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

134

Figure 5.2 : Fenêtre de gestion de projet.

5.5 Saisir un schéma : 5-5.i. Généralités :

Une fois ces quelques préparatifs effectués, nous pouvons passer à la saisie du schéma. Pour débuter, il faut que la page schéma soit active. Si ce n’est pas le cas par dé2faut, il faut la

sélectionner en cliquant sur l’icone du gestionnaire de projets . Ensuite, il faut cliquer sur Design Ressources, Nom-de-projet.dsn, SCHEMATIC1 puis PAGE 1.

Une fois la page active, nous nous intéressons au placement. Toutes les fonctions classiques telles que copy, paste, delete, undo sont accessibles via le menu Edit . Lors d’une copie de composant ou groupe de composants, les références ne changent pas et le schéma peut alors contenir plusieurs composants de même référence, par exemple R2. On veillera à bien renommer tous les composants de manière unique.

On trouve également les fonctions de sauvegardes dans le menu File. Attention néanmoins à la nature de la sauvegarde, car seul les sélections actives sont enregistrées. Ainsi, il faut bien veiller à sélectionner le gestionnaire de projets afin qu’il soit actif avant d’enregistrer.

On peut sélectionner un composant lorsque l’icône de sélection est actif. On sélectionne ensuite le ou les élément(s) souhaités en les entourant dans une même zone.

Page 135: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

135

Comme dans la version Microsim, la cartouche en bas à droite permet de mentionner le nom de l’auteur, le titre du document. On peut aussi modifier la taille du schéma par Options >> Schematic >> Page Properties. 5-5.ii. Placement des composants : Nous allons à présent placer les composants grâce aux icônes précédemment présentés. Nous

cliquons sur l’icône Place Part qui ouvre la fenêtre suivante :

Figure 5.3 : Fenêtre de placement de sélection des composants.

On sélectionne toutes les librairies (en bas à gauche sur l’image) puis on tape le nom du composant recherché, par exemple R pour une résistance. On peut également ajouter une librairie si on en avait oublié une lors du choix initial. On choisit Add Library puis on sélectionne les librairies à ajouter tel que sur la figure ci-dessous :

Page 136: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

136

Figure 5.4 : Fenêtre des librairies de composants disponibles.

5-5.iii Modifications des propriétés des composants :

On peut changer la valeur d’un composant en double-cliquant sur cette valeur. De plus, les valeurs numériques doivent être suivies des unités sans espace et les chiffres décimaux sont écrits avec des points et non des virgules. On peut écrire les unités F pour Farade, H pour Henry. Seul le symbole Ω n’est pas représentable.

Un composant a une multitude de propriétés : Part Reference, Value, PCB Footprint , ... On a accès à ces propriétés en double-cliquant sur le composant ou en sélectionnant un groupe de composant puis Edit/properties.

Figure 5.5 : Fenêtre des propriétés des composants utilisés dans un schéma à simuler.

On sélectionnera l’onglet Parts pour les composants. Les Nets sont les liaisons entre composants et les Pins correspondent aux broches.

Page 137: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

137

5-5.iv Placement de liaisons : - Liaisons simples : les fils

On clique sur l’icône Place Wire . Il ne faut pas confondre avec

l’icône Place Line qui place seulement des traits et non des liaisons électriques. Un point rouge apparaît lorsque la liaison est possible. Il ne faut jamais connecter 2 composants broche à broche mais plutôt utiliser une liaison. Parfois, on peut être amené à croiser des fils. Si on veut que tous les fils du croisement soient reliés ensemble, il est nécessaire de placer une jonction

; un point rose apparaîtra alors. - Liaisons multiples : les bus

Pour regrouper plusieurs fils dans un bus, il faut mentionner pour chacun

d’eux un point d’entrée grâce à l’icône Place Bus Entry . Ensuite, on

rassemble les différents fils en cliquant sur l’icône Place Bus .

Figure 5.6 : Bus relié à différentes liaisons.

On peut nommer des liaisons grâce aux alias . Par convention, un bus sera nommée D[7..0] avec D7 le bit de poids fort. 5-5.v Alimentation : Les composants étant placés, les liaisons électriques également, il ne manque plus qu’une source d’alimentation et une masse pour que le schéma puisse fonctionner. Pour cela, on sélectionne

l’alimentation à l’aide de l’icône Place Power et la masse à l’aide de Place Ground . Il faut sélectionner la librairie CAPSYM pour y avoir accès (cf. figure 5.7).

Page 138: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

138

Figure 5.7 : Librairie des alimentations.

Remarques : Il est possible de rajouter du texte et/ou des graphiques pour commenter le

schéma. On utilise pour ce faire les icônes . 5-5.vi Impression : En cliquant sur File >> Print Preview, la fenêtre suivante apparaît :

Figure 5.8 : Fenêtre de configuration de l’impression.

Une fois que la prévisualisation convient, lancer l’impression via File >> Print .

Page 139: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

139

5.6 Projets structurés : Lors de la réalisation de schémas volumineux, il peut être intéressant de scinder le schéma (d’un même projet) sur plusieurs pages. Orcad permet la division d’un projet suivant 3 structures :

- la structure à plat, - la structure hiérarchique ? - la structure hiérarchique complexe.

Un projet réalisé à l’aide d’une structure à plat est en fait la réalisation de plusieurs

schémas qu’on dispose côte à côte. On insère des connecteurs Off Page pour relier les différents sous-schémas. Tous les schémas sont dans le même répertoire, par exemple Dossier-schemas et peuvent être nommés page-schema1, page-schema2, ... La connexion est réalisée entre tous les connecteurs ’Off Page’ ayant le même nom.

Figure 5.10 : Structure à plat.

5.7 Schéma type :

Un schéma saisi sous Capture destiné à la simulation doit suivre certaines règles qui sont résumées sur le schéma suivant :

Page 140: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

140

Figure 5.11 : Schéma type.

5.8 Profil de simulation :

Une fois le schéma prêt à être simulé, il faut créer un profil de simulation en choisissant divers paramètres : – le type d’analyse (temporelle, fréquentielle,...), – la durée de simulation, les plages de fréquences,...

On sélectionne Pspice >> New simulation Profile ou bien on clique sur l’icône . La fenêtre suivante s’affiche :

Figure 5.12 : Fenêtre de profil de simulation.

On choisit généralement le même nom que le projet. On rajoute éventuellement le type de simulation que l’on va effectuer. On a ensuite accès aux réglages des paramètres de simulation (cf. figure 5.13).

Page 141: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

141

Figure 5.13 : Fenêtre de profil de simulation.

Il est possible de modifier un profil de simulation. Sinon, on peut créer de nouveaux profils de simulation en choisissant éventuellement l’option Inherit from du modèle déjà crée. Toutes les simulations créées se retrouvent dans le gestionnaire de projets sous Simulations Profiles. 5.9 Lancement de la simulation :

La simulation peut être lancée soit à partir de Capture par Pspice >> Run, soit à partir de Pspice par Simulation >> Run. On peut également utiliser l’icône (identique pour Capture et

Pspice) . S’il y a des erreurs, elles sont mentionnées dans un fichier log :

- Si on a une erreur du type "ERROR–Node N0012 is floating", Il faut alors bien vérifier que la masse ait pour nom 0.

- Si on a une erreur du type "ERROR–Subcircuit 7400A used by X U1A is undefined", il faut alors vérifier que les librairies de modèles soient bien sélectionnées (grâce à l’onglet ’Libraries’ du profil de simulation).

- Si on a un point vert sur le schéma, cela signifie que le composant ne comporte pas les paramètres nécessaires de simulation (par exemple un connecteur, utilisé en vue du routage).

- …

Page 142: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

142

5-9. i Analyse paramétrique :

Par rapport à ce qui a été dit sur la simulation lors des précédents chapitre, rien de fondamental ne change avec Capture en dehors de l’emploi de l’analyse paramétrique. En effet, elle peut être délicate à effectuer.

Dans le cas où l’on souhaite faire une analyse paramétrique sur une résistance. Les étapes sont alors :

1. Donner comme valeur de paramètre un nom entre accolades, par exemple RVar. 2. Placer le symbole particulier PARAM disponible dans la librairie special.olb. 3. Editer les propriétés de ce symbole (clic droit Edit properties) ou double clic dessus. 4. Ajouter une colonne New puis changer le nom de la propriété avec RVar. 5. Donner une valeur par défaut, par exemple 1kΩ. 6. Rendre visible cette propriété sur le schéma avec Display en choisissant Name and value. 7. Revenir au schéma.

Figure 5.14 : Fenêtre de simulation pour une analyse paramétrique.

Page 143: Support de Cours PSPICE 2010

Initialisation à la simulation de circuits intégrés analogiques et numériques S.Feruglio – 2009

143

6 – Bibliographie : [1] Cours de S. Monnin, 2007.

[2] Cours de J. Auvray, http://perso.orange.fr/avrj.cours/documents/PSPICE/PSP1.pdf

[3] http://missiontice.ac-

besancon.fr/sciences_physiques/physique_appliquee/simulation/didac/spice.htm

[4] http://www.geocities.com/pmissirliu/

[5] http://www.gel.usherbrooke.ca/pspice/index.html

[6] http://www.iufmrese.cict.fr/catalogue/2001/spice/simuler_en_elec.pdf

[7] Cours de A. Gosselin, 1997.

[8] Cours de G. Cambon.

[9] Cours de O. Romain, 2006.

[10] Cours de G. Vasilescu, 2000.

[11] http://www.engr.uky.edu/~cathey/pspice061301.html

[12] http://www.cadence.com

[13] http://comelec.enst.fr/oceane/doc/documents/envsimu/

[14] TP Orcad Master SIDS ISSI, A. MARION, UCBL, 2007.