EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、采用HSPICE 软件可以在直流到高于100MHz 的微波频率范围内对电路作精确的仿真、分析和优化。在实际应用中, HSPICE能提供关键性的电路模拟和设计方案,并且应用HSPICE进行电路模拟时,其电路规模仅取决于用户计算机的实际存储器容量。 # f# O/ F; ?) {& u1 e' c0 r
二、新建设计工程 在对应的界面下打开新建工程:
: w3 N: h3 O1 J2 X7 ?
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 C! C* q+ i* u/ Q. R, ]
8)放置探头: 点击对应的探头放置在感兴趣的位置处。 % A% H1 ]/ d1 K/ F; Y
6 对仿真进行配置:
1)对放置的项目的名称进行设置,也就是设置仿真的名称。
2)对仿真进行配置:
对仿真的配置主要是对两个对应的选项进行操作, Analysis中的对应操作: 这个里面主要对应analysis type 以及的操作,对应扫描频率,需要注意 MEG的频率单位。
在configuration Files里面要注意category 中应该选择library,在filename 中选择对应的IC的库文件, 选定后再选择add as global 按键,然后点击确认就可以了。 " L. p' n. [# d/ }) [4 H
7 对电路进行仿真: 点击3 就可以对电路进行仿真,仿真完成后会自动的出现仿真结果的图示。 8 在波形图中的分析: 对于该目录中的内容可以进行不同的测量和分析。 - i$ R- `6 z \. i2 G
常见问题: 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)元件管脚浮空,根据情况接到固定电平 ! ^$ x; x1 F! b! k- i6 E: }
4 q, h0 P! Z. z, A* ]+ x4 S
Hspice 简明手册 Hspice是一个模拟电路仿真软件,在给定电路结构和元器件参数的条件下, 它可以模拟和计算电路的各种性能。用Hspice分析一个电路,首先要做到以下三点: (1) 给定电路的结构(也就是电路连接关系)和元器件参数(指定元器件的参数库); (2) 确定分析电路特性所需的分析内容和分析类型(也就是加入激励源和设置分析类型); (3) 定义电路的输出信息和变量。 Hspice规定了一系列输入,输出语句,用这些语句对电路仿真的标题,电路连接方式, 组成电路元器件的名称,参数,模型,以及分析类型,以及输出变量等进行描述。" M3 q$ @# Y+ f$ V5 v* C# |1 R7 s/ e
一、 Hspice输入文件的语句和格式 Hspice输入文件包括电路标题语句,电路描述语句,分析类型描述语句,输出描述语句, 注释语句,结束语句等六部分构成,以下逐一介绍:, D. q @2 g9 v0 o
1 电路的标题语句: 电路的标题语句是输入文件的第一行,也成为标题行,必须设置。它是由任意字母和 字符串组成的说明语句,它在Hspice的title框中显示。 2 电路描述语句
, v& t4 U+ r; O3 _; p7 c电路描述语句由定义电路拓扑结构和元器件参数的元器件描述语句,模型描述语句和 电源语句等组成,其位置可以在标题语句和结束语句之间的任何地方。$ j3 r `$ m3 f4 I
(1) 电路元器件
6 L4 H% O' w; \9 M3 m; _Hspice 要求电路元器件名称必须以规定的字母开头,其后可以是任意数字或字母。 除了名称之外,还应指定该元器件所接节点编号和元件值。9 K% C* o( n" ]0 a( R2 R8 {+ N; |
电阻,电容,电感等无源元件描述方式如下:7 t* s, h0 r3 `! x7 V N6 E+ H
R1 1 2 10k (表示节点1 与2 间有电阻R1,阻值为10k 欧)/ a# `9 r. G! s6 T
C1 1 2 1pf (表示节点1 与2 间有电容C1,电容值为1pf)
2 r! O+ [$ [3 l2 j, L% b1 WL1 1 2 1mh (表示节点1 与2 间有电感L1,电感值为1mh)0 h( D# _+ ?* y
半导体器件包括二极管,双极性晶体管,结形场效应晶体管,MOS 场效应晶体管等, 这些半导体器件的特性方程通常是非线性的,故也成为非线性有源元件。在电路CAD工具 进行电路仿真时,需要用等效的数学模型来描述这些器件。
( K$ i5 e: e; Q7 Z8 \- Z, P2 N(a) 二极管描述语句如下:7 E; ~: _6 E" o# c6 \
DXXXX N+ N- MNAME <AREA> <OFF> <IC=VD>
0 H3 @' ~, c; a4 ~( r3 {D 为元件名称,N+和N-分别为二极管的正负节点,MNAME 是模型名 ,后面为可选项:* v1 Q2 G$ K* p3 w3 f
AREA 是面积因子,OFF时直流分析所加的初始条件,IC=VD 时瞬态分析的初始条件。2 n$ }# j3 m, @ |- W
(b)双极型晶体管
6 V* _1 C0 j8 r1 l, XQXXXX NC NB NE <NS> MNAME <AREA> <OFF> <IC=VBE,VCE># [) ?: ^/ [3 U' ?' v$ @: ?
Q 为元件名称,NC NB NE <NS>分别是集电极,基极,发射极和衬底的节点。缺省时,NS 结地。 后面可选项与二极管的意义相同。
8 _9 g+ k1 u+ y% f, L(c)结型场效应晶体管
" B% k7 ?" {: [2 h5 z$ a. u# fJXXXX ND NG NS MNAME <AREA> <OFF> <IC=VDS,VGS>/ u" T. k. d8 \2 l* l
J为元件名称,ND NG NS为漏,栅,源的节点,MNAME 是模型名 ,后面为可选项与 二极管的意义相同。
; C; u7 ~8 X2 c/ b- B( j( j) B+ |(d)MOS 场效应晶体管) r/ s9 l3 A! ?
MXXXX ND NG NS NB MNAME <L=VAL> <W=VAL>
! t; o( |$ L x) l6 UM为元件名称,ND,NG,NS,NB 分别是漏,栅,源和衬底节点。MNAME 是模型名,L沟道
3 { F& T0 E' h @3 n2 {, V/ ]4 M长,M为沟道宽。
, f/ m/ R& N: i& r4 ~(2) 元器件模型8 m" s7 I# J& \9 O% `
许多元器件都需用模型语句来定义其参数值。模型语句不同于元器件描述语句,它是 以"." 开头的点语句,由关键字.MODEL,模型名称,模型类型和一组参数组成。 电阻,电容,二极管, MOS 管,双极管都可设置模型语句。这里我们仅介绍MOS 管的模型语句,
9 x1 G# N9 z+ g- j' H/ h( V其他的可参考Hspice帮助手册。8 p; d) ?5 `! W. N* k" U9 f% m
MOS 场效应晶体管模型
) M, g2 p9 [ w1 Y, @( W9 C" b' W3 hMOS 场效应晶体管是集成电路中常用的器件,在Hspice 有20 余种模型,模型参数有
$ h9 l- n5 D% [% c40――60 个,大多是工艺参数。例如一种MOS 模型如下:( f3 {$ L: Q; A7 l
.MODEL NSS NMOS LEVEL=3 RSH=0 TOX=275E-10 LD=.1E-6 XJ=.14E-6; g& g V; R" b/ s' c
+ CJ=1.6E-4 CJSW=1.8E-10 UO=550 VTO=1.022 CGSO=1.3E-101 E: r7 q b o5 @
+ CGDO=1.3E-10 NSUB=4E15 NFS=1E10+ R3 c; O, T" o8 m2 a4 D- K0 H- k4 q# u
+ VMAX=12E4 PB=.7 MJ=.5 MJSW=.3 THETA=.06 KAPPA=.4 ETA=.147 m0 v( {4 H" ^, [
.MODEL PSS PMOS LEVEL=3 RSH=0 TOX=275E-10 LD=.3E-6 XJ=.42E-6# t, G" q: v! J+ Q& ?
+ CJ=7.7E-4 CJSW=5.4E-10 UO=180 VTO=-1.046 CGSO=4E-10
% G# b I6 q' i& n/ A8 Y8 a+ CGDO=4E-10 TPG=-1 NSUB=7E15 NFS=1E10+ V( E6 Q _/ f' N% r: u& k* W
+ VMAX=12E4 PB=.7 MJ=.5 MJSW=.3 ETA=.06 THETA=.03 KAPPA=.4 U& S M" w5 k9 a W' N# @
上面:.MODEL为模型定义关键字.
0 b: w2 g8 I# x' |7 P* b sNSS 为模型名,NMOS为模型类型,LEVEL=3 表示半经验短沟道模型,后面RSH=0. b" \/ V; H3 K! c
等等为工艺参数。6 @1 B f9 h! X, _' d
(3) 电路的输入激励和源
+ u- u b% _% }) }* Z& H8 K- }, BHspice中的激励源分为独立源和受控源两种,这里我们仅简单介绍独立源。独立源有独立电压源 和独立电流源两种,分别用V 和I 表示。他们又分为直流源,交流小信号源和瞬# @* o* U. }) |' v
态源,可以组合在一起使用。2 d' I d4 ]( \7 _3 p
(a)直流源0 d0 F2 Z. l4 S
VXXXX N+ N- DC VALUE! u0 Y1 ]) u; t9 b5 t
IXXXX N+ N- DC VALUE0 L1 m/ ]9 D! z! G
例如:VCC 1 0 DC 5v (表示节点1,0 间加电压5v)8 t& A2 J1 n0 V) h$ y# ~; F
(b)交流小信号源
' L% B7 S: o2 h7 u' k; kVXXXX N+ N- AC <ACMAG <ACPHASE>>2 i- w. [9 f" j, @- l3 u7 d# p
IXXXX N+ N- AC <ACMAG <ACPHASE>>
' |$ O1 a* E) q; h4 }( J! m其中,ACMAG 和ACPHASE 分别表示交流小信号源的幅度和相位。3 r$ _& N) `4 T, X
例如:V1 1 0 AC 1v (表示节点1,0 间加交流电压幅值1v,相位0)/ [( t) a0 Z' ]) f' ^* b
(c)瞬态源! D' g2 L$ i7 q$ r" w
瞬态源有几种,以下我们均只以电压源为例,电流源类似:
0 A" ^7 y( h3 K5 U6 o2 r! z, b$ }: O* 脉冲源(又叫周期源)
+ B5 m3 L5 \/ T t+ ]3 d+ s" [ NVXXXX N+ N- PULSE(V1 V2 TD TR TF PW PER)0 r" V) R7 \) f2 T4 @: B+ M4 _
V1 初始值,V2 脉动值,TD 延时,TR 上升时间,TF下降时间,PW脉冲宽度,PER 周期
! U- W0 P! L9 e例如:V1 5 0 PULSE(0 1 2NS 4Ns 4Ns 20NS 50NS)
* V* e$ F% g# p* h& m* h) c# ^4 D* 正弦源
, o8 Q% L* W% X6 c- P9 k) XVXXXX N+ N- SIN(V0 VA FREQ TD THETA PHASE)$ N u) [; A9 Q8 j6 U
V0:偏置,VA:幅度,FREQ: 频率 ,TD :延迟,THETA: 阻尼因子,PHASE:相位
. P" l8 I3 i2 R- B6 P8 r* 指数源
7 G8 W4 X$ ~; aVXXXX N+ N- EXP(V1 V2 TD1 TAU1 TD2 TAU2)* P1 o' q& \; a; R( _$ z
V1初始值,V2中止值,TD1上升延时,TAU1上升时间常数,TD2下降延时,TAU2下降/ f$ j4 ^$ M- s4 W# G. k5 \
时间常数' o( s* z6 k+ B1 E, V
例如:V1 3 0 EXP(0 2 2ns 30ns 60ns 40ns)8 }2 U) z" Q( |" L4 Z3 e# |& V/ S
* 分段线性源
6 `& i, c* ^/ a, NVXXXX N+ N- PWL(T1 V1 <T2 V2 T3 V3 。。。>)
; D8 C2 K* @+ J4 J' H3 P! y其中每对值(T1,V1)确定了时间t=T1是分段线性源的值V1。) p% G2 Y( b% _& T+ t) t3 X1 x
例如:Vpwl 3 0 PWL(0 1,10ns 1.5)$ l& W6 I! l3 S: \
(4) 子电路& Q8 j l! B& u4 W
* 子电路语句
% h& e1 X4 _- S3 R. s8 K.SUBCKT SUBNAM N1< N2 。。。>, S, U! @, |1 \1 Q6 S$ ]+ Z2 {
子电路的定义由.SUBCKT 语句开始。SUBNAM是子电路名,N1< N2 。。。>是外部节点号
. g9 z' a$ B( y" h5 Q6 D8 G* 终止语句8 b& Z, k" K- J
.ENDS (表示结束子电路定义)
! E4 r7 b/ `5 w8 u* 子电路调用语句5 f1 v/ v8 Z. D- V. r6 J
XYYYY N1< N2 。。。> SUBNAM
1 P! c, Q: e8 l! c4 D- C在Spice中调用子电路的方法是设定以字母X 开头的伪元件名,其后是用来连接到子电路上$ O: ~' [0 `* A
的节点号,在后面是子电路名。
' s* }' ~5 K/ ^例如:.SUBCKT OPAMP 1 2 3 4
: k6 x: |% R/ C# |7 ]7 u具体运放电路描述0 N$ X/ V+ L. j- L: ~7 y3 {
.ENDS
# U$ _+ p S9 X& ]; ^1 q$ g3 cXop 1 2 3 4 OPAMP (调用该运放子电路)
# o4 R6 }9 y0 h* T* V3 电路的分析类型描述语句& R% s5 u$ K" x$ k
分析类型描述语句由定义电路分析类型的描述语句和一些控制语句组成,如直流分析(.OP), 瞬态分析(.TRAN)等分析语句,以及初始状态设置(.IC),选择项设置(.OPTIONS)等控制语句。 它的位置可在标题语句和结束语句之间的任何地方。
7 j2 w0 r( U4 t: P; r. w(1) .TRAN(瞬态分析语句)
. I/ W5 h9 Q4 Q+ Z; H% Y$ M' B一般形式: .TRAN TSTEP TSTOP <TSTART <TMAX>> <UIC>
) B+ |7 l) I/ ]. a* FTSETP 为时间增量,TSTOP 为终止时间,TSTART 为初始时间(若不设定,则隐含值为0)+ f0 m2 c: K! B! C1 c
例如:.TRAN 1NS 10000NS 500NS (瞬态分析500—10000NS,步长为1NS)
# K( a6 `6 ^# {! Q( @. U(2).AC(交流分析语句)
( Q- C& u2 [& u" Z: \在规定的频率范围内完成电路的交流小信号分析
* Z. q: W) T9 r" B.AC DEC ND FSTART FSTOP (数量级变化)
( W; {$ D, u* y$ T2 v& J! d; F9 {其中,DEC 为10 倍频,ND 为该范围内点的数目,FSTART初始频率,FSTOP 中止频率。
/ B- f8 H* |* m! m4 F9 T) o- n例如: .AC DEC 10 1 10K (指从1 到10KHZ范围,每个数量级取10 点,交流小
: T6 V6 G' m# d7 m' ^信号分析)2 @" [" i8 O; O* }
(3).DC(直流扫描语句)
1 U( y* K4 l& o1 W6 [3 U+ W t是在指定的范围内,某一个独立源或其他电路元器件参数步进变化时,计算电路滞留输) ~$ H5 X) r- z: I5 }
出变量的相应变化曲线。8 G) u3 B" E7 W( C5 r2 F7 }
DC SRCNAN VSTART VSTOP VINCR <>! f/ `! ?; g2 u+ @0 q
例如: .DC VIN 0.25 5.0 0.25 (表示电压源VIN 的值从0。25V扫描到5V,每次增量
+ c+ U. U" K Y( \9 J0 q- t [" L0。25V)% l S7 c; b$ s( v- g0 T5 V9 {$ s
(4).OPTION(可选项语句)+ T1 N0 O3 z" s
ACCT(打印出计算和运行时间统计)9 a- s! J9 E- a; D
LIST(打印出输入数据总清单) `2 P2 b6 t. L; c
NODE(打印出结点表)/ |' z6 y* o* k' m
NOMOD(抑制模型参数的打印输出)" Z8 N% s2 V' |" m0 b, h
具体电路的分析类型描述语句可查阅Hspice在线帮助。4 R& S9 q" N. y( K' n
4 输出描述语句: O# H0 j* m. H. m \- H: s) E
(1) 文本打印语句.PRINT/ \8 l# G; _5 d5 @6 a" f. ?% s
.PRINT TYPE ov1<ov2…> M( }* M# c( u C
TYPE 为指定的输出分析类型,如(DC);OV1 为输出变量名。
4 ]& U- g$ V; ^4 Q0 i例如:.PRINT DC V(5)( P( I) g$ r& ]* {
(2) 文本绘图语句.PLOT
/ x. f) m/ H9 ~& t.PRINT TYPE ov1<ov2…>
7 \$ I+ R _1 U9 @+ b5 注释语句
M/ x9 q1 d4 `6 n# v( p6 Z注释语句以"*"为首字符,位置是任意的,它为非执行语句。
% P* q$ z" p& G( H6 结束语句2 \* X' J% A# w: N
结束语句是输入文件的最后一行,用.END 描述,必须设置。
) t& r4 v" H# s) F二 Hspice仿真示例! Q# B& Q( r& s$ O1 K
Hspice 可以执行各种模拟电路仿真,它的精度很高。通过点击桌面快捷方式, n) N- n, Y: J9 {8 l R6 n
Hspice2001.4,启动Hspice界面如下:4 c4 G, G _; V9 d: B3 D
Hspice模拟步骤如下:. S3 e( c2 w W! I" g
(1) 由电路图提取网表或手工编写网表,注意网表文件以.sp结尾。例如,上图中电路网表文件 为eyediag.sp;标题为:*Eye Diagrams;输出报告文件:eyediag.lis。
% `! f/ z) s- W L- r(2) 运行模拟,完成后检查输出报告文件后缀.lis文件察看模拟结果。
/ U0 Q8 t M& A" I8 R1 d9 Q(3) 运行查看输出波形。
# ]0 n+ r/ W+ H$ W4 C$ R& i. Y以下我们通过几个例子了解Hspice的网表文件格式,以及如何进行仿真。
+ n6 A M$ J$ k# @7 A1 简单RC网络电路
) z: A& ]! p; |" M' `; {: A它的网表文件如下,文件名为quickRC.sp
$ y. _6 ~/ P' z+ u A2 aA SIMPLE AC RUN
7 G7 {& v1 V5 u M.OPTIONS LIST NODE POST9 V# S/ t' u1 {! c+ _. F8 M. m
.OP
% I/ Y7 h3 P% u- L.AC DEC 10 1K 1MEG* A8 w- \$ M! V8 z4 q6 o
.PRINT AC V(1) V(2) I(R2) I(C1). }. k( F' A4 M/ d/ y
V1 1 0 10 AC 1
- S: _* w" Y& h3 x; \ OR1 1 2 1K
: d9 \, {# h! Y) @8 UR2 2 0 1K
5 W% d* n2 U Z. D. o# f& H$ FC1 2 0 .001U
. [" L, n1 y$ \5 M9 `.END* N n5 G. h1 x8 B
注释:第一行A SIMPLE AC RUN 为标题行;
2 F M6 ~2 E/ _. I' n2 Y第二行.OPTIONS LIST NODE POST 为可选项设置,LIST 打印出元件总结列表;9 k: o( x5 d2 i9 z- b- v' N
NODE打印出元件节点表(element node table);POST 表示用何种格式储存模拟后$ ]) s$ S2 {9 Y) L5 W
的数据,以便与其它工具接口。9 J7 x* H: S8 p# }7 u5 u5 h0 C
第三行.OP 计算直流工作点。
& N3 p. k8 s, [2 {第四行.AC DEC 10 1K 1MEG (指从1 到10KHZ范围,每个数量级取10点,交流
) \% E" B: Q% v3 H6 k小信号分析)
5 F7 w: A- G9 \0 X& t! ~7 V第五行.PRINT AC V(1) V(2) I(R2) I(C1) 打印交流分析类型的节点1,2 的
: f+ q9 Y* {/ K' S& _8 D$ W电压,以及R2,C1 的电流
$ _# {5 q7 Q: l# b9 Z9 L第六行V1 1 0 10 AC 1 表示节点1 与0 间,加直流电压10v 和幅值为* z# q% F, @* c9 B& U3 {- a$ y
1v 的交流电压。! C3 [- @; ?6 S4 Y) n) O
第七至九行为电路描述语句。 H/ x& {2 ^ U* J, \4 `
第十行为结束语句。
4 { A7 j% G: l' F1 \4 M8 U我们首先通过点击打开编辑好的quickRC.sp文件,此时显示界面如下:7 S8 d( v; D8 m) b; i! ^
点击仿真,仿真完成后界面如下:" e9 c2 I' p$ e, T$ ?
点击查看Hspice输出结果文件quickRC.lis,可以看到仿真后各种数据信息。4 B& X: O' e6 h7 [4 B: P' i, O/ T
要查看输出的波形,点击,可以看到界面如下:
/ h1 D. Q& R% u2 U; n% s: f* ~点击AC: A SIMPLE AC RUN,就可看到各种信号,如下所示:
7 b+ l1 A. T! x7 e1 \4 z$ N双击要查看的信号波形,即可将该信号加入到波形框中,显示如下:. D* U3 \# G' s" ^% ?
2 倒相器电路1 v( c: U$ W& T
它的网表文件如下,文件名为inv.sp" l5 m5 u! M+ ]8 F: a
Inverter Circuit
9 Q1 N7 E) ~& E4 Z.OPTIONS LIST NODE POST
+ j: V! y6 v+ P7 J/ m" }0 v.TRAN 200P 20N
# Q% l5 `2 c- C. M.PRINT TRAN V(IN) V(OUT)" j+ k! `, a n: [
M1 OUT IN VCC VCC PCH L=1U W=20U
' G8 w2 y/ Z' eM2 OUT IN 0 0 NCH L=1U W=20U
& b( W/ j1 b2 w# C7 P0 sVCC VCC 0 5
! D1 \% R8 Z$ u) J7 xVIN IN 0 0 PULSE .2 4.8 2N 1N 1N 5N 20N
2 D2 }9 B( u' d, l) `; G1 p5 tCLOAD OUT 0 .75P6 c( l! M4 e* O( p; J5 F3 Z
.MODEL PCH PMOS LEVEL=1
' t" o4 m# b! [0 U; _2 X. b: O.MODEL NCH NMOS LEVEL=1( u y* q& r% A! K% T
.END
0 s% a$ X0 o$ M0 ]注释:第三行.TRAN 200P 20N 表示瞬态分析步长为200ps,时间为20ns& h1 I+ `3 e) {( b" E
第四行.PRINT TRAN V(IN) V(OUT)表示打印节点in,out 电压瞬态分析值
+ B% N2 W F6 j第五,六,九行为电路连接关系描述语句。9 O: g1 `, @$ w7 ?
第七行VCC VCC 0 5表示在节点VCC,0之间加5v直流电压。
9 Z7 g* I& v5 j! I2 C' k( O第八行VIN IN 0 0 PULSE .2 4.8 2N 1N 1N 5N 20N表示在节点IN,0之间4 Y9 V+ p/ _" |
加一个脉冲源,低电平0.2v,高电平4.8v,延时2ns,上升沿1ns,下降沿1ns,脉$ k. t" O) u- A& m* I" q6 L
冲宽度5ns,周期20ns
" L& ]8 d7 E- t1 y5 e第九,十行为模型语句,表示模型名PCH,管子类型为PMOS,使用的是一级模型。/ J* j2 h( m( U, B) T5 J
对倒相器电路仿真的步骤类似于前面,这里仅列出输出波形供参考:
6 h" K$ |/ Z Q( D0 n" A3 D 触发器电路0 m8 j7 C& k% ]+ z. _
前面我们用Workview工具创建了一个D 触发器,并提取了它的电路网表,在这里我们
" u3 [0 h+ E" O8 v为该网表文件加入激励源和分析语句,并使用Hspice 进行模拟仿真。修改后的网表文件如
7 q- ^9 N+ f1 B) e, I# e! B& y, Y下,文件名为dff.sp:: {$ G8 Q7 D$ e' f$ q8 R3 [
* Project DFF
; S L* U8 z: v/ e& b( k* Powerview Wirelist Created with Version 6.2# C6 T8 L: \" B# b; N( I
* Inifile :
) P3 g. u# c4 J, M( e! y- a8 z8 ~+ Z6 D* Options : -h -d -n -m -x -c60 -le:\work\zzz.sp# m4 B5 e& T2 p9 h5 D
* Levels :
; e) o3 r* y: y.OPTIONS LIST NODE POST
~6 V/ U4 V U4 v.include "e:\model\35model.txt"2 P4 v. N! E0 \ E: J9 D; Z
* Definition for project INVERTER
4 A% E( r& S- x.SUBCKT INVERTER IN OUT- y8 d# z/ V) o+ ^; b j7 P+ M; k
M2 OUT IN 0 0 NSS L=0.35U W=1.2U
' ~2 E$ d$ v) \, `0 VM1 VDD IN OUT VDD PSS L=0.35U W=2.4U
2 u5 o' L& v/ C" y3 w' S6 Z* f* CROSS-REFERENCE 11 y$ ^& t9 n+ ]6 z3 }5 U
* GND = 0
" H& d) J# m5 G$ _3 @! j.ENDS" e: R2 I0 X3 b# E! i' J) ~6 A
* Definition for project TRANSFER
; `2 k- P |8 d& O5 O+ R.SUBCKT TRANSFER IN OUT CLKF CLK
2 ^( e x4 h4 b- @1 KM1 OUT CLKF IN VDD PSS L=0.35U W=1.2U
+ H# \3 M2 N9 B' i3 vM2 IN CLK OUT 0 NSS L=0.35U W=1.2U
# y' i; A D7 b9 Z* ] J6 }4 d* CROSS-REFERENCE 1" h+ [, q/ j g7 [0 V' u
* GND = 0
0 F5 N/ L( k$ F8 D( `+ |: W.ENDS6 H4 U) y) ]9 V( M
X1I1 N1N19 N1N21 INVERTER
) ]' f/ k5 z& ?" o$ C5 j; k5 M2 }X1I2 N1N21 N1N16 CLK N1N10 TRANSFER
3 k4 H: n/ n+ v/ BX1I3 N1N16 N1N19 INVERTER1 z. q6 }6 g- Q7 o2 M
X1I4 CLK N1N10 INVERTER
1 D# H, c( _0 `- |X1I5 Q N1N29 INVERTER
" i% `$ u! g2 nX1I6 QF Q INVERTER
# l0 L8 Q1 Q- NX1I7 N1N29 QF N1N10 CLK TRANSFER
* [, n/ L1 k1 {3 gX1I8 D N1N16 N1N10 CLK TRANSFER$ B9 u3 t+ P- t8 V
X1I9 N1N19 QF CLK N1N10 TRANSFER) t: u6 {) |; c: w- E
* DICTIONARY 1
% n) J( K# f8 l( F' I* GND = 0
6 B# @8 [2 w- k.GLOBAL VDD( q) u2 ~% @, B& P
vin D 0 PULSE .2 2.8v 2N 1N 1N 20N 50N
' ]' J5 |# f/ t$ i! wvdd VDD 0 3v2 x- f3 N& s- X+ `) N" S
Vclk clk 0 0 PULSE .2 2.8v 2N 1N 1N 5N 20N6 c+ X( z) P; H# v [( o7 Q
.tran 1ns 200n$ u% l) l. a" L( k4 ]& M$ i
.END
+ p: `# x$ z! B" N! W注释:以上黑体字为对Workview生成网表的修改。! Q# P8 z- ^. n$ C; E7 Q
(1).OPTIONS LIST NODE POST 为可选项设置
# J/ u1 B. x5 t(2).include "e:\model\35model.txt"表示加入0。35um工艺库文件,注意一定要指定工艺
: P6 t$ M8 c9 J* F0 x库文件,否则Hspice无法仿真。另外,库路径一定要指定正确,否则会找不到库文件。
2 C) p4 f* Y: w% {(3)vin D 0 PULSE .2 2.8v 2N 1N 1N 20N 50N
$ A; {1 d/ y4 o% t/ S# Jvdd VDD 0 3v, l* M* m9 b; h. S( z
Vclk clk 0 0 PULSE .2 2.8v 2N 1N 1N 5N 20N) V) S( Y, r+ t: m% s" W
上述为加入的输入激励和电压源语句。
$ D8 j0 f$ j4 L- a* k T(4).tran 1ns 200n
4 H0 G9 n+ \8 @4 N! V; w% E0 \指定瞬态分析200ns,分析步长1ns
7 v" ?8 D! s0 W/ o将修改好的dff.sp文件存盘,注意后缀以.sp结尾。然后打开该文件,运行Hspice仿真,7 r: x# ]% G! w9 Q) d; A
则输出波形如下图所示: * D4 D4 j9 j/ [, ~8 M
交流扫描: 6 \) u# e6 s, q6 A- p
- 关于元器件符号库:
, r/ @0 k9 m7 z3 o% j
A. 一种是商品化的元器件符号库,库中的绝大部分符号是不同的半导体器件和集成电路器件。 其中一种是以元器件的类型为库文件名。一类是包含公司的名称。 B.常用的非商品化元件符号库 (1)ANALOG库:模拟电路中的各种无源元件。 (2)BREAKOUT库:在PSPICE进行统计模拟分析的时候,要求电路中的某些元件参数按照一定的规律变化。 (3)SOURCE库:主要包括各种电压源和电流源符号 (4)SOURCSTM库:里面主要包括可以进行配置的电源符号。 (5)SPECIAL库:在进行电路的特性分析法以及在电路分析中进行某些特殊处理时将采用这些符号。 - n) X/ ]) D; P6 J+ _: w' D+ `# D
A 、生成对应的模型库: 使用SPICE对常用的模拟集成器件仿真,模型库需要两种文件:.lib .olb。前者可通过SPICE软件原有 的模型库或直接从网上下载,后者可利用model edtitor加载.lib生成.olb。一个是描述网表的文件, 一个是原理图输入时需要的原理图封装。 (1)常用的模型主要有对应的.CIR 或者是 .lib .fam 常用的类型,主要的要求是只要对应的文件包含网表信息就可以了; (2)将找到的模型直接进行打开,然后另存为.lib的类型。
(3)将.lib文件转换为 (3.1)
(3.2)
(3.3)
(3.4)
(3.5) 选择上面确认按钮后就生成对应的.OLB文件,【应特别的注意上述生成的XX.lib和XX.olb文件对应的文件名应该相同】 生成.olb后,要在原理图库进行相应的添加,即可调用,绘制原理图。原理图封装的引脚标号的代表意义,可参看.lib文件。
% c) L3 ]7 ?6 J" k2 zB. 输入激励信号波形的设置: Pspice中进行DC,AC和TRAN分析时,分别采用不同类型的输入波形,而对应的波形是通过交互式变焦方式 确定的信号源的符号均存放在SOURCSTM符号库中。 (2)激励信号波形编辑模块STMED 2.1 在对应的库文件中选中对应的元件,放置后点击右键,
2.2
% V6 T2 g8 U4 N+ n O0 z9 O' i
在设置了对应的信号源的名称后,点击确认后可以进入信号编辑
设置好了信号的波形后,然后可以通过先选中对应的波形,也就是在下方点击对应名称的信号后,选中:
可以进行波形的一个调整,当然也可以在选定信号的前提下,进行其他的操作。 0 \( D f6 k, b& a- a& V
- 电路图仿真:
' E# I0 ]+ d7 p3 ^. _1 \8 o电路图的仿真主要需要完成下面的三个图标的一个配置就可以了。 在一个图中的设置:
第一个是添加设置的名称,inherit From中进行添加的实际上是以前的项目工程中已经设置的一些规则, 所以在进行设计的时候,下面的选择NONE就可以了。
第二步就是设置对应 edit simulation Profile中进行设计的一个设置,这个里面涉及到2个方面的设置。 一个是对库的设置,一个是对仿真的工作的一个设置。在对库的设置中, 在进行设计的时候要注意到两个问题,一个是下面library对应的路径,因为涉及到我们在工程中选择 的一些分离元件的使用问题,所以这个地方的地址一定要包含: D:\ProgramFiles\Cadence\allegro\tools\pspice\library 中黑色的部分。 第二个对应的部分就是对应configured中的设置,这个里面主要是进行所用到的一个元件的设计。 ( d. `8 ?1 H1 K4 k/ R* m
另外的一个部分就是对应的电路模拟分析类型和参数的设置,主要包括基本的分析类型,基本类 型中的电路特性分析,设置分析参数。 直流工作点分析: 对于直流工作点的分析,只有在有非线性电路里面才会有效。直流分析是非线性电路的分析基础, 在进行其它类型的分析中,直流仿真会首先执行,只是在这种情况下,输出文件不会有那么详细。 灵敏度分析: 灵敏度分析实质上是分析指定节点电压对电路中电阻,独立电压源,独立电流源,电压控制开关, 电流控制开关,二极管,三极管等元件参数的灵敏度。在仿真的时候只需要OUTPUT中添加对应的输出点。 直流传输特性分析: 直流分析时是在电路工作点处对电路元件进行线性化处理,然后计算出线性化电路的小信号增益,输入电阻,输出电阻等参数。 注意对应于节点信号的填写标准: V(节点名称), # r; e& J6 b/ j
直流扫描分析: 直流特性扫描分析的作用是,当电路中某一个参数在一定的范围内变化时,对自变量的每一次取值, 计算电路的直流偏执特性,在分析过程中将电容开路,电感短路各个信号源取其直流电平值,在进行 直流特性扫描时,还可以指定一个参变量并确定其变化范围。 因变量由对应的表笔MARKER标记来决定。
: R# [* v8 R# U% {/ r( g0 b; H T# A6 T2 L! D S
交流小信号频率特性分析: 计算电路的交流小信号频率响应特性,在进行交流分析时候并不需要指定交流信号源名,分析时电路图 中所有属性为AC的交流信号源的频率均同时按照,设定的规律变化并计算这些交流信号源共同作用下, 电路交流响应特性的变化。在交流小信号分析中,输出变量有MARKER标记来进行选择。 噪声分析:
# Q! b! P6 Q5 l& O+ |- C
- 选定一个节点作为输出节点,将每个电阻和半导体器件噪声源在该节点处产生的噪声电压均方根值叠加。
- 选定一个独立电压源或独立电流源,将(1)中的噪声等效到选定的节点。
- 间隔表示对应的每隔5个节点输出电路每一个噪声源在输出节点处产生的噪声分量大小。9 F* h+ c% I3 @6 O
温度分析: 如果要分析其它温度下电路特性的变化只需要在电路中选择temperature(sweep).
参数扫描: DC分析是一种关于电路直流偏执状况的基本电路特性分析,而参数扫描分析时使电路中的 某一个参数发生变化,然后对每一个变化值重复进行分析,因而不能将一个参数指定为参数扫 描分析中的变化参数,同时又指定为DC分析中的自变量或参变量。 - 需要将待扫描的量用标号来表示,同时要注意,将元件固定值改为某一个变量的要求为{marker},
- 同时要注意{}必须要进行保留。
0 @) G2 i- G$ @/ H, Z
(2) 在special 中选中PARAMETER,双击该标记在其属性中添加一个新的属性,该属性的名称就是(1) 中的变量marker. 并设定该marker的初始值。 蒙特卡洛分析: 蒙特卡洛分析主要 瞬态分析: 瞬态分析的目的就是在给定输入激励信号的作用下,计算电路输出端的瞬态响应。在进行瞬态分析时, 首先计算t=0时电路的初始状态,然后从t=0到某一给定时间范围内选取的一定时间步长,计算输出端 在不同时刻的输出电平。
终止时间:run to time 起始输出时间设置:start saving data 分析时间步长设置: maximum step size 初始状态设置:skipbp则瞬态分析时将跳过初始偏置点的计算。 控制输出文件内容的参数设置:
2 Scale Suffix
2 D# Q0 N: V' V! p) D& ?% mScale值 Capture的表述 备注6 U1 t/ h9 J3 P ~4 A; a8 j7 w
10 15 f/F或E-159 f/ V' D: ?7 p5 X U' E
10 12 p/P或E-125 Z5 d8 |; x! A9 n. A
10 9 n/N或E-9* W$ a- y" c( E' M9 g m8 q4 |
10 6 u/U或E-6 由于没有μ,故使用u或U' g& V2 d0 H& ?
10 3 m/M或E-3 注意∶M不表示百万
0 b- k2 I" w8 S7 F+ ^* }10+3 k/K或E3 f; h! }. X7 c& d" `8 a3 e
10+6 MEG或E6 由于m已被10-3使用,故使用MEG# z# k. W; S& D8 w7 ?1 y, x
10+9 g/G或E9; d; r7 @/ F& v
10+12 t/T或E12
, R# P% v5 @5 Q' O2 t' K
& I8 m5 y% V6 p' H& l) n6 l& t/ l( c+ W8 X5 T' e8 j4 g3 q f
|