搜档网
当前位置:搜档网 › PSPICE仿真流程

PSPICE仿真流程

PSPICE仿真流程
PSPICE仿真流程

PSPICE仿真流程

(2013-03-18 23:32:19)

采用HSPICE 软件可以在直流到高于100MHz 的微波频率范围内对电路作精确的仿真、分析和优化。

在实际应用中, HSPICE能提供关键性的电路模拟和设计方案,并且应用HSPICE进行电路模拟时,

其电路规模仅取决于用户计算机的实际存储器容量。

二、新建设计工程

在对应的界面下打开新建工程:

2)在出现的页面中要注意对应的选择

3)在进行对应的选择后进入仿真电路的设计:将生成的对应的库放置在CADENCE常用的目录

中,在仿真电路的工程中放置对应的库文件。

这个地方要注意放置的.olb库应该是PSPICE文件夹下面对应的文件,在该文件的上层中library中

的.olb中的文件是不能进行仿真的,因为这些元件只有.olb,而无网表.lib。

4)放置对应的元件:

对于项目设计中用到的有源器件,需要按照上面的操作方式放置对应的器件,对于电容,电阻电感等分离器件,可以在libraries中选中所有的库,然后在滤波器中键入对应的元件就可以选中对应的器件,点击后进行放置。

对分离元件的修改直接在对应的元件上面进行修改:电阻的单位分别为:k m;

电容的单位分别为:P n u ;电感的单位分别为:n 及上面的单位只写量级不写单位。

5)放置对应的激励源:

在LIBRARIES中选中所有的库,然后键入S就可以选中以S开头的库。然后在对应的库中选中需要的激励源。

激励源有两种一种是自己进行编辑、手工绘制的这个对应在库中选择:

另外一种是不需要自己进行编辑:

该参数的修改可以直接的在需要修改的数值上面就行修改,也可以选定电源然后点击右键后进行对应的修改。

6)放置地符号:

地符号就是在对应的source里面选择0的对应的标号。

7)直流电源的放置:

电源的选择里面应该注意到选择source 然后再选定VDC或者是其它的对应的参考。

8)放置探头:

点击对应的探头放置在感兴趣的位置处。

6 对仿真进行配置:

1)对放置的项目的名称进行设置,也就是设置仿真的名称。

2)对仿真进行配置:

对仿真的配置主要是对两个对应的选项进行操作,

Analysis中的对应操作:

这个里面主要对应analysis type 以及的操作,对应扫描频率,需要注意MEG的频率单位。

在configuration Files里面要注意category 中应该选择library,在filename 中选择对应的IC的库文件,

选定后再选择add as global 按键,然后点击确认就可以了。

7 对电路进行仿真:

点击3 就可以对电路进行仿真,仿真完成后会自动的出现仿真结果的图示。

8 在波形图中的分析:

对于该目录中的内容可以进行不同的测量和分析。

常见问题:

1、网表错误

(1)检查元器件命名是否重名

(2)参数是否不合法

(3)通过PSPICE->CREAT NETLIST生成网表,根据错误提示,定位错误

(4)信号线连接问题

(5)信号源

2、仿真不收敛

(1)检查电路是否连接错误

(2)激励是否合适

(3)修改仿真步长、及simulation setting->options中各精度参数

_ ABSTOL = 0.01μ (Default=1p)

_ VNTOL = 10μ (Default=1μ)

_ GMIN = 0.1n (Default=1p)

_ RELTOL = 0.05 (Default=0.001)

_ ITL4 = 500 (Default=10)

3、没有元件模板

下载的模型文件,要在simulation setting中添加。

4、floating pin

(1)缺少命名"0"的GND

(2)元件管脚浮空,根据情况接到固定电平

Hspice 简明手册

Hspice是一个模拟电路仿真软件,在给定电路结构和元器件参数的条件下,它可以模拟和计算电路的各种性能。用Hspice分析一个电路,首先要做到以下三点:

(1)给定电路的结构(也就是电路连接关系)和元器件参数(指定元器件的参数库);

