0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何用vcs+verdi仿真Verilog文件并查看波形呢?

傅里叶的猫 来源:傅里叶的猫 2023-05-08 16:00 次阅读

我们以一个简单的加法器为例,来看下如何用vcs+verdi仿真Verilog文件并查看波形。

源文件内容如下:

//adder.v
moduleadder(
inputclk,
inputrst,
input[9:0]A,
input[9:0]B,
outputreg[10:0]C
);

always@(posedgeclk)begin
if(rst)
C<= #`FFD 'b0;
    else
        C <= #`FFD A + B;
end

endmodule

我们再定义一个宏定义的文件:

//macro_define.sv
`defineFFD1ns

我们需要再定义一个testbench文件:

//test.sv
moduletest;

regclk;
regrst;
reg[9:0]A;
reg[9:0]B;
wire[10:0]C;

initialbegin
rst=1;
A=0;
B=0;
#1us;
rst=0;
#1us;
A=10'd100;
B=10'd200;
#1us;
A=10'd300;
B=10'd400;
#20us;
$finish;
end

initialbegin
clk=0;
forever#10nsclk<= ~clk;
end

adder add_inst(
    .clk(clk),
    .rst(rst),
    .A(A),
    .B(B),
    .C(C)
);

`ifdef DUMP_FSDB
    initial begin 
                $fsdbDumpfile("tb.fsdb");
        $fsdbDumpvars("+all");

        //string testname;
        //if($value$plusargs("TESTNAME=%s", testname)) begin
        //    $fsdbDumpfile({testname, "_sim_dir/", testname, ".fsdb"});
        //end else begin
        //    $fsdbDumpfile("tb.fsdb");
        //end
    end 
