采用vscode+iverilog进行代码编译

参考资料
VScode编辑verilog/SystemVerilog + iverilog编译仿真 + GTKWave显示波形

https://blog.csdn.net/qq_37899920/article/details/126376878

工具配置

vscode中支持verilog的插件很多,安装较多的是一下几个
在这里插入图片描述
Verilog-HDL/SystemVerilog/Bluespec SystemVerilog:
语法高亮,代码风格检查等
Verilog HDL:
调用iverilog进行综合运行
Verilog_Testbench:
自动生成test_bench代码
Verilog Format:
verilog排版工具。

运行测试

测试的test_tb.v如下:

`include "test.v"
`timescale  1ns / 1ps  

module tb_test;        

// test Parameters     
parameter PERIOD  = 10;


// test Inputs
reg   clk                                  = 0 ;
reg   [3:0]  a                             = 0 ;
reg   [3:0]  b                             = 0 ;
reg   sig                                  = 0 ;

// test Outputs
wire [3:0] outsig                      ;


initial
begin
    forever #(PERIOD/2)  clk=~clk;
end

// initial
// begin
//     #(PERIOD*2) rst_n  =  1;
// end

test  u_test (
    .clk                     ( clk                    ),
    .a                       ( a                [3:0] ),
    .b                       ( b                [3:0] ),
    .sig                     ( sig                    ),

    .outsig         (outsig        )
);

initial
begin
    $dumpfile("tb_test_wave.vcd");
    $dumpvars;
    #10
    a=4'h0;
    b=4'h0;
    sig=4'h0;
    #10
    a=4'h1;
    b=4'h0;
    sig=4'h1;
    #10
    a=4'h0;
    b=4'h1;
    sig=4'h0;
    $finish;
end

endmodule

实例化的模块test.v如下,这里简单的实现一个全加器:

module test(
    input clk,
    input [3:0] a,
    input [3:0] b,
    input sig,
    output reg[3:0] outsig
);

always @(posedge clk or sig or a or b) begin
    outsig <=(sig)?a:b;
end

endmodule

安装Verilog HDL控件后vscode右上角会有运行按钮:
在这里插入图片描述
运行后生成波形文件test_tb_wave.vcd,双击即可加载波形窗口,可以添加感兴趣的波形进行观察。
在这里插入图片描述

关于systemverilog的编译

由于verilog hdl控件不识别systemverilog,使用systemverilog编写的tb不能直接生成波形文件,可以考虑用批处理命令调用modelsim生成波形文件后再加载到vscode进行分析的方法。

VSCode中使用iverilog可以通过以下步骤进行: 1. 首先,在VSCode中安装Verilog插件。可以在扩展市场中搜索并安装"Verilog-HDL/System"插件。这个插件提供了Verilog代码的语法高亮和一些基本的代码编辑功能\[2\]。 2. 安装iverilog编译器。iverilog是一个常用的开源Verilog编译器,可以在终端中使用。你可以在官方网站上下载并安装iverilog编译器\[1\]。 3. 配置VSCode的任务(Tasks)来使用iverilog编译器。在VSCode中,你可以通过按下Ctrl+Shift+P打开命令面板,然后输入"Tasks: Configure Task"来配置任务。选择"Create tasks.json file from template",然后选择"Others"作为任务类型。在生成的tasks.json文件中,你可以配置编译命令和参数,以及输出文件的路径。 4. 编写Verilog代码并保存。在VSCode中创建一个新的文件,将Verilog代码粘贴到文件中,并保存文件。 5. 使用VSCode的终端来编译Verilog代码。按下Ctrl+`打开终端,然后使用iverilog编译器来编译你的Verilog代码。根据你的任务配置,你可以在终端中输入类似于"iverilog -o output_file input_file.v"的命令来进行编译。 6. 查看编译结果。编译完成后,你可以在终端中查看编译结果。如果没有错误,你可以继续进行后续的仿真或验证工作。 总结起来,在VSCode中使用iverilog编译Verilog代码的步骤是:安装Verilog插件、安装iverilog编译器、配置任务、编写代码、使用终端编译代码、查看编译结果\[1\]\[2\]。希望这些步骤对你有帮助! #### 引用[.reference_title] - *1* *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^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三环西北角

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值