0% ont trouvé ce document utile (0 vote)
51 vues89 pages

Simulation SPICE avec HyperLynx ANALOG

Transféré par

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

Simulation SPICE avec HyperLynx ANALOG

Transféré par

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

IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Analyse de structures analogiques

HyperLynx ANALOG
Simulateur analogique et mixte SPICE

DxDesigner – PADS – MentorGraphics

Didier BEDOS

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 1


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 2


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

HyperLynx ANALOG simulation analogique et mixte SPICE

TABLE DES MATIERES :

[Link] - PROPOS 5
1.1. Simulateurs de type SPICE 5
1.2. Flot de simulation sous HyperLynx Analog 6

[Link] D’UN SCHEMA SOUS HYPERLYNX ANALOG 7


2.1. Déclaration d’un projet sous DxDesigner-PADS 7
2.2. Saisie d’un schéma électrique dans DxDesigner 8
2.3. Définition des sources et des analyses 11

[Link] ET VISUALISATION DES RESULTATS 13


3.1. Lancement de la simulation sous HyperLynx Analog 13
3.2. Visualisation des résultats avec EZwave 14

[Link] 1 : CREATION DE PROJET – SAISIE DE SCHEMA - SIMULATION 16


4.1. Création du projet TrainingHLA 16
4.2. Saisie du schéma 16
4.3. Configuration des sources 17
4.4. Configuration des analyses 17
4.5. Lancement de la simulation 17
4.6. Visualisation des résultats simulation 18
4.7. Vérification des fichiers de simulation 19

[Link] SPICE DE BASE ET SOURCES ASSOCIEES 21


5.1. Analyses temporelle ( TRAN ) 21
5.2. Analyse fréquentielle ( AC ) 23
5.3. Analyse en continu ( DC ) 25

[Link] 2 : ANALYSES SPICE DE BASE ET SOURCES ASSOCIEES 28


6.1. Saisie du schéma Ampli_Inv 28
6.2. Edition des sources et des analyses 28
6.3. Simulation et analyse des résultats de la simulation de Ampli_Inv 29
6.4. Saisie du schéma Ampli_Diff 32
6.5. Edition des sources et des analyses 32
6.6. Simulation et analyse des résultats de la simulation de Ampli_Diff 34

[Link] SPICE PARAMETREES ( PARAMETRIC SWEEP ) 35


7.1. Principes des analyses paramétrées 35
7.2. Analyses paramétrées par la température 35
7.3. Analyses paramétrées par la valeur nominale d’un composant passif 37
7.4. Analyses paramétrées par la valeur d’un élément de modèle 38
7.5. Analyses paramétrées par une ( ou deux ) source(s) de tension 39

[Link] 3 : ANALYSES SPICE PARAMETREES ( PARAMETRIC SWEEP ) 42


8.1. Saisie du schéma Ampli_EC 42
8.2. Edition des sources et des analyses paramétrées en température 42
8.3. Simulation et visualisation d’analyses paramétrées en température 43
8.4. Simulation et visualisation d’analyses paramétrées par un élément de modèle 44
8.5. Saisie du schéma RAUCH 46
8.6. Edition des sources et des analyses paramétrées par les valeurs nominales 46
8.7. Simulation et visualisation d’analyses paramétrées par les valeurs nominales 48
8.8. Saisie du schéma BJT_Curv 50
8.9. Edition des sources et des analyses paramétrées par deux sources 50
8.10. Simulation et visualisation d’analyses paramétrées par deux sources 51

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 3


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

[Link] SPICE AVANCEES 53


9.1. Analyse du point de repos ( OP ) 53
9.2. Analyses de bruit ( .NOISE ) 55
9.3. Analyses de sensibilité ( .SENS ) 56
9.4. Autres analyses avancées 59

[Link] 4 : ANALYSES SPICE AVANCEES 62


10.1. Saisie du schéma Ampli_BC 62
10.2. Edition des sources 62
10.3. Edition de l’analyse du point de repos ( .OP ) 63
10.4. Edition de l’analyse de bruit ( .NOISE ) 64
10.5. Edition de l’analyse de sensibilité DC ( .SENS ) 66
10.6. Edition de l’analyse de sensibilité AC ( .SENS ) 66
10.7. Edition de l’analyse de FOURIER ( .FOUR ) 67

[Link] SPICE D’INDUSTRIALISATION 69


11.1. Analyses de Monte-Carlo ( .MC ) 69
11.2. Analyses de pire cas ( .WC ) 72

[Link] LANGAGE DIABLO ET LA MODELISATION COMPORTEMENTALE 73


12.1. Introduction au langage DIABLO 73
12.2. Intérêts de la librairie de modèles DIABLOLib 73
12.3. La librairie de modèles DIABLOLib 74
12.4. Le langage DIABLO 75

[Link] 5 : ANALYSES D’INDUSTRIALISATION ET LANGAGE DIABLO 80


13.1. Analyses d’industrialisation de Monte Carlo 80
13.2. Analyse d’industrialisation du pire cas ( Worst Case ) 84
13.3. Utilisation des éléments de la librairie DIABLOlib 85

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 4


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

1. AVANT - PROPOS

1.1. Simulateurs de type SPICE

Les travaux qui suivent sont basés sur le logiciel de simulation des circuits électriques HyperLynx ANALOG
respectant la norme SPICE. Dans ce domaine le langage SPICE, développé au début des années 70, est un standard.

SPICE est l’acronyme de Simulation Program with Integrated Circuit Emphasis. Il peut résoudre des systèmes
d’équations différentielles linéaires ou non afin de prédéterminer les réponses temporelles des systèmes
électriques, il est aussi capable de calculer ces mêmes tensions, courants ou puissances représentatives de l’état
d’un circuit électrique dans le domaine fréquentiel. Il peut aussi effectuer des transformées de Fourier ou des
développements en série de Fourier ainsi que de calculer et mémoriser les points de repos d’une structure
électronique ainsi que de procéder à des analyses d’industrialisation ( analyses de stress, analyses statistiques de
Monte-Carlo etc. ).

Ce programme est essentiellement destiné à l’étude des structures principalement analogiques. Cependant ces
dernières peuvent posséder des éléments d’électronique numérique, d’électromécanique d’hydraulique ou encore
d’optiques.

Afin de permettre ces études, il a été développé, pour les simulateurs SPICE, les modèles de plusieurs milliers de
composants passifs ou actifs, permettant à ce programme de simulation de prédire le comportement de structures
électriques dans de multiples domaines d’application :

 Systèmes de communications
 Circuits de puissance
 Radiofréquences et Micro-ondes
 Circuits mixtes ( analogiques, numériques, échantillonnés )
 Systèmes mixtes ( électromécaniques, physiques, optronique etc. )

Les comportements de ces éléments peuvent être décrits par des modèles contenant les paramètres des équations
résolues par le noyau SPICE, par des équations de LAPLACE ou encore par des tables d’équivalence. Enfin les
dernières versions de ce programme supportent les équations du langage AHDL ( Analog Hardware Description
Language ) et des sous-programmes en langage C.

Ses premiers utilisateurs devaient décrire la structure sous forme d’un fichier texte et analyser les résultats sous la
forme d’une longue suite de valeurs. Le développement d’outils d’ingénierie assistée par ordinateur ( IAO )
fait bénéficier ces mêmes utilisateurs d’outils graphiques pour la description de la structure (saisie de schéma) et
pour la visualisation des résultats (grapheur).

L’outil de simulation SPICE est généralement placé avec d’autres outils de simulation et de synthèse de circuits
numériques (PLD-FPGA-ASIC) ainsi qu’avec des outils de placement - routage ( PCB ) de cartes dans un fonds
de panier logiciel (framework). Ces ensembles intégrés fournissent aussi des outils d’analyse d’intégrité de
signal, de comportement CEM, de preuve formelle, de descriptions graphiques ( diagramme d’état, Flow-chart )
de systèmes numériques etc.

Les travaux qui suivent sont réalisés dans le fonds de panier logiciel eProduct Designer - Pads 2007.4.
Au cours de ceux-ci seuls les outils suivants seront utilisés :

 DxDesigner : saisie de schéma


 HyperLynx Analog : simulateur SPICE
 EZWave : grapheur et post-processeur de résultats
 DxDataBook : base de données relationnelles de composants

Le flot d’utilisation est décrit à la page suivante :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 5


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

1.2. Flot de simulation sous HyperLynx Analog

Librairies Symboles

Spiceprimitive

electrical
DxDesigner

digital
ICDB
database

Librairies SPICE
Spicelink
amp.h

bjt.h C:\…\*. spi C:\…\*sources. spi C:\…\name1. cmd C:\…\name1. cmd

opto.h
HyperLynx
ANALOG

C:\…\*. wdb C:\…\[Link] C:\…\[Link]

Editeur de texte
EZWave ASCII

Flot de conception d’une simulation analogique avec HyperLynx Analog

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 6


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

2. Saisie d’un schéma sous HyperLynx Analog

Objectif : L’objectif de cette partie est de permettre l’approprier du principe de saisie d’un schéma en vue d’une
simulation analogique sous HyperLynnx Analog ( Placement des éléments, paramétrage des sources,
définition des analyses souhaitées ).

2.1. Déclaration d’un projet sous DxDesigner-PADS

Le schéma de la structure à simuler est saisi dans DxDesigner.


Nota : si, dans DxDesigner, les menus et icônes spécifiques à la simulation analogique n’apparaissent pas, il faudra
veiller à valider, via le menu Setup Licensing Options, l’outil HyperLynx Analog afin de les faire apparaitre.
Le lancement de l’outil DxDesigner aboutit à la fenêtre suivante :

A l’aide du menu File New Project on accède à la fenêtre New Project ci-dessous :

 Dans cette fenêtre choisir le Template : Simu_analog_mixte , celui-ci a été préparé, au Lycée Diderot, pour
donner automatiquement l’accès à un certain nombre de librairies ainsi qu’à certains paramétrages de l’outil.

 Vérifier ou, au besoin, utiliser le bouton permettant de parcourir l’arborescence du disque C afin de choisir le
répertoire ( champ Location ) sous lequel le projet sera rangé et que celui-ci soit : C:\Pads Projects\

 Donner, dans le champ Name un nom au projet par exemple Training_HLA_XYZ où XYZ représentent vos
initiales

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 7


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Gestion des chemins d’accès aux librairies de symboles :

Afin de vérifier les librairies de symboles ajoutées lors de la création du projet comme vue ci-avant, et,
éventuellement, pouvoir ajouter des librairies, utiliser le menu Setup Settings, dans la rubrique Project,
sélectionner Symbol Librairies.

Pour ajouter des librairies de symboles :

 Pour ajouter une seule librairie, utiliser l’icône … et rechercher le répertoire où se trouve la librairie.

 Pour ajouter un groupe de librairies il suffit de trouver un projet préalablement « stocké » localement ou
ailleurs pour que, soit dans son fichier *.ini ; *.proj ou encore *.dproj pour que l’ensemble de ses chemins
d’accès aux librairies de symboles soient copiés dans le nouveau projet en utilisant le bouton Import
Toujours dans cette fenêtre Settings peuvent être réglés des paramètres comme les couleurs des objets du schéma,
les grilles etc. copiés dans le nouveau projet.

2.2. Saisie d’un schéma électrique dans DxDesigner

A l’aide du menu File – New- Schematic, créer un nouveau schéma qui apparaitra dans la fenêtre Navigator,
sous la rubrique Blocks et avec le nom Schematic1
Dans cette même fenêtre Navigator de DxDesigner, sous l’onglet Projet, dans la rubrique Blocks, changer le
nom Schematic1 en un nom plus représentatif de la structure étudiée.
Cela donne, par exemple :

Nota : un schéma destiné à la simulation peut, indifféremment, être défini comme un bloc ( niveau hiérarchique Blocks ) ou un
design ( niveau hiérarchique Boards ) alors qu’un schéma destiné à être une carte et devant donc aboutir à un routage
PCB se doit d’être du niveau Boards. Ceci se justifie par le fait que les schémas de type Blocks sont généralement des
sous-ensembles de structures appartenant à la carte complète et que l’on souhaite valider par simulation
individuellement.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 8


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Saisie du schéma :

La recherche de composant se fait à partir de la fenêtre DxDataBook. La figure ci-après montre, au bas de
celle-ci, les deux onglets Symbols et Search :

 L’onglet Symbols permet d’accéder aux composants contenus dans les librairies auxquelles on s’est donné
accès lors de la création du projet. Le symbole d’un condensateur ( image ci-dessus ) apparait dans une
fenêtre de prévisualisation et est prêt à être « déposé sur le schéma.

 L’onglet Search permet d’accéder aux composants contenus dans une base de données Dxsim_Lib qui
contient les composants dit « entreprise » c’est-à-dire qu’ils ont été référencés à partir de plusieurs critères :
fabricant, caractéristiques, documentation ( datasheet ), distributeur, prix, image 3D, empreinte PCB etc.
L’intérêt de cette base de données est qu’elle permet la recherche de composants à partir de requêtes de type
langage SQL, par exemple « Rechercher tous les transistors avec un β supérieur à 450 et dont le VCEOsus est
supérieur à 300 Volts ». Au Lycée Diderot, cette base de données s’appuie sur un exemple mais n’a pu,
encore, être développé pour les besoins spécifiques « corporate » !

Il existe une autre façon, toute spécifique à la saisie de schémas de structures analogiques, de rechercher des
composants en vue de placer leurs symboles sur la planche de dessin ( sheet ) : dans la fenêtre Navigator, sous
l’onglet Simulation, dans la rubrique Model Libraries et sous-rubrique Spice Libraries, il suffit de choisir la
famille de composants ( ci-dessous les éléments optroniques ) et, à l’aide d’une action de type « drag & drop »,
déposer le composant sur le schéma … l’outil DxDesigner lui associe automatiquement un symbole que l’on pourra
changer, éventuellement, si besoin est.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 9


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Après avoir placé tous les composants sur la feuille de schéma et les avoir interconnectés à l’aide de la fonction Net
( icône Net ) cela donne une description qui s’apparente à cela :

L’image ci-dessus fait apparaitre les principales fenêtres utiles à la saisie de schémas sous DxDesigner :

 la ( ou les ) fenêtre(s) principale(s) de schéma. Plusieurs schémas peuvent être édités en même temps. Ils
sont accessibles par le biais d’onglets. L’édition de fichiers textes ( modèles SPICE ou VHDL de
composants, fichiers résultats, netlists etc. ) se fait de la même manière.

 la fenêtre DxDataBook dont on a décrit l’intérêt à la page précédente.

 La fenêtre Navigator de navigation qui fait apparaitre un onglet classique Project ( parcours dans la
hiérarchie des fichiers relatifs aux différents schémas de type Board ou Block du projet ) mais aussi, dans
le cas de l’édition de schémas destinés à la simulation, un onglet Simulation permettant d’accéder aux
fichiers de simulation ( netlists, modèles, résultats etc. )

 La fenêtre Properties des propriétés. Celle-ci permet de visualiser, si un composant est sélectionné, ses
différents attributs ( Refdes, Modèle, valeur, package etc. ) et les valeurs affectées, par défaut ou par
l’utilisateur, à ces attributs.

 La fenêtre Output d’affichage des messages ( erreurs, compte-rendu etc. ). Sur l’image précédente, cette
fenêtre et celle de DxDataBook sont superposées mais qui peut, si l’utilisateur le souhaite, apparaître de
manière permanente.

Nota 1 :Toutes ces fenêtres peuvent être déplacées, rendues flottantes ou « dockées » voire être définies comme
des onglets de l’affichage central.

Nota : La sauvegarde des schémas édités est réalisée de façon automatique par l’outil DxDesigner. La périodicité
de cette sauvegarde peut être réglée par l’utilisateur le cas échéant.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 10


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

2.3. Définition des sources et des analyses

Déclaration des sources :


Pour déclarer les sources stimulant la structure il n’est plus besoin, dans HyperLynx Analog de placer des
symboles ni, d’ailleurs, de sondes de tension ou de courant. Ce faisant, le schéma servant à la simulation peut,
sans modification aucune, être utilisé pour l’élaboration du circuit imprimé.

L’icône Sources dans la barre des outils spécifiques au simulateur analogique HLA, donne accès à la fenêtre
suivante :

L’édition de la source e1 par exemple, est obtenue à partir du bouton Modify… qui donne accès à la fenêtre
suivante :

Et pour la partie spécifique aux signaux temporels ( ici un sinus ), le bouton Define… permet d’éditer ses
caractéristiques comme le montre la fenêtre ci-dessous :

Nota : on ne peut définir qu’une seule source, pour une équipotentielle ( ou une branche ) donnée. Par contre on
peut définir, comme présenté ci-dessus, au travers d’une sources deux stimuli, l’un temporel ( sinus non
causal, pulse, sffm etc. ), l’autre fréquentiel ( harmonique )

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 11


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Déclaration des analyses :

Afin de spécifier les analyses souhaitées, il est nécessaire, dans la fenêtre Navigator de DxDesigner, sous
l’onglet Simulation de sélectionner, sous Files, le répertoire Experiment Files et, avec le menu contextuel,
choisir New Experiment …

Ensuite, dans la fenêtre Simulation Control qui apparaît, donner un nom au futur fichier de commande, par
exemple RC_Lpfilter_ac_tr

Toujours dans la fenêtre Simulation Control, sélectionner Time-Domain Analysis et éditer, après avoir
sélectionné Enable, les paramètres d’analyse, donnés ici à titre d’exemple, comme suit :
Start Time : 0
End Time : 500us
Printing Time Interval : 50ns
Calibration : 50ns

Puis valider en utilisant le bouton OK

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 12


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Toujours dans la fenêtre Simulation Control, sélectionner Frequency Analysis et éditer, après avoir sélectionné
Enable, les paramètres d’analyse, donnés ici à titre d’exemple, comme suit : comme suit :
Frequency Start : 100
Frequency Sopt : 1MEG
Number of Points : 100
Variation Type: Decade

Puis valider en utilisant le bouton OK

Note 1 : Afin de pouvoir réaliser une analyse temporelle ( Domain-Time Analysis ) il faut qu’au moins une source
de ce type ( sinus non causal, pulse, sffm etc. ) ait été définie. De même, pour une analyse fréquentielle
(Frequency-Domain Analysis), il faut qu’au moins une source fréquentielle (harmonique) ait été définie.

Note 2 : Usuellement on « lance » la simulation à partir de cette fenêtre en cliquant sur le bouton Simulate,
cependant, pour des raisons pédagogiques, on présente, ci-après, l’autre façon de procéder à ce lancement,
à savoir en utilisant l’icône Simulate Design

