Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

  [複製鏈接]
跳轉到指定樓層
1#
發表於 2008-4-21 18:53:20 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
简单写一下一般用法,有时间再整理一下,参考:cadence Ultrasim用户手册。7 V" @; s/ A; @( [2 }; o

: b/ y9 W' B3 s9 h+ E  }3 H介绍
% k5 s0 a& `. V0 f$ ~0 ~2 x    ultrasim是cadence的fast spice晶体管级仿真器。采用模型简化、模型表格化、矩阵分割、事件驱动技术、多速率仿真等技术的ultrasim是传统spice的速度的10X- 10000X,而精度仅仅相差1%-5%,容量提高到数十亿器件(传统spice仅为50k)。0 L8 `9 E1 j& k; T" A3 I# k
! q% u( x2 @$ ~! p' l" r1 _
用法1
3 X" Y) S1 q+ x" t$ V9 ~! E. v9 R& Gultrasim已经完全集成在cadence ADE(旧称artist)环境中,同spectre一样可以方便的调用,并提供图形界面的各个选项,具体可参考相关手册,本文重点讲述其命令行的方式使用。- f0 D4 \6 ]5 T8 e

. z0 k. B$ A2 c& u$ X用法2
3 m0 O0 s$ ~/ @7 L5 Y% K: }1。在终端输入:
$ I- t5 F, L$ l7 t1 U+ X            ultrasim xx.sp
: k0 n* B" B# m6 u  o2 r            ultrasim -spectre xx.scs
6 N: O! \- o2 D4 T2 T" X             ultrasim  -vlog xx.v- c: N# h" \. |1 Q* K( |8 v
    以上分别表示仿真xx.sp文件(netlist是hspice格式),xx.scs(netlist是spectre格式),xx.v(netlist是verilog格式)9 y5 z2 S% p( X. V9 c4 @6 z" t
    其中的ultrasim命令可以换成64bit的ultrasim64(要有64bit机器硬件与64bit OS以及64bit ultrasim的支持),64bit ultrasim可以访问超过4G的内存。
/ G. L+ ~8 Y, M- d2 B    还有一些其他选项,读者自己看吧2 \( G5 B( F: }4 }: G5 q
; q& j- ^% ^9 Q6 I4 h
2。 ultrasim的仿真模式。 根据对精度和速度要求的不同,ultrasim分为6种不同的仿真模式,分别是digital fast/digital accurate/mixed singal/analog Multi rate/analog mode/spice mode,在option选项种分别称为df da ms amr a  s .) D5 J5 l: ?+ }. l% n' e
    6种模式:数字加速、数字精度、混合信号、模拟多比率、模拟、spice 在精度上不断提高,而在速度上逐渐降低。其中df/da模式适用于数字电路(数字逻辑电路、门电路、触发器、ROM、RAM等)仿真,不要把这两种模式用于模拟电路仿真。
