Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

搜索
1 2 3 4
查看: 14214|回復: 2
打印 上一主題 下一主題

[好康相報] 原创:Ultrasim用法(待续)

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2008-4-21 18:53:20 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
简单写一下一般用法,有时间再整理一下,参考:cadence Ultrasim用户手册。
) B- k( {$ l2 h" H, M# A9 L  q- W$ H, b4 V% F4 S  {# K
介绍
4 H( Y/ Z- W1 Y3 I5 @' _& G7 t    ultrasim是cadence的fast spice晶体管级仿真器。采用模型简化、模型表格化、矩阵分割、事件驱动技术、多速率仿真等技术的ultrasim是传统spice的速度的10X- 10000X,而精度仅仅相差1%-5%,容量提高到数十亿器件(传统spice仅为50k)。$ ]  A; x- m- h( j7 [1 w
6 z, r- N6 d! c0 ^+ F
用法1
. E" P( T. V& H) y$ Oultrasim已经完全集成在cadence ADE(旧称artist)环境中,同spectre一样可以方便的调用,并提供图形界面的各个选项,具体可参考相关手册,本文重点讲述其命令行的方式使用。. S5 T* u+ @1 e5 E# T- v. L8 T

4 t# q5 `% E8 W' f7 t/ F# o用法2' B# x2 Z4 \; y5 d, i
1。在终端输入:/ x! |# T8 _; r9 I6 }/ e9 Y- V
            ultrasim xx.sp/ Y( c2 |; q% Q5 t. k" C) p
            ultrasim -spectre xx.scs
+ e3 s8 a3 r% [0 K. M: I             ultrasim  -vlog xx.v
/ Y# ]! e0 N" B! b$ n    以上分别表示仿真xx.sp文件(netlist是hspice格式),xx.scs(netlist是spectre格式),xx.v(netlist是verilog格式)% E! P0 J, s1 t" [
    其中的ultrasim命令可以换成64bit的ultrasim64(要有64bit机器硬件与64bit OS以及64bit ultrasim的支持),64bit ultrasim可以访问超过4G的内存。: M, F  f" l% I; q1 }  z
    还有一些其他选项,读者自己看吧: r! T/ Q4 D8 k  g* U

# ~& A5 E. Z* O4 K1 y2。 ultrasim的仿真模式。 根据对精度和速度要求的不同,ultrasim分为6种不同的仿真模式,分别是digital fast/digital accurate/mixed singal/analog Multi rate/analog mode/spice mode,在option选项种分别称为df da ms amr a  s .
) _; S8 C0 M) H! a" g    6种模式:数字加速、数字精度、混合信号、模拟多比率、模拟、spice 在精度上不断提高,而在速度上逐渐降低。其中df/da模式适用于数字电路(数字逻辑电路、门电路、触发器、ROM、RAM等)仿真,不要把这两种模式用于模拟电路仿真。, i4 F  P  E& x% z! ]* f
    df采用线型化的模型,与da模式相比,速度得到提升,但以我的经验,效果并不明显。
; Y7 z: ]5 ^" K* ~6 x: U# |    如果在option没有设置,默认是MS模式,兼顾精度与速度。
# @, N3 d) W* A& Q# ]    AMR模式不能“本地化”(local)使用,就是说AMR模式只能用于整个电路而不能针对某一个模块使用,这点后面会有讲解。
4 s* l1 k% L' M5 w# q( J    据我的经验,a模式通常是hspice的1.5∼3.5倍速率,s模式通常可能低于hspice的速度,但精度低于hspice,因此,s模式很少用到。/ t  P! @" ]+ G1 `" E; h

' F6 d8 W% B% @0 B  d* E3。option中,仿真模式的设置。如下,在xx.sp文件内容如下:" W  l9 {. u8 ?9 u, b  s5 i4 b5 s
7 F8 a. P( r# H' `
* test
! F; I8 c$ W* \* ~' ], |& H***************************
7 [; K  y/ q. k5 G( n$ v+ M1 h.usim_opt sim_mode=da xi1 xi2 #dff6 C/ `# \/ a* M, g# ]$ s
.usim_opt sim_mode=a xi5 #driver @pmos2
/ T% t! e* b& a* N8 c- `.usim_opt wf_format=wdf
1 e0 d4 Q* m/ P) Y. M+ ?*******************$ H8 _; f& ~- ]7 |! t9 O
.option post=11 T! ~/ j6 b9 [) F% I1 M
.inc 'netlist'
  U  g' [: p5 b" e.lib 'xx.lib' tt
. S( g) o, Y; X( V! B! C$ c/ N. `) Z, K8 L) T
vxx xx gnd 5
8 d: g; k/ G1 L7 J4 h····
. F4 \3 l" a# @! u$ d% {# q····; K1 Y' X, g/ \
  r' g8 \+ J" L) L& |, X
.tran 1u 1m% O% ]1 c3 Q2 _
.probe v(net*) depth=2
. x; i  E0 j* r5 D9 d1 C.probe v(xi1.mp5)
4 ]( b. B3 p5 ~8 n.end
8 a) U  r% t8 E, l3 \% f # k3 o& h# E7 C
    解释下,大家就清楚了:与hspice相比,ultrasim增加 .usim_opt作为options,前面的3个option分别表示:把子电路xi1 xi2 和cell(名称为dff的所有子电路) dff 设置为da仿真模式; 把xi5、cell driver、model pmos2(用到模型名称为pmos2的的mos管)设置为a模式; 生成的波形文件格式wdf。1 J" e' {! p* B
    倒数第二第三的probe分别表示:输出顶层和第二层以net开头的线网波形; 输出子电路xi1 下面的编号为mp5的mos管电流波形。7 U9 o1 j8 g5 Y) y
    上面提到AMR模式不能本地化,也就是不能以 .usim_opt sim_mode=amr xi55 #dffr 等用于子电路和cell。

