Verilog 環(huán)境搭建

2022-05-16 13:50 更新

學(xué)習(xí) Verilog 做仿真時,可選擇不同仿真環(huán)境。FPGA 開發(fā)環(huán)境有 Xilinx 公司的 ISE(目前已停止更新),VIVADO;因特爾公司的 Quartus II;ASIC 開發(fā)環(huán)境有 Synopsys 公司的 VCS ;很多人也在用 Icarus Verilog 和 GTKwave 的方法,更加的輕便。

雖然 ISE 或者 Quartus II 都會自帶仿真器,但功能還是有欠缺。所以,這里介紹下 Quartus II + Modelsim 聯(lián)合仿真的測試方法,運(yùn)行環(huán)境為 64bit-win10 系統(tǒng)。

Quartus II 安裝

本次介紹使用的 Quartus 版本為 10.1。

目前 Quartus II 官網(wǎng)已經(jīng)沒有 13.1 以下版本的安裝包,大家可以安裝 13.1 以上版本的軟件。功能都是大同小異,下載地址:https://fpgasoftware.intel.com/13.1/?edition=subscription&platform=windows

下載 13.1 以上的 quartus II 時,官網(wǎng)也會推薦相應(yīng)版本的 Modelsim,一起下載即可。

開始安裝,修改安裝路徑,其他按照默認(rèn)設(shè)置一步步操作即可。

下圖是成功安裝的截圖。


如果提示需要 License file,如下圖所示,則需要指定購買該軟件時的 license 文件。


如果 license 文件需要替換 Host-ID,只需要 license 文件中的 HOSTID 替換為 NIC 選項中隨便一個 ID 即可,如下圖紅色框所示:


Quartus II 10.1 安裝完還需要安裝 Device,即安裝支持各種可編程邏輯器件型號的庫文件,否則 Quartus II 不能正常建立工程。

安裝路徑需要選擇 Quartus II 的安裝路徑,此時 Device 安裝可自動識別 Quartus II。

最新 Quartus II(例如 2016 版本)已經(jīng)支持一套化安裝了。

Modelsim 安裝

Modelsim 選擇 modelsim-win64-10.1c-se 版本。

也需要修改下安裝路徑,然后按照默認(rèn)設(shè)置進(jìn)行操作即可。

安裝完畢后可能提示需要重啟電腦,重啟即可。


建立 Quartus II 工程

建立工程

File->New project Wizard

設(shè)置工作路徑與工程名字、top module名字。

注意,路徑與名字設(shè)置時,不能包含中文。


選擇器件型號

我們只進(jìn)行簡單的仿真,不進(jìn)行下載、燒錄等,所以我們不用關(guān)心具體信號,隨便選一種即可。

然后一直點擊 Next,直到 Finish。


新建 Verilog 源文件

下面就對 4 位寬 10 進(jìn)制計數(shù)器進(jìn)行簡單的仿真。

點擊:File->New->Verilog HDL File->OK

點擊:File->Save As

輸入 module 名字為:counter10.v

需要注意的是,top module 名字一定要和 project 名字一致,否則會報錯(如圖中所示)。

把 Verilog 代碼復(fù)制到文件 counter10.v 中,進(jìn)行一鍵編譯(實際包含了編譯、綜合、布局布線等)。

報錯時,可通過點擊 Error log 來定位錯誤,進(jìn)行修改,直至沒有 Error。


Quartus II 調(diào)用 Modelsim 仿真

仿真設(shè)置為 Modelsim-altera

點擊:Tool->Options->EDA Tool Options

將 Modelsim 后面的地址改為 Modelsim 啟動程序的路徑。


選擇仿真器

點擊:Assignments -> Simulation

Tool name 選擇 ModelSim,并設(shè)置 Format、Time scale 等,如圖


寫 testbench 文件

點擊:Processing->start->Start TestBench Template Writer

如果設(shè)置正確,會在工程路徑 simulation/modelsim 下產(chǎn)生 ?.vt? 文件。

?.vt? 文件模板已經(jīng)給出了端口部分的代碼、接口變量的聲明和例化語句映射等。我們要做的就是將測試代碼填入到 testbench 合適的位置。

這里簡單的寫一下時鐘、復(fù)位驅(qū)動代碼,如下圖所示。


將 testbench 添加到工程中

點擊:Assignments -> Settings -> Simulation

在 Compile test bench 選項中,選擇 new,設(shè)置 Test bench name,并通過 File name 查找的方式,將上一步生成的 .vt 文件添加到工程中。

需要注意的是,testbench 文件名字需要和 testbench 里的 top module 名字保持一致,否則后續(xù)啟動 Modelsim 時會報錯,不能進(jìn)行正常的仿真。


重新一鍵編譯

此時,你會發(fā)現(xiàn),Tasks 欄編譯的狀態(tài)變成了問號,需要重新進(jìn)行一鍵編譯。


調(diào)用 Modelsim 仿真

點擊:Tools->Run simulation Tool->RTL Simulation

這時就會自動啟動 Modelsim 軟件。

Modelsim 操作這里不做具體介紹。

由仿真圖可知,我們的設(shè)計完成了 10 進(jìn)制計數(shù)的基本功能。


總結(jié)

記憶中,Quartus II + Modelsim 的聯(lián)合仿真功能既強(qiáng)大,又安裝方便。幾年后重新進(jìn)行此過程,發(fā)現(xiàn)步驟也有些許繁瑣,花費了我一晚上的時間來搞定。很多細(xì)節(jié)也在上面提出,多多注意就好。不過,大家以后有機(jī)會進(jìn)行大型的數(shù)字模塊仿真時,就會發(fā)現(xiàn)此方法的有效性。

在接下來的教程里,有些簡單的仿真可能用其他軟件進(jìn)行,截圖界面可能與 Modelsim 不一致。大家看到后不用懷疑仿真的準(zhǔn)確性,這里特別說明。

設(shè)計模塊與 testbench 源碼也會全部給出,大家完全可以自己仿真、驗證。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號