結合dsp_builder、matlab、modelsim和quartus ii等軟件完成算法的FPGA實現。html
2、實驗平臺
硬件平臺:DIY_DE2算法
軟件平臺:quartus ii9.0 + ModelSim-Altera 6.4a (Quartus II 9.0) + dsp_builder9.0 + matlab2010bpost
3、軟件平臺的準備
一、軟件的匹配
根據altera的官方文檔,能夠看到quartus ii、modelsim、dsp_builder和matlab的版本匹配信息。如圖1所示。ui
http://www.altera.com/support/ip/dsp/ips-dsp-version.html設計
圖1 軟件版本匹配htm
通常狀況下,quartus ii、modelsim和dsp_builder版本必定要匹配,而matlab版本高於規定的版本也能夠,但這樣作有可能會出現某些模塊不能使用的狀況。blog
二、軟件的安裝
安裝與破解dsp_builder的步驟能夠參看「清風醉明月」同窗的文章,連接以下:ip
須要說明的是:get
針對dsp_builder9.0版本的matlab版本應爲2007b,而個人是2010b,雖然說是兼容的,可是仍出現了些問題,如高級庫的一些組件沒法顯示,如圖2所示。最好的解決辦法仍是按照建議,使版本徹底匹配。
圖2 某些功能沒法使用
4、例程
經過一個正弦波的例程闡述dsp_builder的使用流程。可參看潘鬆著《EDA技術與VHDL》(第3版)第9章的例程。
一、創建simulink設計模型
在matlab中,新創建一個simulink模型,如圖3所示。
圖3 創建的simulink模型
二、simulink模型仿真(系統級,即算法級)
設置好參數後,運行仿真,雙擊scope能夠看到仿真波形,如圖4所示。
圖4 simulink仿真波形
三、SignalCompiler使用方法
在simulink中完成仿真驗證後,就須要把設計轉到硬件上加以實現。這是整個DSP builder設計中最關鍵的一步,據此能夠得到針對FPGA的VHDL RTL代碼。如圖5所示。
圖5 SignalCompiler
四、使用modelsim進行RTL級仿真
這一步,實際上是對由.mdl文件轉換的VHDL文件進行仿真驗證,能夠經過添加TestBench組件實現。如圖6所示。
圖6 TestBench
另外,Launch GUI選型,勾選的話,則直接啓動modelsim進行仿真;不勾選的話,能夠經過modelsim的Tools菜單下的TCL——>Execute Macro...查找工程文件夾下的sinwave_add.tcl文件進行仿真。
五、使用Quartus II實現時序仿真
上一步是功能仿真,即modelsim中的前仿真。這是進一步驗證時序仿真的正確與否,即後仿真。這一步,須要說明幾點:
(1)Quartus II 9.1以前的軟件自帶仿真組件,而以後軟件再也不包含此組件。
(2)能夠用modelsim實現後仿真,驗證時序仿真。
六、FPGA的驗證
將設計下載到FPGA,進行驗證。經過示波器驗證波形的正確與否。
5、總結
上面的流程涉及到的各個部分的具體使用,能夠參看altera的dsp_builder官方文檔。
dsp_builder的介紹:http://www.altera.com.cn/literature/hb/dspb/hb_dspb_intro.pdf
dsp_builder的基本庫:http://www.altera.com.cn/literature/hb/dspb/hb_dspb_std.pdf
dsp_builder的高級庫:http://www.altera.com.cn/literature/hb/dspb/hb_dspb_adv.pdf