QuestaSim使用及Makefile命令


一、熟悉Linux環境下Questasim EDA Tool及GUI交互操作:
1.Questasim簡介:
 Questasim是由Mentor Graphics公司推出的一款功能強大的仿真工具,支持System C,Verillog,SystemVerilog以及VHDL等硬件描述語言 。它是Modelsim的加強版。QUestasim支持多種驗證特性,比如coverage databases,coverage driven verification,assertions,SystemVerilog constraints-functionallity等。
2.確認Linux系統環境下的Questasim可用:
在Terminal中鍵入如下命令:which vsim
3.打開Questasim GUI,熟悉界面:
在Terminal中鍵入如下命令:vsim&

4.創建project和library文件夾,步驟基本同Modelsim:
 點擊菜單欄上的“File”->“New”->“Project”

 對於每一個項目,需要建立一個Project,“Project Name”為新建Project的名稱。
5.向project中添加代碼文件:
 點擊上一步步驟中的”OK”之后,會顯示


 這里我們選擇“Add Existing File”,這里指的是向projet中加入已有的代碼文件,這里我們的實驗代碼已經提供了,所以直接點擊這個圖標。
 點擊Browse,進入code文件夾,選中所有以“.v”和“.vp”結尾的文件,然后點擊OK。

6.編譯文件:

 用鼠標框選出所有文件,然后右鍵出現菜單,點擊“compile”->“compile All”。如果編譯通過,可以看到status全部由原來的“?”變為“√”。而且在下方的報告窗口中可以看到編譯成功的字樣。如果編譯不成功,有問題的文件的status為“×”,並且下方的報告窗口中也會提示出更加詳細的錯誤信息。在Lab01中的代碼都是正確的,所以正常情況下應該全部通過。

7.運行仿真:
 在編譯通過之后,就可以運行仿真了。點擊菜單欄上的“silulate”->“start simulation ”,出現Start Simulation對話框,點擊“work”全面的“+”進行展開。work即為庫目錄,就是在我們創建project時定義的,如果當時不是使用默認值“work”,而是使用自定義的名稱,那么也會出現在該對話框中,找到相應的名稱即可。在“work”的展開項目中 ,可以看到剛才編譯成功的文件。此時我們要選擇最頂層的文件。去掉“Optimization”前面的勾選,因為如果勾選,Questasim會在仿真時對設計進行優化,這里我們不需要對它進行優化。我們在仿真時,總是要選擇最頂層的模塊進行仿真,這一點需要注意。

 設置好之后,點擊OK。此時,進入仿真界面。

 這時仿真已經准備好了,需要點擊運行開始仿真。

 5個圖標從左到右依次為“Run”“ContinueRun”“Run-All”“Break”“Stop”這里我們點擊第三個“Run-All”,意思是讓仿真一直運行到結束。
8.查看結果
 當仿真完成之后,彈出對話框,我們點擊“No”,此時不會退出Questasim,我們就可以查看仿真的結果。

可以在Transcript中看到仿真打印的相關信息。
9.查看波形:
 在代碼中並沒有加入dump波形的語句,所以,當上面的仿真結束后,無法查看波形。我們要在仿真開始之前,將需要查看波形的信號加入波形窗口中去。

 在“Instance”窗口中點擊“top_io”之后,會在Objects窗口中將信號全部選中,右鍵,“Add Wave”,就會在Wave窗口中出現這些信號,處於該窗口中的信號會在仿真時dump波形。
 之后,我們要重新在仿真一次,點擊菜單欄的“Simulate”->“Restart…”在彈出的窗口點擊“OK”.此時就可以再次進行仿真了。點擊“Run-All”。

 仿真結束就可以看到波形了。

二、在Batch模式下,使用命令行以及Makefile來進行仿真
 在實際的工程中,一般很少用到Questasim的GUI界面,除非要通過波形來Debug,除此之外都是在命令行模式下進行的,那么,如何通過命令行來實現上面講到的仿真 過程呢?
 進入代碼目錄,在Terminal中使用
rm -rf work mti_lib transcript modelsim.ini
 命令來清理掉剛才仿真所產生的中間文件。
 下面,我們可以把如下命令寫入Makefile,使用Makefile腳本使得命令自動執行,這是因為在實際工程中,文件量巨大,每次仿真要敲這么多的命令實在讓人崩潰,我們可以將這些語句寫入腳本中,在需要的時候直接調用腳本執行命令即可,下面介紹使用Makefile腳本來實現仿真。
1.使用gvim來創建Makefile文件
gvim Makefile
2.編輯該文件,將命令寫入文件中

 可以看到,我們將包括刪除文件在內的一共4條命令以某種方式寫入到Makefile這個文件中去了。
3.Makefile使用
 保存Makefile文件后,在當前目錄下就多出了一個Makefile文件。在Terminal中鍵入 make
 之后就可以看到仿真開始執行直到結束。
 以后每次執行仿真,只要在該目錄下執行“make”,即可自動執行仿真。
————————————————
版權聲明:本文為CSDN博主「mjwwzs」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/mjwwzs/article/details/78089738


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM