ASIC工具
richardhuang1123
这个作者很懒,什么都没留下…
展开
-
verilog编译问题:SystemVerilog construct not yet implemented: nested module
1. SystemVerilog construct not yet implemented: nested module. 开始怀疑模块代码有问题,后来无论怎么改都不正确。最后把文件顺序调换后,又删掉lib,发觉问题不在了。再调换编译顺序,还是没有问题。怀疑是lib中有残留的错误数据,导致编译混乱。因为用的是增量编译,有这个可能。原创 2011-11-22 16:49:27 · 7962 阅读 · 0 评论 -
verilog之赋值和逻辑操作符号
always @* val = 0;end是无法赋值的。因为只有敏感变量发生改变才会赋值&& || !这些都是逻辑操作符,用于逻辑连接,结果是true或者false;& | ~等是bitwise操作符,称为位逻辑操作符,其操作结果可以是缩减后的单bit逻辑或者多bit逻辑。原创 2011-12-01 08:40:43 · 3815 阅读 · 0 评论 -
debussy分块dump波形的命令
$fsdbAutoSwitchDumpfile(file size,"file name",file number);$fsdbDumpvars(level depth,xx.xx.xx);$fsdbDumpvars(level depth,yy.yy.yy);-------------------------------第一行命令中,file size表示单个文件大小,单位是原创 2012-04-09 16:25:25 · 1675 阅读 · 0 评论 -
怎么处理长时间仿真的可观测性问题?(农历10月初六是父亲生日,祝愿老人身体健康,天天开心!)
SSD盘片初始化时有很长的TLB表项建立时间,NC仿真FM耗时日久,如何才能实时观测到仿真波形?方法1:在仿真命令行手动建立,关闭仿真databae方法2:使用VERDI的自动文件保存功能。$fsdbAutoSwitchDumpfile(size number(M),"*.fsdb",文件个数)。$fsdbDumpvars(levels,signals);函数大小写敏感。原创 2011-10-26 09:25:52 · 1059 阅读 · 0 评论 -
NC仿真中出现死循环的分析
仿真中出现不能记录波形,无法用CTRL-C暂停的现象;以为NC是基于CYCLE的仿真,如果时钟没有产生跳变,仿真会一直悬挂在0处,无法前进。同样如果bench中有不当的赋值造成组合loop,也会导致这种情况。原创 2012-04-12 17:24:07 · 1135 阅读 · 0 评论 -
NC多个library共享的仿真方法
唯一参考标准是Cadence的NC。比如使用IRUN命令代替分步执行的编译方法,会生成INCA_libs这个缺省的library。如果使用nclibdirname参数来指定当前工作的library,就不再生成缺省的INCA_libs。用这个参数好处是对于同一个仿真环境,可以同时跑多个case。原创 2012-04-12 17:39:19 · 977 阅读 · 0 评论 -
在NC仿真中临时dump波形的方法
database -open -shm regcfg probe xx.xx.xx -depth 2 -databae regcfgregcfg这里是database名字。xx.xx.xx这里是instance的层次名。原创 2012-04-25 10:59:34 · 1145 阅读 · 0 评论 -
Formality简单实用之1--RTLvsRTL
前提Formality装好。脚本解析:1. 设置搜索路径变量,比如某些RTL有需要include文件进来,设置好改变量便于编译时寻找。 laapend search_path $PATH2.设置一些工具使用的规则 规则较多,可以根据实际简化。3.设置SVF/VSDC这些综合生成的文件,用于加速形式验证过程。4.读入 RTL文件列表;设置reference的名原创 2012-05-26 17:15:54 · 4251 阅读 · 0 评论