|
简单写一下一般用法,有时间再整理一下,参考:cadence Ultrasim用户手册。
3 i$ q+ Z& b4 W6 C4 f5 t5 z8 i
4 |! s! W4 }$ u) \+ m/ ]介绍
! U/ f7 @# ~! L; Q ultrasim是cadence的fast spice晶体管级仿真器。采用模型简化、模型表格化、矩阵分割、事件驱动技术、多速率仿真等技术的ultrasim是传统spice的速度的10X- 10000X,而精度仅仅相差1%-5%,容量提高到数十亿器件(传统spice仅为50k)。3 b& k7 Q; q) \
9 Z$ M: A% J, t( v5 R3 P
用法10 N- w( b8 u- K# B1 o+ w3 r. y
ultrasim已经完全集成在cadence ADE(旧称artist)环境中,同spectre一样可以方便的调用,并提供图形界面的各个选项,具体可参考相关手册,本文重点讲述其命令行的方式使用。
- S3 t: }+ E+ F/ A8 a4 p. v% P" I& Z: I' A8 M0 q' e5 _0 V$ ~: t
用法2
( O j: a E! w; ~/ e8 H2 E1。在终端输入:
4 z3 E# x: A5 u5 S3 n ultrasim xx.sp
7 _% ~# @0 @1 m2 E1 q ultrasim -spectre xx.scs
" b- D, t ]# q. ^. Q0 t& | ultrasim -vlog xx.v$ R# k2 r6 ]- {% w" h
以上分别表示仿真xx.sp文件(netlist是hspice格式),xx.scs(netlist是spectre格式),xx.v(netlist是verilog格式)" d3 \" v# y$ j! `( ?
其中的ultrasim命令可以换成64bit的ultrasim64(要有64bit机器硬件与64bit OS以及64bit ultrasim的支持),64bit ultrasim可以访问超过4G的内存。
3 |: t& q* ^. m& m( S 还有一些其他选项,读者自己看吧
: X; s1 x2 n) c, V1 z9 @" `
3 n! {* `6 h# T! l' s& u2。 ultrasim的仿真模式。 根据对精度和速度要求的不同,ultrasim分为6种不同的仿真模式,分别是digital fast/digital accurate/mixed singal/analog Multi rate/analog mode/spice mode,在option选项种分别称为df da ms amr a s .9 }9 c; O: Z: Z @4 g
6种模式:数字加速、数字精度、混合信号、模拟多比率、模拟、spice 在精度上不断提高,而在速度上逐渐降低。其中df/da模式适用于数字电路(数字逻辑电路、门电路、触发器、ROM、RAM等)仿真,不要把这两种模式用于模拟电路仿真。4 I4 `7 W9 x3 ~. Y+ N a# H
df采用线型化的模型,与da模式相比,速度得到提升,但以我的经验,效果并不明显。$ @# @/ k* D0 ^3 k) Q4 ?% u
如果在option没有设置,默认是MS模式,兼顾精度与速度。; ^ j% q/ X! I U+ O( E T
AMR模式不能“本地化”(local)使用,就是说AMR模式只能用于整个电路而不能针对某一个模块使用,这点后面会有讲解。9 |7 F" J6 b2 x$ d
据我的经验,a模式通常是hspice的1.5∼3.5倍速率,s模式通常可能低于hspice的速度,但精度低于hspice,因此,s模式很少用到。" u$ @2 e" E1 {4 H! y1 b4 O
* \: X# ]+ X* o3。option中,仿真模式的设置。如下,在xx.sp文件内容如下:8 P" D/ H; E8 V4 B1 r/ {# X& a, r
2 ]6 K$ v1 X1 j! U. d4 v* test
0 t- V! G/ e5 z1 L$ O- L7 A" e' I***************************
( X" W3 s1 V% W2 D.usim_opt sim_mode=da xi1 xi2 #dff: L% H1 o4 @, c( L& I: L" M# H
.usim_opt sim_mode=a xi5 #driver @pmos2* a7 z- r/ o0 L/ P2 e; m; L3 x# l
.usim_opt wf_format=wdf
- \9 s* Y: V$ J6 Q( r+ p( s, f2 g*******************
) P' u- v' D5 d2 m.option post=1
- Z& E8 @6 T: X/ f6 o.inc 'netlist'# A) K& R) l' ]7 u& n. @) P/ A7 w6 ]
.lib 'xx.lib' tt% @% q3 o K' L! V/ f! }% {
% @, l \/ B7 e) k) r7 b! c
vxx xx gnd 5$ o' x8 n. H5 I4 W/ }. U7 e) \
····/ R, L- J# k+ U" Y/ ~; w- l( ]
····' | |3 ] x' [6 N. a
1 W4 U& T% |! n.tran 1u 1m* F/ N. t- K8 E
.probe v(net*) depth=2
/ x8 g* I) |$ Y7 C2 |) p.probe v(xi1.mp5)
( z) o3 ~1 W1 G5 }2 C) v( y.end+ A7 n) A9 h: q5 q) Z* B0 q
. o/ }" D3 r6 d
解释下,大家就清楚了:与hspice相比,ultrasim增加 .usim_opt作为options,前面的3个option分别表示:把子电路xi1 xi2 和cell(名称为dff的所有子电路) dff 设置为da仿真模式; 把xi5、cell driver、model pmos2(用到模型名称为pmos2的的mos管)设置为a模式; 生成的波形文件格式wdf。
/ z0 ?/ @* b" |) Q7 `+ f% I+ @$ a* } 倒数第二第三的probe分别表示:输出顶层和第二层以net开头的线网波形; 输出子电路xi1 下面的编号为mp5的mos管电流波形。
3 I8 N, |3 o r7 L/ A* A$ _- a 上面提到AMR模式不能本地化,也就是不能以 .usim_opt sim_mode=amr xi55 #dffr 等用于子电路和cell。 |
評分
-
查看全部評分
|