首页 > 技术知识 > 正文

上文芯片后仿(一)介绍了后仿真几个关键选项,本文接着讲后仿要点。

(一) VCS选项主要介绍几个关键选项。

1)-debug选项,为了导出VPD通常选择-debug_pp;

芯片后仿(二)-电源芯片viper17的代换

2)-negdelay,支持SDF中的负延时;

芯片后仿(二)-电源芯片viper17的代换1

3)-ssf自动加载fsdb;

4)-ucli模式,在-debug模式下才使能;

芯片后仿(二)-电源芯片viper17的代换2

5)+neg_tchk,支持负延时检查;芯片后仿(二)-电源芯片viper17的代换3

6)+nospecify/+notimingcheck,忽略path delay和specify延时;

芯片后仿(二)-电源芯片viper17的代换47)+delay_mode_zero去除仿真中的延迟信息,所有的延时为0(二)SDF annotated

$sdf_annotate ([sdf_file], top.U_DIGITAL_TOP, [sdf_configfile], [sdf_logfile],[mtm_spec], [scale_factors], [scale_type]);

sdf_file指定时序签核输出的sdf文件及其路径;sdf_configfile”指定sdf配置文件,一般缺省;sdf_logfile指定sdflog生成文件,该文件会保存VCS在运行过程中产生的ErrorWarning信息。为了规VCS默认情况下不会记录超过10个以上的error信息/warning信息到log文件,可通过+sdfverbose选项来开启VCS记录所有信息;mtm_spec指定VCS反标哪一类延迟信息。可以使用MINIMUM,TYPICAL,MAXIMUM,TOOL_CONTROL(default)scale_factors指定minimumtypicalmaximum延迟的因子。默认值是“1.0:1.0:1.0”scale_type指定在缩放比例之前使用的SDF 文件里面延迟值,可能的值有“FROM_TYPICAL”,”FROM_MIMINUM”,”FROM_MAXIMUM”,”FROM_MTM”(默认值),

一般缺省;

(三)初始化寄存器的值(不常用)

设置寄存器初始值文件:

#init0_regs.ucli

force -deposit tb.U_DIGITAL.reg_A 0

在仿真的零时刻用下面的方式加载这个文件ucli%  source ./init0_regs.ucli

(四)关某些寄存器的时序检查(常用)

#notiming.listinstance { tb.U_TOP.reg} { noTiming };在仿真的时候加载这个文件,避免引起X态传递。

VCS +optconfigfile+notiming.list

(五)导出VCD文件

VCD是不压缩的文本格式,兼容性好,缺点是文件太大。后仿先写出高压缩比的FSDB文件,再转成VCD。可指定转换起止时间、结束时间。

fsdb2vcd xxx.fsdb -o xxx.vcd -bt 1000ns -et 2000ns

转载:全栈芯片工程师

猜你喜欢