iverilog工具的使用


前言

最近在一个项目中发现了一个挺有意思的小工具——iverilog,一个verilog编译器,这款verilog编译器的编译速度超快,很适合用于一些小型项目中,也不用特地去安装quartus或者是vivado,像我这样的小白,是真滴香!!!


一、获取Iverilog

从该网址进入,Iverilog官网,选择最新版的Iverilog软件进行下载,教程使用的是windows操作系统。

二、安装

这个软件跟着流程安装就行,不过在安装的时候需要注意一下下面这一步,勾选下面两个勾勾。

在这里插入图片描述

检测软件有无安装好,可以在命令行中分别输入下述代码:

where iverilog
where vvp
where gtkwave

运行成功后,命令行会分别显示三个工具的路径。

三、命令行方法

1、编译文件(使用iverilog)

iverilog -o [生成的文件名] [verilog文件]...

对于不在同一目录中的文件,可以使用-y [文件绝对路径]替代文件名,具体将在后述演示中说明。

2、生成波形文件(使用vvp)

vvp -n [上一步编译的文件名] -lxt2

testbench中需要加上下述代码才能够生成波形文件

initial begin            
    $dumpfile("生成波形文件命名.vcd");       
    $dumpvars(0, testbench名称);    
end

3、绘制波形文件(使用gtkwave)

gtkwave [上一步生成的波形文件,需要加上后缀]

四、演示

1、verilog代码

module test (
    input clk,
    output dout
);
    assign dout = ~clk;
endmodule

2、testbench代码

/*
    incentive document
*/
`timescale 1ns / 1ns
module testbench();
    reg clk;
    /* define the wire below */
    wire dout;

    parameter CYCLE    = 2;
    parameter END_TIME = 200;
    /* init the module below */

    test mod(
        .clk    (clk),
        .dout   (dout)
    );

/***************************************************/
    initial begin            
        $dumpfile("wave.vcd");        //生成的vcd文件名称
        $dumpvars(0, testbench);    //tb模块名称
    end 
/***************************************************/
    /* init the state */
    initial begin
        clk = 0;
    end
/***************************************************/
    /* genrate clock */
    always begin
        #(CYCLE / 2) clk = ~clk;
    end
/***************************************************/
    /* stop the simulation */
    initial begin
        #END_TIME;
        $stop;
    end

endmodule

3、步骤

a.下面两种编译方式均可。

在这里插入图片描述

使用了-y [文件绝对路径]

在这里插入图片描述

b.生成波形文件

在这里插入图片描述

c.绘制波形图

在这里插入图片描述

在这里插入图片描述

**

快捷操作:1、命令行可以使用tab键快速补全文件的名称;
2、命令行中可以使用上下键切换曾经使用的命令。

**


总结

happy去吧!!

  • 13
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
使用VS Code进行iverilog开发时,你可以按照以下步骤进行设置和配置。 首先,你需要选择iverilog作为你的工具。你可以在设置中找到这个选项,并将其设置为iverilog。这样做可以确保VS Code使用iverilog进行编译和链接,并避免链接错误的报错。\[1\] 接下来,你需要安装Verilog-HDL/System插件。你可以在扩展中搜索"verilog",找到下载人数最多的这个插件,并点击"安装"按钮进行安装。安装完成后,你会发现代码会有颜色标记,但它并没有自动检错的功能。\[2\] 使用VS Code进行iverilog开发的好处是,它提供了许多常用插件,如自动例化、自动补全和自动格式化等。这使得开发过程更加方便。许多工程师喜欢使用VS Code进行FPGA开发,特别是在验证算法时,因为它提供了一个简单的开发环境。\[3\] 所以,通过在VS Code中设置iverilog工具和安装Verilog-HDL/System插件,你可以在VS Code中进行iverilog开发。 #### 引用[.reference_title] - *1* [【无标题】](https://blog.csdn.net/weixin_42193451/article/details/127799939)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [如何用VS code开发FPGA的程序,iverilog使用说明](https://blog.csdn.net/icekoor/article/details/126510836)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值