verilog HDL 的環境搭建

環境搭建

安裝 Icarus Verilog 和 GTKwave

由於Icarus Verilog中已經包含了GTKWave所以直接從http://bleyer.org/icarus/下載安裝,這裏提供的爲Windows版,我下載的爲當前時間最新版:iverilog-10.1.1-x64_setup.exe,整個安裝包才9.77MB,安裝後也只有不到50MB。經測試,其實安裝後只要把安裝所在目錄打包複製到其它電腦也可以用,即下載的這個安裝類似一個自解壓文件,但會增加兩個路徑到PATH。所以將安裝目錄打包複製到其它電腦後只要將以下兩個目錄(iverilog和gtkwave可執行文件所在目錄)加入系統PATH環境變量中即可(這裏假設放入其它電腦的目錄爲E:\iverilog):
如下所示:

 

使用舉例:

4線-2線編碼器

程序:

coder4x2.v

// 4線-2線編碼器
`timescale 1ns/1ns
module coder4x2(I0,I1,I2,I3,Y0,Y1);

input I0,I1,I2,I3;
output Y0,Y1;

reg Y0,Y1;

always @(I0 or I1 or I2 or I3)
begin
Y0 = I1 + I3;
Y1 = I2 + I3;
end

endmodule

test_coder4x2.v

// 測試編碼器功能
module test_coder4x2;

reg i0,i1,i2,i3;
output y0,y1;

coder4x2 C1(i0,i1,i2,i3,y0,y1);

initial
begin : ONLY_ONCE
	reg [7:0] pal;
	for (pal=0;pal<16;pal=pal+1)
	begin
		{i3,i2,i1,i0} = pal;
		#5 $display("%d I = %b %b %b %b",pal,i3,i2,i1,i0,
		" ####### Y = %b %b",y1,y0);
	end
end

initial
begin
    $dumpfile("test_coder4x2.vcd");
    $dumpvars(0,test_coder4x2);
end

endmodule

 

若需要查看波形則需要在 test_bench 中添加以下:

initial
begin
    $dumpfile("test_coder4x2.vcd");
    $dumpvars(0,test_coder4x2);
end

 

運行:
 

1.打開命令行界面

 

2.定位到文件處,本程序地址如下:

 

3.執行下面的命令編譯

iverilog -o test_coder4x2 test_coder4x2.v coder4x2.v

得到

4.再執行下面的命令運行程序

vvp test_coder4x2

5.若查看波形則可執行

gtkwave test.vcd &

得到

 

 

 

參考:

https://blog.csdn.net/husipeng86/article/details/60469543

https://iverilog.fandom.com/wiki/User_Guide

https://blog.csdn.net/liming0931/article/category/923723

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章