verdi fsdb转vcd波形:用于后端功耗分析

背景1:fsdb、vcd波形文件介绍

FSDB

Spring Soft (Novas)公司 Debussy / Verdi 支持的波形文件,一般较小,使用较为广泛,其余仿真工具如ncsim,modlesim 等可以通过加载Verdi 的PLI (一般位于安装目录下的share/pli 目录下) 而直接dump fsdb文件。
fsdb文件是verdi使用一种专用的数据格式,类似于VCD,但是它是只提出了仿真过程中信号的有用信息,除去了VCD中信息冗余,就像对VCD数据进行了一次huffman编码。因此fsdb数据量小,而且会提高仿真速度。我们知道VCD文件使用verilog内置的系统函数来实现 的,fsdb是通过verilog的PLI接口来实现的,例fsdbDumpfile, fsdbDumpvars等。

VCD

IEEE1364标准(Verilog HDL语言标准)中定义的一种ASCII文件,是通用的文件格式。它主要包含了头信息,变量的预定义和变量值的变化信息。正是因为它包含了信号的变化信息,就相当于记录了整个仿真的信息,我们可以用这个文件来再现仿真,也就能够显示波形,但是波形文件会很大。因为VCD是 Verilog HDL语言标准的一部分,因此所有的verilog的仿真器都能够查看该文件,允许用户在verilog代码中通过系统函数来dump VCD文件。
特别,因为VCD记录了信号的完整变化信息,我们还可以通过VCD文件来估计设计的功耗,而这一点也是其他波形文件所不具备的。Encounter 和 PrimeTime PX (Prime Power)都可以通过输入网表文件,带功耗信息的库文件以及仿真后产生的VCD文件来实现功耗分析【现在工具是可以吃FSDB波形文件的,只是对版本有要求】。

其他波形文件
****各厂商不同的仿真或调试工具支持的文件类型,互不通用,但基本都可以由VCD文件转换而来(其实就是VCD文件的压缩版,因为只取仿真调试需要的数据,所以文件大小要远小于原始VCD文件),有的还提供与VCD文件的互转换功能。

背景2:用于PTPX功耗分析时

由于verdi版本更新较快,而后端工具迭代相对较慢,其功耗分析的工具有时候吃不了较新版本的fsdb波形 。
而vcd波形文件是较早统一的标准,且记录信息详细,可直接用于功耗分析工具的输入。

verdi:fsdb转vcd

1、直接在运行verdi的目录下:

fsdb2vcd -h 即可查看相关的命令帮助;

2、常用命令格式:

Examples:
1. Translate all signals.
# fsdb2vcd verilog.fsdb -o output.vcd
2. Translate signals within a specified scope and time range.
# fsdb2vcd verilog.fsdb -s /system/i_cpu -level 1 -bt 10 -et 1000
3. Generate a summary for this FSDB without performing the translation.
# fsdb2vcd verilog.fsdb -summary

3、fsdb转vcd指定时间

fsdb2vcd verilog.fsdb -bt 9543.998us -et 9845.713us -o output.vcd
未指定输出文件时按默认文件名输出,指定截取fsdb的一段波形转成vcd,时间后加单位(默认是ns)。

你可能感兴趣的:(IC验证,IC后端,verdi,fsdb,vcd)