1. 程式人生 > >使用開源軟體進行Verilog HDL模擬-安裝篇

使用開源軟體進行Verilog HDL模擬-安裝篇

本系列文章介紹使用開源軟體Icarus Verilog和gtkwave進行HDL前端模擬。

一、軟體簡介

  • Icarus Verilog
    Icarus Verilog 是一款開源的verilog模擬軟體,具有一下特點:

    • 跨平臺,Linux/BSD/AIX/Mac OSX/Windows
    • 編譯型模擬軟體
    • 支援IEEE1364-1995,IEEE1364-2001和IEEE1364-2005標準
    • 支援VPI(即PLI2.0)並實現了一個對標準VPI的擴充套件
    • 提供一個verilog到VHDL的語言轉換器
  • gtkwave
    gtkwave是一款基於gtk+的輕量級波形檢視軟體,支援的格式有

    • 標準Verilog值變轉儲檔案(VCD/EVCD)
    • interLaced eXtensible Trace檔案(LXT/LXT2)
    • Verilog/VHDL Zipped Trace(VZT)
    • GHDL模擬器的轉儲檔案(GHW)

    gtkwave也是跨平臺的,它的跨平臺特性來自於gtk+的跨平臺特性

二、安裝

  • Microsoft Windows
    在Windows平臺下可以直接使用整合了iverilog和gtkwave的安裝包。
    可以在icarus的主頁上找到,地址為 http://bleyer.org/icarus/
    安裝完之後應該確認二進位制程式所在目錄已經新增到環境變數PATH中。

    如果有Cygwin,那麼可以在Windows環境下使用原始碼進行編譯。其方法與Xnix下面的編譯方法幾乎相同
    區別在於Cygwin的超級使用者比較特殊,使用管理員登陸系統即可,沒有必要使用sudo

  • 編譯這兩個軟體需要基本的C/C++編譯環境。Linux各發行版和Unix系統均有說明,此外還需要安裝
    gtk+的開發包。在MacOSX中需要安裝Xcode和gtk+的Mac OSX移植包。Xcode可以在蘋果的官方網站得到,隨機附贈光碟也有。gtk+的移植包推薦使用gtk+官方做好的dmg安裝包,地址為 http://www.gtk-osx.org/
    也可以自己編譯,方法可以參照 http://sourceforge.net/apps/trac/gtk-osx/wiki/Build
    後者編譯出的庫更加“native”,例如選單將位於桌面上的主選單欄之中。

    編譯環境安裝好之後,就可以按照一般開源軟體編譯流程編譯Icarus Verilog和gtkwave了。


    $tar zxfv yourappsrc
    .tar
    $cd yourappsrc
    $./configure [--prefix=/xxx/xxx]
    $make
    #make install

三、測試icarus

icarus verilog為命令列介面(CUI)程式。由於是編譯型的模擬器,因此編譯和模擬是分開的過程。
使用任意文字工具寫一段verilog程式碼hello.v:

module tb;

initial begin
    $display("*************************");
    $display("hello world");
    $display("*************************");
end

endmodule



開啟終端,編譯程式碼:

$iverilog -o simv hello.v

引數的意思是,編譯hello.v,並輸出為可執行檔案simv。如果沒有-o的選項,將輸出預設的a.out
如果編譯成功,將不給出任何提示。執行模擬可執行檔案進行模擬:

$./simv

*************************
hello world
*************************
$