(2)确定分析电路特性所需的分析内容和分析类型(也就是加入激励源和设置分析类型);

(3)定义电路的输出信息和变量。

Hspice规定了一系列输入,输出语句,用这些语句对电路仿真的标题,电路连接方式,

组成电路元器件的名称,参数,模型,以及分析类型,以及输出变量等进行描述。

一、Hspice输入文件的语句和格式

Hspice输入文件包括电路标题语句,电路描述语句,分析类型描述语句,输出描述语句,

注释语句,结束语句等六部分构成,以下逐一介绍:

1 电路的标题语句:

电路的标题语句是输入文件的第一行,也成为标题行,必须设置。它是由任意字母和

字符串组成的说明语句,它在Hspice的title框中显示。

2 电路描述语句

电路描述语句由定义电路拓扑结构和元器件参数的元器件描述语句,模型描述语句和

电源语句等组成,其位置可以在标题语句和结束语句之间的任何地方。

(1)电路元器件

Hspice 要求电路元器件名称必须以规定的字母开头,其后可以是任意数字或字母。

除了名称之外,还应指定该元器件所接节点编号和元件值。

电阻,电容,电感等无源元件描述方式如下:

R1 1 2 10k (表示节点1 与2 间有电阻R1,阻值为10k 欧)

C1 1 2 1pf (表示节点1 与2 间有电容C1,电容值为1pf)

L1 1 2 1mh (表示节点1 与2 间有电感L1,电感值为1mh)

半导体器件包括二极管,双极性晶体管,结形场效应晶体管,MOS 场效应晶体管等,

这些半导体器件的特性方程通常是非线性的,故也成为非线性有源元件。在电路CAD工具

进行电路仿真时,需要用等效的数学模型来描述这些器件。

(a)二极管描述语句如下:

DXXXX N+ N- MNAME

D 为元件名称,N+和N-分别为二极管的正负节点,MNAM

E 是模型名,后面为可选项:

AREA 是面积因子,OFF时直流分析所加的初始条件,IC=VD 时瞬态分析的初始条件。

(b)双极型晶体管

QXXXX NC NB NE MNAME

Q 为元件名称,NC NB NE 分别是集电极,基极,发射极和衬底的节点。缺省时,NS 结地。

后面可选项与二极管的意义相同。

(c)结型场效应晶体管

JXXXX ND NG NS MNAME

J为元件名称,ND NG NS为漏,栅,源的节点,MNAME 是模型名,后面为可选项与二极管的意义相同。

(d)MOS 场效应晶体管

MXXXX ND NG NS NB MNAME

M为元件名称,ND,NG,NS,NB 分别是漏,栅,源和衬底节点。MNAME 是模型名,L沟道

长,M为沟道宽。

(2)元器件模型

许多元器件都需用模型语句来定义其参数值。模型语句不同于元器件描述语句,它是以"."

开头的点语句,由关键字.MODEL,模型名称,模型类型和一组参数组成。电阻,电容,二极管,

MOS 管,双极管都可设置模型语句。这里我们仅介绍MOS 管的模型语句,其他的可参考Hspice帮助手册。

MOS 场效应晶体管模型

MOS 场效应晶体管是集成电路中常用的器件,在Hspice 有20 余种模型,模型参数有

40――60 个,大多是工艺参数。例如一种MOS 模型如下:

.MODEL NSS NMOS LEVEL=3 RSH=0 TOX=275E-10 LD=.1E-6

XJ=.14E-6

+ CJ=1.6E-4 CJSW=1.8E-10 UO=550 VTO=1.022 CGSO=1.3E-10

+ CGDO=1.3E-10 NSUB=4E15 NFS=1E10

+ VMAX=12E4 PB=.7 MJ=.5 MJSW=.3 THETA=.06 KAPPA=.4 ETA=.14

.MODEL PSS PMOS LEVEL=3 RSH=0 TOX=275E-10 LD=.3E-6

XJ=.42E-6

+ CJ=7.7E-4 CJSW=5.4E-10 UO=180 VTO=-1.046 CGSO=4E-10

+ CGDO=4E-10 TPG=-1 NSUB=7E15 NFS=1E10

