Spice语法及调用
时间:2023-07-29 08:07:11
常用的SPICE为了方便用户使用,模拟软件提供了更好的用户界面。模拟可以在模拟库中的组件连接到原理图(当然,设置必要的模拟参数)后进行,但实际上只能自动生成原理图SPICE的格式语句,还是要通过读取语句来进行仿真,这是历史的遗留问题。
在当时的技术条件下,电路结构不能通过图形输入,只能通过文本文件来描述,即所谓的网表。SPICE软件设计师规范了模拟电路对应的要求SPICE网表文件格式还定义了许多模拟描述句和分析控制句,使模拟软件能够通过阅读这些特殊信息来计算和计算和操作,最终获得所需的结果。
由于技术的进步,虽然现在不需要手工书写和输入网表,但了解一些基本陈述是非常有用的,不仅可以理解模拟设置的参数的意义,而且很容易通过网表错误。
SPICE网表文件为文本文件,默认输入文件为:.cir
因为目前各种版本SPICE软件已经图形化,增加了许多功能,因此句子顺序和格式发生了一些变化,但主要是开头注释句的不同变化易于阅读和模块化,基本句变化不大,包括以下几种:
- 标题语句:网表文件的第一行为标题语句由任何字符串和字母组成。软件不处理,而是直接在输出文件中打印为第一行
- 注释语句:由*开头的字符串是为了方便阅读而自动生成的文件描述部分SPICE大量存在于网表文件中
- 电路描述句:定义电路拓扑结构和组件参数的句子,由组件描述句、模型描述句、电源句等组成
- 电路特性分析与控制句:.开头的句子描述了要分析的电路特性和控制命令
- 结语句:即.END ,在文件的最后一行结束时,标志电路描述语句
(最后会给出SPICE网表文件的例子)
一、电路描述语句:是:SPICE最复杂的网表文件有以下规定:
- 名称:字符串,只有前8个字符有效,第一个字符必须是A–Z具有固定含义的字符对应于不同类型的元件
- 数字:整数、浮点数、整数或浮点数加上整数指数、浮点数或整数加上比例因子
常用的比例因子:是的T、G、MEG、K、M、U、N、P、F、MIL等,不分大小写
- 分隔符:有空格、逗号、等号、左括号、右括号等
- 续行号:“ 一行最多只能有80字符,如果一行不能完全表达,可以从第二行开始 号码表示前一行的继续
- 单位:使用国际标准单位制度,句子缺失
- 支路电流的正方向与支路电压的正方向一致
- 节点编号:可以是任何数字或字符串。节点0规定为地面,不允许有悬浮节点,即每个节点必须有0节点的直流通道。当实际电路不满足此要求时,悬浮节点与地面之间可以连接一个大电阻(如1)G).
8)无法分析的问题:由电压源电路、电感电路、电压源和电感组成的电路、隔断电流源和(或)电容
以下是一些常见的电路描述语句:
- 无源元件描述句:由元件名称、元件连接的节点号和元件的参数值组成
1.1 电阻描述语句:RXXXXXXX N N- <(MODEL)NAME> VALUE
其中:RXXXXXXX 元件名称
N N- 当电阻增加正电压时,电流从电阻两端的节点号开始N 流向N-
(MODEL)NAME 可选项指出,电阻将从后面使用.MODEL语句定义模型
VALUE 电阻值,单位Ohm
TC=TC1 可选温度系数,TC1 TC2分别是一阶、二阶温度系数
1.1.1 电阻温度公式:VALUE(T)=RR0[1 TC1(T-T0) TC2*(T-T0)*(T-T0)]
其中:R在电阻描述语句中,T0为常温300K
1.1.2 电阻模型语句:.MODEL MNAME RES R=PVAL1
其中:RES电阻模型关键字,R定义电阻倍乘系数,TCE定义指数温度系数
1.1.3 例句:R4 0 3 RMOD 100
.MODEL RMOD RES(R=2 TC1=0.1 TC2=0.01)
1.2 电容电感描述句:CXXXXXXX N N- <(MODEL)NAME> VALUE
LXXXXXXX N N- <(MODEL)NAME> VALUE
其中:VALUE电容电感值不能为零
IC规定初始条件,只在瞬态分析句中设置关键词UIC赋值有意义
1.2.1 电容电感模型句:.MODEL MNAME CAP(C=PVAL1 VC1=PVAL2 VC2=PVAL3 TC1=PVAL4 TC2=PVAL5)
.MODEL MNAME IND(L=PVAL1 IL1=PVAL2 IL2=PVAL3 TC1=PVAL4 TC2=PVAL5)
其中:C、L定义电容电感的倍乘系数
VC1、VC2分别是电容的一阶和二阶电压系数
IL1、IL二是电感的一阶和二阶电流系数
TC1、TC2分别是电容和电感的温度系数
1.2.2 电容电感的求值公式:C(V)=C0C(1 VC1V VC2VV)
L(I)=L0L(1 IL1I IL2II)
其中:C0、L元件描述语句中的值分别为0
1.2.3 电容电感的温度公式与电阻的温度公式相似
1.3 互感描述句:KXXXXXXX LYYYYYYY LZZZZZZZ … VALUE <(MODEL)NAME> <(SIZE)VALUE> 1.5 电压控制开关描述句:SXXXXXXX N N- NC NC- <(MODEL)NAME> 2. 有源元件描述句: 2.1 二极管描述句:DXXXXXXX N N- MNAME 2.2 双极晶体管描述句:QXXXXXXX NC NB NE MNAME 2.3 MOS场效应晶体管描述语句:MXXXXXXX ND NG NS NB MNAME 2.4 结型场效应晶体管描述语句:JXXXXXXX ND NG NS MNAME 2.5 GaAs场效应晶体管描述语句:BXXXXXXX ND NG NS MNAME 2.6 数字电路器件描述语句: 2.6.1 子电路描述语句:以.SUBCKT作为开始,以.END作为结束的一组语句,作为以X开始的元件 2.7 元器件库调用语句:.LIB 3.1 独立电源描述语句: 3.1.4 瞬态正弦电源: 3.2 线性受控源描述语句: 二、分析语句: 直流分析: 交流小信号分析:.AC TYPE Nx FSTART FSTOP 瞬态分析: 综合分析: 三、控制语句: 四、PSPICE中的变量扫描:对一些仿真参数,PSPICE可设置为变量,通过设置其变化范围,仿真出不同的结果,以便进行对照以选择最佳值 五、SPICE软件的适用范围及缺点: 六、SPICE网表文件的实例: difpair ckt - simple differential pair ** Creating circuit file “bias.cir” 其电路原理图及交流小信号分析和瞬态分析波形如下: 动力学技术KTU1121 USB Type-C 端口保护器的介绍、特性、及应用 Sensata PTE7300密封数字压力传感器的介绍、特性、及应用 PANJIT PBHV8110DA/PBHV9110DA低Vce(sat)晶体管的介绍、特性、及应用 ams OSRAM OSLON 黑色平板X LED器件的介绍、特性、及应用 Cree LED CLQ6A三合一贴片LED的介绍、特性、及应用 Cree LED CLQ6B 4-in-1 RGBW贴片LED的介绍、特性、及应用 NDK NX1210AB表面贴装晶体的介绍、特性、及应用 伊顿ACE2V3225共模芯片电感器的介绍、特性、及应用 意法半导体X040灵敏型栅可控硅和Z040可控硅的介绍、特性、及应用 ABLIC S-82Y1B电池保护芯片的介绍、特性、及应用
其中:KXXXXXXX、LYYYYYYY、LZZZZZZZ它是两个耦合电感的名称,也可以按顺序写下多个耦合电感
VALUE是耦合系数的值,0
(SIZE)VALUE用于定义磁芯的截面积,缺省值为1
1.3.1 磁芯模型语句:.MODEL MNAME CORE AREA=PVAL1 PATH=PVAL2 GAP=PVAL3 PACK=PVAL4 MS=…
1.4 无损传输线描述语句:TXXXXXXX N1 N2 N3 N4 Z0-VALUE
无损传输线是二端口设备,N1、N端口1的正负节点,N3、N4是端口2的正负节点
Z0是特性阻抗
TD与传输波长相比,是传输延迟、频率F和归一化电学长度NL可用于确定延迟,选择两种表达方式之一
IC确定每个端口的电压和电流,仅用于瞬态分析(添加)UIC时)
其中:N N-开关的正负节点
NC NC-控制端的正负节点
(MODEL)NAME作为模型名称,指出将从后面使用.MODEL语句定义模型
1.5.1 电压控制开关模型语句:.MODEL NAME VSWITCH RON=PVAL1 ROFF=PVAL2 VON=PVAL3 VOFF=PVAL4
其中:VSWITCH关键字是压控开关模型
RON定义开关的导电阻,缺少1欧姆
ROFF开关的关闭电阻定义为1兆欧姆
VON定义开关导通的阈值电压
VOFF定义开关断开的阈值电压
1.6 电流控制开关描述句:WXXXXXXX N N- VNAME <(MODEL)NAME>
其中:N N-开关的正负节点
VNAME控制电流过的电压源的名称
(MODEL)NAME作为模型名称,指出将从后面使用.MODEL语句定义模型
1.6.1 电流控制开关模型语句:.MODEL ISMOD ISWITCH RON=PVAL1 ROFF=PVAL2 ION=PVAL3 IOFF=PVAL4
其中:ISWITCH关键词是流控开关模型
ION导通的阈值电流
IOFF阈值电流关闭
其中:N N-是二极管的正负节点
MNAME为二极管模型名,为必选项
AREA为面积因子
OFF直流分析的初始条件
IC=VD是瞬态分析的初始条件
2.1.1 二极管模型语句:.MODEL MNAME D(PNAME1=PVAL1 PNAME2=PVAL2 …)
其中:D二极管模型的关键字是二极管参数序列,一般二极管模型参数为15–25个
2.1.2 半导体二极管参数表(带*受面积参数影响):
其中:NC NB NE NS集电极、基极、发射极和衬底所在的节点分别是双极晶体管,NS缺失意味着衬底接地
MNAME为双极晶体管的模型名称,为必要选项
AREA为面积因子
OFF直流分析的初始条件
IC=VBE,VCE瞬态分析的初始条件
2.2.1 双极晶体管模型句:.MODL MNAME NPN(OR PNP) (PNAME=PVAL1 PNAME=PVAL2 …)
双极型晶体管模型有两种类型,NPN PNP分别为其模型关键字,后面为参数序列,一般双极型晶体管模型参数有40多个
2.2.2 双极型晶体管模型的参数表(带*的受面积参数影响):
+
其中:ND NG NS NB分别是MOS场效应晶体管的漏极、栅极、源极和衬底所在的节点
MNAME为MOS场效应晶体管的模型名,为必选项
L W分别是MOS场效应晶体管沟道的长、宽
AD AS为漏极和源极的扩散区的面积
PD PS为漏极和源极的周长
NRD NRS为漏极和源极扩散区等效电阻的方块数
OFF为直流分析时初始条件
IC为瞬态分析时初始条件
2.3.1 MOS场效应晶体管模型语句:.MODEL MNAME NMOS(OR PMOS) (PNAME=PVAL1 PNAME=PVAL2 …)
MOS场效应晶体管模型有两种类型,NMOS PMOS分别为其模型关键字,后面为参数序列,一般模型参数有40–60个,大多为工艺参数
MOS场效应晶体管模型有四个级别,用语句LEVEL来指定,缺省时LEVEL=1
LEVEL=1 Shichman-Hadges模型
LEVEL=2 基于几何图形的一种二维分析模型
LEVEL=3 半经验短沟道模型
LEVEL=4 亚微米BSIM模型
2.3.2 因MOS场效应晶体管模型的参数较多(40–60个)而且较复杂,很多与制造工艺有关,涉及太多微电子的知识,就不再列出了
系统级使用时一般使用相关制造厂商或第三方提供的模型参数
其中:ND NG NS分别是结型场效应晶体管的漏极、栅极、源极所在的节点
MNAME为结型场效应晶体管的模型名,为必选项
AREA为面积因子
OFF为直流分析时初始条件
IC=VDS,VGS为瞬态分析时初始条件
2.4.1 结型场效应晶体管模型语句:.MODEL MNAME NJF(OR PJF) (PNAME=PVAL1 PNAME=PVAL2 …)
结型场效应晶体管模型有两种类型,NJF PJF分别为其模型关键字,后面为参数序列,一般模型参数有20多个,
结型场效应晶体管模型的参数也不再列出了,一般使用相关制造厂商或第三方提供的模型参数
其中:ND NG NS分别是GaAs场效应晶体管漏极、栅极、源极所在的节点
MNAME为结型场效应晶体管的模型名,为必选项
AREA为面积因子
OFF为直流分析时初始条件
IC=VDS,VGS,VBS为瞬态分析时初始条件
2.5.1 GaAs场效应晶体管模型语句:.MODEL MNAME GASFET (PNAME=PVAL1 PNAME=PVAL2 …)
GASFET为GaAs场效应晶体管模型的关键字,后面为参数序列,一般模型参数约30个
GaAs场效应晶体管模型有三个级别,用语句LEVEL来指定,缺省时LEVEL=1
LEVEL=1 Curtice模型
LEVEL=2 Statz或Raytheon模型
LEVEL=3 Triquint模型
GaAs场效应晶体管模型的参数也不再列出了,一般使用相关制造厂商或第三方提供的模型参数
UXXXXXXX [()]
+
+ [MNTYMXDLY=]
+[I/O-LEVEL=] UXXXXXXX
2.6.1.1 子电路定义开始语句:.SUBCKT N1
其中:SUBNAME是子电路名称
N1 N2 N3等是子电路外部节点号
2.6.1.2 子电路结束语句:.ENDS
表示结束SUBNAME子电路或结束所有子电路定义
其中:filename为库文件名,必须带扩展名.lib,缺省名为nom.lib,列出所有库文件
独立电压源描述语句:VXXXXXXX N+ N- <(DC)DC/TRAN VALUE>
独立电流源描述语句:IXXXXXXX N+ N- <(DC)DC/TRAN VALUE>
参数含义:N+ N-为电源的正负节点,电流源的电流正方向为使电流从N+节点流出并流入N-节点
DC/TRAN VALUE指电源的直流或随时间变化的瞬时值,缺省为0
独立电源按直流、交流、瞬态源等可细分为如下几种:
3.1.1 直流电源:
直流电压源:VXXXXXXX N+ N- [DC] VALUE
直流电流源:IXXXXXXX N+ N- [DC] VALUE
3.1.2 交流电源:
交流电压源:VXXXXXXX N+ N- AC
交流电流源:IXXXXXXX N+ N- AC
其中:ACMEG为正弦波幅值,缺省值为1
ACPHASE为正弦波的初始相位,缺省为0
3.1.3 瞬态电源:
脉冲电压源:VXXXXXXX N+ N- PULSE (V1 V2 TR TF PW PER)
脉冲电流源:IXXXXXXX N+ N- PULSE (I1 I2 TR TF PW PER)
其中:V1 I1为起始值
V2 I2为脉动值
TD为延迟时间,缺省值为0
TR为上升时间,缺省值为TSTEP
TF为下降时间,缺省值为TSTEP
PW为脉冲宽度,缺省值为TSTOP
PER为周期,缺省值为TSTOP
(TSTEP TSTOP为瞬态分析时的步长和中止时间)
瞬态正弦电压源:VXXXXXXX N+ N- SIN (V0 VA F TD THETA)
瞬态正弦电流源:IXXXXXXX N+ N- SIN (I0 IA F TD THETA)
其中:V0 I0为偏置值
VA IA为振幅
F为频率,缺省值为1/TSTOP
TD为延迟时间,缺省为0
THETA为阻尼时间,缺省为0
正弦曲线表达式:V(T)=V0+VASIN(2PI*(F*(T-TD)+PHASE/360))EXP(-(T-TD)THETA)
I(T)=I0+IASIN(2PI*(F*(T-TD)+PHASE/360))EXP(-(T-TD)THETA)
3.1.5 瞬态指数电源:
瞬态指数电压源:VXXXXXXX N+ N- EXP(V1 V2 TD1 TAU1 TD2 TAU2)
瞬态指数电流源:IXXXXXXX N+ N- EXP(I1 I2 TD1 TAU1 TD2 TAU2)
其中:V1 I1为初始值
V2 I2为终止值
TD1为上升延迟时间,缺省为0
TAU1为上升时间常数,缺省为TSTEP
TD2为下降延迟时间,缺省为TD1+TSTEP
TAU2为下降时间常数,缺省为TSTEP
3.1.6 分段线性电源:
分段线性电压源:VXXXXXXX N+ N- PWL (T1 V1
分段线性电流源:IXXXXXXX N+ N- PWL (T1 I1
3.1.7 瞬态单调调频电源:
瞬态单调调频电压源:VXXXXXXX N+ N- SEFM (V0 VA FC MDI FS)
瞬态单调调频电流源:IXXXXXXX N+ N- SEFM (I0 IA FC MDI FS)
其中:V0 I0为偏置
VA IA为幅度
FC为载波频率,缺省值为1/TSTOP
MDI为调制系数
FS为信号频率,缺省值为1/TSTOP
调频曲线表达式:V(T)=V0+VA
3.2.1 压控电压源:EXXXXXXX N+ N- NC+ NC- VALUE
其中:NC+ NC-为控制电压支路的正负节点
3.2.2 压控电流源:GXXXXXXX N+ N- NC+ NC- VALUE
3.2.3 流控电流源:HXXXXXXX N+ N- VNAME VALUE
其中:VNAME为控制电流流过的电压源的名称
3.2.4 流控电流源:FXXXXXXX N+ N- VNAME VALUE
1.1 直流工作点分析:.OP
1.2 直流扫描分析:.DC VAR START STOP INC
其中:TYPE为扫描类型,线性为LIN、数量级为DEC、倍频程为OCT、列表为LIST
VAR为扫描变量
START STOP为扫描变化范围
INC是扫描步长或者点数,必须为正数
VAR2是第二个扫描变量(外循环),可选项
1.3 直流小信号传输函数分析:.TF OUTVAR INSRC
其中:OUTVAR为输出变量
INSRC为小信号输入源名称
1.4 直流小信号灵敏度分析:.SENS
1.5 节点电压设置:.NODESET
2.1 主要的3种形式:线性 .AC LIN NP FSTART FSTOP
数量级 .AC DEC ND FSTART FSTOP
倍频程 .AC OCT NO FSTART FSTOP
其中:NP为步长
ND为变化点数
NO为变化点数
2.2 噪声分析:.NOISE OUTV INSRC NUMS
其中:OUTV为某节点上总的噪声输出电压
INSRC为作噪声输入基准的独立电压源或独立电流源名
NUMS为频率间隔点数,在每个频率处打印出电路中每个噪声源的贡献
3.1 时域波形分析:.TRAN TSTART TSTOP DISPSTART STEPMAX
其中:TSTART为起点时间
TSTOP为终点时间
DISPSTART为显示起点
STEPMAX为瞬态分析最大步长,可缺省而由系统选
3.2 傅立叶分析:.FOUR FREQ OV1
其中:FREQ为基频
OV1 OV2 OV3为要求的输出变量
3.3 瞬态初始条件设置:.IC
4.1 最坏情况分析:.WCASE (ANALYSIS) (OUTVAR)
其中:ANALYSIS为DC/AC/TRAN中的一种
OUTVAR为输出变量,电压、电流等
FUNCTION为求值函数,有多种选择
OPTION为输出形式,LIST列每次运行模型参考值,OUTPUT输出文件或图形
4.2 蒙特卡罗分析:.MC (RUNSVAL) (ANALYSIS)
其中:RUNSVAL为运行次数
OUTPUTVAR为输出变量,电压、电流等
4.3 参数扫描分析:.STEP
有3种类型:线性扫描 .STEP (LIN) VAR START STOP INC
数量级倍频程扫描 .STEP VAR START STOP ND
列表扫描 .STEP VAR LIST VAL1
其中:INC为步长
ND为变化点数
4.4 温度分析:.TEMP
其中的VALUE也可用表达式EXPR
PROBE自动将横坐标设为扫描变量,纵坐标需手动添加
PROBE提供Cursor工具,方便使用鼠标的左右键控制两个光标,沿选定曲线进行测量,还有小窗口显示光标对应的值还有两光标间的差值
如:可把双极型晶体管的偏置电阻设为变量,仿真出不同偏置电阻值时的放大系数及集电极电流等参数,最终可选择最佳的偏置电阻值
可进行变量扫描的参数如下:
熟练使用参数的变量扫描,可大大提高仿真效率
(AIM-Spice是一个文本输入的Spice软件,功能单一且原始,但可免费下载,便于学习Spice。)
vin 1 0 sin(0 0.1 5meg) ac 1
vcc 8 0 12
vee 9 0 -12
q1 4 2 6 qnl
q2 5 3 6 qnl
rs1 1 2 1k
rs2 3 0 1k
rc1 4 8 10k
rc2 5 8 10k
q3 6 7 9 qnl
q4 7 7 9 qnl
rbias 7 8 20k
.model qnl npn(bf=80 rb=100 ccs=2pf tf=0.3ns tr=6ns cje=3pf cjc=2pf
**** 11/15/08 16:12:15 ******* PSpice 10.0.0 (Jan 2003) ******* ID# 1111111111
** Profile: “SCHEMATIC1-bias” [ D:\My Documents\orcad\transistor-pspicefiles\schematic1\bias.sim ]
**** CIRCUIT DESCRIPTION
** WARNING: THIS AUTOMATICALLY GENERATED FILE MAY BE OVERWRITTEN BY SUBSEQUENT SIMULATIONS
*Libraries:
.lib “nom.lib”
Analysis directives:
.TRAN 0 20ms 10ms
.PROBE V(alias()) I(alias()) W(alias()) D(alias()) NOISE(alias())
.INC “…\SCHEMATIC1.net”
**** INCLUDING SCHEMATIC1.net ****
Q_Q1 N00286 N00312 N00298 Q2N3904
R_R1 N00312 N00256 470k
R_R2 N00286 N00256 2.2k
R_R3 0 N00298 47
R_R5 0 N00374 10k
C_C1 N00423 N00312 100n
C_C2 N00286 N00374 100n
V_V1 N00256 0 6Vdc
V_V2 N00423 0 DC 0 AC 1
+SIN 0 1m 1k 0 0 0
**** RESUMING bias.cir ****
.END
原作者文章地址:http://dwenzhao.blog.sohu.com/104439874.html相关文章