3. Simulation et visualisation des résultats

Objectif : L’objectif de cette partie est de permettre l’appropriation du lancement de la simulation et de l’utilisation
du grapheur Ezwave afin de visualiser les résultats.

3.1. Lancement de la simulation sous HyperLynx Analog

Afin de lancer la simulation, cliquer sur l’icône Simulate Design . La fenêtre Simulation Control déjà
utilisée pour éditer les paramètres d’analyse apparaît à nouveau, cliquer sur le bouton Simulate.

Vérifier, après un certain laps de temps, que la simulation s’est correctement déroulée en notant que, dans la
fenêtre Output ( onglet Simulation ), le message correspondant au temps écoulé est bien présent.

Par ailleurs l’outil de visualisation EZWave a été automatiquement lancé.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 13


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

3.2. Visualisation des résultats avec EZwave

La fenêtre EZwave lancée se présente sous la forme suivante ( sans l’affichage des formes d’onde ). Il est à noter
que, dans la sous-fenêtre Waveform List, apparaît une base de données ouverte qui se nomme nom_du_design (ici
RC_LPfilter ), suivie du chemin d’accès au fichier contenant la base de données des résultats de simulation
RC_LPfilter.wdb ). Remarquer aussi qu’elle contient deux sous-ensembles de formes d’ondes nommés AC et
TRAN ( au besoin en utilisant le menu Expand Selected associé ou en cliquent sur le signe + )

On verra, au cours de multiples exercices, les différentes fonctionnalités de ce grapheur. Si, pour l’instant on utilise
la fonction de drag & drop pour le signal V(out) du sous-ensemble TRAN et la commande Plot du menu
contextuel pour le signal V(out) du sous-ensemble AC, cela donne une fenêtre comme celle-ci :

L’exercice n°1 qui suit sert à s’approprier le flot de simulation complet.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 14


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

EXERCICE n°1

Création de projet

Saisie de schéma

Simulation

Visualisation des résultats

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 15


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

4. EXERCICE 1 : Création de Projet – Saisie de schéma - Simulation

Objectif : Maîtriser le flot complet de simulation, de la création de projet à la visualisation des résultats.

4.1. Création du projet TrainingHLA

- Lancer DxDesigner à l’aide de l’icône placée sur le bureau

- Dans la fenêtre DxDesigner qui apparaît, utiliser le menu File – New – Project et suivre, comme
explicité au paragraphe 2-1, la procédure :
a) Choisir le Template : Simu_analog_mixte
b) Vérifier que le répertoire d’accueil ( Location ) est bien C:\Pads Projects\
c) Nommer ( champ Name ) le projet Training_HLA_XYZ ( où XYZ peuvent être, par exemple,
les initiales de l’utilisateur )

- A l’aide du menu File-New-Schematic de l’outil DxDesigner, créer un nouveau Block. Celui-ci se


placera automatiquement, dans la fenêtre Navigator, sous l’onglet Project, dans la rubrique Blocks
et prendra le nom par défaut Schematic1

- Renommer le fichier Schematic1 en RC_Lpfilter

4.2. Saisie du schéma

- Dans la fenêtre principale de DxDesigner, saisir le schéma RC_LPfilter en suivant la méthodologie


explicitée au paragraphe 2-2 et dont on reproduit ci-après la structure :

Nota 1 : on trouvera les composants constitutifs de ce schéma dans la librairie SpicePrimitive.

Nota 2 : Les composants utilisés pour la création de ce schéma sont : c_v ; r_v et r_h

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 16


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

4.3. Configuration des sources


- Dans le menu d’icônes spécifiques à la simulation analogique, cliquer sur l’icône Sources afin
d’accéder à une sous-fenêtre de même nom.

- Dans cette sous-fenêtre Sources, déclarer la source e1 en suivant la procédure décrite au paragraphe
2-3 et lui affectant les caractéristiques suivantes grâce au à la sous-fenêtre interactive Modify Source
auxquelles on accède par le bouton de même nom Modify Source :
Name : e1
Type (V/I) : V
Node + : IN
Node - : 0
Resistance :
DC Value : 0.5
Time Type : Sine Offset : 0 Amplitude : 1 Frequency : 10K Delay : 20us Damping factor : 0.8
Frequency Magnitude : 1 Phase 90

Valider en utilisant le bouton OK

4.4. Configuration des analyses


- Dans la
fenêtre Navigator de DxDesigner, sous l’onglet Simulation sélectionner, sous Files, le répertoire
Experiment Files et, avec le menu contextuel, choisir New Experiment …

- Dans la fenêtre Simulation Control qui apparaît, donner un nom au futur fichier de commande, par
exemple RC_Lpfilter_ac_tr.cmd

- Toujours dans la fenêtre Simulation Control, sélectionner Time-Domain Analysis et éditer, après avoir
sélectionné Enable, les paramètres d’analyse comme suit :
Start Time : 0
End Time : 500us
Printing Time Interval : 50ns
Calibration Max : 50ns

- Toujours dans la fenêtre Simulation Control, sélectionner Frequency Analysis et éditer, après avoir
sélectionné Enable, les paramètres d’analyse comme suit :
Frequency Start : 100
Frequency Sopt : 1MEG
Number of Points : 100
Variation Type: Decade

Valider en utilisant le bouton OK

4.5. Lancement de la simulation

- Afin de lancer la simulation, cliquer sur l’icône Simulate Design. La fenêtre Simulation Control déjà
utilisée pour éditer les paramètres d’analyse apparaît à nouveau, cliquer sur le bouton Simulate.

Nota : cela veut dire que, dans la pratique, on « lance » la simulation immédiatement après avoir
édité les paramètres d’analyse mais que l’on a, ici, et pour des raisons pédagogiques, décomposé le
« lancement ».

- Vérifier, après un certain laps de temps, que la simulation s’est correctement déroulée en notant que,
dans la fenêtre Output ( onglet Simulation ), le message correspondant au temps écoulé est bien
présent. Par ailleurs l’outil de visualisation EZWave a été automatiquement lancé.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 17


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

4.6. Visualisation des résultats simulation

- Dans la fenêtre EZwave noter que dans la sous-fenêtre Waveform List apparaît une base de données
ouverte qui se nomme RC_LPfilter ( suivi du chemin d’accès au fichier contenant la base de données des
résultats de simulation RC_LPfilter.wdb ). Remarquer aussi qu’elle contient deux sous-ensembles de
formes d’ondes nommés AC et TRAN.

- Sélectionner le sous-ensemble TRAN et noter, dans la partie inférieure de la sous-fenêtre Waveform


List, les formes d’ondes qu’il contient.

- Utiliser la méthode de « drag & drop » pour amener la forme d’onde V(out) dans la zone d’affichage.
Apparaît alors la forme d’onde dans une sous-fenêtre intitulée Wave :1

- Opérer de même avec V(in) et amener un curseur avec le menu Cursor Add

- Faire apparaître un deuxième curseur et placer les deux curseurs sur deux crêtes voisines de V(out).
Cliquer sur l’icône Add delta afin d’afficher, près de l’axe des x la valeur de la période du signal.

- Déplacer le curseur le long de l’axe des temps et remarquer que l’amplitude crête de l’onde sinusoïdale
décroît pour V(in) comme pour V(out) : c’est la conséquence du facteur d’amortissement ( Damping
factor ) défini pour la source e1

- Sélectionner le sous-ensemble AC et noter, dans la partie inférieure de la sous-fenêtre Waveform List,


les formes d’ondes qu’il contient.

- Utiliser la méthode de « drag & drop » pour amener la forme d’onde V(out) dans la zone d’affichage.
Note : Apparaît alors un message d’erreur stipulant que l’on ne peut afficher sur un même graphique des
formes d’ondes qui ne dépendent pas de la même variable ( le temps pour celles déjà affichées et la
pulsation pour la nouvelle )

- Sélectionner à nouveau la forme d’ondes V(out) et utiliser le menu contextuel pour l’afficher, à l’aide
du sous-menu Plot, sous la forme d’un diagramme de BODE.

- Faire apparaître un curseur et trouver la fréquence à –3dB ( ici –6 db – 3 db = -9 db )

- Utiliser les icônes gérant l’affichage des fenêtres de visualisation ( Cascade Windows ; Tile
Horizontally ; Tile Vertically ; Tile Horizontally and Vertically in a Grid ) afin de présenter
différemment les résultats d’affichage des différentes courbes.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 18


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

4.7. Vérification des fichiers de simulation


-
- Dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation sélectionner, sous Files, le
répertoire Spice Files et, éditer le fichier RC_LPfilter.spi

- Identifier les lignes définissant C1, R2 et R1 en comparant leur contenu au schéma électrique. Reporter
ces lignes ci-dessous et noter ces remarques :

- Dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation sélectionner, sous Files, le
répertoire Spice Files et, éditer le fichier RC_LPfilter_sources.spi

- Identifier les paramètres de réglage des analyses en les comparant à celles éditées à l’étape 4-3, les
reporter ci-dessous et noter ces remarques :

- Dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation sélectionner, sous Files, le
répertoire Experiment Files et, éditer le fichier RC_LPfilter.cmd

- Identifier les paramètres de réglage des analyses en les comparant à celles éditées à l’étape 4-4, les
reporter ci-dessous et noter ces remarques :

- Fermer les fenêtres EZWave et DxDesigner

Fin de l’exercice n° 1

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 19


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 20


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

5. Analyses SPICE de base et sources associées

Objectif : L’objectif de cette partie est l’appropriation des analyses SPICE usuelles au travers de leur description en
langage SPICE ( syntaxe ) à de la façon de les déclarer dans HyperLynx Analog.

5.1. Analyses temporelle ( TRAN )


Cette analyse réalise le calcul dans l’espace temps d’un circuit stimulé par une (des ) source(s) transitoire(s)
telle qu’un sinus défini dans le temps (SIN), un sinus redressé mono-alternance ou bi-alternance ( FSINE ), un
signal modulé en fréquence (SFFM), un signal carré (PULSE), une forme d’onde exponentielle (EXP), une forme
d’onde segmentée (PWL).

 Directive d’analyse SPICE : .TRAN

 Syntaxe de la directive : .TRAN TSTEP TSTOP TSTART TMAX UIC

TSTEP : périodicité de la sauvegarde des mesures dans le fichier résultat


TSTOP : durée d’analyse du circuit ( l’instant initial est toujours t=0 )
TSTART ( optionnel ) : début d’enregistrement des résultats ( par défaut pris à 0 )
TMAX ( optionnel ) : paramètre interne au simulateur SPICE lui permettant de définir le temps maximum
entre deux échantillons. Par défaut il est fixé à TSTOP/50, cependant le programme adapte cette valeur en
fonction de la rapidité des évolutions supposées du signal.
UIC ( optionnel ) : impose au simulateur, si cette option est présente, de prendre en compte les conditions
initiales fixées par l’utilisateur sur les composants ou équipotentielles au travers de l’attribut IC=…

 Exemple : .TRAN 0 500us 50ns 50ns

 L’édition des paramètres d’analyse se fait dans la fenêtre Simulation Control à laquelle on peut accéder en
« lançant » la simulation ou en utilisant le menu contextuel Edit Dialog appliqué au fichier de commande
nom_du_test.cmd accessible, dans l’onglet Simulation du Navigator, sous le répertoire Experiment File
si le ce fichier a été édité une première fois. Dans cette fenêtre Simulation, il suffit alors d’éditer Time-
Domain Analysis comme indiqué ci-après :

TSTART

TMAX
TSTOP

UIC

TSTEP

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 21


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

 Sources associées à la directive d’analyse .TRAN :

Source SIN :

Source PWL :

Source SFFM :

Source EXP :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 22


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Source PULSE :

Source SINUS redressé MONO-alternance :

Source SINUS redressé BI-alternance :

5.2. Analyse fréquentielle ( AC )

Cette analyse calcule les régimes harmoniques ( modélisation dans le plan complexe ) d’un circuit stimulé par une
(des ) source(s) sinusoïdale(s) de pulsation variable et de faible amplitude (AC).

 Directive SPICE : .AC

 Syntaxe : .AC [DEC|OCT|LIN] NPTS FSTART FSTOP

[DEC|OCT|LIN] : spécifie le type de répartition des fréquences de mesures : par décade, par octave ou de façon
linéaire
NPTS : nombre de points de mesure
FSTART : fréquence inférieure du domaine fréquentiel étudié
FSTOP : fréquence supérieure du domaine fréquentiel étudié

 Exemple : .AC DEC 100 100 1MEG

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 23


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

 L’édition des paramètres d’analyse se fait dans la fenêtre Simulation Control à laquelle on peut accéder en
« lançant » la simulation ou en utilisant le menu contextuel Edit Dialog appliqué au fichier de commande
nom_du_test.cmd accessible, dans l’onglet Simulation du Navigator, sous le répertoire Experiment File
si le ce fichier a été édité une première fois. Dans cette fenêtre Simulation, il suffit alors d’éditer
Frequency-Domain Analysis comme indiqué ci-après :

FSTART

FSTOP

NPTS

DEC|OCT|LIN

 Source associée à la directive d’analyse .AC :


L’analyse harmonique d’un circuit suppose que le système est stimulé par une source sinusoïdale en
régime permanent et de pulsation variable afin d’en étudier les régimes harmoniques en utilisant le
formalisme complexe. La source sinus temporelle vu précédemment ne peut convenir car d’une part, elle est
de pulsation fixé et, surtout, elle n’est pas considéré en régime établi à t = 0 s.

Dans la fenêtre contextuelle permettant d’éditer les attributs de la source il suffit donc de renseigner
l’attribut AC (par exemple 1V pour une source de tension) et l’attribut définissant sa phase en degré
(par exemple 90) comme le montre la figure ci-dessous :

Zone de
déclaration des
paramètres de la
souce AC

 Remarque : le niveau de tension ( ou de courant ) peut être choisi à 1 Volt ( ou 1 Ampère ) pour des raisons
de facilité d’évaluation des résultats de mesure. En effet la structure simulée est un modèle linéaire petits
signaux ( plan complexe associé ) de la structure réelle et ne fait donc pas intervenir les limitations ou
autres saturations.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 24


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

5.3. Analyse en continu ( DC )


Cette analyse calcule le graphe de transfert d’un circuit stimulé par une source continue.

 Directive SPICE : .DC

 Syntaxe : .DC SOURCE START STOP STEP


SOURCE : label de la source entrée du quadripôle étudié
START : valeur initiale de la source
STOP: valeur finale de la source
STEP : incrément

 Exemple : .DC VE1 0.01 0.1 0.01

 L’édition des paramètres d’analyse se fait dans la fenêtre Simulation Control à laquelle on peut accéder en
« lançant » la simulation ou en utilisant le menu contextuel Edit Dialog appliqué au fichier de commande
nom_du_test.cmd accessible, dans l’onglet Simulation du Navigator, sous le répertoire Experiment File
si le ce fichier a été édité une première fois. Dans cette fenêtre Simulation, il suffit alors d’éditer Time-
Domain Analysis comme indiqué ci-après :

 Spécification des sources associées à la directive d’analyse .DC :


Toute source indépendante de tension ou de courant, voire la température ou le paramètre d’un
modèle peuvent servir d’entrée à cette analyse.

Dans le cas usuel d’une source choisie comme variable de balayage, il suffit de labéliser celle-ci, de la
choisir dans la fenêtre ( figure ci-dessus ) des paramètres de l’analyse. La figure ci-dessous montre la façon
de labéliser une source :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 25


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 26


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

EXERCICE n° 2

Analyses SPICE de base

et sources associées

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 27


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

6. EXERCICE 2 : Analyses SPICE de base et sources associées

Objectif : L’objectif de cette partie est l’appropriation des analyses SPICE usuelles décrites au chapitre précédent
Cet exercice permet aussi d’approfondir la maîtrise du grapheur EZWave.

6.1. Saisie du schéma Ampli_Inv

- Lancer DxDesigner ( si cela n’a pas déjà été fait ) à l’aide de l’icône placée sur le bureau sinon
« sauter » à la troisième étape de ce descriptif.
- Toujours dans le cas où DxDesigner avait été arrété, dans la fenêtre DxDesigner, utiliser le menu File
sélectionner, dans la liste des projets récents, Training_HLA_XYZ.prj ou le sélectionner dans l’onglet
Start page de la fenêtre principale de l’application.
- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1 , apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Dans la fenêtre DxDatabook, dans l’onglet Symbols, « taper » LF353 dans le champ de recherche de
symbole pour trouver l’amplificateur linéaire intégré ( il devrait apparaitre dans la librairie
ApMacromodel ) et placer ce composant sur la feuille de schéma.

- Compléter l’édition du schéma suivant avec les composants passifs R1 et R2 et labéliser les différentes
équipotentielles :

6.2. Edition des sources et des analyses

- Editer la source e1 suivante :


Name : e1
Type (V/I) : V
Node + : IN
Node - : 0
Resistance :
DC Value : 0
Frequency Magnitude : 1
Frequency Phase : 0
Time Type : Sine ( Offset : 0 Amplitude : 0.02 Frequency : 100K Delay : 0 Damping factor : 0 )

- Editer la source VCC suivante :


Name : VCC
Type (V/I) : V
Node + : VCC
Node - : 0
Resistance :
DC Value : 12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 28


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Editer la source VEE suivante :


Name : VEE
Type (V/I) : V
Node + : VEE
Node - : 0
Resistance :
DC Value : -12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer l’analyse temporelle ( Time-Domain Analysis ) suivante :


Start Time : 10us
End Time : 60us
Printing Time Interval : 3us
Tmax : 1us

- Editer l’analyse harmonique ( Frequency Analysis ) suivante :


Frequency Start : 10K
Frequency Stop : 10K
Number of Points : 100
Variation Type : Decade

6.3. Simulation et analyse des résultats de la simulation de Ampli_Inv

- Dans la fenêtre Simulation Control déjà utilisée pour éditer les paramètres d’analyse cliquer sur le
bouton Simulate.

- Vérifier, après un certain laps de temps, que la simulation s’est correctement déroulée en notant que,
dans la fenêtre Output ( onglet Simulation ), le message correspondant au temps écoulé est bien
présent. Par ailleurs l’outil de visualisation EZwave a été automatiquement lancé.

- Dans la fenêtre Ezwave utiliser les menus Plot as - Magnitude et Plot as - Phase ( menu contextuel )
sur le signal Vout issu de la simulation harmonique ( sous-ensemble AC de la base de données de
résultats ).

- Noter ci-après la différence de tracé de la première courbe avec celle qui avait été obtenue au premier
exercice pour une analyse similaire :