+ VMAX=12E4 PB=.7 MJ=.5 MJSW=.3 ETA=.06 THETA=.03 KAPPA=.4

上面:.MODEL为模型定义关键字.

NSS 为模型名,NMOS为模型类型,LEVEL=3 表示半经验短沟道模型,后面RSH=0

等等为工艺参数。

(3)电路的输入激励和源

Hspice中的激励源分为独立源和受控源两种,这里我们仅简单介绍独立源。独立源有独立电压源

和独立电流源两种,分别用V 和I 表示。他们又分为直流源,交流小信号源和瞬

态源,可以组合在一起使用。

(a)直流源

VXXXX N+ N- DC VALUE

IXXXX N+ N- DC VALUE

例如:VCC 1 0 DC 5v (表示节点1,0 间加电压5v)

(b)交流小信号源

VXXXX N+ N- AC >

IXXXX N+ N- AC >

其中,ACMAG 和ACPHASE 分别表示交流小信号源的幅度和相位。

例如:V1 1 0 AC 1v (表示节点1,0 间加交流电压幅值1v,相位0)

(c)瞬态源

瞬态源有几种,以下我们均只以电压源为例,电流源类似:

* 脉冲源(又叫周期源)

VXXXX N+ N- PULSE(V1 V2 TD TR TF PW PER)

V1 初始值,V2 脉动值,TD 延时,TR 上升时间,TF下降时间,PW脉冲宽度,PER 周期

例如:V1 5 0 PULSE(0 1 2NS 4Ns 4Ns 20NS 50NS)

* 正弦源

VXXXX N+ N- SIN(V0 VA FREQ TD THETA PHASE)

V0:偏置,VA:幅度,FREQ: 频率,TD :延迟,THETA: 阻尼因子,PHASE:相位

* 指数源

VXXXX N+ N- EXP(V1 V2 TD1 TAU1 TD2 TAU2)

V1初始值,V2中止值,TD1上升延时,TAU1上升时间常数,TD2下降延时,TAU2下降

例如:V1 3 0 EXP(0 2 2ns 30ns 60ns 40ns)

* 分段线性源

VXXXX N+ N- PWL(T1 V1 )

其中每对值(T1,V1)确定了时间t=T1是分段线性源的值V1。

例如:Vpwl 3 0 PWL(0 1,10ns 1.5)

(4) 子电路

* 子电路语句

.SUBCKT SUBNAM N1< N2 。。。>

子电路的定义由.SUBCKT 语句开始。SUBNAM是子电路名,N1<

N2 。。。>是外部节点号

* 终止语句

.ENDS (表示结束子电路定义)

* 子电路调用语句

XYYYY N1< N2 。。。> SUBNAM

在Spice中调用子电路的方法是设定以字母X 开头的伪元件名,其后是用来连接到子电路上

的节点号,在后面是子电路名。

例如:.SUBCKT OPAMP 1 2 3 4

具体运放电路描述

Xop 1 2 3 4 OPAMP (调用该运放子电路)

3 电路的分析类型描述语句

分析类型描述语句由定义电路分析类型的描述语句和一些控制语句组成,如直流分析(.OP),

瞬态分析(.TRAN)等分析语句,以及初始状态设置(.IC),选择项设置(.OPTIONS)等控制语句。

它的位置可在标题语句和结束语句之间的任何地方。

(1) .TRAN(瞬态分析语句)

一般形式: .TRAN TSTEP TSTOP >

TSETP 为时间增量,TSTOP 为终止时间,TSTART 为初始时间(若不设定,则隐含值为0)

例如:.TRAN 1NS 10000NS 500NS (瞬态分析500—10000NS,步长为1NS)

(2).AC(交流分析语句)

在规定的频率范围内完成电路的交流小信号分析

.AC DEC ND FSTART FSTOP (数量级变化)

其中,DEC 为10 倍频,ND 为该范围内点的数目,FSTART初始频率,FSTOP 中止频率。

例如: .AC DEC 10 1 10K (指从1 到10KHZ范围,每个数量级取10 点,交流小

信号分析)

