《HSIM仿真工具研究使用报告》

《HSIM仿真工具研究阶段汇报》
                                            ---- 胡滨  2006.1.4
                                                  张雷鸣修正 2007 10.9
1).HSIM简介:
HSIM(基于Nassda公司的专利层次化数据存储和同构匹配算法)是全球第一个满足深亚微米设计需求的全电路、层次化的晶体管级仿真器。
HSIM可以准确的仿真电路的各种行为,包括:电路的功能、电压和电流波形、时序和功耗信息、电源网络的电压降、串扰噪声等。由于采用了创新的层次化数据存储和同构匹配算法,HSIM对仿真的电路规模几乎没有限制,真正能够对HSIM仿真产生影响的决定性因素是仿真的硬件平台。因为随着仿真的进行,迭代次数越来越多,观测点的数据也越来越大。而想观察这些观测点必须使用第三方软件,比如debussy,但是第三方软件支持的观测数据容量是有限的,因此在使用改软件进行仿真时应该适当的控制仿真的精度与观测信号的数量。目前已知的极限情况是512M内存,P4 3.0配置的机器在对DLL仿真时,如果精
度较高可能需要20个小时才能完成25us的仿真,需要注意的是DLL中有很多的寄存器单元,而寄存器单元正是在所有仿真软件中最耗时的电路。所以建议最好是使用配置较高的双核CPU比较大的内存来运行HSIM及其仿真波形观测软件debussy。层次化数据存储免除了仿真器处理电路冗余单元和子电路对内存的需求,因此HSIM可以容易地做到高容量的全电路仿真;同构匹配可以减少对冗余单元和子电路的计算量。目前,该算法已经获得美国专利。
HSIM可以象SPICE一样用于任何电路的瞬态扫描、交流扫描、直流扫描和蒙特卡罗分析扫描仿真,而且它比SPICE快很多倍。HSIM的强项在于它维持一定精度和快速的情况下,对数以千万计晶体管的仿真能力HSIM的用户可以用它来对大的电路模块、一组电路模块或者整个电路做晶体管级仿真,尤其是对于包含大量寄存器与存储器单元的大型电路系统。虽然hsim的精度相对hspice和其他仿真器要差一些,但是如果只关注系统在模拟仿真的环境下的功能是否正确的话还是可以尝试一下大的,尤其是在包含较大数字模块较小模拟模块的混合信号系统中使用hsim是具有很大优势的。因为HSIM是根据I/V LUT的原理来进行工作的,而I/V LUT的有效数字位数决定了仿真的精度和速度,这就决定了他在高速的情况下不精确而在精确的情况下不高速的特性。因此对于hsim而言比较合理的使用方案是先使
nclaunchHspice或者爱心预支Spectre进行底层模块单元的数字与模拟仿真,得到对应的延迟与功耗仿真结果,然后再使用HSIM进行全芯片的模数混合仿真,验证功能是否正确。
HSIM不同于其它同类仿真器之处在于它的全电路仿真器能力免去了用户烦琐的划分子电路的工作。同时,HSIM也免去了用户编写模拟电路高层次模型的工作,这类模型只是在用户描述电路功能时有用,而在实现整个设计时却毫无用处。HSIM可以高速处理超大容量电路,它保留了接近于SPICE的精度。HSIM在轻微增加CPU时间的前提下,也可以处理电路的耦合与感应现象。它的完美的RC约减能力可以有效地减少布局寄生参数的数量。另外,HSIM的自动层次化抽取能力可以自动的从"打平"的网表中生成层次化网表以用于HSIM独到的层次化仿真。
基于Nassda专有的技术,HSIM结合了全芯片晶体管级验证所需的特殊技术,包括:层次化存储技术:以减少工作站内存和磁盘空间占用,能为当今高端的数百万晶体管级电路提供一个高效率的层次化数据处理机制;层次化的RC精简算法:用以在层次化电路数据结构中压缩寄生电阻电容的个数同时保持很高的精度;高效的层次化的矩阵方程求解器:使得电路仿真能在实现层次化的同时保持SPICE精度。
Hsim支持的仿真格式有儿童虚拟社区verilogvhdlspice的网表格式(比如cdlspi格式,前者只能看到展平后顶层端口的信号而不能看到模块内部的信号,后者则可以根据需要观测任何一级的信号),同时也支持数模混合仿真,还可以通过文件调用实现对c淘宝10.11事变、verilog等其他语言的调用。因此hsim是一种非常灵活仿真工具。一般在使用hsim作全芯片的模拟仿真时,使用spice格式的网表和语法更为方便。
层次化反标:使用高效的参数精简技术,全芯片的SPICE精度晶体管级分析方法能够识别出今天设计中的纳米效应。今天先进的post-layout工具能够把寄生参数反标到pre-layout层次化网表中,这种方法在保持SPICE精度的同时显著得增加了验证的能力和减少了验证的时间。
同构匹配技术:Nassda专利的同构匹配技术,能极大得提高仿真性能。使用这种技术,仿真器对于重复的电路元件不再进行重复计算,这极大得提高了运行速度和计算容量。这种高性能、大容量的仿真能力帮助设计队伍能进行高效的纳米设计验证。
HSIM使用推荐和限制:HSIM推荐在分析电源网络的电压降对电路性能的影响,进行芯片的串扰分析,以及在带寄生参数的全芯片后仿真时使用。HSIM并不适用于少于100个晶体
管的电路仿真,也不适用于仿真有很多测试向量的电路,如果必须要带很多激励,那就用更强大的计算机来缩减仿真时间。
2).阶段使用心得:
本次使用软件为Nassda公司的HSIMPLUS v5.0,没有自带看波形的工具,于是使用Debussy作为波形显示工具。需在网表中定义HSIM输出文件格式为fsdb,当然工具允许的情况下其他形式的输出格式也是可以的。
语法为: .param hsimoutput=fsdb
针对仿真时所需要的库调用可以使用参数HSIMFMODLIB或者使用spice的函数.inc与.LIB来调用库文件。
语法:.param HSIMFMODLIB=”./log22.l”  ttcorner
.LIB 'D:\MPW_csmc\MPW05\h05mixddst02v231.lib' capacitor
.inc 'log022.l' tt
我不喜欢有风的日子
对于仿真温度的设定可以使用参数.TEMP
语法:.TEMP 25.0000
全局信号的使用需要调用参数.global
语法:.global  pbvdd!  vdd!  gnd!
            msn shell需要定义的全局信号名pbvddvddgnd
