VCS编译参数
编译选项
-full64
:64bit仿真-j4
:4线程并行-nc
:不显示Synopsys
版权信息
延迟
什么是delay_mode_zero和delay_mode_unit deifferent? | ZH-CN edaboard.com
仿真条件+nospecify +notimingcheck +delay_mode_zero的区别_no specify_风起云涌66的博客-CSDN博客
-
+nbaopt
: 删除设计中所有非阻塞赋值语句中的所有内部赋值延迟。许多用户在非阻塞过程赋值语句中输入#1的赋值延迟,以便在Wave窗口中更容易调试。
例如:Reg1 <= #1;
这些延迟会阻碍设计的仿真性能,因此在调试后,可以使用此选项消除这些延迟。
注意:+nbaopt
选项删除设计中所有非阻塞赋值语句中的所有内部赋值延迟,而不仅仅是#1
延迟。如果是三步编译,需要在
elab
加上该选项,否则不生效。 -
+delay_mode_zero
:删除所有gate
、switch
、assign
和module
路径上的延迟。 -
+delay_mode_unit
:将指定块中的模块路径延迟中的所有延迟规范重写为零延迟。覆盖所有门、开关和对源代码中所有时间刻度编译器指令的最短时间精度参数的连续赋值的所有延迟规格。'timescale
编译器指令的默认时间单位和时间精度参数是
时序检查
+no_specify
:抑制模块路径延迟和指定块中的定时检查。+notimingcheck
:抑制指定块中的定时检查。+no_notifier
:禁用在某些定时检查系统任务中指定的通知器寄存器的切换。
语言支持
+sverilog
:启用对System Veilog
的支持+v2k
:使能veilog 2000
标准
X态传播控制
VCS编译命令 - 知乎 (zhihu.com)
Hardware-like X Prop 的 X Prop - Verilog Pro
-
-xprop=[xmerge|tmerge|vmerge]
:xmerge
:如果有一个输入是X,则输出为Xtmerge
:如果输入为X,模拟器遍历两个代码路径(假设输入0或1),并比较结果。相等则将确定的结果分配给输出,不等则输出X。vmerge
:相当于禁用xprop
,经典的verilog
乐观情况。
xmerge\tmerge
可在编译或运行时执行,vmerge
只能在运行时指定,VCS默认是vmerge
模式。
UVM
ntb_opts uvm-1.2
:启用UVM1.2
debug
-debug_access<+options>
:用所需的调试功能来elab
设计+all
:相当于-debug_access+line+class+wn+driver+r+w+cbk+f+fn+thread+cbkd
,也基本相当于-debug_all
-debug_region=[]
:cell+lib
: 启动了cell和lib的调试
lint
+lint=TFIPC-L,PCWM
:使能对应的检查TFIPC-L
:实例端口连接太少PCWM
:端口连接宽度不匹配
warn
+warn=noPISB,noPHNE,noTMR,noOBSV2G
:不报告PISB\PHNE\OBSV2G
类型的warning
调试
+cli=1|2|3|4
:使能CLI调试功能
-lca
:使用VCS的“用户限制使用”的功能,即VCS提供的一些功能是他们还没有经过充分测试还没有发布的;如果你想使用这些功能就要加上 -lca参数。
time scale
-timescale
:相当于出现的第一个 timescale
,会被后面的 timescale
覆盖掉
-override_timescale
:强制覆盖所有的 timescale
license
-licqueue
:当没有 license
时等待
VPI
-vpi
:使能 VPI