(3).DC(直流扫描语句)

是在指定的范围内,某一个独立源或其他电路元器件参数步进变化时,计算电路滞留输

出变量的相应变化曲线。

DC SRCNAN VSTART VSTOP VINCR <>

例如: .DC VIN 0.25 5.0 0.25 (表示电压源VIN 的值从0。25V扫描到5V,每次增量

0。25V)

(4).OPTION(可选项语句)

ACCT(打印出计算和运行时间统计)

LIST(打印出输入数据总清单)

NODE(打印出结点表)

NOMOD(抑制模型参数的打印输出)

具体电路的分析类型描述语句可查阅Hspice在线帮助。

4 输出描述语句

(1)文本打印语句.PRINT

.PRINT TYPE ov1

TYPE 为指定的输出分析类型,如(DC);OV1 为输出变量名。

例如:.PRINT DC V(5)

(2) 文本绘图语句.PLOT

.PRINT TYPE ov1

5 注释语句

注释语句以"*"为首字符,位置是任意的,它为非执行语句。

6 结束语句

结束语句是输入文件的最后一行,用.END 描述,必须设置。

二Hspice仿真示例

Hspice 可以执行各种模拟电路仿真,它的精度很高。通过点击桌面快捷方式Hspice2001.4,启动Hspice界面如下:

Hspice模拟步骤如下:

(1)由电路图提取网表或手工编写网表,注意网表文件以.sp结尾。例如,上图中电路网表文件

为eyediag.sp;标题为:*Eye Diagrams;输出报告文件:eyediag.lis。

(2) 运行模拟,完成后检查输出报告文件后缀.lis文件察看模拟结果。

(3) 运行查看输出波形。

以下我们通过几个例子了解Hspice的网表文件格式,以及如何进行仿真。

1 简单RC网络电路

它的网表文件如下,文件名为quickRC.sp

A SIMPLE AC RUN

.OPTIONS LIST NODE POST

.OP

.AC DEC 10 1K 1MEG

.PRINT AC V(1) V(2) I(R2) I(C1)

V1 1 0 10 AC 1

R1 1 2 1K

R2 2 0 1K

C1 2 0 .001U

.END

注释:第一行A SIMPLE AC RUN 为标题行;

第二行.OPTIONS LIST NODE POST 为可选项设置,LIST 打印出元件总结列表;

NODE打印出元件节点表(element node table);POST 表示用何种格式储存模拟后

的数据,以便与其它工具接口。

第三行.OP 计算直流工作点。

第四行.AC DEC 10 1K 1MEG (指从1 到10KHZ范围,每个数量级取10点,交流

小信号分析)

第五行.PRINT AC V(1) V(2) I(R2) I(C1) 打印交流分析类型的节点1,2 的电压,以及R2,C1 的电流

第六行V1 1 0 10 AC 1 表示节点1 与0 间,加直流电压10v 和幅值为

1v 的交流电压。

第七至九行为电路描述语句。

第十行为结束语句。

我们首先通过点击打开编辑好的quickRC.sp文件,此时显示界面如下:

点击仿真,仿真完成后界面如下:

点击查看Hspice输出结果文件quickRC.lis,可以看到仿真后各种数据信息。

要查看输出的波形,点击,可以看到界面如下:

点击AC: A SIMPLE AC RUN,就可看到各种信号,如下所示:

双击要查看的信号波形,即可将该信号加入到波形框中,显示如下:

2 倒相器电路

它的网表文件如下,文件名为inv.sp

Inverter Circuit

.OPTIONS LIST NODE POST

.TRAN 200P 20N

.PRINT TRAN V(IN) V(OUT)

M1 OUT IN VCC VCC PCH L=1U W=20U

M2 OUT IN 0 0 NCH L=1U W=20U

VCC VCC 0 5

VIN IN 0 0 PULSE .2 4.8 2N 1N 1N 5N 20N

CLOAD OUT 0 .75P

.MODEL PCH PMOS LEVEL=1

.MODEL NCH NMOS LEVEL=1

.END