- Supprimer la courbe mag(V(out)) et Ezwave utiliser maintenant le menus Plot as - dB afin de retrouver
le tracé d’un diagramme de BODE classique.

- Sélectionner l’axe horizontal des fréquences et avec le menu contextuel, choisir d’afficher les lignes
verticales avec Grid Lines

- Faire apparaître un curseur et choisir, à l’aide de son menu contextuel, d’afficher les coordonnées
(Data Values – Show All). Toujours à partir du menu contextuel du curseur utiliser Move to… pour
placer automatiquement le curseur à la fréquence 30K

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 29


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Utiliser le menu Plot as – complex plane ( menu contextuel ) toujours sur le signal Vout issu de la
simulation harmonique ( sous-ensemble AC de la base de données de résultats ) afin d’afficher la
représentation de NYQUIST de la grandeur. Afficher un curseur et déplacer celui-ci le long de la courbe.
Interpréter les valeurs affichées par celui-ci :

- Utiliser le menu Plot as – polar chart ( menu contextuel ) toujours sur le signal Vout issu de la
simulation harmonique ( sous-ensemble AC de la base de données de résultats ) afin d’afficher la
représentation de la grandeur en coordonnées polaires c’est à dire dans lequel les modules sont
représentés par des cercles concentriques et les arguments le sont par des radiales. Afficher un curseur et
déplacer celui-ci le long de la courbe. Interpréter les valeurs affichés par celui-ci :

- Sélectionner le sous-ensemble TRAN de la base de données de résultats et utiliser la méthode de « drag


& drop » sur le signal Vout issu de la simulation temporelle vers une zone d’affichage non utilisée par
les affichages des résultats ( au besoin réduire ceux-ci ). Quelle remarque peut-on faire à propos de la
courbe affichée ?

- Revenir à l’application DxDesigner et lancer à nouveau la simulation. Avant que la simulation ne


s’exécute, on accède à la fenêtre Simulation Control à l’aide de laquelle on modifiera les paramètres de
l’analyse temporelle ( Time-Domain Analysis ) comme indiqué à l’étape suivante.

- Editer l’analyse temporelle ( Time-Domain Analysis ) suivante :


Start Time : 0
End Time : 60us
Printing Time Interval : 30ns
Tmax : 30ns

- Dans la fenêtre Simulation Control cliquer sur le bouton Simulate afin de lancer une nouvelle
simulation.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 30


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Dans la fenêtre Ezwave apparaît une base de données de résultats nommée Ampli_Inv_1. Afficher la
nouvelle forme d’onde temporelle V(out) issue de cette simulation. A l’aide d’une fonction zoom, mettre
en évidence la différence entre les deux résultats notamment visible dans les parties « hautes » des
sinusoïdes. Noter cette remarque en justifiant cette amélioration.

- Dans la fenêtre d’affichage Wave sélectionner le signal V(out) issu de la dernière simulation. Lancer
l’assistant de calcul en cliquant sur l’icône Waveform Calculator ( ou Ctrl + K avec le clavier )

- Dans la fenêtre Waveform Calculator sélectionner la fonction fft parmi les fonctions mathématiques
(onglet Funcs et ensemble Signal Processing) en cliquant deux fois rapidement. Dans cette même fenêtre
utiliser l’icône Add Selected Waveform afin de placer comme variable de la fonction fft le signal
préalablement sélectionné dans la fenêtre d’affichage c’est à dire V(out). Au besoin supprimer les points
de suspension dans l’expression ainsi définie et cliquer sur le bouton Eval de la calculatice. Une fenêtre
d’affichage ( Wave ) s’ouvre et permet de visualiser le spectre du signal en module et en phase.

- Dans cette fenêtre d’affichage sélectionner la courbe représentative du module ( db(wf2) ) et afficher un
curseur. Placer ce curseur sur la raie du spectre possédant la plus forte valeur. Noter la valeur de la
fréquence correspondante à cette raie et justifier ce résultat.

- Utiliser l’icône Tile Horizontally and Vertically in a Grid gérant l’affichage des fenêtres de
visualisation afin de présenter les d’affichage des différents résulats.
- Fermer l’application Ezwave et, dans DxDesigner, fermer l’édition du schéma Ampli_Inv

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 31


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

6.4. Saisie du schéma Ampli_Diff

- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.

- Renommer le schéma en Ampli_Diff et utiliser la commande Create Design ( menu contextuel lié à ce
nouveau design ) afin de le convertir en Design et le retrouver au même niveau que le précédent schéma
RC_LPfilter.

- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est Ampli_Diff et ce à l’aide du
menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner Ampli_Diff
afin qu’il devienne le Top level block

- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) le modèle M_2N2222 de la librairie bjt.h et le placer sur
le schéma à l’aide d’un « drag & drop ».

- Editer le schéma tel qu’il est fourni ci-dessous :

6.5. Edition des sources et des analyses

- Editer la source e1 suivante :


Name : VIN
Type (V/I) : V
Node + : VIN
Node - : 0
Resistance :
DC Value : 0
Frequency Magnitude : 1
Frequency Phase : 0
Time Type : Sine ( Offset : 0 Amplitude : 100mV Frequency : 1K Delay : 0 )

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 32


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Editer la source VCC suivante :


Name : VCC
Type (V/I) : V
Node + : VCC
Node - : 0
Resistance :
DC Value : 12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer la source VEE suivante :


Name : VEE
Type (V/I) : V
Node + : VEE
Node - : 0
Resistance :
DC Value : -12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer l’analyse temporelle ( Time-Domain Analysis ) suivante :


Start Time : 8ms
End Time : 10ms
Printing Time Interval : 1us
Tmax : 1us

- Editer l’analyse harmonique ( Frequency Analysis ) suivante :


Frequency Start : 1K
Frequency Stop : 1G
Number of Points : 1000
Variation Type : Decade

- Editer l’analyse continue ( DC Analysis ) de la manière suivante :


Dans la fenêtre Simulation Control, après avoir sélectionné, sous Simulations : DC Analysis valider
le bouton Enable de DC Analysis puis le bouton Parametric Sweep de DC Sweep Settings. Puis
cliquer sur le bouton Setup… correspondant. Cela ouvre une fenêtre DC Sweep Parameters qu’il
faut renseigner comme suit :

Valider par en cliquant sur le bouton Add, la syntaxe de la commande d’analyse apparaît alors dans la
partie DC Sweep Command. Puis cliquer sur le bouton OK.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 33


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

6.6. Simulation et analyse des résultats de la simulation de Ampli_Diff

- Dans la fenêtre Simulation Control déjà utilisée pour éditer les paramètres d’analyse cliquer sur le
bouton Simulate.

- Vérifier, après un certain laps de temps, que la simulation s’est correctement déroulée en notant que,
dans la fenêtre Output ( onglet Simulation ), le message correspondant au temps écoulé est bien
présent. Par ailleurs l’outil de visualisation EZwave a été automatiquement lancé.

- Dans la fenêtre Ezwave sélectionner le sous-ensemble DC de la base de données de résultats et utiliser


la méthode de « drag & drop » afin d’afficher les signaux Vsort1, Vsort2 puis I(r1,1) et I(r2,1).

Remarque importante : On notera que, pour tous ces tracés, l’axe des x est la tension d’entrée VIN car
c’est une analyse DC ( à contrario des analyses harmoniques où l’axe des x est logf ou les analyses
temporelles pour lesquelles l’axe des x est le temps t )

- Sélectionner l’un des courants affichés et, à l’aide de la boite à outils de mesures ( icône Open
Measurements Tool ou raccourci clavier Ctrl + M ), afficher la valeur moyenne ( Average ) de cette
grandeur. Sélectionner l’autre courant affiché et, dans la fenêtre Measurement Tool, à l’aide de
l’icône Add Selected Waveform, refaire la même mesure pour l’autre courant. Remarquer que les deux
courants possèdent la même valeur pour Vin = 0V et valant la moitié du courant de polarisation de la
paire différentielle.

- Sélectionner le sous-ensemble AC de la base de données de résultats et utiliser le menu Plot ( menu


contextuel ) sur le signal Vsort1 issu de la simulation harmonique. On obtient le diagramme de BODE
de la grandeur de sortie. On notera d’une part que l’axe des x est bien liée à la fréquence et que, d’autre
part, la bande passante est limitée en raison du produit gain-bande limité des transistors caractérisé par
leur fréquence de transition.

- Sélectionner le sous-ensemble TRAN de la base de données de résultats et utiliser le menus Plot ( menu
contextuel ) sur le signal Vsort1 issu de la simulation temporelle. On notera d’une part que l’axe des x
est bien le temps t et que, d’autre part, le signal de sortie n’est pas parfaitement sinusoïdal en raison des
saturation des tensions Vce des transistors Q1 et Q2.

- Utiliser l’icône Tile Horizontally and Vertically in a Grid gérant l’affichage des fenêtres de
visualisation afin de présenter les d’affichage des différents résulats.
- Fermer l’application Ezwave et, dans DxDesigner, fermer l’édition du schéma Ampli_Diff

Fin de l’exercice n° 2

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 34


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

7. Analyses SPICE paramétrées ( Parametric Sweep )

Objectif : L’objectif de cette partie est l’appropriation des analyses SPICE paramétrées au travers d’exemples et de
la méthodologie utilisée afin de les définir dans HyperLynx Analog.

7.1. Principes des analyses paramétrées


Le principe général des analyses paramétrées est de répéter l’analyse de base pour plusieurs valeurs d’un ( ou deux )
paramètre(s) choisi(s) par avance. Les paramètres peuvent être :

 La température du circuit dans son ensemble ou d’un composant en particulier

 La valeur nominale d’un composant passif ( Résistance, Condensateur , Inductance )

 La tolérance d’un seul élément passif ( Résistance, Condensateur , Inductance )

 La tolérance d’un seul élément

 Un paramètre spécifique d’un modèle de composant ( par exemple le beta forward ( BF ) d’un transistor
bipolaire )

 Une source de tension

Il est à noter que les analyses continues ( DC ) présentées au paragraphe précédent peuvent être vues comme des
analyses paramétrées. D’ailleurs on pourra vérifier que lorsque l’on choisit deux sources de tension comme
paramètres variables de l’analyse, la directive SPICE s’écrit avec la même syntaxe qu’une analyse continue à savoir
, par exemple :
.dc vvce 0 12 0.1 vin 10 100 10 lin

La description des analyses paramétrées se fait dans la fenêtre Simulation Control en accédant aux fonctionnalités
accessibles sous le répertoire Multi Sweep lui-même sous le répertoire Multi Run. Dans le cas particulier des
analyses paramétrées avec comme paramètre une ( ou deux ) source(s) de tension il faut les déclarer à l’aide des
fonctionnalités accessibles sous le répertoire DC Analysis lui-même sous le répertoire Simulations.

7.2. Analyses paramétrées par la température


Comme pour toutes les analyses paramétrées, hormis le cas particulier de celles basées sur une ( ou deux ) sources
de tension, il est nécessaire ( et commode ) de définir l’analyse de base de préférence avant la déclaration des
caractéristiques du paramètre. C’est l’analyse qui sera éxécutée, en Multi Run, autant de fois que les valeurs
affectées au paramètre.

Les choix proposés à l’utilisateur pour décrire le paramètre ( température ) de cette analyse sont :

 L’échelle des températures ( Celsius ou Fahrenheit )

 Le type d’incrémentation du paramètre : Linéaire , Log , Point , Set ( liste de température )

Exemple : on se propose d’étudier l’influence de la température des composants sur le gain d’un amplificateur de
tension organisé autour d’un transistor bipolaire « monté » en émetteur-commun.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 35


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

La description du paramétrage, est donné ci-après ( cas de la température de tout le circuit ) :

L’image suivante montre le résultat, dans Ezwave, de l’analyse AC paramétrée en température. On remarquera,
dans la partie basse de Waveform List la liste des courbes V(out) issues de la simulation Multi Run.

On verra dans l’exercice n°3 comment retrouver les valeurs des paramètres liés à chaque courbe.

L’analyse de base est donc du type réponse harmonique et sa directive SPICE est la suivante :
.ac dec 100 100K 1G

Le directive SPICE issue de cette description de l’analyse paramétrée est la suivante :


.temp 0.00000 10.00000 20.00000 30.00000 40.00000 50.00000 60.00000

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 36


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

7.3. Analyses paramétrées par la valeur nominale d’un composant passif


Les choix proposés à l’utilisateur pour décrire chacun des deux paramètres de cette analyse sont :

 Le type de paramètre parmi Passive, Voltage Source, Device, Model : le choix est Device

 Le nom du composant passif dont la valeur nominale ( ou la température ) sera le paramètre à faire varier
( utilisation du bouton Browse pour sélectionner le composant du schéma )

 Le paramètre : Value, Température, Dtemp

 Le type d’incrémentation du paramètre : Increment, Linear , Decade, Octave, List

 Les valeurs de départ, de fin, le pas d’incrémentation ou la liste des valeur suivant le choix précédent

Exemple : on se propose d’étudier l’influence sur la fréquence centrale et la bande passante des valeurs nominales
des deux condensateurs constitutifs de la structure de RAUCH du filtre passe-bande.

L’image suivante reproduit les descriptions des deux paramètres supports de l’analyse :

L’analyse de base est donc du type réponse harmonique et sa directive SPICE est la suivante :

.ac dec 100 100 10K

Les directives SPICE issues de cette description de l’analyse paramétrée sont les suivantes :

.vary device c1 value 5.0e-009 1.0e-008 1.5e-008 2.0e-008 2.5e-008


.vary device c2 value 5.0e-009 1.0e-008 1.5e-008 2.0e-008 2.5e-008

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 37


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

7.4. Analyses paramétrées par la valeur d’un élément de modèle


Les choix proposés à l’utilisateur pour décrire le paramètre de cette analyse sont :

 Le type de paramètre parmi Passive, Voltage Source, Device, Model : le choix est Model

 Le nom du composant dont un des éléments du modèle sera le paramètre à faire varier ( utilisation du
bouton Browse pour sélectionner le composant du schéma )

 Le paramètre : les paramètres constitutifs sont affichés sous forme d’une liste de choix

 Le type d’incrémentation du paramètre : Increment, Linear , Decade, Octave, List

 Les valeurs de départ, de fin, le pas d’incrémentation ou la liste des valeur suivant le choix précédent

Exemple : on se propose d’étudier l’influence sur le gain statique d’un amplificateur de tension, organisé autour
d’un transistor bipolaire « monté » en émetteur-commun, du paramètre beta forward ( BF ) du modèle
du transistor.

L’image suivante reproduit la description du paramètre BF ( beta forward ) du transistor, support de l’analyse :

L’analyse de base est donc du type réponse harmonique et sa directive SPICE est la suivante :

.ac dec 100 100K 1G

Le directive SPICE issue de cette description de l’analyse paramétrée est la suivante :

.vary bjt m_bfq19s bf 5.0e+001 1.0e+002 1.5e+002 2.0e+002 2.5e+002

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 38


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

7.5. Analyses paramétrées par une ( ou deux ) source(s) de tension

On a vu que ce type d’analyse devait être décrite, dans la fenêtre Simulation Control, à l’aide des fonctions
accessibles sous le répertoire DC Analysis, lui-même sous le répertoire Simulations.

Les choix proposés à l’utilisateur pour décrire chacun des deux paramètres ( s’il y en a deux ) de cette analyse
sont :

 Le type de paramètre parmi Temperature, Source, Device, Model : le choix est Source

 La source de tension qui sera le paramètre à faire varier ( utilisation du bouton Browse pour sélectionner la
source choisie )

 Le paramètre DC Value s’impose alors comme unique paramètre

 Le type d’incrémentation du paramètre : Linear ou Log

 Les valeurs de départ, de fin et le pas d’incrémentation

Exemple : on se propose, par ce biais de tracer le réseau de caractéristique Ic = f(Vce) d’un transistor bipolaire.

L’image suivante reproduit les descriptions des deux paramètres supports de l’analyse :

Le directive SPICE issue de cette description de l’analyse paramétrée est la suivante :

. .dc vvce 0 12 0.1 lin vvin 10 100 10 lin

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 39


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 40


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

EXERCICE n° 3

Analyses SPICE paramétrées

( Parametric Sweep )

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 41


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

8. EXERCICE 3 : Analyses SPICE paramétrées ( Parametric Sweep )

Objectif : L’objectif de cette partie est l’appropriation des analyses SPICE paramétrées décrites au chapitre
précédent Cet exercice permet aussi d’approfondir encore la maîtrise du grapheur EZWave.

8.1. Saisie du schéma Ampli_EC

- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Renommer le schéma en Ampli_EC et utiliser la commande Create Design ( menu contextuel lié à ce
nouveau design ) afin de le convertir en Design et le retrouver au même niveau que les précédents
schémas.
- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est Ampli_EC et ce à l’aide du
menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner Ampli_EC
afin qu’il devienne le Top level block
- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) le modèle m_BFQ19S de la librairie bjt.h et le placer sur
le schéma à l’aide d’un « drag & drop ».

- Editer le schéma tel qu’il est fourni ci-dessous :

8.2. Edition des sources et des analyses paramétrées en température

- Editer la source e1 suivante :


Name : VIN
Type (V/I) : V
Node + : VIN
Node - : 0
Resistance :
DC Value : 0
Frequency Magnitude : 1
Frequency Phase : 0
Time Type : None

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 42


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Editer la source VCC suivante :


Name : VCC
Type (V/I) : V
Node + : VCC
Node - : 0
Resistance :
DC Value : 12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer l’analyse harmonique ( Frequency Analysis ) suivante :


Frequency Start : 100K
Frequency Stop : 1G
Number of Points : 10
Variation Type : Decade

- Editer l’analyse paramétrée ( Multi Run / Multiple Sweep / Temperature Sweep ) suivante :
Dans la fenêtre Simulation Control, après avoir sélectionné, sous Multi Run sous Multi Sweep le
type d’analyse Temperature Sweep, la renseigner comme suit :
Celsius
Step Type : Linear
Start Value : 10
Stop Value : 60
Increment : 10

- valider le tout en cliquant sur le bouton Add, la syntaxe de la commande d’analyse apparaît alors dans la
partie Temperature Sweep Command. Noter cette commande ci-dessous :

- Valider par OK

- Nommer cette analyse Ampli_EC_ac_Temp.cmd dans l’onglet Simulation de la partie Navigator de


DxDesigner.

8.3. Simulation et visualisation d’analyses paramétrées en température

- Dans la fenêtre Simulation Control déjà utilisée pour éditer les paramètres d’analyse cliquer sur le
bouton Simulate.

