Vcs/Xrun环境中VCD/FSDB/SHM/VPD的Dump方法详解

您所在的位置:网站首页 vcs工具箱 Vcs/Xrun环境中VCD/FSDB/SHM/VPD的Dump方法详解

Vcs/Xrun环境中VCD/FSDB/SHM/VPD的Dump方法详解

2024-07-13 09:56| 来源: 网络整理| 查看: 265

仿真是IC设计不可或缺的重要步聚,其中仿真波形是debug的必要条件。今天简要介绍下一下几种波形文件VCD/FSDB /SHM/VPD的dump方法。其中VCD通用性最好,VCS/XRUN环境中直接加函数dump;对于FSDB,本文讲述了VCS/XRUN 2种环境中基于函数和Tcl的2种dump方法;对于SHM, 本文简要介绍了XRUN中基于函数和Tcl的2种dump方法;对于VPD,本文简要介绍了VCS中函数dump方法;

一、VCD (Valve Change Dump)VCD是一个通用的格式。VCD文件是1EEE1364标准(Verilog HDL语言标准)中定义的一种ASCI文件。它主要包含了头信息,变量的预定义和变量值的变化信息。因为它包含了信号的变化信息,就相当于记录了整个仿真的信息,我们可以用这个文件来再现仿真,也就能够显示波形用于DEBUG。因为VCD是 Verilog HDL语言标准的一部分,因此所有的veriog的仿真器都要能够实现这个功能,也要允许用户在verilog代码中通过系統函数来dump VCD文件。我们可以通过Verilog HDL的系统函数dumpfile来 生成波形,通过dumpvars的参数来规定我们抽取仿真中某些特定模块和信号的数据。

d1a93bc8-dd5d-11ee-a297-92fbcf53809c.png

特别说明的一点是,目前主流功耗分析工具都支持通过VCD文件来评估功耗。Encounter 和 PrimeTime Px (Prime Power)都可以通过输入网表文件,带功耗信息的库文件以及仿真后产生的VCD文件来实现功耗分析。VCD本质是文本文件,文件占用较大内存,极大拖慢仿真速度,但是由于对功耗分析支持比较友好,因此各种EDA仿真均有dump VCD的需求。

二、FSDB (Fast Signal DataBase)FSDB 是Spring Soft (Novas) 公司 Debussy / Verdi 支持的波形文件,一般文件占用内存较小,使用较为广泛,其余仿真工具如ncsim,modlesim等等可以通过加载Verdi 的PLI 来dump fsdb文件。fsdb文件是verdi使用一种专用的数据格式,类似于VCD,但是它是只提取仿真过程中信号的有用信息,除去了VCD中信息元余,就像对VCD数据进行了一次huttman编码。因此fsdb数据量小,可以极大地提高仿真速度。本质上VCD文件使用verilog内置的系统函数来实现dump 的,fsdb是通过verilog的PLI接口来实现的。

环境中可以通过以下函数实现FSDB波形的dump。Step1: 设置环境变量:d1b968f4-dd5d-11ee-a297-92fbcf53809c.pngStep2: Bash 中加入以下选项:VCS:

d1c9fc78-dd5d-11ee-a297-92fbcf53809c.png

XRUN:加入编译选项:-loadpli1 debpli:novas_pli_bootbench中添加以下函数:

d1df37a0-dd5d-11ee-a297-92fbcf53809c.png

当然也可以使用Tcl 实现波形的精准dump控制。1Vcs 中tcl 控制方法:仿真bash中加入仿真选项:-ucli -i 。。/sim/dump_fsdb_vcs.tcl其中Tcl demo文件:

d1f50486-dd5d-11ee-a297-92fbcf53809c.png

2Xrun中tcl控制方法:仿真bash中加入tcl载入选项:-input 。。/sim/dump_fsdb_irun.tclTcl demo文件:

d2027972-dd5d-11ee-a297-92fbcf53809c.png

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

三、SHMSHM 是Cadence公司 NC verilog 和Simvision 支持的波形文件,实际上 shm是一个目录,其中包含了 dsn和 tn两个文件。用simvision xxx.shm来打开波形。

1.通过函数实现dump

d217aaf4-dd5d-11ee-a297-92fbcf53809c.png

2.通过tcl的方式实现dump仿真bash中加入tcl载入选项:-input 。。/sim/dump_shm_irun.tclTcl demo文件:

d2219a82-dd5d-11ee-a297-92fbcf53809c.png

四、VPDVPD是Synopsys公司 VCS DVE支持的波形文件,现在逐渐被fsdb取而代之。用dve –vpd test.vpd打开对应波形。生成VPD方法如下:仿真bash中加入编译选项: -debug_pp +vcd+vcdplusonBench中添加dump函数:

d22d4724-dd5d-11ee-a297-92fbcf53809c.png

以上介绍的基本方法,仅供参考,不同版本可能略有不同,具体的设置细节,需要查询对应的help文档。官方help文档提供了更为灵活而有效率的使用方法。

