vcs+verdi仿真Verilog代码

这篇具有很好参考价值的文章主要介绍了vcs+verdi仿真Verilog代码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

源文件内容如下:

//adder.v
module adder(
 input          clk,
 input          rst,
 input   [9:0]  A,
 input   [9:0]  B,
 output reg [10:0] C
);

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

endmodule

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

//macro_define.sv
`define FFD 1ns

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

//test.sv
module test;

reg clk;
reg rst;
reg [9:0] A;
reg [9:0] B;
wire [10:0] C;

initial begin
    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

initial begin
    clk = 0;
    forever  #10ns clk <= ~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: comp sim

comp:
        vcs -full64 -timescale=1ns/1ps -V -R -sverilog \
        -debug_access+all +vc +v2k -kdb \
        -l vcs.log \
        -f dut.f +define+DUMP_FSDB=1 \
        -top test 

sim:
        ./simv -l simv.log

clean:
        rm -rf *~  core  csrc  simv*  vc_hdrs.h  ucli.key  urg* *.log  novas.* *.fsdb* verdiLog  64* DVEfiles *.vpd

总的文件如下:

vcs+verdi仿真Verilog代码,fpga开发,Verilog,VCS

执行make all

vcs+verdi仿真Verilog代码,fpga开发,Verilog,VCS

跑完后如下:

vcs+verdi仿真Verilog代码,fpga开发,Verilog,VCS

生成的文件如下:

vcs+verdi仿真Verilog代码,fpga开发,Verilog,VCS

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

vcs+verdi仿真Verilog代码,fpga开发,Verilog,VCS

可以看到波形如下:

vcs+verdi仿真Verilog代码,fpga开发,Verilog,VCS

FPGA技术交流群:公众号:傅里叶的猫文章来源地址https://www.toymoban.com/news/detail-639075.html

到了这里,关于vcs+verdi仿真Verilog代码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • linux环境下vcs+verdi的使用

    今日感想:学习只能慢慢搭积木,想一步登天可不行啊 在vcs仿真时调用$dump函数dump出fsdb文件,随后verdi load filelist和fsdb文件来进行debug 1、 vcs两步仿真:先编译文件,生成simv可执行文件;后进行仿真 (compilation and simulation) VCS:Verilog Compiler Simulator 问题一:当设计比较大的

    2024年02月11日
    浏览(44)
  • VCS与Verdi联仿,简要万能工程模板,持续更新中...

    一、背景 学习verilog,故用vcs来编译verilog,用verdi来查看波形。 提供一套简要verilog工程模板去执行教程中代码,并分析波形。 二、编写工程模块 建立工程在temp文件夹下新建文件夹/rtl、/sim、/tb,如下: 在/rtl文件夹下新建两个.v文件: template.v和timescale.v ,为模板rtl代码。

    2024年02月12日
    浏览(40)
  • linux VCS+verdi运行UVM实战(第二章)中的例子

    目录 前言 介绍 建立工程 运行代码 查看波形 总结 前言 用VCS+verdi运行了下UVM实战中的例子(第二章)。 在某宝上花了几十块,买了个虚拟机(已经安装好VCS+verdi)。直接用UVM实战中,现成的uvm代码跑了下。 UVM实战源码下载地址:UVM实战源码下载 书中DUT的功能:通过rxd接收

    2023年04月08日
    浏览(43)
  • vcs仿真教程(查看断言)

            VCS是在linux下面用来进行仿真看波形的工具,类似于windows下面的modelsim以及questasim等工具,以及quartus、vivado仿真的操作。 vcs的常见指令后缀 sim常见指令 命令:mkdir +文件名,例如:mkdir tst 然后直接把设计文件和仿真文件拷贝到tst7这个文件夹里。 打开终端,输入

    2024年02月10日
    浏览(46)
  • EDA07--VCS仿真验证(一)

    VCS用于在Linux下仿真.v代码,vcs六大功能: ·System Verilog ·OVA ·NTB ·DVE调试环境 ·覆盖率统计 ·DirectC ·增量编译 ·64-bit模式 ·混合信号仿真 本文讲解VCS的知识内容,具体操作步骤单独写一篇… VCS-DVE仿真由三步构成: 编译、仿真、调试 。提前编写好设计文件和Testbench的.v文件。

    2024年02月08日
    浏览(49)
  • Vivado工程怎么用VCS仿真

    在进行数字电路设计的的时候,我们用Vivado写了一个工程,但是大家都知道Vivado自带的仿真是很拉胯的,信号多了就很慢很不方便,很容易卡死,所以就需要用VCS去进行仿真,有2种方法。 1.首先也是最重要的一步,你需要把Vivado的所有的IP编译成VCS可以识别的库文件,因为你

    2023年04月08日
    浏览(44)
  • 逻辑仿真工具VCS的使用-Makefile

            Gvim写RTL code,VCS仿真,Verdi看波形,DC做综合下约束,Primetime做STA,Spyglass做异步时序分析。            VCS全称Verilog Computer Simulation ,VCS是逻辑仿真EDA工具的编译源代码的命令。要用VCS做编译仿真,首先得有一个RTL代码,比如我们写了一个全加器和全加器的

    2024年02月02日
    浏览(40)
  • 新手教程01:逻辑仿真工具VCS的基础使用

    目录 前言 利用图形化界面的方法使用VCS 1. 新建文件夹,存放需要仿真的Verilog源代码和testbench测试文件​ 2. 使用cd命令进入该文件夹路径下,对需要编译的文件生成file.list文件 3. 使用vcs命令编译仿真需要的verilog代码 4. 启动VCS图形化界面 5. 进行仿真,生成波形 总结 零基础

    2024年02月09日
    浏览(43)
  • 【数字IC设计】VCS仿真DesignWare IP

    DesignWare是SoC/ASIC设计者最钟爱的设计IP库和验证IP库。它包括一个独立于工艺的、经验证的、可综合的虚拟微架构的元件集合,包括逻辑、算术、存储和专用元件系列,超过140个模块。DesignWare和 Design Compiler的结合可以极大地改进综合的结果,并缩短设计周期。Synopsys在DesignW

    2024年02月14日
    浏览(50)
  • 基于vcs+uvm+xilinx ip的仿真平台的半自动化搭建

    系 统:ubuntu 18.04 仿真平台:vcs_2018.09-SP2 开发平台:vivado 2019.2 本文的主要目的是自动化搭建基于vcs+uvm+xilinx ip的仿真平台,节省平台搭建的时间与精力。 拿到一个项目,一般的平台搭建的步骤:去网上找一个makefile脚本(或者使用原项目脚本),修改相应的软件路径,添加

    2024年01月18日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包