利用視頻套件加速FPGA上的視頻開發(fā)
隨著下一代視頻壓縮標準問世,行業(yè)從基本視頻處理向更復雜的集成處理解決方案轉移,這使得系統(tǒng)的要求超越了獨立DSP力所能及的視頻性能。FPGA以不到30美元的價格提供20GMACs以上的DSP性能,從而為成本敏感型軍事、汽車、醫(yī)療、消費、工業(yè)和安全應用填補了這一空白。只有FPGA能夠為整套端對端視頻解決方案提供邏輯、嵌入式處理、OS支持和驅動器。
本文引用地址:http://www.antipu.com.cn/article/85780.htm妨礙開發(fā)人員將FPGA用于視頻應用的因素并非他們缺乏對FPGA性能優(yōu)勢的了解,而是缺乏使用其設計流程的經驗,對于那些習慣于用C語言編程的傳統(tǒng)DSP程序開發(fā)人員來說尤為如此。
開發(fā)人員可以利用FPGA的靈活性來配置針對特定應用而優(yōu)化的硬件架構,以此發(fā)揮該器件的性能優(yōu)勢。這種靈活性為開發(fā)過程增加了自由度,同時也促進了其復雜性。
XtremeDSP視頻入門套件(VSK)提供了一種完善而易用的設計環(huán)境。這款開發(fā)套件包括應用示例并且完全支持標準的工具流程,這有助于加速設計過程,并且還仍然能實現最終產品的差異化。
使用基礎平臺開發(fā)視頻應用
稱為基礎平臺的嵌入式系統(tǒng)提供了一個框架,您可以從中使用VSK來開發(fā)視頻應用?;A平臺是使用Xilinx Platform Studio的Base System Builder (BSB)創(chuàng)建的嵌入式系統(tǒng),其中包括一個MicroBlaze嵌入式處理器。
此框架可以為新設計提供起點,也可以作為便利的移植途徑來移植在基于處理器的系統(tǒng)上開發(fā)的現有應用。在MicroBlaze處理器上,可以輕而易舉地為外部處理器重新編譯任意C代碼;高性能視頻鏈一旦接入,便可以從軟件移植到FPGA架構。
為了協(xié)助這種移植,VSK包括了一個定制外設IP庫,可以使用Platform Studio方便地將其中的定制外設添加到基礎系統(tǒng),也可以連接到視頻接口、管理數據幀以及執(zhí)行存儲器訪問和基本視頻處理。這些定制外設包括:
DVI輸入
DVI輸出
攝像頭
視頻幀緩沖器控制器(VFBC)
視頻處理流水線
此VFBC非常適合需要用二維數據的硬件控制來實現實時操作的視頻應用。
用VSK參考設計迅速啟動開發(fā)過程
VSK提供三個參考設計,用來快速啟動在FPGA上運行的視頻應用的開發(fā)過程。每個參考設計都是在基礎平臺上構建的,并且使用了VSK的IP庫中的定制外設。表1列出了各參考設計及其所顯示的視頻處理和連接功能。這些參考設計旨在提供一個起點,可以在此基礎上進一步開發(fā)。圖1所示為如何將DVI穿越端口參考設計接入基礎系統(tǒng)。
圖1 帶視頻流水線的基礎系統(tǒng)
表1 VSK參考設計概覽
用基于模型的設計創(chuàng)建視頻應用
要加速FPGA上的視頻應用,就需要將性能關鍵型操作從處理器上運行的軟件移植到硬件。VSK支持多種硬件設計流程,其中包括使用VHDL/Verilog來發(fā)揮堅實的硬件設計背景的流程,也包括借助較多抽象建模環(huán)境(包括C、MATLAB和Simulink)而需要很少或完全不需要硬件設計經驗的流程。
The MathWorks的Simulink是一種基于模型的設計環(huán)境,可用來開發(fā)視頻系統(tǒng)的算法模型。The MathWorks為Simulink提供了一個可選的視頻與成像模塊集,其中包括一組豐富的視頻構建模塊,可用來方便地處理流式視頻并且在模型中的每一步顯示結果。
可以首先使用浮點數據類型以及高層視頻和成像模塊為視頻處理算法本身建立抽象模式,然后以設計者認為能夠權衡復雜性、系統(tǒng)成本和性能的方式來優(yōu)化算法。
評論