6 }2 N) D% }. }    df采用线型化的模型,与da模式相比,速度得到提升,但以我的经验,效果并不明显。
. T/ C/ r- L# h    如果在option没有设置,默认是MS模式,兼顾精度与速度。
4 h( Z: y/ R4 x! C& O( c, o    AMR模式不能“本地化”(local)使用,就是说AMR模式只能用于整个电路而不能针对某一个模块使用,这点后面会有讲解。
: b1 j% M: |5 f    据我的经验,a模式通常是hspice的1.5∼3.5倍速率,s模式通常可能低于hspice的速度,但精度低于hspice,因此,s模式很少用到。( ?# p3 ~' q" Q3 i2 x# m# ^

3 @& B5 i# P( |2 e3。option中,仿真模式的设置。如下,在xx.sp文件内容如下:
' d( _; Y' i! ^3 I" y
9 o# {6 h2 Z( h% b8 W; G3 P* test
* S* R# z$ J7 g" B***************************
- M7 ~6 o8 C" T" S3 l.usim_opt sim_mode=da xi1 xi2 #dff
9 j  _( O1 r' a3 [% A.usim_opt sim_mode=a xi5 #driver @pmos2
2 v/ @6 X# N: ^4 ^0 ]1 L.usim_opt wf_format=wdf" E+ U; c" U8 j6 t1 Q' N
*******************
. a$ Z6 O4 g/ f.option post=1
; C3 u) C' b2 z, Y% Q.inc 'netlist'1 {: ^5 ?/ D0 Y
.lib 'xx.lib' tt
9 R3 K4 h# v& `5 n" e& [
0 }5 D3 j5 l3 L/ Z: m" vvxx xx gnd 5
5 o5 n0 n/ c, c5 ?1 s8 H····' E- O& Y) @. j/ o- S  a) R
····* d- r( `! t* J* `% {

; R$ ]. O; H3 |% |$ ]  v.tran 1u 1m! u* \3 e, x( V' f: I& }
.probe v(net*) depth=2. i7 y( j1 T) X/ C% t
.probe v(xi1.mp5)% w3 f8 H- h% o4 K' \5 G1 d# ]
.end
& ^# o8 S6 \0 c4 q8 C0 \0 z6 A4 o
6 |; b& {5 V3 Y7 v8 V    解释下,大家就清楚了:与hspice相比,ultrasim增加 .usim_opt作为options,前面的3个option分别表示:把子电路xi1 xi2 和cell(名称为dff的所有子电路) dff 设置为da仿真模式; 把xi5、cell driver、model pmos2(用到模型名称为pmos2的的mos管)设置为a模式; 生成的波形文件格式wdf。
. ^4 x3 n, e) S2 n4 U$ k    倒数第二第三的probe分别表示:输出顶层和第二层以net开头的线网波形; 输出子电路xi1 下面的编号为mp5的mos管电流波形。
+ Z8 H% `$ ^& o+ A! I    上面提到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。公差容忍度设置; y. K) M" H. p% i! S3 A
    speed可以设置总的公差容忍度tol(tol也可以单独设置),tol包括电压、电流等所有的公差容忍度之和。
+ g4 C6 W( U3 m1 f5 E    .usim_opt speed=2 设置tol=0.001,比较高的精度!
6 c0 w7 X" F" C2 b    .usim_opt speed=1 #vco 对vco cell使用0.0001的tol& j: k+ R6 w1 o* E4 G
    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,精度以此降低。
7 M( }" l1 K/ \- I5 H: _/ }$ F3 }    通常,如果精度要求不是很高,可以采用默认设置,而无需设置这一项。
, L! E$ `( z+ ~7 q6 G    tol还与解矩阵方程的收敛性有关,然而,我还从来没有碰到ultrasim不收敛的时候!!
; I2 O, l+ H$ Y: j    再强调一点:精度设置的越高,相应的速度越低!' m: }4 G0 g) |1 F

5 m& R! U+ C- C$ ^& H5.矩阵分割设置! X: ^  y$ @% B2 K) ]
    ultrasim把大的电路矩阵分割成小的矩阵,以加快仿真速度,但同时会损失一些精度。analog选项用来控制矩阵分割的大小。1 x6 W# h- u, h
    .usim_opt analog=2 xi9 设置xi9中电路analog=24 A& W4 W6 v! \3 a7 f& s
    对这一选项,没有多大研究,通常我也采用默认的。! w$ @( e2 n1 N- A  G$ m
    以下是推荐的用法. I/ J6 h7 D$ x% ~9 t1 n% z7 ]0 V7 |
9 j. F5 K. ?% `3 W7 E$ K9 h
analog = 0 Digital and memory circuits6 N6 R; y8 T! M! t; ^- ]
analog = 1 Digital, memory, and mixed signal circuits (default): w( _/ ~5 ?0 H
analog = 2 Mixed signal, analog, and RF circuits5 V( T( O  l1 m
analog = 3 Analog and RF circuits! u/ g% ^/ {2 V
analog = 4 Mixed signal circuits (high sensitivity)
2#
 樓主| 發表於 2008-4-21 18:53:37 | 只看該作者
3。关于波形文件格式的设置。
+ T5 j$ j" E" p% s    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的支持了。- ^- g! T; i. V7 H
    好了,根据自己使用的波形工具选择生成的波形文件类型吧。9 m' n) ?4 o( C- t
    .usim_opt wf_format=wdf
2 y% ~# C! z, w    把输出波形生产wdf格式,如果有多条语句,那么讲同时生产不同的波形文件。% Q0 V- j& _, U* e7 v: a  {
) l, b) [2 `' k" Q- c4 T! E

2 q& G8 H7 i$ {! r3 W  w- ~    其他波形选项:% h7 C! W  g6 V
    .usim_opt dump_step=100n 每100ns,把仿真的波形数据从内存写入磁盘2 v3 h8 D& o1 i' S! _, x
    .usim_opt wf_filter=0 不要虑掉任何波形数据(主要用于精度很高的电路)% p9 s: Q5 v+ z6 u7 R7 d
    其他选项就不详述了
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-12-23 06:49 PM , Processed in 0.156009 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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