verdi生成fsdb文件|波形文件和仿真结果波形文件的差别

|

① xcelium怎样生成fsdb文件

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

② verilog数字转换成模拟波形

加入其他波形文件。在测试文件中一般是顶层加入如fsdbDumpvars函数,表示导出信号层级的深度,0则表示所有层级。此外在vcs脚本中需要加入P参数。verilog仿真波形有多种格式,其中标准格式为VCD,可以作为跨工具的数据交换格式。但是VCD本身非压缩格式,通常比较大。对于纯数字仿真来说可以有其他的波形文件格式作为替代。比如Synopsys的VPD格式,还有FSDB。fsdb是verdi工具被synopsys收购的波形格式。而verdi的易用性收到广大数字工程师的青睐。

③ 波形文件和仿真结果波形文件的差别

波形文件和仿真结果波形文件的差别有以下几点,具体如下:

1.打开命令不同

波形文件观察波形时,结束时都会生成一个*.wlf的文件(默认是vsim.wlf),可以用modelsim直接打开vsim -view vsim.wlf -do run.do。

仿真结果波形文件包含了信号的变化信息,就相当于记录了整个仿真的信息,我们可以用这个文件来再现仿真,也就能够显示波形,但是波形文件会很大,使用VCD打开。

2.功耗不同

波形文件通过Encounter 和 PrimeTime PX (Prime Power)都可以通过输入网表文件,带功耗信息的库文件以及仿真后产生的波形文件来实现功耗分析。

仿真结果波形文件记录了信号的完整变化信息,我们还可以通过VCD文件来估计设计的功耗,而这一点也是其他波形文件所不具备的。

3.数据量不同

波形文件数据量小,而且会提高仿真速度。我们知道VCD文件使用verilog内置的系统函数来实现 的,fsdb是通过verilog的PLI接口来实现的。

仿真结果波形文件产生shm文件的时间最短(废话,本来就是一个公司的),产生vcd文件的时间数倍于产生shm和 fsdb的时间。在笔者测试的例子中,产生的fsdb文件为十几MB,shm文件为几十MB,而仿真结果波形文件则要几个GB的大小。

④ verdi中如何将两个信号合并

在debussy中实现。打开nWave后并加载fsdb波形文件后,使用快捷键G在窗口的左下角,默认是All的选项,意思是在窗口里显示所有的信号,如果信号很多,你又只想看input,那么你就可以用input的那个过滤项,只把input信号显示出来。verdi使用波形窗口,在波形窗口中最主要的是光标和标记的操作,可以由三个键的组合操作就能完成所有工作。

⑤ 如何使用vcs仿真生成FSDB波形文件

需要制定verdi目录下对应vcs的工具吧-P /tools/novas/verdi-200810/share/PLI/vcs2006.06/linux/novas.tab /tools/novas/verdi-200810/share/PLI/vcs2006.06/LINUX/pli.a

⑥ 怎么在linux环境下生成fsdb文件

fstab文件中的文件都是根据磁盘挂载点设置生成的。如果你需要挂载新的设备,直接将相应的设备名称,或uuid,或卷标加入到fstab中,增加相应的挂载点即可

⑦ 如何Dump波形文件并显示波形