- Vérifier, après un certain laps de temps, que la simulation s’est correctement déroulée en notant que,
dans la fenêtre Output ( onglet Simulation ), le message correspondant au temps écoulé est bien
présent. Par ailleurs l’outil de visualisation EZwave a été automatiquement lancé.

- Dans la fenêtre Ezwave sélectionner le sous-ensemble AC de la base de données de résultats et, dans la
partie basse de la partie Waveform List de la fenêtre cliquer sur le signe + correspondant V(out). Un
certain nombre de formes d’ondes indicées comme suit V(out)_n apparaissent. Compter leur nombre et
le justifier par rapport à la description de l’analyse paramétrée éditée ci-dessus et sachant que le
simulateur a rajouté un « Run » pour T = 0°C :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 43


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Sélectionner le signal V(out) et utiliser le menu Plot ( menu contextuel ). Commenter l’effet sur
l’affichage :

- On remarque que le gain statique du montage est fortement influencé par la température. Réaliser un
zoom de cette partie et afficher un curseur. Sélectionner ce curseur et utiliser le menu contextuel
qui lui est associé pour qu’il affiche toutes les valeurs des différentes courbes ( menu Data Values –
Show All ).

- Effacer toutes les courbes affichées. Sélectionner la courbe V(out)_1 et utiliser le menu Plot As – db
(menu contextuel). Utiliser l’outil de mesure ( icône Open Measurements Tool ou raccourci clavier
Ctrl + M ), afin de trouver la fréquence de coupure à –3 dB. Dans la fenêtre Measurements Tool
choisir General et Crossing. Sélectionner la forme d’onde source db(V(out)_1) au besoin à l’aide d’un
« drag & drop ». Dans la partie Y level entrer 17 ( c’est 20 db – 3 db ) et cliquer sur le bouton Apply.
Apparaît une indication de Crossing qui représente la fréquence correspondante à un gain de 17 db. La
noter et recommencer avec la forme d’onde V(out)_7. Noter et comparer les valeurs :

- Fermer la fenêtre EZWave sans sauvegarder les mesures.

8.4. Simulation et visualisation d’analyses paramétrées par un élément de modèle


- Dans la fenêtre DxDesigner, dans la partie Navigator, sélectionner le répertoire Experiment Files et,
à l’aide du menu contextuel créer une nouvelle expérimentation ( menu New Experiment … )

- Editer ( à nouveau ) l’analyse harmonique ( Frequency-Domain Analysis ) suivante :


Frequency Start : 100K
Frequency Stop : 1G
Number of Points : 10
Variation Type : Decade

- Editer l’analyse paramétrée ( Multi Run / Multiple Sweep / Parametric Sweep ) suivante :
Dans la fenêtre Simulation Control, après avoir sélectionné, sous Multi Run sous Multi Sweep le
type d’analyse Parametric Sweep, la renseigner comme suit :
First Parameter
Type : Model
Name : M_BFQ19S ( sélectionné à l’aide du bouton Browse )
Parameter : BF ( sélectionné à l’aide de la flèche … ce paramètre est assez bas dans la liste ! )

Criteria
Step Type : List
Sweep List : 50 100 150 200 250

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 44


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Valider le tout en cliquant sur le bouton Add, la syntaxe de la commande d’analyse apparaît alors dans
la partie Parametric Sweep Command. Noter cette commande ci-dessous :

- Valider par OK

- Nommer cette analyse Ampli_EC_ac_Beta_param.cmd dans l’onglet Simulation de la partie Navigator


de DxDesigner.

- Après avoir renommée cette expérimentation, utiliser son menu contextuel pour lancer la simulation
(menu Simulate)
- Dans la fenêtre Ezwave sélectionner le sous-ensemble AC de la base de données de résultats et, dans la
partie basse de la partie Waveform List de la fenêtre cliquer sur le signe + correspondant V(out). Un
certain nombre de formes d’ondes indicées comme suit V(out)_n apparaissent.

- Sélectionner le signal V(out) et utiliser le menu Plot ( menu contextuel ). Comparer l’influence du
paramètre beta forward ( BF ) du transistor à celle de la température sur le comportement harmonique de
l’amplificateur :

- Sélectionner le signal V(out) et utiliser le menu Plot-As complex_plane ( menu contextuel ).

- Sélectionner le signal V(out) et utiliser le menu Plot-As polar_chart ( menu contextuel ).

- Utiliser l’icône Tile Horizontally and Vertically in a Grid gérant l’affichage des fenêtres de
visualisation afin de présenter les d’affichage des différents résulats.

- Dans la fenêtre DxDesigner, dans la partie Navigator, sous l’onglet Simulation, sélectionner le
testbench RAUCH. Sous le répertoire Result Files, sélectionner le fichier Ampli_EC_Beta_param.apo
et, à l’aide du menu contextuel, l’éditer ( menu Open ).

- Après les différentes lignes rappelant les analyses ( .ac .tran ( inactive ici ) ; les commandes de
paramétrage ( .vary ) ; les insertions ( .include ) et les options ( .option ) interpréter les lignes :
A new set of values for .VARY
m_bfq19s bf = 50
et rechercher, en suivant, la valeur affectée au paramètre bf du modèle m_bfq19s du transistor.

Les données qui suivent sont les valeurs du point de repos de la structure pour cette valeur du paramètre
et la courbe nommée V(out)_1 correspond aussi à cette valeur de bf.

On peut, toujours dans ce fichier trouver ces mêmes informations pour les différentes valeurs affectées
au paramètre support des simulations de type Multi Run

- Fermer l’application Ezwave et, dans DxDesigner, fermer l’édition du fichier résultat ainsi que celle du
schéma Ampli_EC.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 45


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

8.5. Saisie du schéma RAUCH

- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Renommer le schéma en RAUCH et utiliser la commande Create Design ( menu contextuel lié à ce
nouveau design ) afin de le convertir en Design et le retrouver au même niveau que les précédents
schémas.
- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est RAUCH et ce à l’aide du
menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner RAUCH
afin qu’il devienne le Top level block
- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) le modèle s_LF353 de la librairie amp.h et le placer sur
le schéma à l’aide d’un « drag & drop ».
- Editer le schéma tel qu’il est fourni ci-dessous :

8.6. Edition des sources et des analyses paramétrées par les valeurs nominales
- E
diter la source e1 suivante :
Name : VIN
Type (V/I) : V
Node + : VIN
Node - : 0
Resistance :
DC Value : 0
Frequency Magnitude : 1
Frequency Phase : 0
Time Type : Sine ( Offset : 0 Amplitude : 10mV Frequency : 1700 Delay : 0 Damping factor : 0 )

- Editer la source VCC suivante :


Name : VCC
Type (V/I) : V
Node + : VCC
Node - : 0
Resistance :
DC Value : 12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 46


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Editer la source VEE suivante :


Name : VEE
Type (V/I) : V
Node + : VEE
Node - : 0
Resistance :
DC Value : -12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer l’analyse harmonique ( Frequency Analysis ) suivante :


Frequency Start : 100
Frequency Stop : 10K
Number of Points : 100
Variation Type : Decade

- Editer l’analyse temporelle ( Time-Domain Analysis ) suivante :


Start Time : 4ms
End Time : 6ms
Printing Time Interval : 5us
Tmax : 5us

- Editer l’analyse paramétrée ( Multi Run / Multiple Sweep / Temperature Sweep ) suivante :
Dans la fenêtre Simulation Control, après avoir sélectionné, sous Multi Run sous Multi Sweep le
type d’analyse Parametric Sweep, la renseigner comme suit :

First Parameter
Type : Device
Name : C1 ( sélectionné à l’aide du bouton Browse )
Parameter : VALUE ( sélectionné à l’aide de la flèche )

Criteria
Step Type : LIST
Sweep List : 5nF 10nF 15nF 20nF 25nF

Second Parameter
Type : Device
Name : C2 ( sélectionné à l’aide du bouton Browse )
Parameter : VALUE ( sélectionné à l’aide de la flèche )

Criteria
Step Type : LIST
Sweep List : 5nF 10nF 15nF 20nF 25nF

- valider le tout en cliquant sur le bouton Add, la syntaxe des deux commandes d’analyse apparaît alors
dans la partie Parametric Sweep Command. Noter ces commandes ci-dessous :

- Valider par OK

- Nommer cette analyse RAUCH_ac_tr_multi.cmd dans l’onglet Simulation de la partie Navigator de


DxDesigner.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 47


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

8.7. Simulation et visualisation d’analyses paramétrées par les valeurs nominales


- Dans l’onglet Simulation de la partie Navigator de DxDesigner, sélectionner, sous le répertoire
Experiment Files associé au testbench RAUCH, le fichier RAUCH_ac_tr_multi.cmd et utiliser son
menu contextuel pour lancer la simulation ( menu Simulate ).
- Vérifier, après un certain laps de temps, que la simulation s’est correctement déroulée en notant que,
dans la fenêtre Output ( onglet Simulation ), le message correspondant au temps écoulé est bien
présent. Par ailleurs l’outil de visualisation EZwave a été automatiquement lancé.
- Dans la fenêtre Ezwave sélectionner le sous-ensemble AC de la base de données de résultats et, dans la
partie basse de la partie Waveform List de la fenêtre cliquer sur le signe + correspondant V(out). Un
certain nombre de formes d’ondes indicées comme suit V(out)_n apparaissent. Compter leur nombre et
le justifier par rapport à la description de l’analyse paramétrée éditée ci-dessus :

- Sélectionner le signal V(out) et utiliser le menu Plot ( menu contextuel ).

- Sélectionner la courbe possédant son maximum le plus à droite. Utiliser l’outil de mesure ( icône
Open Measurement Tool ou raccourci clavier Ctrl + M ), afin de trouver le maximum local : dans la
fenêtre Measurement Tool choisir General et Local Max et sélectionner la forme d’onde source avec
l’icône Add Selected Waveform ( on remarque que c’est la courbe indicée 1 ). Cliquer sur le bouton
Apply. Apparaît une indication de Local Max qui représente la fréquence centrale et le gain du filtre
passe-bande pour un couple de valeurs [C1;C2]. Noter ces valeurs et recommencer avec la courbe
possédant son maximum le plus à gauche ( on remarque que c’est la courbe indicée 49 ). Noter les
nouvelles valeurs. Recommencer avec la courbe possédant son maximum le plus élevé de toutes les
courbes ( on remarque que c’est la courbe indicée 9 ). Noter ces valeurs et comparer tous ces résultats :

Courbe db(V(out)_1) : Local Max : Hz , dB

Courbe db(V(out)_49) : Local Max : Hz , dB

Courbe db(V(out)_9) : Local Max : Hz , dB

- En conservant cette dernière courbe sélectionnée, toujours dans la fenêtre Measurement Tool, choisir
General et Bandpass et cliquer sur le bouton Apply. Les informations –3dB Bandwith , F-Low et F-
high apparaissent. Les noter et reproduire ces mesures pour les deux autres courbes étudiées ci-dessus.

Courbe db(V(out)_1) : -3dB Bandwith = Hz , F-Low = Hz , F-high = Hz

Courbe db(V(out)_49) : -3dB Bandwith = Hz , F-Low = Hz , F-high = Hz

Courbe db(V(out)_9) : -3dB Bandwith = Hz , F-Low = Hz , F-high = Hz

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 48


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Dans la fenêtre Ezwave sélectionner le sous-ensemble TRAN de la base de données de résultats et, dans
la partie basse de la partie Waveform List de la fenêtre cliquer sur le signe + correspondant V(out). Un
certain nombre de formes d’ondes indicées comme suit V(out)_n apparaissent. Compter leur nombre et
le justifier par rapport à la description de l’analyse paramétrée éditée ci-dessus :

- Sélectionner la courbe ayant la plus grande dynamique. Utiliser l’outil de mesure précédemment décrit
(icône Open Measurement Tool ou raccourci clavier Ctrl + M) afin de mesurer la valeur crête à crête
du signal ( Peak to Peak ). Reproduire cette mesure pour la courbe ayant la plus petite amplitude. Noter
ces valeurs et commenter ces résultats :

- Dans la fenêtre DxDesigner, dans la partie Navigator, sous l’onglet Simulation, sélectionner le
testbench RAUCH. Sous le répertoire Result Files, sélectionner le fichier RAUCH_ac_tr_multi.apo
et, à l’aide du menu contextuel, l’éditer ( menu Open )

- Après les différentes lignes rappelant les analyses ( .ac .tran ) ; les commandes de paramétrage ( .vary ) ;
les insertions ( .include ) et les options ( .option ) interpréter les lignes :
A new set of values for .VARY
c1 value = 5 e-009
c2 value = 5 e-009
et rechercher, en suivant, le nombre d’associations de valeurs affectées aux composants capacitifs C1 et
C2. En déduire le nombre de courbes V(out)_n en ce qui concerne l’analyse harmonique et l’analyse
temporelle. Justifier les indices de 1 à 50

- Fermer l’application Ezwave et, dans DxDesigner, fermer l’édition du fichier résultat ainsi que celle du
schéma RAUCH.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 49


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

8.8. Saisie du schéma BJT_Curv

- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Renommer le schéma en BJT_Curv et utiliser la commande Create Design ( menu contextuel lié à ce
nouveau design ) afin de le convertir en Design et le retrouver au même niveau que les précédents
schémas.
- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est BJT_Curv et ce à l’aide du
menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner BJT_Curv
afin qu’il devienne le Top level block
- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) le modèle m_2919 de la librairie bjt.h et le placer sur le
schéma à l’aide d’un « drag & drop ».
- Editer le schéma tel qu’il est fourni ci-dessous :

8.9. Edition des sources et des analyses paramétrées par deux sources

- Editer la source VCE suivante :


Name : VCE
Type (V/I) : V
Node + : VCE
Node - : 0
Resistance :
DC Value :
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer la source VIN suivante :


Name : VIN
Type (V/I) : V
Node + : VIN
Node - : 0
Resistance :
DC Value :
Frequency Magnitude :
Frequency Phase :
Time Type : None

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 50


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Editer l’analyse continue ( DC Analysis ) suivante :

Dans la fenêtre Simulation Control, valider DC Analysis ( cocher Enable ) et Parametric Sweep. Cliquer sur le bouton
Setup correspondant à cette dernière validation. Dans la fenêtre DC Sweep Parameters apparaissant, éditer le premier et
deuxième paramètre comme suit :

First Parameter
Type : Source
Name : VVCE ( sélectionné à l’aide du bouton Browse )
Parameter : DC VALUE ( sélectionné à l’aide de la flèche )

Criteria
Step Type : Linear
Sweep Start : 0
Sweep Stop : 12
Step size : 0.1

Second Parameter
Type : Source
Name : VVIN ( sélectionné à l’aide du bouton Browse )
Parameter : DC VALUE ( sélectionné à l’aide de la flèche )

Criteria
Step Type : Linear
Sweep Start : 10
Sweep Stop : 100
Step size : 10

- valider le tout en cliquant sur le bouton Add, la syntaxe des deux commandes d’analyse apparaît alors
dans la partie DC Sweep Command. Noter ces commandes ci-dessous :

- Valider par OK

- Dans la fenêtre Simulation Control, sélectionner sous le répertoire Results, DC Sweep Waveforms.
Dans la liste des « Nets » à afficher ( Nets to Probe ) supprimer toutes les grandeurs ( Remove All ).
Dans la partie Design Hierarchy sélectionner le courant de collecteur ( C ) du transistor Qxxx

- Nommer cette analyse BJT_Curv_dc_multi.cmd dans l’onglet Simulation de la partie Navigator de


DxDesigner.

8.10. Simulation et visualisation d’analyses paramétrées par deux sources


- Dans l’onglet Simulation de la partie Navigator de DxDesigner, sélectionner, sous le répertoire
Experiment Files associé au testbench BJT_Curv, le fichier BJT_Curv_dc_multi.cmd et utiliser son
menu contextuel pour lancer la simulation ( menu Simulate ).

- Vérifier, après un certain laps de temps, que la simulation s’est correctement déroulée en notant que,
dans la fenêtre Output ( onglet Simulation ), le message correspondant au temps écoulé est bien
présent. Par ailleurs l’outil de visualisation EZwave a été automatiquement lancé.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 51


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Dans la fenêtre Ezwave sélectionner le sous-ensemble DC de la base de données de résultats et afficher


la seule grandeur disponible ( le courant de collecteur du transistor ). Reproduire ci-dessous l’allure du
réseau de courbes obtenues et le commenter :

- Fermer l’application Ezwave et, dans DxDesigner, fermer l’édition du schéma BJT_Curv

Fin de l’exercice n° 3

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 52


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

9. Analyses SPICE avancées

Objectif : L’objectif de cette partie est l’appropriation des analyses SPICE avancées au travers de leur spécificité,
de leur syntaxe SPICE ( syntaxe ) et de leur déclaration dans HyperLynx Analog.

9.1. Analyse du point de repos ( OP )

Cette directive permet d’obtenir des informations détaillées sur le point de repos d’un circuit (caractéristiques
des composants au point de repos, courants et tensions des sources au point de repos etc. ). Ces informations
seront stockées dans le fichier nom_du_ [Link] .
Note : Toute simulation SPICE débute par cette analyse, ne serait - ce que pour définir les valeurs des paramètres
des modèles des composants dont on sait qu’elles dépendent du point de repos. Cependant, si la directive
.OP n’est pas présente, seules les valeurs des tensions de repos sont stockées dans le fichier résultats,
alors que sa présence impose au simulateur de stocker les courants et les puissances dans ce même
fichier.

 Directive SPICE : .OP

 Syntaxe : .OP

 Exemple : .op

 L’autorisation de mémoriser les résultats issues de l’analyse du point de repos se fait dans la fenêtre
Simulation, sous le répertoire DC Analysis comme indiqué ci-dessous :

 Le mode showall imposant à la directive .OP de mémoriser toutes les grandeurs liées à l’analyse du point
de repos autres que les courants de branche et les potentiels des nœuds du circuit comme les paramètres
du modèle « petit signal » des transistors par exemple, se fait dans la fenêtre Simulation, sous le
répertoire Operating Point Values comme indiqué ci-dessous :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 53


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

 Spécification des sources associées à la directive d’analyse .OP : aucune

 Visualisation du résultat dans le fichier *.apo ( exemple ) :

* Sat Dec 06 [Link] 2008 * MGC Analog Simulator 2008 (Thu Jun 26 2008) * Copyright © Mentor Graphics Corporation 2008 All Rights Reserved.
* command file for design: amp_bc
**** OPERATING POINT ANALYSIS TEMPERATURE = 27.000 DEG C
**************************************************************************************************************************
DC OPERATING POINT

