使用 SPICE 网表
概览
- 了解 SPICE 网表包含哪些内容、它与原理图的关系,以及自动生成网表为何有助于简化仿真流程。
- 通过实际示例,逐项解析常见的网表条目,包括元件、激励源、分析命令、模型和文档结束语句。
- 了解如何在原理图中定义用户 SPICE 代码区域,以及如何将其与图形化电路描述结合使用。
SPICE 网表是电路的文本表示形式,必须包含所有必要的元件及其参数、元件模型、连接关系和分析类型。仿真引擎处理的正是 SPICE 网表。在仿真时,原理图的图形表示可简化根据用户设计生成网表的过程。由于网表会在设计原理图时自动创建,因此无需手动创建,从而 简化了 流程并减少了 潜在错误。
指定元件和连接关系时,需要使用特殊语法来描述电路。尽管这种方法较为复杂,但它也有其优势—— 既可以直接使用网表进行仿真,也可以通过原理图进行仿真。
创建网表
要根据当前原理图生成仿真网表,请从菜单中选择 Simulate » Generate Netlist。要创建新的空白网表,请从菜单中选择 File » New » Mixed-Signal Simulation » AdvancedSim Netlist 命令。
为便于理解网表的内容,下面以一个网表示例进行说明,该网表 对应于其下方所示的原理图。

网表示例。

用于生成该网表的原理图。
-
以星号
*开头的行是注释,用作辅助说明文本 -
CC11 0 NetC11_2 100nF是元件描述,其中:-
CC11元件位号 -
0 NetC11_2– 元件引脚所连接的网络; 在此示例中,电容的第一个引脚连接到GND (0)电路,第二个引脚连接到NetC11_2 -
100nF– 元件值
-
-
VV6 NetC14_2 0 DC 0 PULSE(0 5 100n 10n 10n 400n 1u) AC 1mV 0– 信号源描述:-
VV6– 元件位号 -
NetC14_2 0– 元件连接引脚 -
DC 0 / AC 1mV / 0– 信号源参数:直流、交流、相位 -
PULSE(0 5 100n 10n 10n 400n 1u)– 输出信号参数:初始值、脉冲值、延迟时间、上升时间、下降时间、脉冲宽度、周期
-
-
.PRINT =1 NetC13_1 NetC14_2– 以波形图形式显示信号的命令 -
*Selected Circuit Analyses:-
.TRAN 1 10u 0 1– 所选计算类型(瞬态计算)及计算参数(起始时间、结束时间、步长)
-
-
*Models and Subcircuits:-
.model PMOSFET_Level1 pmos (Level=1)– 指向所用晶体管模型的链接
-
-
.END– 文档结束
要直接从打开的网表运行仿真,请从主菜单中选择 Simulate » Run 命令(快捷键: F9)。
用户 SPICE 代码区域
用户 SPICE 代码区域是一种将 Mixed Sim 仿真器命令从电路传递到网表的机制。此机制用于对电路的局部进行快速原型验证,支持直接在电路图上定义完整的 SPICE 代码段,例如模型定义、参数以及用于计算的仿真器指令。
要定义用户 SPICE 代码区域:
- 在原理图上添加一个文本框对象。
-
将
.nsx文本添加为文本框的第一行。 -
在
.nsx行下方,按照 SPICE 语法要求编写 SPICE 代码。
生成网表时,网表中会出现一个区域,其中包含自定义 SPICE 代码段中的文本。
在一张原理图图纸中,可以根据需要定义任意数量的用户 SPICE 代码区域。所有区域都将合并为网表中的一个代码块。