常用的波形文件有如下三种,1、trn文件,Cadence simvision支持,通过如下方式产生$shm_open(“./wave”) ;//产生你所需要mp波形的文件夹$shm_probe(bench_top,”AS”);//bench_top为举例,即你所需要mp的层$shm_close;2、fsdb文件,debussy/verdi支持,通过如下方式产生$fsdbDumpfile(“./wave/top.fsdb”);$fsdbDumpvars(5,bench_top);//从bench_top开始,mp 5层;$fsdbDumpoff;3、vcd文件,该文件通用性更广,可以转换为任意格式,可惜文件太大,产生方式如下,$mpfile(“./wave/top.vcd”);$mpvars(5,bench_top);$mpoff;当然也可以同时产生,或者通过ncoption指定,譬如在option中增加+TRN_DUMP/+VCD_DUMP/+FSDB_DUMP等在.v文件中去解析这样的stringsinitial beginstart_mp =10;stop_mp =3000000;finish_time=3000100;#0;beginif($test$plusargs(“VCD_DUMP”))$mpfile(“./wave/top.vcd”);if($test$plusargs(“TRN_DUMP”))$shm_open(“./wave”) ;if($test$plusargs(“FSDB_DUMP”))$fsdbDumpfile(“./wave/top.fsdb”);end#(start_mp);beginif($test$plusargs(“VCD_DUMP”))$mpvars(5,bench_top);if($test$plusargs(“TRN_DUMP”))$shm_probe(bench_top,”AS”);if($test$plusargs(“FSDB_DUMP”))$fsdbDumpvars(5,bench_top);end#(stop_mp-start_mp);beginif($test$plusargs(“VCD_DUMP”))$mpoff;if($test$plusargs(“TRN_DUMP”))$shm_close;if($test$plusargs(“FSDB_DUMP”))$fsdbDumpoff;end#(finish_time-stop_mp);$stop;$finish;end各种波形文件的打开方式TRNsimvision ./wave/wave.trn-input../../signal_list/simvision.svcfFSDBdebussy -f $FileList.f-autoalias -ssf ./wave/top.fsdb -topbench_top-sswr../../signal_list/top.rcVCD该文件需要被转换为trn或fsdb文件,然后打开;转fsdb文件:vfast ./wave/top.vcd -o ./wave/top.fsdb&&debussy -f $FileList.f-autoalias -ssf ./wave/top.fsdb -topbench_top-sswr../../signal_list/top.rc转trn文件:simvisdbutil -CVTMVL9 -OVERWRITE-LOGFILE wolf.log -OUTPUT wave.trn top.vcd&&simvision ./wave/wave.trn-input../../signal_list/simvision.svcf

⑧ 怎么打开verdi看fsdb的波形

打开波形后切回verdi主窗口,将代码切换到有状态机的那个模块,然后按下显示电路的那个按钮,之后切回波形去看一下,状态机的数字都变成字母了~

⑨ 如何使用ModelSim生成fsdb文件

在testbench顶层文件中添加如下代码initialbegin$fsdbDumpfile("testbench.fsdb");$fsdbDumpvars;end

⑩ Ncverilog中如何DUMP出fsdb格式的波形文件求解

关于PLI, 在此不再赘述:首先, 我们建立一个工作目录$ mkdir work$ cd work然后新开一个teminal窗口, 找到Debussy的安装目录. 进入/share/PLI/, 在该目录下有很多版本的目录,选择一个属于你的NC版本的目录, 比如nc51, 然后选择你的操作系统, 如LINUX,(换而言之, 现在处于/share/PLI/nc51/LINUX) 之后你会发现:nc_loadpli1/ nc_shared/ pli.a veriuser.c把这些目录及文件拷贝到 work目录下.免编译如果你不需要添加其他的系统函数, 那么直接可以用nc_loadpli1 下debpli.so 文件.使用方法:$ ncverilog access wrc loadpli1= ./nc_loadpli1/debpli.so : debpli_boot rtl.files当然在testbench文件中要写上你所希望调用的debussy 提供的函数, 基本的如:$fsdbDumpfile(wave.fsdb);$fsdbDumpvars(6, tb);需编译如果你已经对veriuser.c进行了修改, 那么首先把veriuser.c 编译为veriuser.o文件.cc -KPIC -c veriuser.c -I${CDS_INST_DIR}/tools/verilog/include之后连接ld -G veriuser.o pli.a -o debussypli.so使用方法:$ ncverilog access wrc loadpli1= ./debussypli.so : debussy_bootstrap rtl.files当然在testbench文件中要写上你所希望调用的debussy 提供的函数, 基本的如:


赞 (0)