NODE VOLTAGES
v(bas)= 1.897e+000 v(col)= 7.741e+000
v(emet)= 1.267e+000 v(out)= 0.000e+000
v(vcc)= 9.000e+000 v(vin)= 0.000e+000

INDEPENDENT SOURCES

VOLTAGE SOURCE CURRENTS


vvcc VOLTAGE = 9.000e+000 CURRENT = -1.969e-003
vvin VOLTAGE = 0.000e+000 CURRENT = 0.000e+000

TOTAL POWER DISSIPATION = 1.773e-002 WATTS

RESISTORS
NAME rc re rl rb1 rb2
MODEL
RES 1.000e+003 1.000e+003 1.000e+004 1.000e+004 2.700e+003
I 1.259e-003 1.267e-003 0.000e+000 7.103e-004 7.026e-004
V 1.259e+000 1.267e+000 0.000e+000 7.103e+000 1.897e+000
POWER 1.586e-003 1.605e-003 0.000e+000 5.045e-003 1.333e-003

BIPOLAR JUNCTION TRANSISTORS

NAME q1i5
MODEL m_2n2222a
IB 7.677e-006
IC 1.259e-003
VBE 6.295e-001
VBC -5.842e+000
VCE 6.472e+000
BETADC 1.640e+002
GM 4.797e-002
RPI 3.459e+003
RMU 5.479e+012
RO 1.411e+005
RB 7.417e+001
CPI 6.153e-011
CMU 4.448e-012
CBCX 0.000e+000
CCS 0.000e+000
BETAAC 1.659e+002
FT 1.157e+008

**** INITIAL TRANSIENT SOLUTION TEMPERATURE = 27.000 DEG C


**************************************************************************************************************************

NODE VOLTAGES

v(bas)= 1.897e+000 v(col)= 7.741e+000


v(emet)= 1.267e+000 v(out)= 0.000e+000
v(vcc)= 9.000e+000 v(vin)= 0.000e+000

INDEPENDENT SOURCES

VOLTAGE SOURCE CURRENTS


vvcc VOLTAGE = 9.000e+000 CURRENT = -1.969e-003
vvin VOLTAGE = 0.000e+000 CURRENT = 0.000e+000

TOTAL POWER DISSIPATION = 1.773e-002 WATTS

…………………………………………………………………………………………………………………………………………………………………………

 Visualisation du résultat sur le schéma :


Il est possible de visualiser les valeurs du point de repos sur le schéma grâce à la rétro-annotation. Il faut,
pour cela utiliser, dans DxDesigner, l’icône Show BackAnnotation comme on le verra dans l’exercice
n°4.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 54


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

9.2. Analyses de bruit ( .NOISE )

L’analyse de bruit est le calcul de la contribution de chacune des résistances et des semi-conducteurs
(diodes, transistors etc.) au bruit total apporté par un quadripôle ( amplificateur ou non ) au signal d’entrée. Le
bruit est une grandeur aléatoire ( ramdom ) et bien que sa valeur moyenne dans le temps puisse être nulle, sa
variance (valeur efficace) ne l’est pas. Le bruit total en sortie est donc quantifié grâce au calcul de la racine carré
des contributions de chacun des composants considérées de par leur carré. Ce calcul dépend de la bande passante
considérée et donc cette directive doit absolument être associée à une analyse fréquentielle ( .AC) . Le
résultat s’exprime donc en V/hertz1/2 . Cette grandeur calculée en sortie du quadripôle se nomme ONOISE (
Output noise ) mais est aussi calculée en équivalent de source de bruit en entrée , elle est alors désignée par
INOISE ( Input Noise ). Les courbes représentatives des grandeurs ONOISE et INOISE, dépendantes de la
fréquence, seront affichées à l’aide du grapheur Ezwave alors que les contributions de chacun des composants
« bruyants» pourront être lues dans le fichier résultat nom_du_design.apo

 Directive SPICE : .NOISE

 Syntaxe : .NOISE V( <node> [,<node>] ) < source name > [ interval value ]
V( <node> [,<node>] ) : équipotentielles de sortie du quadripôle. Usuellement la deuxième
équipotentielle est la masse et peut être notée 0 ou non déclarée
< source name > : équipotentielle d’entrée du quadripôle référencée à la masse. Usuellement c’est la
même que définissant l’analyse harmonique ( .AC ) nécessairement associée à
l’analyse de bruit.
[ interval value ] : pas d’affichage

 Exemple : .op v(out,0) vvin 100

 La déclaration de cette analyse se fait dans la fenêtre Simulation, sous le répertoire Frequency Analysis
en validant Noise dans la partie Advanced Analysis après avoir défini l’analyse harmonique :

 L’édition des paramètres de l’analyse de bruit se fait à l’aide de la fenêtre de dialogue suivante,
obtenue en cliquant sur le bouton Setup… de la fenêtre précédente :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 55


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

 Spécification des sources associées à la directive d’analyse .NOISE :


Cette analyse nécessite une source harmonique puisqu’elle est liée à la présence d’une analyse .AC

 Visualisation des contributions des composants « bruyants » dans le fichier *.apo ( exemple ) :
* command file for design: amp_bc

**** NOISE ANALYSIS TEMPERATURE = 27.000 DEG C

*************************************************************

FREQUENCY = 1.000e+003 HZ

INDIVIDUAL NOISE GENERATOR VOLTAGE CONTRIBUTIONS (V SQ/HZ)

rb1 1.826e-015
rb2 6.763e-015
rc 1.329e-017
re 2.850e-018
rl 4.746e-018

q1i5
RB 8.343e-016
RC 8.161e-025
RE 1.463e-018
IB 2.964e-015
FN 0.000e+000
IC 1.944e-016
TOTAL 3.994e-015

TOTAL OUTPUT NOISE VOLTAGE = 1.260e-014 V SQ/HZ


= 1.123e-007 /RT HZ
EQUIVALENT INPUT NOISE = 4.309e-009 /RT HZ

TRANSFER FUNCTION VALUE


V(OUT,0) / vvin = 2.605e+001

9.3. Analyses de sensibilité ( .SENS )

Cette analyse permet de calculer la sensibilité d’une ou plusieurs sorties vis à vis des éléments et paramètres du
montage et ce, pour une analyse AC ou DC.

 Directive SPICE : .SENS

 Syntaxe pour une analyse AC : .SENS ac V( <node> [,<node>] ) Frequency1 Frequency2


ac : spécifie que l’analyse de sensibilité porte sur un comportement harmonique
V( <node> [,<node>] ) : équipotentielles de sortie. Usuellement la deuxième équipotentielle est la masse et
peut être notée 0 ou non déclarée
Frequency1 Frequency2 … : fréquences auxquelles sont étudiées les sensibilités

 Syntaxe pour une analyse DC : .SENS dc V( <node> [,<node>] ) Frequency1


dc : spécifie que l’analyse de sensibilité porte sur les grandeurs continues
V( <node> [,<node>] ) : équipotentielles de sortie. Usuellement la deuxième équipotentielle est la masse et
peut être notée 0 ou non déclarée

 Exemple : .sens ac v(out,0) 100K 100meg


.sens dec v(col)

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 56


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

 En ce qui concerne l’analyse de sensibilité vis à vis des comportements harmoniques, elle se fait dans la
fenêtre Simulation, sous le répertoire Frequency Analysis en validant Sensitivity dans la partie Advanced
Analysis après avoir défini l’analyse harmonique :

 L’édition des paramètres de l’analyse de sensibilité se fait à l’aide de la fenêtre de dialogue suivante,
obtenue en cliquant sur le bouton Setup… de la fenêtre précédente :

 En ce qui concerne l’analyse de sensibilité vis à vis des grandeurs continues, elle se fait dans la fenêtre
Simulation, sous le répertoire DC Analysis en validant Sensitivity Analysis dans la partie DC Sweep
Settings :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 57


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

 L’édition des paramètres de l’analyse de sensibilité se fait à l’aide de la fenêtre de dialogue suivante,
obtenue en cliquant sur le bouton Setup… de la fenêtre précédente :

 Spécification des sources associées à la directive d’analyse .SENS :

Cette analyse nécessite, dans le cas de l’étude vis à vis des comportements harmoniques une source AC
puisqu’elle est liée à la présence d’une analyse .AC

Par contre, pour l’analyse de sensibilité vis à vis des grandeurs continues, aucune source n’est nécessaire.

 Visualisation, dans le fichier *.apo, des résultats dans le cas d’une étude de sensibilité vis à vis des
grandeurs continues ( exemple ) :

*************************************************************************************************************
**** DC SENSITIVITY ANALYSIS TEMPERATURE = 27.000 DEG C
**************************************************************************************************************

DC SENSITIVITY OF OUTPUT V(COL)

ELEMENT[P] STANDARD UNIT NORMALIZED


VALUE SENSITIVITY SENSITIVITY SENSITIVITY
(units) (volts/unit) (volts/pct) (pct/pct)

rb1 1.00e+004 1.45e-004 1.45e-002 1.87e-001


rb2 2.70e+003 -5.32e-004 -1.44e-002 -1.85e-001
rc 1.00e+003 -1.26e-003 -1.26e-002 -1.63e-001
re 1.00e+003 1.22e-003 1.22e-002 1.57e-001
rl 1.00e+004 0.00e+000 0.00e+000 0.00e+000
q1i5[rc] 1.59e+000 3.44e-007 5.47e-009 7.07e-008
q1i5[rb] 7.42e+001 7.37e-006 5.47e-006 7.06e-005
q1i5[re] 1.30e-001 1.22e-003 1.58e-006 2.04e-005
q1i5[is] 4.36e-014 -1.11e+012 -4.84e-004 -6.25e-003
q1i5[bf] 1.74e+002 0.00e+000 0.00e+000 0.00e+000
q1i5[nf] 1.01e+000 1.14e+000 1.15e-002 1.49e-001
q1i5[vaf] 1.79e+002 8.91e-006 1.59e-005 2.06e-004
q1i5[ikf] 4.18e-001 -3.50e-004 -1.46e-006 -1.89e-005
q1i5[ise] 4.51e-014 2.49e+010 1.12e-005 1.45e-004
q1i5[ne] 1.53e+000 -1.16e-002 -1.77e-004 -2.29e-003
q1i5[br] 8.56e-002 0.00e+000 0.00e+000 0.00e+000
q1i5[nr] 1.02e+000 0.00e+000 0.00e+000 0.00e+000
q1i5[var] 1.58e+001 -1.23e-004 -1.95e-005 -2.51e-004
q1i5[ikr] 3.65e-002 0.00e+000 0.00e+000 0.00e+000
q1i5[isc] 5.57e-013 -6.57e+005 -3.66e-009 -4.73e-008
q1i5[nc] 1.07e+000 3.42e-007 3.66e-009 4.73e-008
vvcc 9.00e+000 7.95e-001 7.16e-002 9.25e-001
vvin 0.00e+000 0.00e+000 0.00e+000 0.00e+000

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 58


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

 Visualisation, dans le fichier *.apo, des résultats dans le cas d’une étude de sensibilité vis à vis des
comportements harmoniques ( exemple partiel ) :

**** AC SENSITIVITY ANALYSIS TEMPERATURE = 27.000 DEG C

*************************************************************
AC SENSITIVITY OF OUTPUT V(OUT,0) AT FREQUENCY OF 100000Hz

ELEMENT[P] STANDARD SENSITIVITY UNIT SENSITIVITY NORMALIZED SENSITIVITY


VALUE MAGNITUDE PHASE MAGNITUDE PHASE MAGNITUDE PHASE
(units) (volts/unit) (degs/unit) (volts/pct) (degs/pct) (pct/pct) (pct/pct)

rb1 1.00e+004 -3.68e-004 -1.09e-006 -3.68e-002 -1.09e-004 -8.76e-002 -3.04e-005


rb2 2.70e+003 -1.36e-003 -3.82e-006 -3.68e-002 -1.03e-004 -8.76e-002 -2.87e-005
rc 1.00e+003 3.42e-002 -6.03e-004 3.42e-001 -6.03e-003 8.14e-001 -1.68e-003
re 1.00e+003 -3.68e-003 -2.03e-005 -3.68e-002 -2.03e-004 -8.76e-002 -5.63e-005
rl 1.00e+004 1.05e-005 -1.45e-005 1.05e-003 -1.45e-003 2.49e-003 -4.03e-004
c1 1.00e-007 1.07e+006 -2.54e+006 1.07e-003 -2.54e-003 2.54e-003 -7.06e-004
c2 1.00e-007 1.56e+003 -8.30e+005 1.56e-006 -8.30e-004 3.72e-006 -2.30e-004
cl3 1.00e-005 4.66e+001 -4.34e+004 4.66e-006 -4.34e-003 1.11e-005 -1.20e-003
q1i5[rc] 1.59e+000 -2.32e+000 -7.78e-003 -3.68e-002 -1.24e-004 -8.76e-002 -3.43e-005
q1i5[rb] 7.55e+001 -6.06e-002 -8.88e-003 -4.58e-002 -6.70e-003 -1.09e-001 -1.86e-003
q1i5[rbm]0.00e+000 0.00e+000 0.00e+000 0.00e+000 0.00e+000 0.00e+000 0.00e+000
q1i5[re] 1.30e-001 -3.03e+001 -8.92e-002 -3.94e-002 -1.16e-004 -9.38e-002 -3.22e-005
q1i5[irb]1.00e-003 -3.70e+003 -2.25e+001 -3.70e-002 -2.25e-004 -8.80e-002 -6.24e-005
q1i5[is]4.36e-014 -6.49e+013 -3.08e+011 -2.83e-002 -1.34e-004 -6.73e-002 -3.73e-005
q1i5[bf] 1.74e+002 -1.22e-002 -1.56e-003 -2.13e-002 -2.71e-003 -5.06e-002 -7.52e-004
………………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………………

AC SENSITIVITY OF OUTPUT V(OUT,0) AT FREQUENCY OF 1e+008Hz

ELEMENT[P] STANDARD SENSITIVITY UNIT SENSITIVITY NORMALIZED SENSITIVITY


VALUE MAGNITUDE PHASE MAGNITUDE PHASE MAGNITUDE PHASE
(units) (volts/unit) (degs/unit) (volts/pct) (degs/pct) (pct/pct) (pct/pct)

rb1 1.00e+004 -2.35e-004 -3.23e-004 -2.35e-002 -3.23e-002 -1.00e+000 -1.24e-002


rb2 2.70e+003 -8.70e-004 -1.20e-003 -2.35e-002 -3.23e-002 -1.00e+000 -1.24e-002
rc 1.00e+003 -2.02e-003 -1.02e-002 -2.02e-002 -1.02e-001 -8.66e-001 -3.90e-002
re 1.00e+003 -2.35e-003 -3.23e-003 -2.35e-002 -3.23e-002 -1.00e+000 -1.24e-002
rl 1.00e+004 -2.32e-004 -3.93e-004 -2.32e-002 -3.93e-002 -9.91e-001 -1.50e-002
c1 1.00e-007 -8.17e+002 -1.24e+005 -8.17e-007 -1.24e-004 -3.50e-005 -4.74e-005
c2 1.00e-007 4.52e-001 -8.99e+002 4.52e-010 -8.99e-007 1.93e-008 -3.44e-007
cl3 1.00e-005 -3.18e-002 -1.12e+001 -3.18e-009 -1.12e-006 -1.36e-007 -4.28e-007
q1i5[rc] 1.59e+000 -1.48e+000 -2.04e+000 -2.35e-002 -3.24e-002 -1.01e+000 -1.24e-002
q1i5[rb] 7.55e+001 -6.22e-002 8.08e-002 -4.70e-002 6.10e-002 -2.01e+000 2.34e-002
q1i5[rbm] 0.00e+000 0.00e+000 0.00e+000 0.00e+000 0.00e+000 0.00e+000 0.00e+000
q1i5[re] 1.30e-001 -1.81e+001 -2.48e+001 -2.35e-002 -3.22e-002 -1.01e+000 -1.23e-002
q1i5[irb] 1.00e-003 -2.39e+003 -3.07e+003 -2.39e-002 -3.07e-002 -1.02e+000 -1.18e-002
q1i5[is] 4.36e-014 -5.30e+013 -6.68e+013 -2.31e-002 -2.91e-002 -9.89e-001 -1.11e-002
q1i5[bf] 1.74e+002 -1.36e-002 -1.84e-002 -2.37e-002 -3.21e-002 -1.01e+000 -1.23e-002
………………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………………

9.4. Autres analyses avancées

Il existe d’autres analyses SPICE comme celles de distorsion ( .DISTO ), de Fourier ( .FOUR ) ou encore de
fonction de transfert aux faibles fréquences ( .TF ). Elles sont rapidement présentées ci-après et étudiées,
pour certaines, dans l’exercice suivant:
Fourier : Cette analyse permet de réaliser le calcul des coefficients du développement en série de FOURIER
d’une ou plusieurs variables (elle doit être associée à une analyse transitoire ) ainsi que leurs THD
(Total Harmonic Distorsion ). Les résultats sont stockés dans le fichier de sortie *.ap0
Distorsion : ces analyses permettent, entre-autres, de calculer les produits d’intermodulation entre deux
fréquences f1 et f2 sources ( 2.f1 ; 2.f1-f2 ; 3.f1 ; f1 + f2 ; f1-f2 )
DC transfer Function : Cette analyse permet de déterminer les caractéristiques de la fonction de transfert
d’un circuit ( gain, résistances d’entrée et de sortie ) aux très faibles fréquences. Les résultats
seront stockés dans le fichier *.apo

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 59


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 60


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

EXERCICE n° 4

Analyses SPICE avancées

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 61


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

10. EXERCICE 4 : Analyses SPICE avancées

Objectif : L’objectif de cette partie est l’appropriation des analyses SPICE avancées décrites au chapitre précédent
Cet exercice permet aussi d’approfondir encore la maîtrise du grapheur EZWave.

10.1. Saisie du schéma Ampli_BC


- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Renommer le schéma en Ampli_BC et utiliser la commande Create Design ( menu contextuel lié à ce
nouveau design ) afin de le convertir en Design et le retrouver au même niveau que les précédents
schémas.
- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est Ampli_BC et ce à l’aide du
menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner Ampli_BC
afin qu’il devienne le Top level block
- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) le modèle m_BFQ19S de la librairie bjt.h et le placer sur
le schéma à l’aide d’un « drag & drop ».

- Editer le schéma tel qu’il est fourni ci-dessous :

10.2. Edition des sources

- Editer la source VIN suivante :


