环境配置
首先搭建好vcs和Verdi都能工作的环境,主要有license问题,环境变量的设置。在220实验室的服务器上所有软件的运行环境都是csh。所以,所写的脚本也都是csh的语法。
生成波形文件
Testbench的编写
若想用Verdi观察波形,需要在仿真时生成fsdb文件,而fsdb在vcs或者modelsim中的生成是通过两个系统调用$fsdbDumpfile $fsdbDumpvars来实现的。而这两个系统调用并不是Verilog中规定的,是Verdi以pli(Programming Language Interface)的方式实现的。这就需要让vcs编译时能找到相应的库。
首先在testbench中需加入以下语句
`ifdef DUMP_FSDB
initialbegin
$fsdbDumpfile("test.fsdb");
$fsdbDumpvars;
end
`endif
这个编译开关在用vcs编译时加入+define+DUMP_FSDB选项就可以打开,也可以在define.v文件中定义DUMP_FSDB这个宏。
我们现在所接触的仿真波形文件主要有
- Wlf文件: WLF波形日志文件,是modelsim的专用文件。这个wlf文件只能是由modelsim来生成,也只能通过modelsim来显示。在用modelsim做仿真时,仿真结束都会生成一个*.wlf的文件(默认是vsim.wlf)。下次就可以通过通过modelsim直接打开这个保存下来的波形。vsim -view vsim.wlf -do run.do其中run.do中的内容为要查看的波形信号。要强调的是不是一个通用的文件文件格式。
- VCD文件:VCD 是一个通用的格式。 VCD文件是IEEE1364标准(Verilog HDL语言标准)中定义的一种ASCII文件。可以通过Verilog HDL的系统函数$dumpfile,$dumpvars等来生成。我们可以通过$dumpvars的参数来规定我们抽取仿真中某个特定模块和信号的 VCD数据。它主要包含了头信息,变量的预定义和变量值的变化信息。正是因为它包含了信号的变化信息,就相当于记录了整个仿真的信息。可以用这个文件来再现仿真,也就能够显示波形。另外我们还可以通过这个文件来估