`endif 

endmodule

再定义一个filelist文件:dut.f

./macro_define.sv
./adder.v
./test.sv

最后就是需要一个Makefile文件了:

#!/bin/make
all:compsim

comp:
vcs-full64-timescale=1ns/1ps-V-R-sverilog
-debug_access+all+vc+v2k-kdb
-lvcs.log
-fdut.f+define+DUMP_FSDB=1
-toptest

sim:
./simv-lsimv.log

clean:
rm-rf*~corecsrcsimv*vc_hdrs.hucli.keyurg**.lognovas.**.fsdb*verdiLog64*DVEfiles*.vpd

总的文件如下:

8d1f682a-ed75-11ed-90ce-dac502259ad0.png

执行make all:

8d346798-ed75-11ed-90ce-dac502259ad0.png

跑完后如下:

8d497e08-ed75-11ed-90ce-dac502259ad0.png

生成的文件如下:

8d598708-ed75-11ed-90ce-dac502259ad0.png

用verdi打开波形:verdi -ssf tb.fsdb

8d8f14a4-ed75-11ed-90ce-dac502259ad0.png

可以看到波形如下:

8da58540-ed75-11ed-90ce-dac502259ad0.png






审核编辑:刘清

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

    关注

    28

    文章

    1343

    浏览量

    109951
  • 加法器
    +关注

    关注

    6

    文章

    183

    浏览量

    30078
  • VCS
    VCS
    +关注

    关注

    0

    文章

    78

    浏览量

    9585

原文标题:vcs+verdi仿真Verilog代码

文章出处:【微信号:傅里叶的猫,微信公众号:傅里叶的猫】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    请教VCSverdi怎么联合使用

    最近要用到VCS仿真后生成FSDB文件,然后在Verdi中进行自动侦错,请问我怎么安装Verdi这个软件以及如何启动license,并且怎么
    发表于 01-22 14:53

    VCS+Verdi如何安装?怎么破解?

    VCS+Verdi如何安装?怎么破解?
    发表于 06-21 06:11

    VCS仿真卡住,为什么无法生成verdi波形文件

    在make com编译成功后,terminal卡住了一直没有反应,这是什么情况有大佬知道吗?VCS仿真卡住,为什么无法生成verdi波形文件
    发表于 06-21 08:14

    基于linux系统的VCS使用及仿真说明

    代码如下:顶层模块代码:波特率产生模块接收模块代码:发送数据模块一、VCS仿真下面开始进行VCS仿真VCS要使用图形化界面,必须得先编译得
    发表于 07-18 16:18

    请问如何更新bin/run.makefile以支持VCS+Verdi工具?

    如何更新bin/run.makefile以支持VCS+Verdi工具?
    发表于 08-11 10:08

    在Linux上用vcs+verdi对demo_nice进行仿真没有成功的原因?

    请教大神,我在Linux上用vcs+verdi对demo_nice进行仿真,但是没有成功 我是用hibrd.sdk把demo_nice编译成.verilog文件的,其内容如下 另
    发表于 08-12 08:07

    vcsverdi的调试及联合仿真案例

    若想用Verdi观察波形,需要在仿真时生成fsdb文件,而fsdb在vcs或者modelsim中的生成是通过两个系统调用$fsdbDumpf
    的头像 发表于 09-22 15:01 8525次阅读

    如何通过自动化脚本实现Questasim和Verdi的联合仿真

    Verdi是用来仿真以及debug波形的工具,但它不能够用来编译verilog和systemverilog文件,所以需要借助第三方EDA工具
    的头像 发表于 06-13 17:00 4476次阅读
    如何通过自动化脚本实现Questasim和<b class='flag-5'>Verdi</b>的联合<b class='flag-5'>仿真</b>

    如何使用Icarus Verilog+GTKWave来进行verilog文件的编译和仿真

    Windows+Linux+MacOS,并且源代码开源。通过tb文件可以生成对应的仿真波形数据文件,通过GTKWave可以查看仿真
    的头像 发表于 07-27 09:16 5295次阅读
    如何使用Icarus <b class='flag-5'>Verilog</b>+GTKWave来进行<b class='flag-5'>verilog</b><b class='flag-5'>文件</b>的编译和<b class='flag-5'>仿真</b>

    利用vcs+verdi仿真工具蜂鸟E200系列处理器仿真分析

    开源RISC-V Hummingbird E203(蜂鸟E203)的仿真工具是开源的iverilog,这里利用vcs+verdi仿真工具进行仿真
    的头像 发表于 11-17 10:28 2803次阅读

    全网最实用的Verdi教程1

    Verdi是一个功能强大的debug工具,可以配合不同的仿真软件进行debug,很多企业常用VCS+Verdi或者Xcelium/xrun+Verdi的方式进行代码的
    的头像 发表于 05-05 14:49 1.6w次阅读
    全网最实用的<b class='flag-5'>Verdi</b>教程1

    全网最实用的Verdi教程2

    Verdi是一个功能强大的debug工具,可以配合不同的仿真软件进行debug,很多企业常用VCS+Verdi或者Xcelium/xrun+Verdi的方式进行代码的
    的头像 发表于 05-05 14:53 8028次阅读
    全网最实用的<b class='flag-5'>Verdi</b>教程2

    全网最实用的Verdi教程3

    Verdi是一个功能强大的debug工具,可以配合不同的仿真软件进行debug,很多企业常用VCS+Verdi或者Xcelium/xrun+Verdi的方式进行代码的
    的头像 发表于 05-05 14:53 5488次阅读
    全网最实用的<b class='flag-5'>Verdi</b>教程3

    何用vcs+verdi仿真Verilog文件

    我们以一个简单的加法器为例,来看下如何用vcs+verdi仿真Verilog文件
    的头像 发表于 05-11 17:03 1860次阅读
    如<b class='flag-5'>何用</b><b class='flag-5'>vcs+verdi</b><b class='flag-5'>仿真</b><b class='flag-5'>Verilog</b><b class='flag-5'>文件</b>

    Verdi环境配置、生成波形的方法

    Verdi是一个功能强大的debug工具,可以配合不同的仿真软件进行debug,很多企业常用的就是VCS+Verdi或或者Xcelium(xrun)+Verdi的方式进行代码的
    的头像 发表于 05-29 09:48 3433次阅读
    <b class='flag-5'>Verdi</b>环境配置、生成<b class='flag-5'>波形</b>的方法