基於dsp_builder的算法在FPGA上的實現


一、摘要

  結合dsp_builder、matlab、modelsim和quartus ii等軟件完成算法的FPGA實現。

 

二、實驗平台

硬件平台:DIY_DE2

軟件平台:quartus ii9.0 + ModelSim-Altera 6.4a (Quartus II 9.0) + dsp_builder9.0 + matlab2010b

 

三、軟件平台的准備

1、軟件的匹配

  根據altera的官方文檔,可以看到quartus ii、modelsim、dsp_builder和matlab的版本匹配信息。如圖1所示。

 http://www.altera.com/support/ip/dsp/ips-dsp-version.html

圖1 軟件版本匹配

  一般情況下,quartus ii、modelsim和dsp_builder版本一定要匹配,而matlab版本高於規定的版本也可以,但這樣做有可能會出現某些模塊不能使用的情況。

2、軟件的安裝

安裝與破解dsp_builder的步驟可以參看“清風醉明月”同學的文章,鏈接如下:

DSP builder安裝指南(以9.1為例)

 需要說明的是:

  針對dsp_builder9.0版本的matlab版本應為2007b,而我的是2010b,雖說是兼容的,但是仍出現了些問題,如高級庫的一些組件無法顯示,如圖2所示。最好的解決辦法還是按照建議,使版本完全匹配。

圖2 某些功能無法使用

 

 四、例程

  通過一個正弦波的例程闡述dsp_builder的使用流程。可參看潘松著《EDA技術與VHDL》(第3版)第9章的例程。

1、建立simulink設計模型

  在matlab中,新建立一個simulink模型,如圖3所示。

圖3 建立的simulink模型

2、simulink模型仿真(系統級,即算法級)

  設置好參數后,運行仿真,雙擊scope可以看到仿真波形,如圖4所示。

圖4 simulink仿真波形

3、SignalCompiler使用方法

  在simulink中完成仿真驗證后,就需要把設計轉到硬件上加以實現。這是整個DSP builder設計中最關鍵的一步,據此可以獲得針對FPGA的VHDL RTL代碼。如圖5所示。

圖5 SignalCompiler

4、使用modelsim進行RTL級仿真

  這一步,其實是對由.mdl文件轉換的VHDL文件進行仿真驗證,可以通過添加TestBench組件實現。如圖6所示。

圖6 TestBench

  另外,Launch GUI選型,勾選的話,則直接啟動modelsim進行仿真;不勾選的話,可以通過modelsim的Tools菜單下的TCL——>Execute Macro...查找工程文件夾下的sinwave_add.tcl文件進行仿真。

5、使用Quartus II實現時序仿真

  上一步是功能仿真,即modelsim中的前仿真。這是進一步驗證時序仿真的正確與否,即后仿真。這一步,需要說明幾點:

(1)Quartus II 9.1之前的軟件自帶仿真組件,而之后軟件不再包含此組件。

(2)可以用modelsim實現后仿真,驗證時序仿真。

6、FPGA的驗證

  將設計下載到FPGA,進行驗證。通過示波器驗證波形的正確與否。

 

五、總結

  上面的流程涉及到的各個部分的具體使用,可以參看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

 

 


免責聲明!

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



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