Name : VIN
Type (V/I) : V
Node + : VIN
Node - : 0
Resistance :
DC Value : 0
Frequency Magnitude : 1
Frequency Phase : 0
Time Type : Sine ( Offset : 0 Amplitude : 10mV Frequency : 100K Delay : 0 Damping factor : 0 )

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 62


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Editer la source VCC suivante :


Name : VCC
Type (V/I) : V
Node + : VCC
Node - : 0
Resistance :
DC Value : 9V
Frequency Magnitude :
Frequency Phase :
Time Type : None

10.3. Edition de l’analyse du point de repos ( .OP )


- Comme indiqué au
paragraphe 9-1, éditer l’analyse permettant la conservation des calculs du point de repos en prenant
l’option Save All Voltages.

- Editer le fichier de résultat Amp_BC_op.apo

- Reporter les valeurs continues et les paramètres du transistor issus du calcul du point de repos ci-
dessous :

Potentiel ( référencé à la masse ) de la base du transistor :


Potentiel ( référencé à la masse ) de l’émetteur du transistor:
Potentiel ( référencé à la masse ) du collecteur du transistor :

Différence de potentiel de la source indépendante Vcc :


Différence de potentiel de la source indépendante Vin :

La puissance totale dissipée par ces sources :

Différence de potentiel aux bornes de la résistance Rc :


Courant traversant la résistance Rc :
Puissance dissipoée dans la résistance Rc :

Différence de potentiel aux bornes de la résistance Re :


Courant traversant la résistance Re :
Puissance dissipoée dans la résistance Re :

Différence de potentiel aux bornes de la résistance RB1 :


Courant traversant la résistance RB1 :
Puissance dissipoée dans la résistance R B1
:
Différence de potentiel aux bornes de la résistance RB2 :
Courant traversant la résistance RB2 :
Puissance dissipoée dans la résistance RB :

Différence de potentiel Base-Emetteur du transistor :


Différence de potentiel Base-Collecteur du transistor :
Différence de potentiel Collecteur-Emetteur du transistor :

Courant de base IB traversant le transistor :


Courant de collecteur IC traversant le transistor :

Le gain en courant statique du transistor BETADC :


Le gain en courant dynamique du transistor BETAAC :
La fréquence de transistion FT du transistor :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 63


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Dans la fenêtre DxDesigner, afficher les valeurs du point de repos sur le schéma grâce à la rétro-
annotation. On utilisera pour cela l’icône Show BackAnnotation.
- Vérifier les valeurs des tensions rétro-annotées sur chacune des équipotentielles en les comparant à
celles lues dans le fichier résultat édité précédemment.

- Reporter ci-dessous le dessin du transistor et des valeurs rétro-annotées à son voisinage.

- Pour effacer les valeurs rétro-annotées cliquer une nouvelle fois sur l’icône Show BackAnnotation

Note : afin que la rétro-annotation fonctionne, il faut s’assurer :


* que le testbench correspondant au schéma édité soit actif
* qu’il existe, pour ce testbench, une expérimentation avec une analyse .OP
* que cette expérimentation soit active au moment de la rétro-annotation

- Fermer dans DxDesigner, l’édition du fichier résultat.

10.4. Edition de l’analyse de bruit ( .NOISE )

- A partir du même schéma Amp_BC :


Editer l’analyse harmonique ( Frequency Analysis ) suivante :
Frequency Start : 1K
Frequency Stop : 100MEG
Number of Points : 100
Variation Type : Decade

- Comme indiqué au paragraphe 9-2, éditer l’analyse de bruit en considérant l’équipotentielle OUT
comme sortie, la source VIN comme source d’entrée et choisir la valeur 100 au paramètre Print
Interval. Nommer le fichier de commande comme suit : Amp_BC_Noise.cmd

- Lancer la simulation correspondant à cette nouvelle expérimentation.

- Visualiser dans EZwave les courbes Onoise, Inoise de l’analyse de bruit ( sous-ensemble NOISE de la
base de données de résultats ) ainsi que V(out) en module ( Plot as Magnitude ) issue de l’analyse
harmonique (sous-ensemble NOISE de la base de données de résultats ).

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 64


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Reporter ci-dessous les allures de ces différentes formes d’onde et commenter leur allure :

- Editer le fichier résultat Amp_BC_noise.apo et y retrouver les informations concernant les contributions
relatives des composants « bruyants ». Reporter ces valeurs ci-dessous en n’omettant pas de noter :
* la fréquence à laquelle a été fait le calcul
* les unités
* le gain du quadripôle à cette fréquence

- Fermer l’application Ezwave et, dans DxDesigner, fermer l’édition du fichier résultat.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 65


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

10.5. Edition de l’analyse de sensibilité DC ( .SENS )

A partir du même schéma Amp_BC.1 :


- Comme indiqué au paragraphe 9-3, éditer l’analyse de sensibilité en considérant l’équipotentielle
COL ( collecteur du transistor ) comme variable de sortie. Nommer le fichier de commande comme
suit : Amp_BC_dc_SENS.cmd
- Lancer la simulation correspondant à cette nouvelle expérimentation.
- Editer le fichier résultat Amp_BC_dc_SENS.apo et y retrouver les informations concernant l’influence
des composants et paramètres sur la valeur de repos de la tension du collecteur. Reporter ces valeurs ci-
dessous pour la seule résistance Rc et justifier ces résultats :

DC SENSITIVITY OF OUTPUT V(COL)

ELEMENT[P] STANDARD UNIT NORMALIZED


VALUE SENSITIVITY SENSITIVITY SENSITIVITY
(units) (volts/unit) (volts/pct) (pct/pct)

rc 1.00 e+004 …………… …………… ………….

Justification :

- Fermer dans DxDesigner, l’édition du fichier résultat.

10.6. Edition de l’analyse de sensibilité AC ( .SENS )

A partir du même schéma Amp_BC.1 :


- Comme indiqué au paragraphe 9-3, éditer l’analyse de sensibilité suivante :
Editer l’analyse harmonique ( Frequency Analysis ) suivante :
Frequency Start : 1K
Frequency Stop : 100MEG
Number of Points : 100
Variation Type : Decade

- Les paramètres de cette analyse sont :


Variable de sortie : V(out,0)
Fréquences d’étude : 100K et 10MEG
- Nommer le fichier de commande comme suit : Amp_BC_ac_SENS.cmd
- Lancer la simulation correspondant à cette nouvelle expérimentation.
- Editer le fichier résultat Amp_BC_ac_SENS.apo et y retrouver les informations concernant l’influence
des composants et paramètres sur le comportement dynamique de la structure mesuré via l’amplitude de
la tension de sortie V(out). Reporter ces valeurs pour le paramètre bf ( beta direct dynamique ) du
transistor et ce, pour les deux fréquences d’étude de la sensibilité :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 66


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

AC SENSITIVITY OF OUTPUT V(OUT,0) AT FREQUENCY OF 100000Hz

ELEMENT[P] STANDARD SENSITIVITY UNIT SENSITIVITY NORMALIZED SENSITIVITY


VALUE MAGNITUDE PHASE MAGNITUDE PHASE MAGNITUDE PHASE
(units) (volts/unit) (degs/unit) (volts/pct) (degs/pct) (pct/pct) (pct/pct)

q1i5[bf] 1.74e+002 ………….. …………… …………… …………… …………… ……………

AC SENSITIVITY OF OUTPUT V(OUT,0) AT FREQUENCY OF 1e+007Hz

ELEMENT[P] STANDARD SENSITIVITY UNIT SENSITIVITY NORMALIZED SENSITIVITY


VALUE MAGNITUDE PHASE MAGNITUDE PHASE MAGNITUDE PHASE
(units) (volts/unit) (degs/unit) (volts/pct) (degs/pct) (pct/pct) (pct/pct)

q1i5[bf] 1.74e+002 …………… …………… …………… …………… …………… ……………

Justification :

- Fermer dans DxDesigner, l’édition du fichier résultat.

10.7. Edition de l’analyse de FOURIER ( .FOUR )

A partir du même schéma Amp_BC.1 :


- Afin de réaliser l’analyse de Fourier il faut avoir déclaré une source temporelle sinusoïdale de
fréquence F0 . Cela a été le cas au début de l’exercice avec la source VIN générant un sinus de 100 Khz.
Cependant, afin de visualiser la réponse temporelle de l’amplificateur à ce stimulus il convient de
déclarer l’analyse suivante :
Editer l’analyse temporelle ( Time-Domain Analysis ) suivante :
Start Time : 0
End Time : 500us
Printing Time Interval : 50ns
Tmax : 50ns

- Nommer le fichier de commande comme suit : Amp_BC_FOUR.cmd


- Les paramètres de l’analyse de FOURIER seront édités dans le fichier Amp_BC_FOUR.cmd dans lequel
il faut rajouter la ligne suivante dans la section des commandes des analyses ac :
.FOUR 100K V(out)
Note : la place de cette ligne dans cette section n’est pas obligatoire mais facilite la lecture du fichier.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 67


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Lancer la simulation correspondant à cette nouvelle expérimentation avec le menu contextuel


- Editer le fichier résultat Amp_BC_FOUR.apo et retrouver dans celui-ci les informations concernant
les résultats de l’analyse de Fourier. Remarquer que le calcul porte sur les neuf premiers harmoniques de
la décomposition. Reporter ci-dessous les résultats pour les harmoniques de rang 1 et 2 ainsi que la
distorsion harmonique totale. Interpréter les mesures :

FOURIER COMPONENTS OF V(OUT)

Harmonic FREQUENCY MAGNITUDE normalized PHASE normalized


NO ( HZ ) (DEG) (DEG)

1 1.000 e+005 ……………. ……………. ……………. …………….


2 2.000 e+005 ……………. ……………. ……………. …………….
……………………………………………………………………………………………………………………………………..

TOTAL HARMONIC DISTORSION = ……………………………… PERCENT

- Dans Ezwave, afficher la réponse transitoire de V(out) et, comme cela a été fait à l’exercice 2 ( § 6-3 ),
utiliser la fonction fft afin de tracer le spectre du signal. Mesurer l’amplitude des raies à 100 KHz et 200
Khz ( attention le spectre est en dB ) et comparer ces résultats à ceux obtenus avec l’analyse de Fourier.

- Fermer l’application Ezwave et, dans DxDesigner, fermer l’édition du schéma Amp_BC et des différents
fichiers texte.

Fin de l’exercice n° 4

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 68


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

11. Analyses SPICE d’industrialisation

Objectif : L’objectif de cette partie est l’appropriation des analyses SPICE d’industrialisation au travers de leur
spécificité, de leur description en langage SPICE ( syntaxe ) et de la façon de les déclarer dans
HyperLynx Analog.

11.1. Analyses de Monte-Carlo ( .MC )

Les analyses de Monte Carlo sont des analyses statistiques d’un circuit. Les tolérances et/ou dispersion des
composants ou des éléments de modèle sont les paramètres de ces analyses.

La directive .MONTE autorise donc le simulateur HLASE à exécuter l’analyse de Monte Carlo en rapport avec
des analyses DC, AC ou TR. Elle collecte les données concernant les tensions et courants spécifiés. Les
paramètres variant durant ces analyses statistiques sont ceux suivis du mot clé STAT. Les options, comme le
nombre de « run », disponibles pour l’analyse de Monte Carlo sont définies avec la directive .OPTIONS ( confer la
documentation en ligne HyperLynx Analog Simulation Reference Manual ou encore le fichier dxsim_ref.pdf )

 Directive SPICE : .MONTE

 Syntaxe : .MONTE <write> type ou MONTE <write> type <out-var1> … <out-varn>


<write> : (optionnel ) affiche les valeurs des paramètres dans le fichier de sortie *.apo
type : représente un des mots clés suivants :
DC : autorisant HLASE à collecter les données durant les analyses DC
AC : autorisant HLASE à collecter les données durant les analyses AC
TR : autorisant HLASE à collecter les données durant les analyses TR
<out-var1> : (optionnel ) représente la (le) tensions ou courants dont les données sont collectées durant
les analyses statistiques. Une limite de huit variables par analyse de Monte Carlo est
admise.

Notes : * les analyses de bases DC, AC et TR sont exclusives l’une de l’autre sur une même analyse de Monte
Carlo. Cependant il est possible de déclarer plusieurs analyses de Monte Carlo pour un même circuit.
* On peut ne pas définir les variables sur la ligne de la directive .MONTE mais utiliser la possibilité,
dans la fenêtre Simulation Control, menu Results, sous-menus correspondant à l’analyse de base,
définir les courants ou nets qui seront affichés … et analysés par la directive .MONTE. Cette liste
de courants et/ou de nets se retrouve alors dans le fichier [Link]

Exemple : .MONTE WRITE DC V(8)


.MONTE WRITE DC I(RRC) IB(QQ1)
.MONTE TR V(5) I(M23)
.MONTE WRITE AC V(10)
.MONTE WRITE TR V(7) I(RCC)

 Paramètres : l’affectation d’une tolérance à la valeur d’un paramètre est réalisée grâce aux mots clés
STAT , DEV et/ou LOT

Exemple : R2 OUT 0 1K STAT 5% :Normal


+ beta=4.02e-3 STAT 2.52e-3 6.44e-3 :gauss
Note : sur le version Pads2007.4 sur laquelle est basée ce document, les directives DEV et LOT ne sont pas
encore opérationnelles ( bouton DEV et LOT de la fenêtre Add Distribution grisés ). On peut
cependant expliquer ces mots clés :
DEV : représente l’écart maximal de la valeur du paramètre ( par exemple la valeur de la résistance ) par
rapport à la valeur centrale du lot considéré.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 69


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

LOT : représente l’écart maximal de la valeur centrale du lot considéré par rapport à la valeur nominale.

La valeur est donc donnée par la relation : Valeur  Valeur _ nom * (1  DEV %) * (1  LOT %)

 Distribution : la distribution utilisée pour l’analyse statistique est définie par la directive .DISTR définie
comme suit :

.DISTR name type <pname1 = pval1> <pname2 = pval2> …. <pnamen = pvaln>

où : .DISTR : indique qu’une distribution sera définie


name : indique le nom, défini par l’utilisateur, de la distribution
type : est un mot clé choisi parmi : UNIFORM, GAUSS, DEXPON, GAMMA, LOGNOR, WEIBUL
ou BIMOD ( confer la documentation en ligne HyperLynx Analog Simulation Reference
Manual ou encore le fichier dxsim_ref.pdf pour plus de précision sur les définitions
mathématiques de ces distributions )
pnamei : représentent les noms des paramètres
pvali : représentent les valeurs des paramètres correspondant

Exemples : .DISTR D2 UNIFORM


.MONTE G1 GAUSS MEAN=0.1 STDEV=0.25
.DISTR D1 DEXPON MEAN=0.1 BETA=0.6
.DISTR GAM2 GAMMA AMPHA=2 BETA=0.75

 Déclaration d’une analyse de Monte Carlo dans l’environnement HLASE :

* Dans la fenêtre Simulation Control :


 d’abord définir l’analyse de base ( DC ou AC ou TR ) qui sera répétée par l’analyse de Monte Carlo

 sélectionner, ensuite, le menu Statistical Analysis et cocher l’analyse Monte Carlo ( cf ci-dessous ) :

 éditer « Number of Runs » c’est à dire le nombre de « tirages » statistiques et donc le nombre
d’analyses DC, AC ou TR définies dans les analyses de base ainsi que l’attribut « Seed », compris
entre 1 et 999 et qui sert au générateur de nombre aléatoire support des choix statistiques

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 70


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

* Dans la fenêtre de schéma :


 sélectionner un composant devant être support de l’analyse paramétrée et utiliser le menu
contextuel « Add distribution » la fenêtre correspondante apparaît. Cliquer sur le bouton Add
distribution de celle-ci. La fenêtre Setup Statistical Distribution suivante apparaît :

 Donner un nom à la nouvelle distribution que l’on souhaite définir, choisir la distribution parmi
celles proposées par HLASE et définir les éventuels paramètres de celle-ci. Ajouter cette nouvelle
distribution à l’aide du bouton Add Distribution. Reproduire cette étape pour toute nouvelle
distribution qui sera être utile pour l’étude du circuit.

 La fermeture par OK de la fenêtre précédente renvoie à la fenêtre Add Distribution initialement


ouverte :

 Choisir la distribution parmi celles qui ont été définies. Définir le paramètre du composant soumis
au paramétrage. Editer, s’il y a lieu, la tolérance en utilisant le sigle % de préférence.

 Reproduire ces étapes pour tous les composants soumis aux variations ( à l’exception de celle de la
définition des distributions )

 Lancer la simulation de manière usuelle

 On verra, lors de l’exercice n° 5, comment visualiser et interpréter les résultats d’une analyse de
Monte Carlo.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 71


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

11.2. Analyses de pire cas ( .WC )

Les analyses de WORST CASE ( Pire Cas ) ont été utilisées avec beaucoup de succès lors de l’étude de circuit à
base de transistor bipolaire ( BJT ) ou MOS. Le pire cas est simulé en prenant toutes les variables à 2-sigma ou 3-
sigma de leur valeur nominale. Il est certes peu probable que toutes ces variables indépendantes soient
simultanément à leur « pire valeur » donnant ainsi une image trop pessimiste du circuit mais qui peut être utile
d’un point de vue du test.

Ce type d’analyse est souvent réalisée en même temps qu’une analyse de Monte Carlo, mais elle peut être réalisée
seule ( option nomont ). Dans certains simulateurs de type SPICE, cette analyse utilise une directive spécifique
(par exemple .WCASE), dans l’environnement HLASE, il s’agit d’une option ( worst ) cataloguée dans les options
de type statistique du simulateur.

 Directive SPICE : .OPTION WORST

 Syntaxe : .option worst ou .option worst nomont

worst : spécifie une analyse du pire cas


nomont : ( optionnel ) mot clé signifiant au simulateur de réaliser l’analyse du pire sans analyse de Monte
Carlo

 Déclaration d’une analyse de Monte Carlo dans l’environnement HLASE :

* Dans la fenêtre Simulation Control :


 d’abord définir l’analyse de base ( DC ou AC ou TR ) qui sera le support de l’analyse de Worst Case

 sélectionner, ensuite, le menu Statistical Analysis et cocher l’analyse Worst Case ( cf ci-dessous ) :

 éditer, de la même manière que pour l’analyse de Monte Carlo, les distributions de chacun des
composants dont un ( ou plusieurs ) paramètres sont variables.
Note : si l’analyse de Worst Case est faite en parallèle avec celle de Monte Carlo, il est évident que
la description des distributions est commune aux deux analyses.

 éditer « Number of Runs » c’est à dire le nombre de pire cas ( ? ) et donc le nombre d’analyses