审核编辑:黄飞

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉 IC设计 IC设计 +关注

关注

37

文章

1280

浏览量

103272 VCD VCD +关注

关注

0

文章

37

浏览量

34500 eda eda +关注

关注

71

文章

2600

浏览量

171492 函数 函数 +关注

关注

3

文章

4176

浏览量

61586

原文标题:VCD/FSDB/SHM/VPD在Vcs/Xrun 环境中的dump方法

文章出处:【微信号:处芯积律,微信公众号:处芯积律】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

扫一扫,分享给好友

复制链接分享 评论

发布评论请先 登录

相关推荐

vcsxrun搭配uvm1.1/uvm1.2版本库的使用情况 我们在项目中有时候需要使用不同的UVM版本库进行仿真,有时候还会在不同的仿真器之间进行切换,本文简单总结了一下vcsxrun搭配uvm1.1/uvm1.2版本库的使用情况,希望能帮助到一些朋友。 的头像 发表于 10-27 09:41 •2309次阅读 VCD内部解剖详述 VCD(ValueChange Dump)** 是用ASCII记录了被选择信号在仿真过程的变化情况,同时还记录了一些测试向量生成时的仿真信息 的头像 发表于 11-07 17:43 •994次阅读 b class='flag-5'VCD/b内部解剖详述 Debussy学习笔记(一) 下的share/pli 目录下) 而直接dump fsdb文件。fsdb文件是verdi使用一种专用的数据格式,类似于VCD,但是它是只提出了仿真过程中信号的有用信息,除去了 发表于 06-18 15:15 请教VCS和verdi怎么联合使用 最近要用到VCS仿真后生成FSDB文件,然后在Verdi中进行自动侦错,请问我怎么安装Verdi这个软件以及如何启动license,并且怎么写testbench文件才可以产生FSDB文件。请懂得人给我支支招,我也是刚开始学习这个 发表于 01-22 14:53 linux下的EDA——VCS使用 ("counter.vcd");//待输出的波形文件名,可更改 $dumpvars(0,u0);//u0为testbench实例化的顶层文件名称,注意根据实际情况修改该名 发表于 07-09 08:10 VCS破解遇到的问题是什么?有什么解决的方法VCS破解过程遇到的问题是什么?有什么解决的方法? 发表于 06-21 08:10 利用fsdbedit工具修改fsdb波形文件模块的层次路径信息 的层次路径是不一样的。比如对于模块D:在仿真环境A,所在的层次路径为 tb_top1.xxx.a在仿真环境B,所在的层次路径为 tb_top2.yyy.a此时在A仿真 发表于 04-02 17:30 PTPX的常用流程有哪些? 为何从这个入手 (Value Change Dump)是一个通用的格式。 VCD文件是IEEE1364标准(Verilog HDL语言标准)定义的一种ASCII文件。它主要包含了头信息,变量的预定义和变量值的变化信息。正是 发表于 06-10 17:40 基于linux系统的VCS使用及仿真说明 代码如下:顶层模块代码:波特率产生模块接收模块代码:发送数据模块一、VCS仿真下面开始进行VCS仿真。VCS要使用图形化界面,必须得先编译得到vpd文件,才能用图形化界面看波形。首先是 发表于 07-18 16:18 请问dump.vcd波形为什莫有一部分没有生成显示出来? 我做.sv矩阵乘法的时候,生成dump.vcd观察波形,输入是a,b输出是c,dump部分代码写的都一样,但是不知道为什么vcd波形里只有a和b没有c 发表于 08-04 16:11 vcs和verdi的调试及联合仿真案例 若想用Verdi观察波形,需要在仿真时生成fsdb文件,而fsdbvcs或者modelsim的生成是通过两个系统调用$fsdbDumpfile $fsdbDumpvars来实现的。 的头像 发表于 09-22 15:01 •8075次阅读 VCD/FSDB/SHM/VPD波形dump方法 仿真是IC设计不可或缺的重要步聚,其中仿真波形是debug的必要条件。今天简要介绍下一下几种波形文件VCD/FSDB /SHM/VPDdump 的头像 发表于 11-11 09:36 •1.4w次阅读 vcs工作环境 vcs工作环境 发表于 05-15 09:38 •0次下载 Verdi环境配置、生成波形的方法 Verdi是一个功能强大的debug工具,可以配合不同的仿真软件进行debug,很多企业常用的就是VCS+Verdi或或者Xcelium(xrun)+Verdi的方式进行代码的仿真与检查 的头像 发表于 05-29 09:48 •2713次阅读 Verdib class='flag-5'环境/b配置、生成波形的b class='flag-5'方法/b jvm的dump太大了怎么分析 文件需要耗费大量的时间和计算资源。 然而,这并不意味着我们无法分析和利用JVM dump文件。以下是一些方法和技巧,可帮助我们有效地分析大型JVM dump文件。 使用工具:首先,我们可以使用一些专门用于分析JVM 的头像 发表于 12-05 11:01 •1192次阅读


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3