Quartus II 15.0 使用 ModelSim SE-64 2019.2 軟件進行仿真
ModelSim 仿真 Verilog HDL 時需要編寫一個 TestBench 仿真文件,通過仿真文件提供激勵信號。可以簡單的理解成信號發生器,給我們的代碼提供模擬時鍾信號。因此編寫 TestBench 仿真文件是仿真過程中的一個重要步驟。
Quartus II 15.0自身是不提供仿真功能的,但是可以用 Quartus II 15.0 創建 TestBench 仿真文件模板,而我們稍微修改一下這個生成的模板文件就能進行仿真了,非常方便。
准備一個可以編譯正常的工程(如果編譯有問題可以參考上一篇博客)

使用 Quartus II 創建 TestBench 模板文件,如下如圖:


創建的文件后綴名是 .vt ,自動保存在工程目錄\simulation\modelsim 中,我這里是 top.vt 文件

打開 top.vt 文件,文件內容如下:

修改 top.vt 文件

TestBench 仿真文件修改完成,接下來使用仿真文件:





下面一路 OK 結束就可以了,然后再全編譯一次,切記一定是全編譯,編譯完成后啟動仿真軟件,如下圖:

啟動仿真運行后 Quartus II 會自動打開 ModelSim 軟件,ModelSim 軟件打開后會自動編譯仿真文件,然后加載仿真文件中的接口,並且自動運行一次仿真。
總之在點擊 RTL Simulation 后就什么都不要做了,等着看波形就好了。
如果波形是紅色的直線就表示參數未初始化,工程模塊內部參數初始化可以在工程代碼中做掉,工程輸入輸出參數則在仿真文件里初始化。
如果沒有任何波形出現,那就重新檢查一下仿真文件以及仿真文件使用過程配置是否正確。
我剛才在 New TestBench Setings 窗口將 End simulation at 設置為 1ms,而仿真文件中的時間單位也為1ms,所以第一次仿真運行時由於時間長度不夠,導致波形都是一條直線。后面在 ModelSim 中修改仿真運行時間為 10000ms,再次運行,波形就都顯示出來了。
仿真結果如下:

至此 Quartus II 15.0 與 ModelSim SE-64 軟件聯合仿真運行完畢
一個小小的聯合仿真功能花了我兩天時間,吐血中。。。
總結:在執着中痛苦,在痛苦中覺悟,覺悟之后如履平地,覺悟之前如臨深淵
