全集成設(shè)計環(huán)境下的視頻處理系統(tǒng)開發(fā)
通常,視頻處理系統(tǒng)的實現(xiàn)需要支持各種視頻和音頻標準,并負責把信號從一種標準轉(zhuǎn)換到另一種標準。多媒體應(yīng)用要求以視頻速率處理信號,這意味著在開發(fā)過程中仿真必須實時運行。
典型的視頻處理系統(tǒng)使用一個微處理器來控制一個視頻流水線,該視頻流水線包括一個視頻源和宿,一個用于存儲視頻數(shù)據(jù)的大型存儲器,和一個視頻處理系統(tǒng)(圖 1)。
在實現(xiàn)和調(diào)試各種視頻算法時,您需要通過軟件和硬件仿真來驗證其功能性。視頻流的實時特性和每幀所需的大量視頻數(shù)據(jù),令視頻處理應(yīng)用的仿真產(chǎn)生了特別的挑戰(zhàn)。
設(shè)計環(huán)境
視頻基本套件(VSK) 支持廣泛視頻應(yīng)用領(lǐng)域的高性能視頻處理系統(tǒng)的快速開發(fā)與調(diào)試。VSK 采用賽靈思?Virtex-4 XC4VSX35 器件,該器件通過結(jié)構(gòu)中高比例的乘法累加塊(也稱為 DSP48)而針對 DSP 處理進行了優(yōu)化,并具有豐富的視頻接口特性集支持,如 DVI、VGA、分量(HD)、復(fù)合、S視頻和 SDI等。
通常,開發(fā)視頻算法需要使用硬件對實時數(shù)據(jù)流進行視頻操作驗證,需要仿真環(huán)境來開發(fā)和測試視頻處理組件。VSK 為視頻系統(tǒng)的每個組件同時提供了軟件仿真和實時操作,可讓您開發(fā)視頻 IP(包括濾波器、視頻塊集、加速器和視頻接口轉(zhuǎn)換)或最終應(yīng)用程序,如編解碼器、圖像增強、動態(tài)伽馬校正和運動估計等。與工具套件的集成和 I/O 多樣性使能快捷而容易地把視頻引入板上和優(yōu)化其運行算法。
與 VSK 一起提供的還有參考設(shè)計,其中一些使用 HDL 編寫,其他的則用Xilinx System Generator for DSP 設(shè)計環(huán)境構(gòu)建。為了去除通過各種視頻接口引入數(shù)據(jù)并把它們發(fā)送到 Virtex-4 器件的復(fù)雜性,所以我們附帶了一個視頻接口塊集庫,使所有接口塊集均可通過一個 MicroBlaze控制器來進行控制。
為了突出顯示 VSK 的部分能力,我將對 MPEG-4 第 2 部分解碼器演示設(shè)計進行說明。
MPEG-4 第 2 部分
該 MPEG-4 解碼器演示系統(tǒng)由 FPGA 硬件評估平臺、賽靈思 IP 核和嵌入式軟件組成,并一起對工業(yè)標準編碼視頻位流執(zhí)行解壓操作。
對于此設(shè)計,F(xiàn)PGA 被編程為執(zhí)行解壓和驅(qū)動視頻顯示之用。一個 Compact Flash 卡用于保存多個壓縮視頻流和 FPGA 配置位流。一個位于 FPGA 內(nèi)的嵌入式處理器從 Compact Flash 卡讀取位流,將其寫入一個外部 DDR 存儲器中,然后將其發(fā)送到 MPEG-4 第 2 部分解碼器。然后通過視頻 I/O 子卡,將解碼器的輸出重新格式化為要在外部監(jiān)視器上顯示的視頻標準。
系統(tǒng)概覽如圖 2 所示。MPEG-4 解碼器核、DDR 存儲器控制器、顏色空間轉(zhuǎn)換器、VGA 接口、宏塊格式轉(zhuǎn)換器、以及 MicroBlaze 軟核處理器及相關(guān)外圍電路,在 XC4VSX35 FPGA 中實現(xiàn)。而ZBT 存儲器、DDR 存儲器、System ACE技術(shù)、Compact Flash 連接器、兩線式 LCD 顯示器,和一個數(shù)模轉(zhuǎn)換器,都是位于硬件平臺上。
嵌入式處理器
視頻系統(tǒng)一般需要有一個控制處理器。該處理器通常用于與主機系統(tǒng)通信,建立視頻處理操作,計算系數(shù),且一般作為低速率數(shù)據(jù)處理器運行。VSK 具有輸入與輸出源的視頻標準,與 System Generator 硬件聯(lián)合仿真能力相配合,可讓您通過實時視頻流快速測試和調(diào)試系統(tǒng)。
在該 MPEG-4 演示設(shè)計中,嵌入式 MicroBlaze 處理器用作總體系統(tǒng)級控制器,處理以下功能,如用戶接口,從 Compact Flash 卡中讀取壓縮位流,將位流發(fā)送到 MPEG-4 解碼器核,和監(jiān)視所有系統(tǒng)狀態(tài)標志等。
通過Xilinx System Generator for DSP,可大大簡化 MicroBlaze 處理器整合到框架中的設(shè)計流程。您可以結(jié)合使用 Xilinx System Generator 與嵌入式開發(fā)套件 (EDK) 軟件工具,去實現(xiàn)和仿真具有一個處理器和 FPGA 視頻處理器功能、對實況視頻流進行操作的系統(tǒng)。System Generator 自動生成軟件驅(qū)動程序來支持用于向 System Generator 設(shè)計的數(shù)據(jù)讀寫。 兩種方法學目前均支持集成一個 MicroBlaze 控制器:
System Generator 設(shè)計導(dǎo)出到 EDK 系統(tǒng)。當在 pcore(處理器核)導(dǎo)出模式下使用時,內(nèi)存映射塊和所有其他塊被封裝到一個 pcore 外設(shè)中。內(nèi)存映射接口的軟件驅(qū)動程序及文檔也被生成并隨該外設(shè)一起提供。
EDK 項目導(dǎo)入到 System Generator 設(shè)計中,以便進行硬件聯(lián)合仿真。當在 EDK 導(dǎo)入模式下使用時,通過運行 EDK 導(dǎo)入向?qū)⒁粋€ EDK 文件導(dǎo)入到 System Generator 中。當導(dǎo)入向?qū)瓿珊?,?EDK 系統(tǒng)象一個黑盒子的被拉入 System Generator 設(shè)計中。在導(dǎo)入過程中,EDK 系統(tǒng)通過快速單工鏈路 (FSL) 接口進行擴展,該接口用于與內(nèi)存映射進行通信。
硬件聯(lián)合仿真
觀看最后輸出視頻是所有視頻系統(tǒng)一項重要的質(zhì)量測量指標。VSK 具有的輸入與輸出源視頻標準,與 System Generator 硬件聯(lián)合仿真能力相配合,可讓您通過實時視頻流快速測試和調(diào)試系統(tǒng)。
System Generator 提供了硬件聯(lián)合仿真接口,可以將 System Generator 圖編譯為 FPGA 位流,并將該位流與一個新的運行時硬件聯(lián)合仿真塊相關(guān)聯(lián)。當在 Simulink 中仿真該設(shè)計時,編譯部分的結(jié)果將通過硬件而非軟件來計算。
System Generator 提供了高速硬件聯(lián)合仿真接口,允許Simulink 矢量或矩陣信號在單個事務(wù)中向 FPGA 硬件讀出或?qū)懭?。通過使用這些接口,您可以極大地減少仿真過程中 PC/硬件交易的數(shù)量,進一步加快仿真速度,超出傳統(tǒng)硬件聯(lián)合仿真所能達到的速度。利用以太網(wǎng)技術(shù)的普及和先進性,該接口提供給外部 FPGA 器件一種便捷和高帶寬的聯(lián)合仿真方法。
VSK 支持兩種以太網(wǎng)聯(lián)合仿真模式:
基于網(wǎng)絡(luò)的以太網(wǎng)硬件聯(lián)合仿真接口提供了通過 IPv4 網(wǎng)絡(luò)基礎(chǔ)設(shè)施到 FPGA 平臺的聯(lián)合仿真接入。由于 IPv4 網(wǎng)絡(luò)分布廣泛,因此該接口提供了一種直接與連接到有線或無線網(wǎng)絡(luò)的遠程硬件進行通信的方式。該接口特別適用于在遠處的 FPGA 平臺(如跨局或跨國),或多個設(shè)計者必須共享一個開發(fā)板的情況?;诰W(wǎng)絡(luò)的以太網(wǎng)接口支持工作在 10/100 Mbps 半/全雙工模式。
點對點以太網(wǎng)硬件聯(lián)合仿真提供了一種通過原始以太網(wǎng)連接進行的聯(lián)合仿真接口。原始以太網(wǎng)連接指第 2 層(數(shù)據(jù)鏈路層)以太網(wǎng)連接,位于一個支持的 FPGA 開發(fā)板和一個 PC 主機之間,沿途沒有路由網(wǎng)絡(luò)設(shè)備。點對點以太網(wǎng)接口支持工作在 10/100/1000 Mbps 半/全雙工模式。只要底層連接支持,還可支持在千兆位以太網(wǎng)連接的巨大框架。
VSK 包括軟件、硬件、相機、電纜和一份詳細的用戶指南及參考設(shè)計。它包括一套限制版的 System Generator for DSP、ISE? 軟件,和嵌入式設(shè)計套件 (EDK) FPGA 設(shè)計工具,以及一個賽靈思 ML402-SX35 開發(fā)板,視頻 I/O 子卡 (VIODC),CMOS 圖像傳感器相機,電源和電纜。
結(jié)論
憑借這一完整且易用的解決方案,視頻基本套件是一個理想硬件平臺來評估賽靈思 FPGA成為廣泛的視頻與成像應(yīng)用領(lǐng)域。通過完全集成 Xilinx System Generator for DSP 軟件并擁有其支持,VSK 可以充分利用新的高速以太網(wǎng)硬件聯(lián)合仿真能力,實現(xiàn)編解碼器、IP 和視頻算法的實時系統(tǒng)集成、開發(fā)和驗證。