IP核在modelsim裏面的仿真

modelsim與Quartus版本介紹:

筆者所用modelsim與Quartus是從Altera官網下載的ModelSim-Altera 10.1d (Quartus II 13.1)版本,Quartus調用modelsim仿真時,版本匹配。
但筆者更喜歡選擇分開使用這兩個軟件。即在modelsim裏面重新建工程,寫測試文件,添加Quartus源文件來仿真Quartua工程。基於這個原因,本人的問題解決辦法不同於網絡上通用解決方案,故寫出來提醒自己,也方便大家收錄。

案例一:

新建一個modelsim工程後,將所需要的源文件(包括IP核文件)添加至工程,
單擊Compile——Compile_All,
這裏寫圖片描述

發現編譯無誤
這裏寫圖片描述

單擊Simulate——Start_simulation,進行工程載入
這裏寫圖片描述

出現找不到IP核單元的錯誤提示,注意此時的IP核是pll鎖相環
這裏寫圖片描述

錯誤解決辦法:
選擇Libraries——Add,添加庫文件
庫文件所在位置:modelsim-ase——aletra——Verilog(根據自己使用的語言去選擇)——altera_mf || cycloneive(根據自己使用的板子去選擇)
這裏寫圖片描述

這裏寫圖片描述

案例二:

基本步驟同案例一:

出現找不到IP核單元的錯誤提示,注意此時的IP核是PLL鎖相環,片內RAM,以及大Boss:DDR
這裏寫圖片描述

添加庫文件後,PLL鎖相環,片內RAM錯誤提示均已消失,但DDR出現新的錯誤提示
這裏寫圖片描述

錯誤原因解釋:
接口模塊外部的時序環境較爲複雜,牽扯到同步時鐘域與異步時鐘域,對於初學者,建議先不要在modelsim中對其進行仿真,直接用板子驗證其正確與否。需要具備熟悉多個時鐘域,各種輸入的輸出信號延時參數等一些知識的能力時,再選擇在modelsim進行仿真。

同步、異步時鐘域:

同步時鐘域,電路中由同一個時鐘信號控制的區域。、如果兩個時鐘域時鐘的頻率和頻率、相位和相位之間是相關的,我們就稱這兩個時鐘域是同步時鐘域。
異步時鐘域容易出現的問題:
例如:從A時鐘域出來的信號A直接進入B時鐘域,從圖可以看出,如果A信號在B時鐘的上升沿發生變化,便會出現不定態。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章