对全局信号进行电平定义可以在仿真文件后面的激励列表中给出。
语法:  vvdd vdd! 0 2.5
vpbvdd pbvdd! 0 2.0
注意gnd!不需要给出,因为默认是参考电位。
    确定扫描模式与仿真的精度和时间长短可以用参数 “.TRAN 精度 时间 ”来实现。
    语法:.TRAN 50n 1600n
HSIM兼容SPICESPECTRE格式的网表,依靠设置一些仿真控制参数达到精度与速度之间的折衷。
语法: .param HSIMparameter_name=value1
HSIMTIMEFORMAT 决定了CPU输出时间的格式。默认为1,此时是以s为单位的。为2时以m为单位,为3时为m/s,为4时为h,为7时为h/m/s,为8时为days
hsimspeed:数值可选08之间的整数,可在顶层或子模块中设置。
Hsimspeed=0,仿真结果与SPICE结果非常匹配,推荐在仿真小于1000个元件的小型模拟电路时使用。
Hsimspeed=1,速度比0有很大提高,但精度损失非常小,特别是在大型电路仿真中。需要指出的是,在两种情况下,设置速度1会损失很多精度:一是对漏电流的仿真,二是对很低电源电压的电路模拟。
Hsimspeed=2,速度进一步提高,精度损失很小。
Hsimspeed=3,缺省值,由于对于不同模块设置了不同的步长,总的步长数减少,速度自然提高,精度的区别在于仿真高敏感度的模拟电路。一般情况下,并不需要把速度值设置小于3,可利用hsimanalog控制模拟电路精度。
Hsimspeed=4,建议仿真数字电路,存储器电路,低敏感度模拟电路。
Hsimspeed=5,建议使用在存储器和混合信号电路功能验证,仿真速度的提升会带来5-10%的时延误差。
Hsimspeed=6,建议使用在数字电路或低敏感度模拟电路的功能验证。
Hsimspeed=7,与6类似,也可用于ROMCAM的验证。
Hsimspeed=8,建议使用在混合信号或Flash存储器电路功能验证。包含两种子模式,hsimspeed=8.4hsimspeed=8.8可以使速度更快,特别适用于包含电压调整和电荷泵的电路。
hsimstep2taumax:如果hsimstep2taumax=1,则.tran命令中的步长值将作为hsimtaumax
的值(hsimtaumaxhsim中定义的最大步长值),也就是说,当此参数为0时,.tran中定义的步长值并不影响hsim的仿真速度。
hsimpostl:后仿真中寄生RC网络是降低仿真速度的主要原因,因此在hsim中可以设置hsimpostl来控制是否以等效的精简RC吹管系数网络来替代繁杂的寄生RC网络。缺省值是0,并没有精简RC,值为123时,后仿真的速度递增,可视情况设置。此参数可对顶层也可对子模快进行设置。
hsimanalog:为了优化hsim在模拟和混合信号仿真中的性能,可以设置此参数控制模拟电路仿真算法的复杂度,值越高,模拟仿真的算法越精确也越耗时。如果只是仿真数字电路,可设置hsimanalog=-1如果仿真全定制或存储器电路,可设置hsimanalog=01;如果仿真带隙基准电压发生电路、高增益放大器、VCO、开关电容滤波器、锁相环、A/DD/A转换电路,建议设置hsimanalog=2;设置为3是最精确最耗时的。此参数可对顶层也可对子模快进行设置。
hsimspice:此参数确定在hsim仿真中MOSFET模型的复杂度,因此可以调低此参数值提高仿真速度。Hsimspice=0是缺省值,对某些敏感于小电压变化的电路有小的精度损失。
最大值为3,也是最高精度,hsim会计算栅///衬底之间的耦合效应,相应速度会减慢。
仿真测试网表(HSPICE格式):320*240ROIC数字部分寄生参数后仿真网表;
bq24020前仿真网表(纯模拟)。
在对ROIC的后仿真中,由于是全定制的数字电路,以及重复单元比较多,因此采用缺省设置的hsim仿真速度比hspice快几倍,如果设置hsimpeed=8.8,则又会提高几倍速度,另一个提高速度的方法是设置hsimpostl=3,可以将RC网络精简70%
在对bq24020前仿真中,由于是全定制的模拟电路,几乎没有重复单元,因此采用缺省设置的hsim仿真速度并没有比hspice快,而且hspice可以依靠设置大的步长值来提高速度,但是hsim中用hsimstep2taumax引入步长对模拟电路速度没有太大提高,而设置hsimspeed可以提高速度,但感觉在这个模拟电路的前仿真中,hsim的速度并没有比hspice有太大优势。
3).遇到的问题:
应该测试不同规模、不同类型(模拟,数字,混合信号)的电路,并与相应的hspicespectre仿真进行比较,包含精度和速度的比较,所以试验应该增加多的样本。

本文发布于:2024-09-22 20:29:40,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/411412.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:电路   速度   模拟   使用
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议