1. 建一個總文件夾,如cnt
2. 為源代碼,測試台文件,模擬各建一文件夾。如src,tb,sim
3. 編寫源代碼,testbench。如cnt.v,tb_cnt.v文件,同時文件名里的模塊名與文件名相同,如module cnt( ), module tb_cnt( )。
4. 再sim文件夾里加入tb.f文件:../tb/tb_cnt.v
../src/cnt.v
../tb/tb_cnt-y
../src +libext+.v(這裡源代碼中可有許多,下一次做的DPLL必須要用第二種)
5. 下面開始模擬,模擬,顧名思義要在模擬文件夾sim中進行。pwd 出現當前目錄cd ..當前目錄向上一級 cd e:/modelsim進入e盤中的modelsim目錄
6. vlib work (建工作庫),此時從庫文件中含有modelsim自動生成的_into文件。
7. vlog –f tb.f (編譯 .v文件),此時庫文件加入了cnt.v 和 tb_cnt.v模塊
8. vsim -voptargs=”+acc” tb_cnt (在testbench中測試源代碼),此時sim文件夾里出現了vsim文件,work文件夾里有一些模擬文件。同時在modelsim中出現sim項。
9. 右擊sim項中的實例名稱,點擊 add to wave all items in design 。本例中實例項是inst_cnt。(cnt inst_cnt(埠連接) 其中cnt為實例引用的模塊名稱,inst_cnt為實例引用中的實例名稱),在wave窗口中出現的信號為/tb_cnt/clk
/tb_cnt/rstn
/tb_cnt/cnt(它們為連到埠的信號)
/tb_cnt/inst_cnt/i_clk
/tb_cnt/inst_cnt/i_rstn
/tb_cnt/inst_cnt/o_cnt (它們為模塊cnt中定義的埠)。
10. 出現wave窗口,模擬即可。其中wave窗口中的按鈕doom in ,doom out ,doom full。可調整波形大小。
11. 批處理文件(do文件):quit -sim
vlog -f tb.f
vsim -voptargs=”+acc” tb_cnt
add wave sim:/tb_cnt/inst_cnt/*
保存為sim.do文本文件,它等同於7—9步。
[admin via 研發互助社區 ] modelsim學習筆記已經有2532次圍觀
http://cocdig.com/docs/show-post-42960.html