Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2008-4-21 18:53:20 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
简单写一下一般用法,有时间再整理一下,参考:cadence Ultrasim用户手册。  Y- G. L0 x+ J0 U( w

: g$ s7 O9 y0 M5 y6 W6 n3 B4 ?介绍
( D  v* k1 T9 V% A2 _    ultrasim是cadence的fast spice晶体管级仿真器。采用模型简化、模型表格化、矩阵分割、事件驱动技术、多速率仿真等技术的ultrasim是传统spice的速度的10X- 10000X,而精度仅仅相差1%-5%,容量提高到数十亿器件(传统spice仅为50k)。5 }1 }  E& O( J0 i& G: ^% z
4 w# d5 a1 }+ L. ^
用法1/ v8 }6 D6 t! c
ultrasim已经完全集成在cadence ADE(旧称artist)环境中,同spectre一样可以方便的调用,并提供图形界面的各个选项,具体可参考相关手册,本文重点讲述其命令行的方式使用。
  p- F8 `+ T6 q6 X  L* M# }' }' v
. _' B+ Q3 `4 t" d% K7 ?用法2
7 |  Z- X& \! k1。在终端输入:
  ^! _2 K- l( C            ultrasim xx.sp0 c: T+ w, D7 J9 `+ I( C
            ultrasim -spectre xx.scs( ?4 W. S/ p1 o# P
             ultrasim  -vlog xx.v
0 c' J, |7 ?6 Y' e# X8 w    以上分别表示仿真xx.sp文件(netlist是hspice格式),xx.scs(netlist是spectre格式),xx.v(netlist是verilog格式)% f/ a% Z/ ^: A! {  a( _$ R% U3 i
    其中的ultrasim命令可以换成64bit的ultrasim64(要有64bit机器硬件与64bit OS以及64bit ultrasim的支持),64bit ultrasim可以访问超过4G的内存。
% j. X% @$ M6 k! M    还有一些其他选项,读者自己看吧* O$ n+ |9 h2 ?' q) P& r1 h

  C9 j4 E* }- H" g2 B! [! v2。 ultrasim的仿真模式。 根据对精度和速度要求的不同,ultrasim分为6种不同的仿真模式,分别是digital fast/digital accurate/mixed singal/analog Multi rate/analog mode/spice mode,在option选项种分别称为df da ms amr a  s .
2 ]$ o1 S% c! d" f( t    6种模式:数字加速、数字精度、混合信号、模拟多比率、模拟、spice 在精度上不断提高,而在速度上逐渐降低。其中df/da模式适用于数字电路(数字逻辑电路、门电路、触发器、ROM、RAM等)仿真,不要把这两种模式用于模拟电路仿真。2 r# {$ I$ l5 b; g
    df采用线型化的模型,与da模式相比,速度得到提升,但以我的经验,效果并不明显。
, [% ~: F# K( g    如果在option没有设置,默认是MS模式,兼顾精度与速度。$ J/ }8 C% ]1 i8 U
    AMR模式不能“本地化”(local)使用,就是说AMR模式只能用于整个电路而不能针对某一个模块使用,这点后面会有讲解。
! ?& x3 ]2 D; Q( ^0 W5 V    据我的经验,a模式通常是hspice的1.5∼3.5倍速率,s模式通常可能低于hspice的速度,但精度低于hspice,因此,s模式很少用到。; C: S8 A8 E3 P' p  \) {

" R' O/ n  s) {, F6 @, R3。option中,仿真模式的设置。如下,在xx.sp文件内容如下:  w: S& F- c2 z6 \

5 o" U+ m0 S' `9 w* test
. V( I4 T$ `' i9 ^7 e5 T***************************
6 t2 A/ _" ^; [/ r5 F& @$ T+ @& R+ G.usim_opt sim_mode=da xi1 xi2 #dff
& T* G! E3 m( O( G/ S, e.usim_opt sim_mode=a xi5 #driver @pmos2
3 r( z3 O; J( G.usim_opt wf_format=wdf
8 D) N3 ^8 h' F% r' r, g*******************
; v: R  g  I' F! ?) J. [% s.option post=1" O+ {: G4 }% M4 Z$ @' h
.inc 'netlist'* Y$ f9 C9 b& U! L$ ?" v
.lib 'xx.lib' tt
9 d  g) R4 Z' g( A6 Q4 ?! a3 n* ?+ G0 u1 K0 F( r+ B
vxx xx gnd 56 V) q6 S0 t4 ?
····
4 B4 b4 |$ H, [, E····
7 h% Q' d8 W& Q
  G3 m) R' b5 U3 r2 D0 V.tran 1u 1m+ i" ]: P, i/ a9 O9 P' x
.probe v(net*) depth=2% M) w4 T  N0 _6 F) n
.probe v(xi1.mp5)
3 Q4 I, x. T2 B: g4 C.end
: W# a; V9 y9 K: @  j* p
2 F. r# P3 q: \+ K    解释下,大家就清楚了:与hspice相比,ultrasim增加 .usim_opt作为options,前面的3个option分别表示:把子电路xi1 xi2 和cell(名称为dff的所有子电路) dff 设置为da仿真模式; 把xi5、cell driver、model pmos2(用到模型名称为pmos2的的mos管)设置为a模式; 生成的波形文件格式wdf。
+ ?" T  M( Y0 R  k    倒数第二第三的probe分别表示:输出顶层和第二层以net开头的线网波形; 输出子电路xi1 下面的编号为mp5的mos管电流波形。) R9 z% O: g1 J0 r& Q( ?0 j% D  q
    上面提到AMR模式不能本地化,也就是不能以 .usim_opt sim_mode=amr xi55 #dffr 等用于子电路和cell。

評分

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

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享分享 頂9 踩 分享分享
3#
 樓主| 發表於 2008-4-21 18:53:51 | 只看該作者
4。公差容忍度设置
& t1 i; X) Q& l$ w) ?" D" U    speed可以设置总的公差容忍度tol(tol也可以单独设置),tol包括电压、电流等所有的公差容忍度之和。/ W( G, W) w- R# B8 s) R
    .usim_opt speed=2 设置tol=0.001,比较高的精度!
; b- t" A+ I7 L' U# S    .usim_opt speed=1 #vco 对vco cell使用0.0001的tol* k5 D( t+ u7 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,精度以此降低。, o+ e0 ?& m1 b4 t
    通常,如果精度要求不是很高,可以采用默认设置,而无需设置这一项。
3 e- Y% `* j& m7 X/ w( v+ s    tol还与解矩阵方程的收敛性有关,然而,我还从来没有碰到ultrasim不收敛的时候!!+ G7 o, B) s- D
    再强调一点:精度设置的越高,相应的速度越低!5 D. |4 v5 t; Y! y  S5 W* g

0 T% c1 }& \3 z5.矩阵分割设置
% ~7 w) A( e: q    ultrasim把大的电路矩阵分割成小的矩阵,以加快仿真速度,但同时会损失一些精度。analog选项用来控制矩阵分割的大小。5 e- I2 f' ]( d, |
    .usim_opt analog=2 xi9 设置xi9中电路analog=28 @1 L: z5 a$ O! ^1 E
    对这一选项,没有多大研究,通常我也采用默认的。6 Z4 O8 W0 \, r" b0 X
    以下是推荐的用法+ k: f8 K5 @; N+ v
8 Q5 M0 @7 t% e
analog = 0 Digital and memory circuits  j. L9 S2 i- x' k# S; t- ^9 J- u
analog = 1 Digital, memory, and mixed signal circuits (default)
6 Z% t- z+ b8 P' u% ~analog = 2 Mixed signal, analog, and RF circuits) d- D: W; Z8 u' B; f+ F# K
analog = 3 Analog and RF circuits) K7 o: C" f8 z) e% X" |
analog = 4 Mixed signal circuits (high sensitivity)
2#
 樓主| 發表於 2008-4-21 18:53:37 | 只看該作者
3。关于波形文件格式的设置。
0 e6 p9 A- g9 h& a- n    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的支持了。
3 Q, Y' o& u& X" ~) y    好了,根据自己使用的波形工具选择生成的波形文件类型吧。
+ @1 M  G4 L- e  T% H+ a    .usim_opt wf_format=wdf
0 N: y4 Z7 V/ O1 [1 V7 s" H. u. }: E    把输出波形生产wdf格式,如果有多条语句,那么讲同时生产不同的波形文件。
# H$ ]  y4 b6 W  D+ t* G2 p& U& K8 M
$ S4 X1 U2 N" @9 E8 ^
    其他波形选项:6 z2 e4 W. [! L: ^" U
    .usim_opt dump_step=100n 每100ns,把仿真的波形数据从内存写入磁盘; _1 I+ v3 O" j+ S) b
    .usim_opt wf_filter=0 不要虑掉任何波形数据(主要用于精度很高的电路)
& ]( ^4 @% i( W8 N* K8 S    其他选项就不详述了
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-8 07:55 AM , Processed in 0.108007 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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