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