各种仿真波形文件

各种仿真波形文件

一、仿真波形文件介绍

1. Wlf文件:WLF波形日志文件,是modelsim的专用文件。

这个wlf文件只能是由modelsim来生成,也只能通过modelsim来显示。

在用modelsim做仿真时,仿真结束都会生成一个*.wlf的文件(默认是vsim.wlf)。

下次就可以通过通过modelsim直接打开这个保存下来的波形。

vsim -view vsim.wlf -do run.do

其中run.do中的内容为要查看的波形信号。要强调的是不是一个通用的文件文件格式


2.VCD文件:VCD 是一个通用的格式。

VCD文件是IEEE1364标准(Verilog HDL语言标准)中定义的一种ASCII文件。

可以通过Verilog HDL的系统函数 $dumpfile,$dumpvars 等来生成。

我们可以通过$dumpvars的参数来规定我们抽取仿真中某个特定模块和信号的VCD数据。

它主要包含了头信息,变量的预定义和变量值的变化信息。正是因为它包含了信号的变化信息,就相当于记录了整个仿真的信息。

可以用这个文件来再现仿真,也就能够显示波形。

另外我们还可以通过这个文件来估计设计的功耗。

因为VCD是 Verilog HDL语言标准的一部分,因此所有的verilog的仿真器都要能实现这个功能。

因此我们可以在verilog代码中通过系统函数来dump VCD文件。

另外,我们可以通过modelsim 命令来dump VCD文件,这样可以扩展到VHDL中。

具体的命令:

vcd file myfile.vcd vcd add /test/dut/*

这个就生成一个含dut下所有信号的VCD数据信息。我们在使用来进行仿真

vsim -vcdstim myfile.com test;add wave /*;run -all;

 注意:WIF:波形中间格式;WLF:波形日志文件。由于在ModelSim下只能打开VCD文件

使用ModelSim行命令vcd2wlf将VCD文件转化为WLF文件 。

VCD文件生成

在testbench中加入:

initial
begin
$dumpfile("tb.vcd");
$dumpvars();
end

 3.FSDB文件:fsdb文件是verdi使用一种专用的数据格式

类似于VCD,但是它是只提出了仿真过程中信号的有用信息,除去了VCD中信息冗余,就像对VCD数据进行了一次huffman编码。

因此fsdb数据量小,而且会提高仿真速度。

我们知道VCD文件使用verilog内置的系统函数来实现的,fsdb是通过verilog的PLI接口来实现的, $fsdbDumpfile,$fsdbDumpvars 等。

另外,在VCS仿真器中还有一种VCD+的数据格式VPD,详细情况参照VCS的使用。

 Testbench中加入:

initial
begin
$fsdbDumpfile("tb.fsdb");
$fsdbDumpvars();
end

4、shm 是Cadence公司 NC verilog 和Simvision支持的波形文件,实际上 .shm是一个目录,其中包含了.dsn和.trn两个文件

5、vpd 是Synopsys公司 VCS DVE支持的波形文件,可以用$vcdpluson产生

二、波形文件的具体生成

1、VCS仿真生成fsdb文件(verilog)

2、VCS仿真生成VPD文件(verilog)

3、VSIM生成fsdb波形文件(verilog)

4、Vsim(ModelSim)生成VCD波形文件(verilog)

5、vsim(modelsim)仿真VHDL输出fsdb格式文件

6、ncsim仿真VHDL

原文地址:https://www.cnblogs.com/OneFri/p/5257765.html