Working with a SPICE Netlist
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 cette netlist SPICE qui est traitée par le moteur de simulation. La représentation graphique du schéma est utilisée pour 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 erreurs potentielles.
La spécification des composants et des connexions nécessite une syntaxe spéciale pour décrire le circuit. Malgré la complexité de la méthode, elle présente des avantages : elle permet de travailler directement avec une netlist et d’effectuer des simulations à partir de celle-ci, ainsi qu’à partir d’un schéma.
Création d’une netlist
Pour générer la netlist de simulation à partir de votre schéma actuel, 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, considérez l’exemple de netlist ci-dessous, qui correspond au schéma présenté en dessous.

Exemple de netlist.

Le schéma à partir duquel la netlist a été générée.
- Les lignes commençant par un astérisque
*sont des commentaires, utilisés comme texte auxiliaire CC11 0 NetC11_2 100nFcorrespond à la description du composant, où :CC11désignation du composant0 NetC11_2– nœuds 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_2100nF– 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 composantNetC14_2 0– broches de connexion du composantDC 0 / AC 1mV / 0– paramètres de la source de signal : DC, AC, phasePULSE(0 5 100n 10n 10n 400n 1u)– paramètres du signal de sortie : valeur initiale, valeur pulsée, délai, temps de montée, temps de descente, largeur d’impulsion, période
.PRINT =1 NetC13_1 NetC14_2– commande pour afficher les signaux sous forme de tracé*Selected Circuit Analyses:.TRAN 1 10u 0 1– type de calcul sélectionné (calcul transitoire) et paramètres de calcul (temps de début, temps 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 utilisateur SPICE
Les zones de code utilisateur SPICE constituent un mécanisme permettant de transférer les commandes du simulateur Mixed Sim du circuit vers la netlist. Ce mécanisme est utilisé pour prototyper rapidement des sections du circuit, ce qui permet de définir directement sur le circuit des sections entières de code SPICE, telles que des définitions de modèles, des paramètres et des instructions du simulateur pour les calculs.
Pour définir une zone de code utilisateur SPICE :
- Ajoutez un objet Text Frame object sur le schéma.
- Ajoutez le texte
.nsxcomme première ligne dans le cadre de texte. - Sous la ligne
.nsx, écrivez le code SPICE conformément aux exigences de syntaxe SPICE.
Lors de la génération d’une netlist, une zone apparaîtra contenant le texte de la section de code SPICE personnalisée.
Dans une feuille de schéma, vous pouvez définir autant de zones de code utilisateur SPICE que nécessaire. Toutes les zones seront combinées en un seul bloc dans la netlist.

Exemple de définition des zones de code utilisateur SPICE.