1樓
wangxinxin 發(fā)表于:2010-11-13 9:59:56
第2節(jié) System Generator入門基礎[基于System Generator的DSP系統(tǒng)開發(fā)技術]
第2節(jié) System Generator入門基礎
7.2.1 System Generator開發(fā)流程簡介
本節(jié)介紹使用System Generator設計數(shù)字系統(tǒng)的常用步驟。在Simulink的可視化環(huán)境中,根據(jù)系統(tǒng)設計功能將Xilinx模塊連接成所設計的系統(tǒng),并定義合適的系統(tǒng)參數(shù);而后運用System Generator將Simulink模型轉換成硬件可執(zhí)行模型,將系統(tǒng)定義的參數(shù)對應至硬件實現(xiàn)的實體以及輸入輸出端口,并會自動完成綜合、仿真與實現(xiàn)。整個開發(fā)流程分為浮點算法開發(fā)、定點算法實現(xiàn)、硬件系統(tǒng)設計以及代碼優(yōu)化4個步驟。
1.浮點算法開發(fā):利用MATLAB軟件及其提供的工具包快速地完成浮點算法的開發(fā)、驗證以及性能評估,借助于Simulink可快速完成原型設計和模型分析。
2.定點算法實現(xiàn):將MATLAB浮點算法通過AccelDSP在Xilinx器件上實現(xiàn)定點邏輯。AccelDSP直接將浮點MATLAB算法的M-文文件自動生成可綜合的RTL模型。AccelDSP綜合工具是基于高級MATLAB語言的工具,用于設計針對Xilinx FPGA的DSP塊。該工具可自動地進行浮點-定點轉換,生成可綜合的VHDL或Verilog HDL設計,并創(chuàng)建用于驗證的測試平臺。并且,還能以報告的形式提供資源利用率、吞吐量和延遲等指標,從而根據(jù)實際工程需要來設置系統(tǒng)級要求,借助于IP-Explorer技術來實現(xiàn)面積和速度的折中,快速地選擇最佳的芯片設計。
3.硬件系統(tǒng)設計與實現(xiàn):定義使用Xilinx IP的詳細硬件架構,采用System Generator for DSP 劃分協(xié)處理器和可編程器件之間的設計。System Generator可滿足FPGA流程中所有需要的功能要求,對于用戶而言,通過點擊按鍵即可將模型設計轉換成HDL語言,在此過程中會生成下列文件:
設計所對應的HDL程序代碼。
時鐘處理模塊,包括系統(tǒng)時鐘處理操作以及生成設計中所需的不同頻率的時鐘信號。
用于測試設計的HDL測試代碼,可直接將其仿真結果和Simulink輸出比較。
工程文件以及綜合、實現(xiàn)過程所產生的各種腳本文件。
4.代碼優(yōu)化:利用ISE RTL設計環(huán)境生成優(yōu)化的FPGA設計,屬于高級應用,要求設計者不僅要熟悉算法的架構、瓶頸,還需要精通RTL設計。對于一般設計,如果系統(tǒng)硬件資源夠用,再加上設計周期短,則可忽略這一步。
在Simulink可視化設計環(huán)境中,重要的是:在Simulink環(huán)境中實現(xiàn)定點算法,根據(jù)系統(tǒng)設計功能將Xilinx模塊連接成設計系統(tǒng),并定義合適的系統(tǒng)參數(shù);而后利用System Generator將Simulink模型轉換為可執(zhí)行的硬件模型,將系統(tǒng)定義的參數(shù)對應到硬件實現(xiàn)的模塊、輸入/輸出端口等屬性;再借助于ModelSim軟件驗證相應的設計是否和Similink輸出一致,否則需要重新修改設計;最后將設計生成可對器件編程的比特流文件,將其下載到目標芯片中。因此,典型的開發(fā)流程如圖8-6所示,其中System Generator會自動為FPGA的綜合、HDL仿真以及實現(xiàn)生成命令文件,用戶只需完成Simulink設計以及比較最終的RTL輸出結果。整個開發(fā)流程都是在可視化的環(huán)境中完成的。
圖7-6 典型的System Generator設計流程