quartus-ModeliSm仿真教程
? ? ?在完成VHDL模塊的編寫后,檢驗自己寫的時序是否有誤的最好方法就是進行仿真了。
? ? ? 然而quartus是我用過的最奇怪的軟件了,因為它的每個版本包含的功能都不相同。就拿仿真來說,8.0的版本quartus自帶有仿真功能,12.0的則沒有;13.1版本就又自帶仿真了,然后再用到17.1好像又找不到自帶的仿真了:(
? ? ?為了方便起見,應該學會利用quartus與modelism的聯調,步驟如下:
1、首先在菜單中的Assignments中選擇Settings,按照下圖的步驟將仿真設置為ModeliSim-Altera,然后點擊OK。
?
2隨后重新編譯自己的工程。
3隨后點擊菜單中的Tools->Run Simulation Tool->RTL Simulation,打開modelism
.
4.打開后,在左側library中單擊work,會彈出你所寫的實體,然后雙擊你的實體。
5.隨后點擊菜單中的Tools->Tcl->exectute macro,這個.do后綴的文件就是用于仿真的波形文件,初始由系統生成。
6此時你會看到,你所寫的模塊的中的各個端口或者信號。但是主要MSGS中他們都沒有數據,這是因為我們沒有在.do的波形文件中規定他們的波形。因此我們需要找到工程目錄中的.do文件,然后編寫波形。
7.如圖是我們之前上課所給的波形文件的模板,我們按照注釋來寫波形文件。
以時鐘信號為例:
wave create -driver freeze -pattern clock -initialvalue 0 -period 20ns -dutycycle 50 -starttime 0ms -endtime 17ms sim:/top_entity_name/clock_input_name?
我們將模板中的top_entity_name改為自己實體的名字,clock_input_name改為自己的時鐘信號的名字。可以根據需要修改參數,比如初始化的值(0或1),-dutycycle占空比,period周期,starttime和endtime確定波形運行的時間。
如果需要常數比如用讓復位鍵一直保持1,則可將pattern clock改為pattern constant,后面則不需要設置周期和占空比。
對于需要觀看波形的輸出端口或者變量,我們看到模板語句:add wave -noupdate /top_entity_name/ClkVga_name
只需改成我們的實體的名字以及你需要看到的變量或端口的名字即可。
8.完成波形文件的編寫后,按照第五步選中波形文件,然后在菜單中點擊Simulate->Run->Run all,即可進行波形仿真了!
可以通過鼠標拖動看不同時刻的波形,可以用快捷鍵O,I對波形圖進行放大或縮小(O:Zoom Out,I: Zoom In),進行觀察,判斷時序是否正確。
總結
以上是生活随笔為你收集整理的quartus-ModeliSm仿真教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux驱动如何在不同版本上快速迭代升
- 下一篇: nodejs 30行代码 爬豆瓣电影数据