FPGA(Field-Programmable Gate Array),即現(xiàn)場可編程門陣列,它作為專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn),既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。主要用于信號(hào)處理及各類高速模擬仿真。
以PWM信號(hào)的捕獲為例,說明FPGA與CPU(不考慮芯片專用外設(shè))在處理上的差異。當(dāng)CPU通過GPIO對(duì)PWM信號(hào)采樣時(shí),受限于CPU的運(yùn)算周期,無法做到高速的采集,獲得的信號(hào)與原始信號(hào)有較大偏差,并計(jì)算出錯(cuò)誤的占空比:
采用FPGA這種“硬電路”的方式采集信號(hào),可以有效獲得信號(hào)的信息,誤差取決于采樣周期(如100MHz下約為10ns):
對(duì)于實(shí)時(shí)仿真而言,模型的計(jì)算只需要占空比信息即可,因此FPGA可以作為系統(tǒng)的“協(xié)處理器”存在,負(fù)責(zé)信號(hào)處理或高動(dòng)態(tài)性部分模型運(yùn)算,并將結(jié)果與CPU交互:
FPGA算法開發(fā)
FPGA的開發(fā)與傳統(tǒng)CPU、DSP的開發(fā)有很大不同。FPGA以并行運(yùn)算為主,以硬件描述語言HDL來實(shí)現(xiàn)。開發(fā)者需具備較強(qiáng)的數(shù)字電路知識(shí)及邏輯思維能力。
MATLAB/Simulink平臺(tái)的HDL Coder工具箱,有效的降低FPGA算法開發(fā)的難度;使工程師只需具備基礎(chǔ)知識(shí)即可在Simulink環(huán)境中搭建FPGA算法,并最終部署在Speedgoat或自己的FPGA平臺(tái)上。以Speedgoat平臺(tái)為例,基本步驟如下:
1. Simulink環(huán)境中搭建算法模型
開發(fā)者可以使用Simulink環(huán)境中的HDL Coder/DSP System Toolbox/Communication System Toolbox/ Vision HDL Toolbox等工具箱開發(fā)算法,并將算法放置在Subsystem內(nèi),仿真調(diào)試。Simulink環(huán)境支持以單精度浮點(diǎn)的方式開發(fā)FPGA算法,大大降低開發(fā)難度。
2. HDL Workflow Advisor
在Subsystem上右鍵選擇HDL Workflow Advisor,并在彈出的界面中依次設(shè)置FPGA板卡、芯片主頻,以及Subsystem inport和outport與硬件板卡IO通道的映射關(guān)系:
依次完成Workflow Advisor后續(xù)的task。HDL Workflow Advisor會(huì)完成模型檢查、HDL代碼生成、綜合、分析、映射等工作(需要Xilinx相關(guān)軟件,僅在后臺(tái)調(diào)用)。在此過程中,依據(jù)設(shè)置,HDL Coder可以完成Delay Balance,關(guān)鍵路徑尋找、代碼模型鏈接等功能。
最終HDL Workflow Advisor可以生成一個(gè)接口模型,取代原先的算法Subsystem:
3. 編譯下載運(yùn)行
FPGA模型部分編譯完,進(jìn)一步完成整個(gè)模型的編譯,生成可執(zhí)行程序下載到Speedgoat硬件上,系統(tǒng)會(huì)自動(dòng)區(qū)分CPU和FPGA,并配置兩者間的通訊。
完整的流程如下:
詳細(xì)流程可參見HDL Coder工具箱的幫助文檔及Speedgoat相應(yīng)幫助文檔。
在不遠(yuǎn)的將來,MATLAB將完善物理模型對(duì)HDL代碼生成的支持。屆時(shí)物理模型在完成離線仿真后,可直接遷移到Speedgoat實(shí)時(shí)仿真平臺(tái),無縫過渡到基于FPGA的半實(shí)物仿真測試階段,這對(duì)于電氣、電力電子領(lǐng)域有重要的意義。
Speedgoat FPGA解決方案
基于HDL Coder的模型化算法開發(fā)基礎(chǔ)上,Speedgoat針對(duì)不同的應(yīng)用領(lǐng)域,提供了大量的可編程FPGA硬件模塊:
各模塊具備不同的IO通道和芯片資源,完全支持HDL Coder的模型化算法開發(fā)。當(dāng)單FPGA模塊資源不夠時(shí),可通過Xilinx Aurora協(xié)議,將彼此直接連接,組成更大規(guī)模的FPGA“計(jì)算集群”:
-
處理器
+關(guān)注
關(guān)注
68文章
19882瀏覽量
234851 -
FPGA
+關(guān)注
關(guān)注
1645文章
22033瀏覽量
617789 -
芯片
+關(guān)注
關(guān)注
459文章
52453瀏覽量
440004
發(fā)布評(píng)論請(qǐng)先 登錄
基于FPGA的壓縮算法加速實(shí)現(xiàn)

西門子桌面級(jí)原型驗(yàn)證系統(tǒng)Veloce proFPGA介紹
新思科技硬件加速驗(yàn)證技術(shù)日即將來襲
FPGA EDA軟件的位流驗(yàn)證

進(jìn)群免費(fèi)領(lǐng)FPGA學(xué)習(xí)資料!數(shù)字信號(hào)處理、傅里葉變換與FPGA開發(fā)等
基于Agilex 5 FPGA的模塊系統(tǒng)介紹

芯華章發(fā)布FPGA驗(yàn)證系統(tǒng)新品HuaProP3
【「從算法到電路—數(shù)字芯片算法的電路實(shí)現(xiàn)」閱讀體驗(yàn)】+介紹基礎(chǔ)硬件算法模塊
FPGA仿真黑科技\"EasyGo Vs Addon \",助力大規(guī)模電力電子系統(tǒng)仿真
解決方案丨EasyGo新能源系統(tǒng)實(shí)時(shí)仿真應(yīng)用
快速部署原型驗(yàn)證:從子卡到調(diào)試的全方位優(yōu)化

評(píng)論