利用視頻套件加速FPGA上的視頻開發
| [日期:2008-7-9] |
來源:今日電子/21IC 作者:Xilinx DSP部進階市場營銷經理 Tom Hill |
[字型:大 中 小] |
隨著下一代視頻壓縮標準問世,行業從基本視頻處理向更複雜的整合處理解決方案轉移,這使得系統的要求超越了獨立DSP力所能及的視頻效能。FPGA以不到30美元的價格提供20GMACs以上的DSP效能,從而為成本敏感型軍事、汽車、醫學、消費、工業和安全應用填補了這一空白。只有FPGA能夠為整套端對端視頻解決方案提供邏輯、嵌入式處理、OS支援和磁碟機。
妨礙開發人員將FPGA用於視頻應用的因素並非他們缺乏對FPGA效能優勢的瞭解,而是缺乏使用其設計流程的經驗,對於那些習慣於用C語言編程的傳統DSP程式開發人員來說尤為如此。
開發人員可以利用FPGA的靈活性來配置針對特定應用而最佳化的硬體架構,以此發揮該器件的效能優勢。這種靈活性為開發過程增加了自由度,同時也促進了其複雜性。
XtremeDSP視頻入門套件(VSK)提供了一種完善而易用的設計環境。這款開發套件包括應用樣本並且完全支援標準的工具流程,這有助於加速設計過程,並且還仍然能實現最終產品的差異化。
使用基礎平台開發視頻應用
稱為基礎平台的嵌入式系統提供了一個架構,您可以從中使用VSK來開發視頻應用。基礎平台是使用Xilinx Platform Studio的Base System Builder (BSB)建立的嵌入式系統,其中包括一個MicroBlaze嵌入式處理器。
此架構可以為新設計提供起點,也可以作為便利的移植途徑來移植在基於處理器的系統上開發的現有應用。在MicroBlaze處理器上,可以輕而易舉地為外部處理器重新編譯任意C代碼;高效能視頻鏈一旦接入,便可以從軟體移植到FPGA架構。
圖1 帶視頻流水線的基礎系統
為了協助這種移植,VSK包括了一個定製外設IP庫,可以使用Platform Studio方便地將其中的定製外設添加到基礎系統,也可以串連到視頻介面、管理資料幀以及執行儲存空間訪問和基本視頻處理。這些定製外設包括:
● DVI輸入
● DVI輸出
● 網路攝影機
● 視訊框架緩衝器控制器(VFBC)
● 視頻處理流水線
此VFBC非常適合需要用二維資料的硬體控制來實現即時操作的視頻應用。
用VSK參考設計迅速啟動開發過程
VSK提供三個參考設計,用來快速啟動在FPGA上啟動並執行視頻應用的開發過程。每個參考設計都是在基礎平台上構建的,並且使用了VSK的IP庫中的定製外設。表1列出了各參考設計及其所顯示的視頻處理和串連功能。這些參考設計旨在提供一個起點,可以在此基礎上進一步開發。圖1所示為如何將DVI穿越連接埠參考設計接入基礎系統。
用基於模型的設計建立視頻應用
要加速FPGA上的視頻應用,就需要將效能關鍵型操作從處理器上啟動並執行軟體移植到硬體。VSK支援多種硬體設計流程,其中包括使用VHDL/Verilog來發揮堅實的硬體設計背景的流程,也包括藉助較多抽象建模環境(包括C、MATLAB和Simulink)而需要很少或完全不需要硬體設計經驗的流程。
表1 VSK參考設計概覽
The MathWorks的Simulink是一種基於模型的設計環境,可用來開發視頻系統的演算法模型。The MathWorks為Simulink提供了一個可選的視頻與成像模組集,其中包括一組豐富的視頻構建模組,可用來方便地處理流式視頻並且在模型中的每一步顯示結果。
可以首先使用浮點數據類型以及高層視頻和成像模組為視頻處理演算法本身建立抽象模式,然後以設計者認為能夠權衡複雜性、系統成本和效能的方式來最佳化演算法。