Modelsim Simulation操作技巧
一、Modelsim文件操作技巧
1. 項目工程目錄分配
如上圖所示,在altera的整個設計的工程目錄之中,若是單純的邏輯設計(不上nios2系統),一斑文件目錄結構為此:
Wave_test工程目錄下,分為以下幾個分支
1) db:為Quartus II 編譯產生的文件,通常占去了工程的大部分空間,打包時可刪除.
2) incremental_db:為Quartus II 編譯產生的文件,通常占去了工程的大部分空間,打包時可刪除.
3) src :Quartus II中源代碼存放目錄
4) simulaiton :Modelsim Simulation 仿真工程目錄(前仿,后仿,布局布線后的仿真),在quartus II中設置好Modelsim路徑后,simulation文件夾會自動生成。
a) presynth:前仿,即純粹的功能仿真,綜合前的仿真
i. src :testbench測試源代碼存放目錄
ii. work :工程庫
注:若不綜合,純粹的功能仿真,可在Modelsim中建立編寫文件並進行仿真。
b) postsynth:后仿,即綜合后的功能仿真
i. src :testbench測試源代碼存放目錄
ii. work :工程庫
注:若不進行后仿,此目錄可以刪除(但最好養成良好的代碼風格)
c) postlayout :后仿,布局布線后的時序仿真(只進行功能仿真沒必要此)
i. src :testbench測試源代碼存放目錄
ii. work :工程庫
注:若不進行后仿,此目錄可以刪除(但最好養成良好的代碼風格)
5) res :其他文件存放目錄
二、Modelsim仿真操作技巧
1. 多個testbench文件
若有多個testbench文件,要對波形進行仿真,可在Libyryr-work中選中要進行仿真的testbench文件,右鍵單擊選擇simulation即可(此步驟也可以省去選擇design units的麻煩),之后同樣打開wave,添加message,run……
2. Transcript command
以下是最常用的命令,出了用腳本,也可以在gui中用按鈕來操作。
1) run 1000ns :但不運行1000ns(可修改)
2) run all :全速運行,直到break
3) step :單步運行
4) restart :仿真復位
5) 等等
3. 查詢觸發
選中wave中的信號,進行精確分析
Find prvious transition(尋找前一個傳輸)
Find next transition(尋找后一個傳輸)
4. 仿真修改調試技巧
Notepad++是一款優秀的代碼編寫軟件,在此經過我多次測試發現了仿真調試過程中的技巧。如下:
1) 一開始正常編譯,simulation,加入signal,run,分析
2) 用Notepad++打開testbench修改代碼
3) 回到Modelsim中執行compile all
4) 執行restart或者按按鈕復位wave
5) 再次run 1000 ns
6) 搞定,繼續分析,調試,綜合
注1:若直接End Simulation,軟件必須重新添加signal,比較麻煩
注2:第(3)步與第(4)步次序不能弄錯,否則restart后simulation還是原來的logic