vcs 参数

1.-v lib_file
用来读取verilog文件,lib_file可以是相对路径,也可以是绝对路径.
2.-y lib_dir
a. 用于指定搜索模块定义的verilog库目录;在源代码中找不到相应模块或UDP定义的模块时,在定义的目录中查找对应的文件;
b. 如果指定了多个目录,而且目录中包含了名字相同的module,那么会选择第一个包含此文件目录;
3.+libext
它与-y配合,用来指定查找的文件的后缀,例如+libext+.v查找.v文件.
4.+incdir+dir1+dir2+…
vcs从指定的目录当中查找源文件中所包含的include文件.

举例:

如果用到了dw的东西一般加上选项
-y $DC_HOME/dw/sim_ver +incdir+$DC_HOME/dw/sim_ver +libext+.v

5.-file file_list.f
  读取源文件列表,与 -f 类似,可以包含PLI选项,可以使用转义字符

-f -F
-f采用绝对路径;-F与-f类似,也可以采用绝对路径,同时也支持相对路径,但不允许嵌套使用。
VCS用-F解析filelist时,不允许文件嵌套使用,不支持`include “xxx.v”这种写法,改为-f便ok了

6.+define+macro=value
将macro的值传给文件中同名字的宏,如果是字符串需要用“”.
7.-o exe_name
输出名字为exe_name的可执行文件,名字可随意修改.
8.+nospecify
关闭模块的路径延时和时序检查功能提高仿真速度.

10.+delay_mode_zero
将spcify block中所有module的延时都置为0;将gate、switch、连续赋值的路径延时置为0.

11. +vcs+lic+wait

  等license. 仿真参数; +licwait timeout 等待指定的时间

12. +v2k

使能verilog2000的标准

13. -timescale

time_unit采用就近原则,例如顶层文件定义timescale后,中间文件再次定义timescale,则其后的文件按照中间文件定义的timescale执行。

time_precision则采用最小的精度

14. -override_timescale

统一所有的timescale

15. +UVM_PHASE_TRACE 

log中打印各个phase的执行情况;仿真参数

16. +UVM_OBJECTION_TRACE

log中打印 objection 信息;仿真参数

17. +notimingcheck

可以用在compile时,也可以用在run time的时候;都是将检查timing的系统函数,都disable掉了,加在compile的时候,不会编译到worklib中,速度可快,可以测试gate env;setuphold,recrem指定的delay signal只有在run time时加这个option,才会被产生;build的时候加,delay信号不会被产生;该命令相比较与ucli中的tcheck命令有最高的优先级;

9.+notimingchecks
关闭specify模块的时序检查功能.在前仿真时可以关闭,后仿真时需要打开.  存疑

18. -ucli -do file;-ucli -i file

直接执行ucli的脚本文件;仿真参数;暂时不清楚-i与-do的区别

19. -force_list

可以放在elaborate和simulation过程中,指定force信息的输出

20. -simprofile 遗留

21. -ntb_opts uvm-1.2

VCS对uvm有一个内嵌式的支持,uvm的库被放在$VCS_HOME/etc/uvm-1.2中;显示指明-ntb_opts uvm-1.2 options来使用uvm; vlogan 不支持此参数。

22. -kdb

整合vcs的DB到verdi的db,加上这个参数之后,可以通过verdi -ssf  *.fsdb打开波形。这个参数需要与-P $VERDI_LIB/novas.tab  $VERDI_LIB/pli.a 同时使用,如果加入了-debug_access参数的话,vcs会自动编译pli.a,这种情况-P参数可以忽略。

23. sdf 文件反标

 $sdf_annotate()

posted @ 2021-11-12 16:57  学号党  阅读(1245)  评论(0编辑  收藏  举报