DC, AC ou TR définies dans les analyses de base. Le simulateur HLASE réalise l’une des n
analyses demandées aux valeurs nominales. L’attribut « Seed » n’a pas besoin d’être édité.

 Lancer la simulation de manière usuelle

 On verra, lors de l’exercice n° 5, comment visualiser et interpréter les résultats d’une analyse de
Worst Case.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 72


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

12. Le langage DIABLO et la modélisation comportementale

Objectif : L’objectif de cette partie est l’utilisation de la librairie de modèles Analog DIABLOLib en vue de
simuler un système complexe pluritechnologique ( digital, mécanique etc. ) avec un seul simulateur.
L’autre objectif est l’appropriation du langage DIABLO qui a pour objet de générer des modèles de
structures mixtes et/ou complexes en vue de les utiliser pour la simulation dans l’environnement
HyperLynx Analog.

12.1. Introduction au langage DIABLO

DIABLO est un langage de description de haut niveau utilisé afin de générer des modèles de structures
mixtes : électroniques analogiques et digitales, mécaniques, électromécaniques, hydrauliques, optiques, thermiques
etc. Ces modèles sont utilisables dans l’environnement de simulation HyperLynx Analog. L’objectif est de
simplifier la simulation de systèmes pluritechnologiques en n’utilisant qu’un seul simulateur.

DIABLO est un langage de type C don’t les éléments “s’ajoutent” à une netlist de l’environnement de simulation
HyperLynx Analog (HLASE). La méthodologie utilisée est la création classique de modèle, en lanagage SPICE, à
savoir l’utilisation du mot clé .SUBCKT au travers de la définition d’un macro-modèle et d’un symbole
graphique. Cela permet de décrire le comportement de composants par le biais d’une série de déclarations qui sont
éxécutées afin de réaliser les calculs numériques correspondant aux fonctions assurées par ces éléments.

De nombreuses constantes et fonctions arithmétiques sont “supportées” par le langage de DIABLO comme, par
exemple, la constante de Boltzmann, pi, la charge de l’électron etc. , pour l’arithmétique, les fonctions sinus,
cosinus, exponentielle etc. Dans HLASE, il existe des éléments idéaux ( sources commandées par exemple ) ce qui
permet de définir des fonctions polynomiales. L’idée sous-tendue par DIABLO est d’étendre les capacités de
description polynomiales du langage C.

L’adjonction du langage DIABLO à l’environnement de simulation de structures analogiques HLASE fait de ce dernier
un “solveur” d’équations différentielles à usage général. HyperLynx Analog peut donc être utilisé pour développer des
modèles, réaliser de l’analyse de réseaux ou encore étudier des systèmes.

12.2. Intérêts de la librairie de modèles DIABLOLib

La librairie DIABLOLib regroupe un ensemble de composants modélisés au niveau système et permettant donc de
simuler et analyser des systèmes pluritechnologiques. Ces modèles étant de type comportementaux ( behavioral
models ) ils permettent donc de combiner de la logique avec des circuits analogiques, des systèmes mécaniques et
leurs circuits de commande etc. Ils peuvent aussi être utilisés avec des primitives SPICE. Une fois validé le design
du système, il est alors possible de réaliser une description analogique plus “fine” en utilisant des modèles de
composants totalement caractérisés issus des librairies de primitives.

On peut donc utiliser les modèles de la librairie DIABLOLib pour décrire des systèmes comprenant par exemple
des P.L.L, des contrôles de moteurs, des filtres, des modems, des téléphones cellulaires, des équipements
audiovisuels, des équipements radio ou encore des alimentations à découpage. Les applications pluritechnologiques
recouvrent des composants comme les détecteurs de niveau de fluide, des jauges de contraintes, des thermocouples,
des moteurs, des relais, des bobines ou encore des éléments optiques. Des modèles de la librairie DIABLOLib
facilitent le design de systèmes de contrôle qui sont des éléments prépondérants en robotique, avionique,
supervision, des réseaux d’alarme ou des asservissements industriels

A l’exception des rares modèles listés ci-après, les composants de la librairie DIABLOLib possèdent des impédances
d’entrée et de sortie, ceci permettant de les utiliser ( ou ajouter ) directement dans le design. En effet tout simulateur
de type SPICE utilisant les lois de Kirchoff ( KNL ), cela impose qu’il existe pour chaque noeud un “chemin” vers la
masse.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 73


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Les modèles ne possédant pas d’impédances d’entrée et/ou de sortie sont les suivants :

Pas d’impédance d’entrée ni de sortie : SWITCH1, SWITCH2


Pas d’impédance d’entrée : CTOS
Pas d’impédance de sortie : STOC, STOV, VTOS, DIFF

12.3. La librairie de modèles DIABLOLib

La librairie des modèles de comportement func.h des composants de DIABLOLib est accessible dans la fenêtre
Navigator de DxDesigner, sous l’onglet Simulation et dans le sous-répertoire Spice Libraries de Model Libraries.

Les paramètres des composants (par exemple la durée T du composant MONO réalisant la fonction monostable),
peuvent être édités dans le fichier *.par ( s__mono.par pour le cas cité en exemple ) se trouvant sous le répertoire
symbole du projet ou en utilisant l’outil Analog Model Library Manager ( AMLM ).

Les fonctions contenues dans cette librairie comportementale sont, à ce jour, les suivantes :
ABS : Valeur absolue de l’entrée
ADC1 : Convertisseur A/D unipolaire 8 bits
ADC2 : Convertisseur A/D bipolaire 8 bits
AND : ET logique à 2 entrées
AND3 : ET logique à 3 entrées
ATAN : Fonction Arctangente
BUFFER : Buffer de courant
CAP : Capacité avec des conditions initiales fixées par l’utilisateur
COMPAR : Comparateur de tension
CONST : Signal source de valeur constante
COS : Fonction Cosinus : y = cos(x) où y est la sortie et x l’entrée
CTOS : Actionneur commandé en courant
DAC1 : Convertisseur D/A unipolaire 12 bits
DAC2 : Convertisseur D/A bipolaire 12 bits
DFLIP : Bascule D
DIFF : Dérivateur idéal
DIODE : Diode idéale
DIV2 : Division entrée1/entrée2
DZON1 : Zone morte symétrique ( Dead Zone )
DZON2 : Zone morte non symétrique ( Dead Zone )
DZON3 : Zone morte symétrique commandable ( Dead Zone )
DZON4 : Zone morte nonsymétrique commandable ( Dead Zone )
EXP : Source d’impulsion exponentielle
FSIN : Sinus redressé bi-alternance
GAIN : Gain idéal
HSIN : Sinus redressé mono-alternance
HYST : Trigger de Schmitt ( hystérésis )
IDLDA : Amplificateur opérationnel idéal
IND : Inductance avec des conditions initiales fixées par l’utilisateur
INTEG : Intégrateur idéal
INVERSE : Fonction 1/x
INVERTER: Inverseur logique
JKFLIP : Bascule JK
LATCH : Verrou de type D
LIM1 : Limiteur symétrique
LIM2 : Limiteur non symétrique
LIM3 : Limiteur symétrique commandable
LIM4 : Limiteur non symétrique commandable

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 74


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

LIM5 : Limiteur positif


LIM6 : Limiteur négatif
LIM7 : Limiteur positif commandable
LIM8 : Limiteur négatif commandable
LOOSE : Décalage de la sortie asymétrique ( LOW et HIGH )
MONO : Monostable de durée T supérieure à la durée de l’impulsion d’entrée
MOTOR : Machine à courant continu ( MCC )
MUL2 : Multiplication entrée1*entrée2
NAND : NON ET logique à 2 entrées
NAND3 : NON ET logique à 3 entrées
NOR : NON OU logique à 2 entrées
NOR3 : NON OU logique à 3 entrées
NOT : NON logique
OR : OU logique à 2 entrées
OR3 : OU logique à 3 entrées
PID : Correcteur PID
PNC : Monostable de durée T inférieure à la durée de l’impulsion d’entrée
POLYn : Polynome d’ordre n ( n allant de 1 à 8 )
PULSE : Source d’impulsion carrée
PWL : Source définie par morceaux
PWM : Source de modulation d’impulsion
PZmn : Bloc fonctionnel défini par ses Pôles et Zéros ( m : nombre de pôles ; n : nombre de zéros ; m,n  10)
RAMP : Source en rampe avec retard pur
RPWL : Répétition périodique d’une source définie par morceaux
SAMPLE : Echantilloneur
SGN : Fonction Signe
SIN : Fonction Sinus : y = sin(x) où y est la sortie et x l’entrée
SIN_S : Fonction Sinus définie par ses paramètres offset, amplitude, fréquence etc.
SMPLHLD : Echantilloneur-bloqueur
SQRT : Source définie comme la racine carrée du signal d’entrée
SQUARE : Source définie comme le carré du signal d’entrée
STATEn : Bloc fonctionnel défini par sa représentation d’état ( n : ordre du système ; n  10)
STEP : Source en échelon décalée d’un retard pur
STOC : Capteur dont la sortie est en courant
STOV : Capteur dont la sortie est en tension
SUBTR : Soustraction ( entrée2 – entrée1 )
SUMn : Addition ( entréen + … + entrée1 ) ; ( n de 2 à 10 )
SWITCHn : Interrupteur commandable idéal ; ( n de 1 à 2 )
SWRELAY : Multiplexeur analogique à deux entrées
TAN : Fonction Tangente
TFmn : Bloc fonctionnel défini par sa fonction de transfert en variable de Laplace s ( m : degré du polynôme
du dénominateur ; n : degré du polynôme du numérateur ; m et n  10).
TFLIP : Bascule T ( toogle )
TIMER : Timer de type 555
TVGAIN : Gain variant avec le temps ( y = K(t).x où y est la sortie et x l’entrée)
VCO : Oscillateur contrôlé en tension
VTOS : Actionneur commandé en tension
WCMP1 : Comparateur à fenêtre de niveau et largeur commandables ou non ( n de 1 à 4 )
XOR : OU EXCLUSIF logique à 2 entrées
XOR3 : OU EXCLUSIF logique à 3 entrées

12.4. Le langage DIABLO

Comme cela a été dit dans l’introduction de ce paragraphe, DIABLO est un langage de description de haut niveau
de type C. Il permet donc à l’environnement de simulation HyperLynx Analog d’analyser des structures complexes,
ceci grâce à la possibilité offerte à l’utilisateur de développer des macro-modèles.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 75


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

La documentation en ligne ( HyperLynx Analog Simulation I/F User’s Manual et Reference Manual ) sous forme
html ou pdf décrit :
 La structure du langage DIABLO
 L’appel des fonctions DIABLO ( Calling a DIABLO function )
 L’édition et/ou l’écriture des fonctions ( Basic Framework )
 Le corps d’une fonction ( Function Body ) et les règles syntaxiques
 Les variables et les nombres ( mots-clés ; constantes pré-définies, fonctions pré-définies, codage, unités )
 Les fonctions algébriques
 Les opérateurs arithmétiques et les opérateurs logiques
 Les déclarations conditionnelles
 La déclarations de retour de fonction
 Les sources contrôlées, les capacités et inductances multi-dimensionnelles
 Les problèmes de convergence

Exemple de Netlist utilisant des fonctions DIABLO :

* ******** CIRCUIT INFORMATION ********


X_lamp_1 0 vs lamp
.SUBCKT lamp 2 1
Glamp 1 2 FUNC(2) 1 2 7 0 lamp 0.74627 0.1
Rlamp 1 2 1000000
Rb 5 0 1000
Rc 6 0 1000
Rd 7 0 1000
R1 3 4 1000
R2 4 5 1000
C1 4 5 3E-005
Ed 7 0 FUNC(1) 6 0 table 0 2 1 4.347826 3 7.692309 5 10 7 11.47541 9
+ 12.857143 11 14.102564 13 15.116279 15 16.930693 17.1 16.930693 19
+ 17.757009 21 18.584071 23 19.166667 25 20 26 20.3125 27 20.610687 27.9
+ 20.820896 28 20.895522 29 21.167883 30.5 21.618705 40 22
Ec 6 0 FUNC(1) 5 0 root 0 Eb 0 5 4 0 10000
Ea 0 3 FUNC(1) 1 2 square
.ENDS lamp
* ******** END OF CIRCUIT INFO ********

* ******** MODEL INFORMATION **********


.FUNC
#ifndef lamp
#define lamp
// DIABLO - VERSION 1.0
lamp (nv1,nv2,c0,c1)
{
if (nv2 == 0)
return ((nv1/1e-6) * c0 *c1);
else
return ((nv1/nv2) * c0 * c1);
}
#endif
.ENDFUNC
.FUNC
#ifndef table
#define table
// DIABLO - VERSION 1.0

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 76


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

table (nv1,
x1,y1,x2,y2,x3,y3,x4,y4,x5,y5,x6,y6,x7,y7,x8,y8,x9,y9,x10,y10, x11,y11,x12,y12,x13,y13,x14,
y14,x15,y15,x16,y16,x17,y17,x18,y18,x19,y19,x20,y20,x21,y21)
{
if (nv1< x2) return (y1 + ((nv1 - x1) * (y2 - y1)) / (x2 - x1));
if (nv1< x3) return (y2 + ((nv1 - x2) * (y3 - y2)) / (x3 - x2));
if (nv1 < x4) return (y3 + ((nv1 - x3) * (y4 - y3)) / (x4 - x3));
if (nv1 < x5) return (y4 + ((nv1 - x4) * (y5 - y4)) / (x5 - x4));
if (nv1 < x6) return (y5 + ((nv1 - x5) * (y6 - y5)) / (x6 - x5));
if (nv1 < x7) return (y6 + ((nv1 - x6) * (y7 - y6)) / (x7 - x6));
if (nv1 < x8) return (y7 + ((nv1 - x7) * (y8 - y7)) / (x8 - x7));
if (nv1 < x9) return (y8 + ((nv1 - x8) * (y9 - y8)) / (x9 - x8));
if (nv1 < x10) return (y9 + ((nv1 - x9) * (y10 - y9)) / (x10 - x9));
if (nv1 < x11) return (y10 + ((nv1 - x10) * (y11 - y10)) / (x11 - x10));
if (nv1 < x12) return (y11 + ((nv1 - x11) * (y12 - y11)) / (x12 - x11));
if (nv1 < x13) return (y12 + ((nv1 - x12) * (y13 - y12)) / (x13 - x12));
if (nv1 < x14) return (y13 + ((nv1 - x13) * (y14 - y13)) / (x14 - x13));
if (nv1 < x15) return (y14 + ((nv1 - x14) * (y15 - y14)) / (x15 - x14));
if (nv1 < x16) return (y15 + ((nv1 - x15) * (y16 - y15)) / (x16 - x15));
if (nv1 < x17) return (y16 + ((nv1 - x16) * (y17 - y16)) / (x17 - x16));
if (nv1 < x18) return (y17 + ((nv1 - x17) * (y18 - y17)) / (x18 - x17));
if (nv1 < x19) return (y18 + ((nv1 - x18) * (y19 - y18)) / (x19 - x18));
if (nv1 < x20) return (y19 + ((nv1 - x19) * (y20 - y19)) / (x20 - x19));
return (y20 + ((x - x20) * (y21 - y20)) / (x21 -x20));
}
#endif
.ENDFUNC

.FUNC
#ifndef root
#define root
// DIABLO - VERSION 1.0
root (nv1,c0)
{
out=sqrt(nv1);
return(out);
}
#endif
.ENDFUNC
.FUNC
#ifndef square
#define square
// DIABLO - VERSION 1.0
square (nv1)
{
out=nv1*nv1;
return(out);
}
#endif
.ENDFUNC
* ******** END OF MODEL INFO **********
* ******** SOURCE INFORMATION ********
vsource vs 0 PULSE ( 0 28 0.01 1E-006 1E-006 0.1 0.2 )
* ******** END OF SOURCE INFO *********
* ******** CONTROL INFORMATION *********
******** SETTINGS INFORMATION *******
.OPTION ACCT
* ******** END OF SETTINGS INFO *******
* ******** ANALYSIS INFORMATION *******
.TRAN 0.005 0.5 0
* ******** END OF ANALYSIS INFO *******
* ******** END OF CONTROL INFO ********
.END

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 77


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 78


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

EXERCICE n° 5

Analyses SPICE d’industrialisation

Descriptions comportementales
Langage DIABLO

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 79


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

13. EXERCICE 5 : Analyses d’industrialisation et langage DIABLO

Objectif : Les différents objectifs de cette exercice sont :

 l’appropriation des analyses d’industrialisation ( Monte Carlo et Worst Case )


 l’utilisation de la librairie de modèles Analog DIABLOLib en vue de simuler un système complexe
pluritechnologique ( digital, mécanique etc. ) avec un seul simulateur.

13.1. Analyses d’industrialisation de Monte Carlo

- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Renommer le schéma en Boucle_4_20mA et utiliser la commande Create Design ( menu contextuel lié
à ce nouveau design ) afin de le convertir en Design et le retrouver au même niveau que les précédents
schémas.
- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est Boucle_4_20mA et ce, à
l’aide du menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner
Boucle_4_20mA afin qu’il devienne le Top level block
- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) le modèle s_TL072C de la librairie amp.h et le placer,
en deux exemplaires, sur le schéma à l’aide d’un « drag & drop ». Si besoin est, lui affecter le symbole
OPAMP_5PIN. Choisir de même les transistors s_2n2222 ( librairie bjt.h ) et m_j177 ( librairie jfet.h ).

- Editer le schéma tel qu’il est fourni ci-dessous :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 80


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Editer la source VCC suivante :


Name : VCC
Type (V/I) : V
Node + : VCC
Node - : 0
Resistance :
DC Value : 12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer la source VEE suivante :


Name : VEE
Type (V/I) : V
Node + : VEE
Node - : 0
Resistance :
DC Value : -12V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer la source VREF1 suivante :


Name : VREF1
Type (V/I) : V
Node + : VREF1
Node - : 0
Resistance :
DC Value : 2.048V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer la source VREF2 suivante :


Name : VREF2
Type (V/I) : V
Node + : VREF2
Node - : 0
Resistance :
DC Value : 6.6V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer la source VIN suivante :


Name : VIN
Type (V/I) : V
Node + : VIN
Node - : 0
Resistance :
DC Value : 0V
Frequency Magnitude :
Frequency Phase :
Time Type : None

- Editer l’analyse continue ( DC Analysis ) suivante :


