Chip123 科技應用創新平台

 找回密碼
 申請會員

QQ登錄

只需一步,快速開始

Login

用FB帳號登入

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

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

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

( y) V: I9 v2 H, M  O介绍, G  `& s, l! H4 |
    ultrasim是cadence的fast spice晶体管级仿真器。采用模型简化、模型表格化、矩阵分割、事件驱动技术、多速率仿真等技术的ultrasim是传统spice的速度的10X- 10000X,而精度仅仅相差1%-5%,容量提高到数十亿器件(传统spice仅为50k)。( |/ G( {" Z, ~2 A# n3 m
( U1 H  d0 o" m% h' e
用法1
" M# Y: J+ c, n# Eultrasim已经完全集成在cadence ADE(旧称artist)环境中,同spectre一样可以方便的调用,并提供图形界面的各个选项,具体可参考相关手册,本文重点讲述其命令行的方式使用。
1 b1 _* e& Y% H; T" c7 h* S0 J" _6 {8 L  a4 P/ l& V  K
用法2
- F8 p, Y& b/ O9 K0 w1。在终端输入:
1 _5 V; r  x9 I7 E            ultrasim xx.sp
, M/ H* y6 [) |9 e& L$ F            ultrasim -spectre xx.scs
! B0 H; M, c. ?! I( b             ultrasim  -vlog xx.v8 V1 S" m& j+ Y3 j3 b
    以上分别表示仿真xx.sp文件(netlist是hspice格式),xx.scs(netlist是spectre格式),xx.v(netlist是verilog格式)
: [1 [/ u$ A+ M( ]: i3 {    其中的ultrasim命令可以换成64bit的ultrasim64(要有64bit机器硬件与64bit OS以及64bit ultrasim的支持),64bit ultrasim可以访问超过4G的内存。
. z. p9 f" I: w7 V0 T" J, \# V- _5 P    还有一些其他选项,读者自己看吧1 z  W" l+ E: }2 n7 t+ c

( h" ]+ B7 f- w, Z" U! c2。 ultrasim的仿真模式。 根据对精度和速度要求的不同,ultrasim分为6种不同的仿真模式,分别是digital fast/digital accurate/mixed singal/analog Multi rate/analog mode/spice mode,在option选项种分别称为df da ms amr a  s .
  e* `3 J9 {. L5 t1 F. b    6种模式:数字加速、数字精度、混合信号、模拟多比率、模拟、spice 在精度上不断提高,而在速度上逐渐降低。其中df/da模式适用于数字电路(数字逻辑电路、门电路、触发器、ROM、RAM等)仿真,不要把这两种模式用于模拟电路仿真。
7 X( s3 B2 F2 Q! M8 ^9 E    df采用线型化的模型,与da模式相比,速度得到提升,但以我的经验,效果并不明显。4 T( C& ^/ e& {
    如果在option没有设置,默认是MS模式,兼顾精度与速度。
3 G6 Y! I7 d. o- b7 u0 ?1 m+ T    AMR模式不能“本地化”(local)使用,就是说AMR模式只能用于整个电路而不能针对某一个模块使用,这点后面会有讲解。
+ u0 Z& J5 U6 \" _) A$ [    据我的经验,a模式通常是hspice的1.5∼3.5倍速率,s模式通常可能低于hspice的速度,但精度低于hspice,因此,s模式很少用到。, P. W5 `, f; k% U+ J2 l  n& g$ ?! L

5 ~) G# i2 i& o' U. U# I/ e3。option中,仿真模式的设置。如下,在xx.sp文件内容如下:; a6 O8 [$ T+ ?$ V8 c7 \: J
9 H" G' ?+ Z9 \7 A
* test
/ z. ^* ^) y2 Z5 ?, V' a6 i***************************
' p5 n, B, N/ i$ U% Z# h* b.usim_opt sim_mode=da xi1 xi2 #dff
1 b  Y) O) H( r) w6 f. l1 n.usim_opt sim_mode=a xi5 #driver @pmos2# O. e/ H  }. w  x1 W
.usim_opt wf_format=wdf
5 y. _' v5 m! z7 F*******************- c- g2 _8 o1 D1 `, e4 H) @
.option post=1) ^* x& ?( g. k/ z) T" N6 e' [8 l% D
.inc 'netlist'- G3 W; p6 G$ V- a* X  U
.lib 'xx.lib' tt
8 m  R0 K& B* o
0 X; O- e7 o! {6 U8 uvxx xx gnd 5+ u; U6 W% i1 P# A" F
····
1 A5 M+ H0 `7 S* g& S# I: h  X····
1 c3 v# y: [& ~
( z1 f$ c. C/ v+ n, R  h.tran 1u 1m* E: {: k4 s0 M% [
.probe v(net*) depth=2
) j& d3 S# I' s5 C* K0 x: p( o/ E.probe v(xi1.mp5)0 K+ v; H: Z+ O4 h9 R5 V  l2 r, A
.end6 m2 ~" k* q  z5 l5 T

1 K+ J- y1 w0 f9 k1 |& n    解释下,大家就清楚了:与hspice相比,ultrasim增加 .usim_opt作为options,前面的3个option分别表示:把子电路xi1 xi2 和cell(名称为dff的所有子电路) dff 设置为da仿真模式; 把xi5、cell driver、model pmos2(用到模型名称为pmos2的的mos管)设置为a模式; 生成的波形文件格式wdf。: c; @' }) h$ Z
    倒数第二第三的probe分别表示:输出顶层和第二层以net开头的线网波形; 输出子电路xi1 下面的编号为mp5的mos管电流波形。
. k) ]1 e: g- s! x( B9 n    上面提到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。关于波形文件格式的设置。
7 k( T/ \; j% b" Q    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的支持了。7 G$ {7 [- ]) U5 d, y! L, \. b
    好了,根据自己使用的波形工具选择生成的波形文件类型吧。
& w) G0 Y3 s7 a8 O0 h% u  J; ?, q    .usim_opt wf_format=wdf
  i4 b( p- A6 B: l/ h2 w- r; V    把输出波形生产wdf格式,如果有多条语句,那么讲同时生产不同的波形文件。
: t- u9 Z! U  ?: ^6 l# K& C- }
* w- x1 v& k4 l
' w3 R6 l1 i- f6 n    其他波形选项:
+ a' x7 k' A- I" s; k4 A* H! |0 p    .usim_opt dump_step=100n 每100ns,把仿真的波形数据从内存写入磁盘# w6 e. X, g) t; f  p) @- O
    .usim_opt wf_filter=0 不要虑掉任何波形数据(主要用于精度很高的电路)
  \+ s4 S/ T/ T    其他选项就不详述了
3#
 樓主| 發表於 2008-4-21 18:53:51 | 只看該作者
4。公差容忍度设置
  D# q+ w4 K% B8 J    speed可以设置总的公差容忍度tol(tol也可以单独设置),tol包括电压、电流等所有的公差容忍度之和。1 }8 u1 n% f, c
    .usim_opt speed=2 设置tol=0.001,比较高的精度!! o7 Z/ ?0 \& s+ K# v
    .usim_opt speed=1 #vco 对vco cell使用0.0001的tol- S" j5 Y9 }; o! q' d8 s* ^
    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,精度以此降低。2 |  x+ C, |5 @7 G
    通常,如果精度要求不是很高,可以采用默认设置,而无需设置这一项。) V& d# u" \: R0 q
    tol还与解矩阵方程的收敛性有关,然而,我还从来没有碰到ultrasim不收敛的时候!!  P% Q# P, n  m; `/ K
    再强调一点:精度设置的越高,相应的速度越低!8 [8 }" S7 V. ]" c- b' ^$ @
) z( |6 W% S7 y% p# I
5.矩阵分割设置
2 q0 m% f( y$ M1 X    ultrasim把大的电路矩阵分割成小的矩阵,以加快仿真速度,但同时会损失一些精度。analog选项用来控制矩阵分割的大小。
& ]: W/ ]  z# o1 k4 l    .usim_opt analog=2 xi9 设置xi9中电路analog=2
6 S: Z8 Y" `- Z: y8 A! J0 \    对这一选项,没有多大研究,通常我也采用默认的。
+ J% y+ _8 o/ q0 V: i  \2 K5 Z    以下是推荐的用法
1 P  d& K. A5 n5 S8 m
  Q* {' W6 Z) _5 Y1 |. ?analog = 0 Digital and memory circuits
- [& H7 G7 V* {: V# A$ Y4 }analog = 1 Digital, memory, and mixed signal circuits (default)% k. N' o9 g( O+ p3 d3 K. I" y
analog = 2 Mixed signal, analog, and RF circuits
# F6 N+ k1 R% b( z. j' M- ranalog = 3 Analog and RF circuits- P1 t+ ]; ?- y& I9 N* b4 I
analog = 4 Mixed signal circuits (high sensitivity)
您需要登錄後才可以回帖 登錄 | 申請會員

本版積分規則

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

GMT+8, 2024-5-15 04:49 AM , Processed in 0.101513 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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