Modelsim——do腳本、bat命令


一、do腳本實現自動化仿真

  Modelsim是支持命令的,我們可以用 .do 文件將這些命令先寫好然后在Modelsim上調用。因為我的編輯器不支持.do的語法,所以這里改用 .tcl文件,它和 .do 的使用是沒有任何區別的。

1. 我習慣設置一個test文件夾,里面放着仿真文件 XX_tb.v,然后在這test文件夾里放一個sim文件夾,在此文件夾內新建一個sim.tcl文件,這樣后面的工程和亂七八糟的文件都在內部的sim文件夾里。

2. 在sim .tcl文件里寫好以下代碼,這些代碼建議保存或制作成代碼片段,以后只需要稍微改一改就能用。

 1 # ========================< 清空軟件殘留信息 >==============================
 2 
 3 # 退出之前仿真
 4 quit -sim
 5 
 6 # 清空信息
 7 .main clear
 8 
 9 # =========================< 建立工程並仿真 >===============================
10 
11 # 建立新的工程庫
12 vlib work
13 
14 # 映射邏輯庫到物理目錄
15 vmap work work
16 
17 # 編譯仿真文件
18 vlog ./../*.v
19 
20 # 編譯設計文件
21 vlog ./../../rtl/*.v
22 
23 # 無優化simulation                                      *** 請修改文件名 ***
24 vsim -novopt work.fsm_tb
25 
26 # =====================< 狀態機名稱,不用請刪除 >=============================
27 
28 # 結構體設置
29 virtual type {
30     {4'b0001 S0}
31     {4'b0010 S1}
32     {4'b0100 S2}
33     {4'b1000 S3}
34 } fsm_type;
35 
36 # 結構體和信號名關聯,命名為state_name
37 virtual function {(fsm_type)/fsm_tb/u_fsm/state} state_name
38 
39 # ============================< 加載波形 >=================================
40 
41 # 添加波形,高度30,以unsigned格式顯示                      *** 請修改路徑名 ***
42 add wave -height 30 -radix unsigned /fsm_tb/u_fsm/*
43 
44 # 清空信息
45 .main clear
46 
47 # 跑完
48 run -all

 

3.打開Modelsim,點擊 Files --- Change Directory ,找到剛剛那個 tcl 文件所在的文件夾。

4.在Transcript窗口輸入 do sim.tcl,敲擊Enter回車鍵。現在Modelsim就會自動幫你工作啦!

 

ps:

1.如果你的文件夾結構設置的和我一樣,而且testbench文件命名為:XX_tb.v,里面例化的名稱為 u_XX ,那么以后只需要將上述代碼的 fsm 以"不匹配全詞"方式替換成XX即可,當然手動修改也是很方便的,畢竟只要改2處地方即可。

2.這樣操作在Project區域是空白的,那我們改了代碼后怎么編譯調試呢?在Library里找到模塊用鼠標右鍵選擇編譯即可,和在Project里編譯是一樣的效果。然后在波形那restart一下重跑就行了。

 

二、利用do文件保存波形

  變好顏色,設置顯示格式,定位時間點,終於看到想要的漂亮波形啦!這時按Crtl + S 保存當前狀態為wave.do,路徑為默認路徑。關閉軟件,走人!下次想再看到之前的費了半天調好的漂亮波形,只需要這樣做:

1.在你剛剛那個工程的文件夾,出現一個vsim.wlf文件和剛剛保存的wave.do文件。我們雙擊vsim.wlf,Modelsim就打開了,並且定位到了之前的文件夾,也打開了sim區域,但是沒有波形。

2.如果你在sim區域選中模塊右鍵點擊add wave,那么波形出現了,卻不是你之前的那個漂亮波形,所以我不建議這么做。你應該在做完上面第1步后直接在Transcript輸入:do wave.do,按Enter回車鍵。噔噔噔噔,原來的波形回來了!

 

三、用bat命令直接運行Modelsim

  如果你懶得連Modelsim都不想打開,那可以試試 .bat文件的操作。

1.在 sim.tcl文件邊上新建一個 <新建文本文檔.txt> 文件,里面寫好下面的的代碼然后保存。注意第4行需要和你的 .tcl 文件名稱保持一致。

::請按任意鍵繼續...
pause

::打開Modelsim並執行do sim.tcl
vsim -do sim.tcl

2.將剛剛那個 <新建文本文檔.txt> 文件重命名為 <點我仿真.bat> 文件

3.打開這個bat文件,按任意鍵,電腦自動打開Modelsim自動仿真出波形了!

 


免責聲明!

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



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