Vivado 和 matlab 聯合生成算法模塊代碼


 

 

FPGA的一大應用就是數字信號處理(DSP),尤其是大數據量高速處理的場合,比如雷達,成像,超聲等領域。

但是直接用Verilog實現DSP算法,是一件很費時費力的事情,而且改動也不是很方便。目前有幾種折中的辦法,

一是用HLS,大概的思路就是用C/C++先編寫算法,然后轉譯為Verilog語言;另一種就是用MATLAB等工具,

直接生成Verilog代碼。

步驟如下:

首先,關聯MATLAB和Vivado

在【開始】菜單,找到配置工具,打開

選擇MATLAB路徑

注意到 R2015a 目錄 即可。

打開MATLAB2015,新建一個simulink模型

 

可以看到如下一個空白窗體

打開【simulink Library】

 

找到Xilinx相關仿真模塊

拖到simulink 模型窗體即可,完畢后聯線

單擊【RUN】進行仿真即可

最后,生成Vivado項目工程,雙擊【System Generator】

選擇正確的芯片型號和你自己使用的語言,目錄選擇默認即可。

單擊【Generate】,生成工程。

完成后,可以在【netlist】文件夾的【ip_catalog】子目錄中找到xpr工程文件

雙擊可以用Vivado打開,編譯綜合后即可生成IP核。

濾波器參數如下

 

原始信號頻譜

模塊仿真輸出信號頻譜-8it定點,可以看到明顯的量化噪聲

 

最后消耗資源如下

 

詳細的FDATool及相關組件的使用方法,請查閱MATLAB help和Xilinx的相關手冊。

參考資料:

1.Xilinx UG948 《Vivado Design Suite Tutorial,Model-Based DSP Design Using System Generator》

2.Xilinx UG958 《Vivado Design Suite Reference Guide,Model-Based DSP Design Using System Generator》


免責聲明!

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



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