評分

參與人數 1 +1 收起 理由
heavy91 + 1 文章可以稍作編輯...看起來會更好...

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂9 踩 分享分享
2#
 樓主| 發表於 2008-4-21 18:53:37 | 只看該作者
3。关于波形文件格式的设置。! D  \  C, A( ^1 o  v5 U* U+ y
    ultrasim支持以多种波形文件格式存储波形,主要有:psf sst2 fsdb wdf,默认的波形文件格式是psf(cadence的awd和新的wavescan都可以打开)。sst2是cadnce新的压缩波形文件格式,据称生成的波形文件最小,可以使用cadence的wavescan和simvision打开;fsdb是debussy开发的可以使用其nwave打开,生成的波形文件也比较小;wdf是sandwork开发的文件格式,感觉和fsdb的文件大小差不多,一般是hspice生产的.tr# 格式文件大小的1/3或更小 。 好像记得debussy和sandwork现在都被cadence的竞争对手synopsys收购了。其中sandwork的spice explorer(或称waveview analyzer)支持psf .tr#  fsdb wdf .dat(pspice) wdb 几乎所有主流的格式,功能十分强大,遗憾的是不支持sst2!现在被synopsys收购了,可能更不容易实现sst2的支持了。; x1 }( }1 E8 V6 I( g
    好了,根据自己使用的波形工具选择生成的波形文件类型吧。( K! }5 D0 c4 }) w4 e! ?
    .usim_opt wf_format=wdf/ o4 M! ?" _& \8 d$ _
    把输出波形生产wdf格式,如果有多条语句,那么讲同时生产不同的波形文件。
$ C7 n' X% @# E3 k+ ?+ u: Y
: E1 ?' |( K' f, Q4 G! H: ~( N
+ E7 A* r8 E) n7 ?) \6 l    其他波形选项:
- ~3 H. r5 d! a/ O$ \    .usim_opt dump_step=100n 每100ns,把仿真的波形数据从内存写入磁盘
6 j( _7 O; ~5 L/ }. |# P    .usim_opt wf_filter=0 不要虑掉任何波形数据(主要用于精度很高的电路)/ s3 C) R: y$ ?: I' E
    其他选项就不详述了
3#
 樓主| 發表於 2008-4-21 18:53:51 | 只看該作者
4。公差容忍度设置
2 J" ~. u% c" I% u& f+ c    speed可以设置总的公差容忍度tol(tol也可以单独设置),tol包括电压、电流等所有的公差容忍度之和。% g. e3 v! N/ [% [. I
    .usim_opt speed=2 设置tol=0.001,比较高的精度!  ]& U, ^' g4 q, ~5 q. {4 C4 A& n
    .usim_opt speed=1 #vco 对vco cell使用0.0001的tol9 P; F: T( a. h6 \& ^" N" P
    speed=1,2,3,4,5,6,7,8对应的tol分别是0.0001 ,0.001,0.0025,0.005,0.02,0.02,0.04,0.07,精度以此降低。+ `! }9 K( `* m* w# A5 O$ R) ~
    通常,如果精度要求不是很高,可以采用默认设置,而无需设置这一项。
4 y3 |& D% z" W  T    tol还与解矩阵方程的收敛性有关,然而,我还从来没有碰到ultrasim不收敛的时候!!* K3 `9 M9 V: Y' |& M. M4 B
    再强调一点:精度设置的越高,相应的速度越低!. V: P) e& c2 ^4 E1 z, p. w. @
8 c0 u' ~* {2 g: m+ N
5.矩阵分割设置
+ |3 `1 b% |$ Z. o3 F    ultrasim把大的电路矩阵分割成小的矩阵,以加快仿真速度,但同时会损失一些精度。analog选项用来控制矩阵分割的大小。  Q. D2 d6 m6 [% b- g. I
    .usim_opt analog=2 xi9 设置xi9中电路analog=2+ T1 K$ O0 I& P. `; O
    对这一选项,没有多大研究,通常我也采用默认的。5 _0 r* v+ j5 B" j9 @
    以下是推荐的用法
% S; x5 B6 |! Y5 _* G% U9 v& x# Z* c3 X" Y) F9 W) R, y: v# O7 ]
analog = 0 Digital and memory circuits9 H; m) j; p; f8 h2 G! ~) m
analog = 1 Digital, memory, and mixed signal circuits (default). {+ s* N( B/ f' o3 T5 q
analog = 2 Mixed signal, analog, and RF circuits* Z! D3 I: D. a& z+ f% o& Y
analog = 3 Analog and RF circuits
, a5 x4 D( ~+ @4 R- V! u  S; kanalog = 4 Mixed signal circuits (high sensitivity)
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

首頁|手機版|Chip123 科技應用創新平台 |新契機國際商機整合股份有限公司

GMT+8, 2024-11-1 06:44 AM , Processed in 0.164009 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表