Travailler avec une netlist SPICE
En un coup d'œil
- Découvrez ce que contient une netlist SPICE, son lien avec le schéma et la manière dont sa génération automatique contribue à simplifier la simulation.
- Examinez en détail les éléments courants d’une netlist à travers un exemple concret : composants, sources, commandes d’analyse, modèles et instruction de fin de document.
- Comprenez comment les zones de code SPICE utilisateur sont définies dans un schéma et comment les utiliser en complément des représentations graphiques des circuits.
La netlist SPICE est une représentation textuelle du circuit. Elle doit inclure tous les composants nécessaires avec leurs paramètres, les modèles de composants, les connexions et les types d’analyse. C’est la netlist SPICE qui est traitée par le moteur de simulation. La représentation graphique du schéma permet de simplifier la création de la netlist à partir du travail de l’utilisateur lors de la simulation. Comme la netlist est créée automatiquement lors de la conception du schéma, il n’est pas nécessaire de la créer manuellement, ce qui simplifie le processus et réduit les risques d’erreur.
La spécification des composants et des connexions nécessite une syntaxe particulière pour décrire le circuit. Malgré sa complexité, cette méthode présente des avantages : elle permet de travailler directement avec une netlist et de lancer une simulation à partir de celle-ci, tout comme à partir d’un schéma.
Création d’une netlist
Pour générer la netlist de simulation à partir du schéma actif, sélectionnez Simulate » Generate Netlist dans les menus. Pour créer une nouvelle netlist vide, sélectionnez la commande File » New » Mixed-Signal Simulation » AdvancedSim Netlist dans les menus.
Pour en comprendre le contenu, examinons l’exemple de netlist ci-dessous, qui correspond au schéma présenté juste après.

Exemple de netlist.

Schéma à partir duquel la netlist a été générée.
-
Les lignes commençant par un astérisque
*sont des commentaires servant de texte complémentaire -
CC11 0 NetC11_2 100nFest la description du composant, où :-
CC11désignation du composant -
0 NetC11_2– nets auxquels les broches du composant sont connectées ; dans cet exemple, la première broche du condensateur est connectée au circuitGND (0), la seconde àNetC11_2 -
100nF– valeur du composant
-
-
VV6 NetC14_2 0 DC 0 PULSE(0 5 100n 10n 10n 400n 1u) AC 1mV 0– description de la source de signal :-
VV6– désignation du composant -
NetC14_2 0– broches de connexion du composant -
DC 0 / AC 1mV / 0– paramètres de la source de signal : composante continue, composante alternative, phase -
PULSE(0 5 100n 10n 10n 400n 1u)– paramètres du signal de sortie : valeur initiale, valeur de l’impulsion, délai, temps de montée, temps de descente, largeur d’impulsion, période
-
-
.PRINT =1 NetC13_1 NetC14_2– commande permettant d’afficher les signaux sous forme de courbes -
*Selected Circuit Analyses:-
.TRAN 1 10u 0 1– type de calcul sélectionné (calcul transitoire) et paramètres de calcul (instant de début, instant de fin, pas)
-
-
*Models and Subcircuits:-
.model PMOSFET_Level1 pmos (Level=1)– lien vers le modèle de transistor utilisé
-
-
.END– fin du document
Pour lancer une simulation directement à partir d’une netlist ouverte, sélectionnez la commande Simulate » Run dans les menus principaux (raccourci : F9).
Zones de code SPICE utilisateur
Les zones de code SPICE utilisateur constituent un mécanisme permettant de transférer les commandes du simulateur Mixed Sim du circuit vers la netlist. Ce mécanisme sert à prototyper rapidement des sections du circuit, en permettant de définir des sections entières de code SPICE directement sur le circuit, telles que des définitions de modèles, des paramètres et des instructions de calcul pour le simulateur.
Pour définir une zone de code SPICE utilisateur :
- Ajoutez un objet Cadre de texte sur le schéma.
-
Ajoutez le texte
.nsxsur la première ligne du cadre de texte. -
Sous la ligne
.nsx, saisissez le code SPICE en respectant les règles de syntaxe SPICE.
Lors de la génération d’une netlist, une zone contenant le texte de la section de code SPICE personnalisé apparaîtra.
Vous pouvez définir autant de zones de code SPICE utilisateur que nécessaire sur une feuille de schéma. Toutes les zones seront regroupées en un seul bloc dans la netlist.