注释:第三行.TRAN 200P 20N 表示瞬态分析步长为200ps,时间为20ns 第四行.PRINT TRAN V(IN) V(OUT)表示打印节点in,out 电压瞬态分析值

第五,六,九行为电路连接关系描述语句。

第七行VCC VCC 0 5表示在节点VCC,0之间加5v直流电压。

第八行VIN IN 0 0 PULSE .2 4.8 2N 1N 1N 5N 20N表示在节点IN,0之间

加一个脉冲源,低电平0.2v,高电平4.8v,延时2ns,上升沿1ns,下降沿1ns,脉

冲宽度5ns,周期20ns

第九,十行为模型语句,表示模型名PCH,管子类型为PMOS,使用的是一级模型。

对倒相器电路仿真的步骤类似于前面,这里仅列出输出波形供参考:

3 D 触发器电路

前面我们用Workview工具创建了一个D 触发器,并提取了它的电路网表,在这里我们

为该网表文件加入激励源和分析语句,并使用Hspice 进行模拟仿真。修改后的网表文件如

下,文件名为dff.sp:

* Project DFF

* Powerview Wirelist Created with Version 6.2

* Inifile :

* Options : -h -d -n -m -x -c60 -le:\work\zzz.sp

* Levels :

.OPTIONS LIST NODE POST

.include "e:\model\35model.txt"

* Definition for project INVERTER

.SUBCKT INVERTER IN OUT

M2 OUT IN 0 0 NSS L=0.35U W=1.2U

M1 VDD IN OUT VDD PSS L=0.35U W=2.4U

* CROSS-REFERENCE 1

* GND = 0

.ENDS

* Definition for project TRANSFER

.SUBCKT TRANSFER IN OUT CLKF CLK

M1 OUT CLKF IN VDD PSS L=0.35U W=1.2U

M2 IN CLK OUT 0 NSS L=0.35U W=1.2U

* CROSS-REFERENCE 1

* GND = 0

.ENDS

X1I1 N1N19 N1N21 INVERTER

X1I2 N1N21 N1N16 CLK N1N10 TRANSFER X1I3 N1N16 N1N19 INVERTER

X1I4 CLK N1N10 INVERTER

X1I5 Q N1N29 INVERTER

X1I6 QF Q INVERTER

X1I7 N1N29 QF N1N10 CLK TRANSFER

X1I8 D N1N16 N1N10 CLK TRANSFER

X1I9 N1N19 QF CLK N1N10 TRANSFER

* DICTIONARY 1

* GND = 0

.GLOBAL VDD

vin D 0 PULSE .2 2.8v 2N 1N 1N 20N 50N

vdd VDD 0 3v

Vclk clk 0 0 PULSE .2 2.8v 2N 1N 1N 5N 20N

.tran 1ns 200n

.END

注释:以上黑体字为对Workview生成网表的修改。(1).OPTIONS LIST NODE POST 为可选项设置

(2).include "e:\model\35model.txt"表示加入0。35um工艺库文件,注意一定要指定工艺

库文件,否则Hspice无法仿真。另外,库路径一定要指定正确,否则会找不到库文件。

(3)vin D 0 PULSE .2 2.8v 2N 1N 1N 20N 50N

vdd VDD 0 3v

Vclk clk 0 0 PULSE .2 2.8v 2N 1N 1N 5N 20N

上述为加入的输入激励和电压源语句。

(4).tran 1ns 200n

指定瞬态分析200ns,分析步长1ns

将修改好的dff.sp文件存盘,注意后缀以.sp结尾。然后打开该文件,运行Hspice 仿真,

则输出波形如下图所示:

交流扫描:

1.关于元器件符号库:

A.一种是商品化的元器件符号库,库中的绝大部分符号是不同的半导体器件和集成电路器件。

其中一种是以元器件的类型为库文件名。一类是包含公司的名称。

B.常用的非商品化元件符号库

(1)ANALOG库:模拟电路中的各种无源元件。

(2)BREAKOUT库:在PSPICE进行统计模拟分析的时候,要求电路中的某些元件参数按照一定的规律变化。

相关主题