Dans la fenêtre Simulation Control, valider DC Analysis ( cocher Enable ) et Parametric Sweep. Cliquer sur le bouton
Setup correspondant à cette dernière validation. Dans la fenêtre DC Sweep Parameters apparaissant, éditer comme suit :
First Parameter
Type : Source
Name : VVIN ( sélectionné à l’aide du bouton Browse )
Parameter : DC VALUE ( sélectionné à l’aide de la flèche )
Criteria
Step Type : Linear
Sweep Start : 0
Sweep Stop : 10
Step size : 0.5

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 81


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Editer l’analyse statistique de MONTE CARLO suivante :


En suivant la méthodologie indiquée au paragraphe 11.1, déclarer l’analyse statistique de MONTE CARLO suivante :

Number of Runs : 4
Seed : …. Choisir un nombre compris entre 1 et 999

- Editer la distribution D2 suivante :


Sélectionner un composant passif ( R1 par exemple ) et, à l’aide du menu contextuel Add Distribution accéder à la
fenêtre de même nom. Dans celle-ci, utiliser le bouton Add Distribution pour accéder à la fenêtre Setup
Statistical Distribution dans laquelle on définira la distribution D1 suivante :
Name : D1
Distribution : UNIFORM ( choisie à l’aide de la flèche parmi les différentes lois statistiques : Uniform, Gauss, Dexpon etc. )

Cliquer sur le bouton Add Distribution afin de valider la définition de cette distibrution puis cliquer sur le bouton OK … on
revient alors à la première fenêtre ( Add Distribution ).

- Editer le distribution affectée au composant R1 :


Dans la fenêtre Add Distribution, choisir la distribution D1 à l’aide de la flèche. Cette distribution ayant été déclarée à
l’étape précédente, elle apparaît dans la liste, pour le moment seule, des distributions disponibles pour ce design.

Choisir le paramètre VALUE. Pour un composant passif ( la résistance R1 ) c’est le seul paramètre auquel il est
possible d’attacher une distribution.

Editer la tolérance en lui affectant la valeur 5% écrit à l’aide du sigle % comme ici. Valider par le bouton OK, la
définition de la distribution affectée à la valeur de la résistance R1

- Editer les distributions affectées aux autres composants du design :


Sélectionner un à un les autres composants passifs et leur affecter la distribution D1 et les tolérances suivantes :

R2 : Distribution D1 ; Tolérance : 10%


R3 : Distribution D1 ; Tolérance : 5%
R4 : Distribution D1 ; Tolérance : 5%
R5 : Distribution D1 ; Tolérance : 5%
RL : Distribution D1 ; Tolérance : 50%

Notes : * La distribution D1 ayant été définie pour tout le design, on ne l’édite, bien sûr, plus pour les autres composants.
* L’élément RL étant censée modéliser la ligne de la boucle 4-20mA, sa tolérance représente en fait la variabilité de
la résistance des différentes lignes.

- Dans la fenêtre Simulation Control, dans le menu Results, sélectionner le sous-menu DC Sweep
Waveforms. Utiliser le bouton Remove All pour supprimer tous les courants et nets à visualiser.
Sélectionner le courant circulant dans RL ( sous Current Waveforms ) et le potentiel du net LINE
(sous Voltage Waveforms) et les ajouter ( bouton Add ) à la liste de visualisation ( Nets to Probe ) où ils
apparaîtront sous les noms i(rl) et v(line).
- Renommer cette analyse Boucle_4_20mA_MONTE.cmd dans l’onglet Simulation de la partie
Navigator de DxDesigner.
- Après avoir renommée cette expérimentation, utiliser son menu contextuel pour lancer la simulation
(menu Simulate).
- Dans la fenêtre Ezwave sélectionner le sous-ensemble DC de la base de données de résultats et, dans la
partie basse de la partie Waveform List de la fenêtre cliquer sur le signe + correspondant i(rl,1). Un
certain nombre de formes d’ondes indicées comme suit i(rl,1)_n apparaissent. Commenter ce nombre de
courbes.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 82


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Afficher toutes les courbes indicées i(rl,1)_n. Représenter leurs allures ci-dessous en utilisant d’une
couleur différente pour la courbe correspondant aux valeurs nominales (celle évoluant de ~ 4 mA à ~ 20
mA) :

i(rl) (A)

20 mA

4 mA

0 10 Vin (V)

- Placer un curseur et sa fonction Data Values Show All pour visualiser les valeurs des différentes
courbes à une tension d’entrée donnée. Reporter ces valeurs pour Vin = 8 V et évaluer l’écart maximum
en pourcentage.

Pour Vin = 8 V :

i(rl,1) = ………………… mA ; i(rl,2) = ……………….. mA ; i(rl,3) = ………………… mA

I(rl,4) = ……………… mA ; max = ……………….. mA ; max = …… %

- Dans la fenêtre DxDesigner, éditer le fichier Boucle_4_20mA_MONTE.apo . Noter, pour le « tirage »


aléatoire n° 1 ( Ramdom Variation : 1 ), les valeurs affectés aux paramètres listés et commenter les
éléments de description d’une ligne en répondant au questionnaire :

Ramdom Variation : 1

MC (d1) : resistor r1 : value 1000.000000 changed to ……………………………..


MC (d1) : resistor r2 : value 1000.000000 changed to ……………………………..
…………………………………………………………………………………………
MC (d1) : resistor rl : value 200.000000 changed to ……………………………..
…………………………………………………………………………………………
…………………………………………………………………………………………
MC (gauss) : model parameter bf of m_2n2222 : value 174.000000 changed to ………………………

Commentaires :

Que signifie MC ? : …………………………………………….


Que signifie (d1) ? : …………………………………………….
Que représente value 1000.000000 ? pour le paramètre r1 : …………………………………………….
Que signifie (gauss) ? : …………………………………………….

- Fermer l’édition du fichier Boucle_4_20mA_MONTE.apo et la fenêtre Ezwave.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 83


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

13.2. Analyse d’industrialisation du pire cas ( Worst Case )

- Editer, toujours pour le design Boucle_4_20mA, une nouvelle expérimentation que l’on nommera :
Boucle_4_20mA_WC.cmd

- Editer l’analyse DC suivante :


Dans la fenêtre Simulation Control, valider DC Analysis ( cocher Enable ) et Parametric Sweep. Cliquer sur le bouton
Setup correspondant à cette dernière validation. Dans la fenêtre DC Sweep Parameters apparaissant, éditer les paramètres
de l’analyse comme suit :
First Parameter
Type : Source
Name : VVIN ( sélectionné à l’aide du bouton Browse )
Parameter : DC VALUE ( sélectionné à l’aide de la flèche )
Criteria
Step Type : Linear
Sweep Start : 0
Sweep Stop : 10
Step size : 0.5

- Editer l’analyse statistique du pire cas ( Worst Case ) suivante :


En suivant la méthodologie indiquée au paragraphe 11.1, déclarer l’analyse statistique de WORST CASE suivante :

Number of Runs : 2
Seed : …. Il n’y a pas lieu de définir ce paramètre du fait que l’analyse ne “tire” pas au sort les valeurs des paramètres mais,
au contraire, recherche les valeurs qui éloigneront le plus la courbe des résultats de la courbe nominale et ce,
pour les courants ou “nets” listés dans le fichier [Link]

Notes : * les distributions et leurs affectations aux différents composants ne sont pas ici nécessaires puisque
cela a été fait pour ce design lors de l’analyse de Monte Carlo précédente.

* la liste des courants et/ou « nets » à afficher ( et évaluer pour les analyses d’industrialisation )
ayant été définie lors de la l’analyse de Monte Carlo n’est pas, non plus, nécessaire à moins que
l’on souhaite en changer les grandeurs évaluées par l’analyse de Worst Case : le fichier
[Link] est en effet commun à toutes les expérimentations du design

- Lancer la simulation depuis cette même fenêtre Simulation Control ( bouton Simulate ).

- Dans la fenêtre Ezwave sélectionner le sous-ensemble DC de la base de données de résultats et, dans la
partie basse de la partie Waveform List de la fenêtre cliquer sur le signe + correspondant i(rl,1). Un
certain nombre de formes d’ondes indicées comme suit i(rl,1)_n apparaissent. Commenter ce nombre de
courbes.

- Afficher toutes les courbes indicées i(rl,1)_n.

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 84


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Placer un curseur et sa fonction Data Values Show All pour visualiser les valeurs des différentes
courbes à une tension d’entrée donnée. Reporter ces valeurs pour Vin = 8 V et évaluer l’écart en
pourcentage.
Pour Vin = 8 V :

i(rl,1) = ………………… mA ; i(rl,2) = ………………. mA ;  = ……………… mA ;  = …… %

- Comparer la « déviation » de la courbe i(rl,1)_2 par rapport à la courbe i(rl,1)_1 à celles des différentes
courbes ( non nominales ) obtenues lors de l’analyse de Monte Carlo et noter ce résultat ci-dessous :

- Dans la fenêtre DxDesigner, éditer le fichier Boucle_4_20mA_WC.apo . Noter, les valeurs affectés aux
paramètres et correspondant à un « pire cas » ( Ramdom Variation : 1 ) :

Ramdom Variation : 1

MC (d1) : resistor r1 : value 1000.000000 changed to ……………………………..


MC (d1) : resistor r2 : value 1000.000000 changed to ……………………………..
MC (d1) : resistor r4 : value 1000.000000 changed to ……………………………..
MC (d1) : resistor r3 : value 1000.000000 changed to ……………………………..
MC (d1) : resistor rl : value 200.000000 changed to ……………………………..
MC (d1) : resistor r5 : value 1000.000000 changed to ……………………………..
…………………………………………………………………………………………
…………………………………………………………………………………………
MC (gauss) : model parameter bf of m_2n2222 : value 174.000000 changed to ………………………

- Fermer la fenêtre Ezwave ainsi que l’édition du fichier Boucle_4_20mA_MONTE.apo et du schéma


Boucle_4_20mA

13.3. Utilisation des éléments de la librairie DIABLOlib

- On se propose ici d’utiliser la librairie de modèles DIABLOLib afin d’analyser le comportement d’une
alimentation à découpage d’une imprimante thermique et dont l’une des sorties est une tension
régulée de 24V. Les performances dynamiques ( harmoniques et temporelles ) de cette alimentation sont
très largement imposées par le bouclage de contre-réaction et le correcteur Proportionnel-Intégral ( PI )
dont on ajustera les caractéristiques ( coefficients proportionnel et intégral ) grâce à cette modélisation
comportementale dans l’environnement HyperLynx Analog.

- Le modèle de Laplace du système non corrigé et en boucle ouverte est le suivant :

 K 0  0.75
K 0 .e  a.s  K0. K0.
H ( s)  4
avec  F0  1200 Hz soit encore : H ( s )  e  a.s . 2
. 2
 s  a  Td  2 s  s   s 
1    1   1  
 2. .F   2. .F0   2. .F0 
 0     

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 85


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

a 0  50,1.10 8
 a. s a0 a0 
H ( s)  e b0  58,8.10
   
8
ou encore : . . avec
b0  b1 .s  s 2
b0  b1 .s  s 2  b  15,5.10 5
 1

Nota : Dans l’étude ci-dessous, on ne prendra pas en compte le retard pur a = Td = 2 s

Les règles de l’automatique conduisent à utiliser un correcteur Proportionnel-Intégral ( PI ) dont, soit le


calcul analytique, soit de multiples simulations ont permis de caractériser les caractéristiques qui sont
données ci-après :
s s
1  K 1 1
2. .F2  2 1  2  s
C ( s)  K . avec  F2  1200 Hz soit encore : C ( s )  1.  .
s  F  453 Hz s 2 s
2. .F1  2 1

 1
G    0,37
a0  s  2
ou encore : C (s)  G. avec  a 0  7536
b0  s  b0  0

L’exercice se propose donc de valider la démarche de dimensionnement du correcteur à l’aide de trois


descriptions comportementales :
* simulation des régimes harmoniques et réponse indicielle du système seul et en boucle ouverte
* simulation des régimes harmoniques et réponse indicielle du système corrigé et en boucle ouverte
* simulation des régimes harmoniques et réponse indicielle du système corrigé et en boucle fermée
- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Renommer le schéma en Flyback_Laplace et utiliser la commande Create Design ( menu contextuel
lié à ce nouveau design ) afin de le convertir en Design et le retrouver au même niveau que les
précédents schémas.
- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est Flyback_Laplace et ce, à
l’aide du menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner
Flyback_Laplace afin qu’il devienne le Top level block
- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) le modèle s_TF20 de la librairie func.h et le placer, en
deux exemplaires, sur le schéma à l’aide d’un « drag & drop »..
- Editer le schéma tel qu’il est fourni ci-dessous :

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 86


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Créer la netlist de ce schéma à l’aide de l’icône Netlist Design

- A l’aide de l’explorateur de Windows, repérer, sous le répertoire SYM du projet TrainingHLA, le fichier
de paramètres s_TF20.par et l’éditer à l’aide du NotePAD afin que les paramètres prennent les valeurs
suivantes :
a 0  50,1.10 8  a 0  50.1e8
 
b0  58,8.10  b0  58.1e8
8
ce qui, en syntaxe SPICE donne :
 b  15,5.10 5 b  15.55e5
 1 1

- Editer la source VIN suivante :


Name : VIN
Type (V/I) : V
Node + : VIN
Node - : 0
Resistance :
DC Value : 0V
Frequency Magnitude : 1
Frequency Phase : 0
Time Type : Pulse
( Initial Value : 0 Pulsed Value : 24 Time Delay : 0 Rise Time : 1us Fall Time : 1us Pulse Width : 10ms Period : 20ms )

- Editer une nouvelle expérimentation et nommer le fichier de commande : Flyback_Laplace_ac_tran.cmd

- Editer l’analyse harmonique ( Frequency Analysis ) suivante :


Frequency Start : 10
Frequency Stop : 1MEG
Number of Points : 1000
Variation Type : Decade

- Editer l’analyse temporelle ( Time-Domain Analysis ) suivante :


Start Time : 0
End Time : 20ms
Printing Time Interval : 10us
Tmax : 10us

- Lancer la simulation et visualiser, dans Ezwave, la réponse indicielle ( courbe Vout en fonction du
temps ) et les régimes harmoniques ( diagramme de BODE de Vout ) du système.

- Dans la fenêtre EZwave mesurer la valeur de Vout en régime continu ( pour Vin = 24V ) que l’on
notera [Vout] final et la comparer à la valeur théorique 0,75x24 = 18V . Utiliser l’outil de mesure ( icône
Open Measurement Tool ) pour déterminer le temps d’établissement ( Settle Time )

[Vout] final =

Settle Time =

- Toujours dans la fenêtre EZwave, visualiser les régimes harmoniques (diagramme de BODE de Vout)
du système. Utiliser l’outil de mesure ( icône Open Measurement Tool ) pour déterminer sa marge de
Gain ( Gain Margin ) et sa marge de phase ( Phase Margin ).

Gain Margin =

Phase Margin =

- Fermer la fenêtre Ezwave ainsi que l’édition du schéma Flyback_Laplace

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 87


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Renommer le schéma en Fly_Corr_Laplace et utiliser la commande Create Design ( menu contextuel
lié à ce nouveau design ) afin de le convertir en Design et le retrouver au même niveau que les
précédents schémas.
- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est Fly_Corr_Laplace et ce, à
l’aide du menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner
Fly_Corr_Laplace afin qu’il devienne le Top level block
- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) les modèle s_TF20 et s_TF11 de la librairie func.h et les
placer sur le schéma à l’aide d’un « drag & drop »..
- Editer le schéma tel qu’il est fourni ci-dessous :

- Créer la netlist de ce schéma à l’aide de l’icône Netlist Design

- A l’aide de l’explorateur de Windows, repérer, sous le répertoire SYM du projet TrainingHLA, le fichier
de paramètres s_TF11.par et l’éditer à l’aide du NotePAD afin que les paramètres prennent les valeurs
suivantes :
 1
G    0.37
 2
 a 0  7536
 b0  0

- Editer la même source VIN que celle du schéma précédent.

- Editer une expérimentation et nommer le fichier de commande : Fly_Corr_Laplace_ac_tran.cmd

- Editer les mêmes analyse harmonique et temporelle que celles du schéma précédent.

- Lancer la simulation et procéder aux mêmes mesures que précédemment dans EZwave :
Réponse temporelle :
[Vout] final =

Settle Time =
Régimes harmoniques :
Gain Margin =

Phase Margin =

- Fermer la fenêtre Ezwave ainsi que l’édition du schéma Fly_Corr_Laplace

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 88


IAO/CFAO ELECTRONIQUE BTS Systèmes Electroniques

- Dans la fenêtre DxDesigner, utiliser le menu File – New – Schematic afin de créer un nouveau schéma.
Un nouveau schéma, nommé Schematic1, apparaît dans la sous-fenêtre Navigator, sous l’onglet Project
et sous le répertoire Blocks.
- Renommer le schéma en Fly_BF_Laplace et utiliser la commande Create Design ( menu contextuel lié
à ce nouveau design ) afin de le convertir en Design et le retrouver au même niveau que les précédents
schémas.
- Définir sous l’onglet Simulation, le fait que le nouveau Testbench actif est Fly_BF_Laplace et ce, à
l’aide du menu Setup Setting ( Ctrl + Alt + G ). Dans la fenêtre Settings, sous Designs sélectionner
Fly_BF_Laplace afin qu’il devienne le Top level block
- Toujours dans la fenêtre Navigator de DxDesigner, sous l’onglet Simulation, sélectionner, dans
librairies de modèles Spice ( Spice Libraries ) les modèle s_TF20 , s_TF11 et s_SUBTR de la librairie
func.h et les placer sur le schéma à l’aide d’un « drag & drop ». Au besoin affecter à ce dernier modèle
le symbole gen_subtract de la librairie de symboles SystemModelingBlock
- Editer le schéma tel qu’il est fourni ci-dessous :

- Créer la netlist de ce schéma à l’aide de l’icône Netlist Design


- Editer la même source VIN que celle du schéma précédent.

- Editer une expérimentation et nommer le fichier de commande : Fly_BF_Laplace_ac_tran.cmd

- Editer les mêmes analyse harmonique et temporelle que celles du schéma précédent.

- Lancer la simulation et procéder, dans EZwave, aux mesures suivantes :


Réponse temporelle :
[Vout] final =

Settle Time =
Régimes harmoniques :
Bande passante (-3dB) =

Gain statique =
Commentaires :

- Fermer la fenêtre Ezwave ainsi que l’édition du schéma Fly_BF_Laplace et « fermer » DxDesigner.

Fin de l’exercice n° 5

Didier BEDOS Simulation analogique et mixte ( SPICE ) page : 89

Vous aimerez peut-être aussi