VCS常用的编译选项

VCS常用的编译选项

https://blog.csdn.net/bcs_01/article/details/79803304
VCS的仿真选项分编译(compile-time)选项和运行(run-time)选项。

1 VCS常用的编译选项

表 1 VCS常用的编译选项

选项说明
-assert dumpoff \ enable_diag \ filter_past定义SystemVerilog断言(SVA)
dumpoff:禁止将SVA信息DUMP到VPD中
enable_diag:使能SVA结果报告由运行选项进一步控制
filter_past:忽略$past中的子序列
-cm <options>指定覆盖率的类型,包括:line(行覆盖)、cond(条件覆盖)、fsm(状态机覆盖)、tgl(翻转率覆盖)、path(路径覆盖)、branch(分支覆盖)和assert(断言覆盖)。如果包括两种或以上的覆盖率类型,可用“+”,如-cm line+cond+fsm+tgl
-cm_assert_hier <filename>将SVA覆盖率统计限定在文件列表中指定的module层次
-cm_cond <arguments>进一步细化条件覆盖率的统计方式,包括:basic,std,full,allops,event,anywidth,for,tf,sop等选项。
-cm_count在统计是否覆盖的基础上,进一步统计覆盖的次数
-cm_dir <directory_path_name>指定覆盖率统计结果的存放路径,默认是simv.cm
-cm_hier <filename>指定覆盖率统计的范围,范围在文件中定义,可以指定module名、层次名和源文件等。
-cm_log <filename>指定仿真过程中记录覆盖率的log文件名
-cm_name <filename>指定保存覆盖率结果的文本文件的名称
-cm obc使能可观察(observed)覆盖率的编译。传统的覆盖率跟功能的正确性毫无关联,可观察覆盖率通过设置观察点,一定程度上将代码行覆盖率与功能正确性关联起来。
-comp64在64-bit模式下对设计进行编译,并生成32-bit格式的可执行文件用于32-bit模式仿真
-debug 或 -debug_all使能UCLI命令行
-e <new_name_for_main>指定PLI应用时main()程序的名称
-f <filename>指定文件列表的文件名,文件中可包括源代码文件的路径和名称,也可以包括编译选项参数
-file filename类似于-f,但文件内容更灵活,可以包含PLI选项和对象文件,可以使用转义字符等
-full64在64-bit模式下编译,生成64-bit模式仿真的可执行文件
-h or -help列举常用的编译选项和运行选项的参数
-I交互模式的编译,让VCS自动包括+cli,-P virsims.tab选项,并支持VirSim后处理模式下生成VCD+文件。
-ID显示及其的hostid或dongle ID
-ignore <keyword_argument>屏蔽SV中unique/priority型的if或case语句的告警信息,参数包括:unique_checks、priority_checks、all。
-j<number_of_processes>设定并行编译的进程数,“j”后面没有空格
-l <filename>指定记录VCS编译和运行信息的log文件名
-line使能VriSim中的单步运行
-lmc-swift使能LMC SWIFT接口
-Mdir=<directory>指定一个目录让VCS存储编译产生的文件,默认是csrc
-Mlib=<directory>指定一个目录让VCS搜索某个模块是否需要重新编译。与-Mdir配合,可以实现不同模块的增量编译。
-Mmakeprogram=<program>指定用于make对象的程序,默认是make
-Mupdate[=0]默认情况下,VCS编译时会覆盖上次编译生成的makefile。如果想保留上次的makefile,使用-Mupdate=0;如果不带=0,则进行增量编译,并覆盖上次的makefile。
-noIncrComp关闭增量编译
-notice显示详细的诊断信息
-ntb使能ntb(Native TestBench),支持OpenVera验证平台语言结构。
-o <name>指定编译生成的可执行文件的名称,默认是simv
-timescale=<time_unit>/<time_precision>源代码文件中有的包括timescale编译指令,有的不包括,如果在VCS命令行中,不包括timescale的源代码文件在最前面,VCS会停止编译。使用-timescale选项为这些在前面且又没有`timescale的源文件指定timescale
-override_timescale=<time_unit>/<time_precision>让源文件统一使用指定的timescale
-P <pli.tab>指定PLI表文件
-pvalues+<parameter_name>=<value>改变指定参数的值
-parameters <filename>通过文件的方式改变参数的值,参数的路径和改变的值均在文件中定义
-q安静模式,屏蔽VCS的编译信息
-R在编译之后立即执行产生的可执行文件
-s刚开始仿真时即停止,一般与-R和+cli配合使用
-V使能verbose模式
-v <filename>指定verilog库文件
-y <dir_pathname>指定verilog库路径
+libext+<extension>让VCS在verilog库路径下搜索指定的扩展名文件,与-y配合
-vera指定标准的Vera PLI表文件和对象库
+acc+1/2/3/4使能PLI中的ACC(PLI 1.0的一种方式)
+cli+[<module_name>=]1/2/3/4使能CLI调试功能
+autoprotect[<file_suffix>]生成一个加密的源文件
+protect[<file_suffix>]生成一个加密的源文件,只加密protect/endprotect部分
+putprotect+<target_dir>指定加密文件存放的目录
+csdf+precompile在VCS编译源代码时预先SDF文件
+define+<macro_name>=<value>定义一个文本宏,与源文件中的`ifdef配合
+error+<n>将编译时运行的NTB错误增加到N
+incdir+<directory>指定VCS搜索`include指令使用的包含文件的目录,可以用“+”定义多个目录。
+maxdelays使用SDF文件中的max值
+mindelays使用SDF文件中的min值
+typdelays使用SDF文件中的typ值
+nbaopt删除非阻塞赋值语句中的延时
+neg_tchk使能时序检查中的负延时
+nospecify屏蔽specify块中的路径延时和时序检查
+notimingcheck屏蔽specify块中的时序检查
+nowarnTFMPC屏蔽编译时的“Too few module port connections”告警信息
+no_notifier屏蔽一些时序检查系统任务中定义的notifier寄存器的翻转(toggling),但不影响时序violation的报告
+no_tchk_msg屏蔽时序检查的告警信息,但不关闭时序检查时notifier寄存器的翻转(toggling)
+optconfigfile+<filename>指定Radiant技术和二态仿真用到的配置文件名
+prof让VCS在仿真过程中生成一个vcs.prof文件,记录设计中最耗CPU时间的module、层次和verilog结构
+race让VCS在仿真过程中生成一个race.out文件,记录设计中所有的竞争冒险
+radincr增量编译时使能Radiant技术
+sdf_nocheck_celltypeSDF反标时不检查SDF文件中的CELLTYPE的一致性
+sdfverbose显示SDF反标时的详细告警和错误信息
+v2k支持Verilog-2001标准
+vc[+abstract][+allhdrs][+list]使用DirectC接口时,使能verilog直接调用C/C++函数
+vcs+flush+log加速编译仿真时log文件缓存的刷新频率
+vcs+flush+all+vcs+flush+log,+vcs+flush+dump和+vcs+flush+fopen的集合
+vcs+initmem+0/1/x/z初始化设计中所有存储器的值
+vcs+initreg+0/1/x/z初始化设计中所有寄存器的值
+vcs+lic+wait一直等待license
+vpi使能VPI
+warn=[no]ID/none/all,…使能或关闭告警信息

2 VCS常用的运行选项

表 2 VCS常用的运行选项

选项说明
-a <filename>将仿真显示的log信息附件在指定文件尾部
-E <program>执行指定的程序用来显示生成simv可执行文件时VCS使用的编译选项
-i <filename>指定一个VCS执行仿真时包含CLI命令的文件,一般与-ucli配合
-k <filename>off
-sverilog支持SystemVerilog
-ucli使能UCLI命令
-vcd <filename>指定VCD波形文件名,默认是verilog.dump,会被源代码文件中的$dumpfile覆盖
+vcs+learn+pli追踪当前仿真的ACC选项,记录在pli_learn.tab文件中,下次仿真时可以用+applylearn来重新编译。
+vcs+nostdout关闭所有 m o n i t o r 和 monitor和 monitordisplay的文本输出,但依然会记录在-l的log文件中。
+vera_load=<filename.vro>定义Vera对象文件
+vera_mload=<filename>定义一个包括多个Vera对象文件的文本文件

3 VCS调试模式常用选项

表 3 VCS常用的调试模式选项

选项说明
-RI编译完成之后马上启动VirSim,进入交互模式
-RIG不编译,启动VirSim使用已有的可执行文件,进入交互调试模式。
+sim+<simv_name>指定使用的可执行文件名,与-RIG配合
-RPP运行后处理(Post-Processing)模式:启动VirSim,使用VCD+文件
-PP支持在源代码文件中调用$vcdpluson生成VPD文件
+cfgfile+<filename>定义一个VCS使用的已建好的场景配置文件
+vslogfile[+<filename>]保存一个VirSim命令的log文件,默认是VirSim.log
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值