由于Verdi只能查看fsdb格式的波形,而vcs可以生成供DVE查看的vpd格式波形,如果想要输出fsdb格式的波形,我们就要额外在testbench中加入两个函数,并且用相应的命令进行编译。
1.首先了解一些vcs的常用命令:
-cm line|cond|fsm|tgl|obc|path 设定coverage的方式
+define+macro=value+ 预编译宏定义
-f filename RTL文件列表
+incdir+directory+ 添加include 文件夹
-I 进入交互界面
-l logfile文件名
-P pli.tab 定义PLI的列表(Tab)文件
+v2k 使用推荐的标准
-y 定义verilog的库
-notice 显示详尽的诊断信息
-o 指定输出的可执行文件的名字,缺省是simv
+ nospecify 不对SPECIFY 模块进行时序检查和路径延时计算
+ notimingcheck 不进行时序检查;但是还是把path延时加入仿真中
2.下面是我在run一个十分简单的例子:2-4译码器时用的命令:
注:testbench中药加入两个函数:$fsdbDumpfile("decoder.fsdb");
$fsdbDumpvars(0);
vcs decoder_tb.v decoder.v -sverilog -fsdb -debug_all -l com.log
如果不加-fsdb,编译时会报出上述两个函数的undefined错;
如果不加-l 会报不能打开test.v的错(这个不知道为什么)。
3.编译完成后,执行simv文件,即可。