一種面向H.264視頻編碼器的SoC驗(yàn)證平臺(tái)
摘要:構(gòu)建了面向H.264視頻編碼器的SoC驗(yàn)證平臺(tái),采用FPGA原型系統(tǒng)完成H.264編碼器驗(yàn)證。采用Wishbone總線(xiàn)連接32位微處理器OR120 0以及其他的必要IP核構(gòu)建基本SoC平臺(tái),并在此基礎(chǔ)上集成H.264硬件編碼模塊;根據(jù)H.264編碼器的數(shù)據(jù)流要求,設(shè)計(jì)了逐行輸入/宏塊順序輸出的多端口SDRAM控制器;移植了μC/OS-II實(shí)時(shí)操作系統(tǒng)和μC/TCP-IP協(xié)議棧,用于輸出編碼后比特流。
關(guān)鍵詞:SoC;H.264;OR1200;SDRAM控制器;MT9P031;EP2C70F896C6
引言
H.264編碼算法復(fù)雜,其硬件實(shí)現(xiàn)包含眾多模塊。H.264編碼器往往采用軟硬件協(xié)同設(shè)計(jì):在宏塊級(jí)及以下,運(yùn)算量巨大,用軟件往往無(wú)法實(shí)現(xiàn)實(shí)時(shí)編碼,適用于用硬件實(shí)現(xiàn);而在宏塊級(jí)以上,是一些圖像信息打包的工作,運(yùn)算量小,且隨視頻序列的不同而不同,為了保證編碼器的通用性和靈活性往往用軟件實(shí)現(xiàn)。軟硬件協(xié)同設(shè)計(jì)技術(shù)是SoC的主要技術(shù)之一,但同時(shí)它也使SoC芯片的規(guī)模和SOC設(shè)計(jì)的復(fù)雜度大大提高。在這種情況下,仿真和驗(yàn)證就成為了影響項(xiàng)目進(jìn)度的瓶頸,往往占整個(gè)芯片開(kāi)發(fā)周期50%~80%的時(shí)間。為了縮短SoC驗(yàn)證時(shí)間,基于FPGA的原型驗(yàn)證(包括硬件原型和軟件原型)已經(jīng)成為SoC設(shè)計(jì)流程前期階段的常用手段。
OR1200以及其他諸多的與之配套的IP核由Opencores組織負(fù)責(zé)開(kāi)發(fā)和維護(hù),功能強(qiáng)大,軟硬件開(kāi)發(fā)工具齊全,采用免費(fèi)和開(kāi)源的授權(quán)策略,可以自由地獲取源代碼,而且大多都經(jīng)過(guò)了ASIC驗(yàn)證,已經(jīng)受到學(xué)術(shù)界和工業(yè)界越來(lái)越多的關(guān)注。
為了搭建適用于H.264視頻編碼器的SoC驗(yàn)證平臺(tái),本文主要做了以下幾項(xiàng)工作:
①采用OR1200微處理器作為SoC系統(tǒng)的控制核心,通過(guò)Wishbone總線(xiàn)互聯(lián)規(guī)范將Opencores組織發(fā)布維護(hù)的相關(guān)IP核集成在目標(biāo)SoC系統(tǒng)上,構(gòu)成了最初的SoC驗(yàn)證平臺(tái)。
②采用臺(tái)灣友晶科技公司發(fā)布的500萬(wàn)像素圖像視頻采集模塊,為H.264視頻編碼系統(tǒng)提供原始視頻數(shù)據(jù),并根據(jù)H.264標(biāo)準(zhǔn)的要求,在視頻采集模塊中加入了RGB到Y(jié)UV顏色空間轉(zhuǎn)換模塊,以及逐行輸入/任意宏塊順序輸出的多端口SDRAM控制器(簡(jiǎn)稱(chēng)為“多端口SDRAM控制器 ”)模塊。
③在所構(gòu)建的SoC驗(yàn)證平臺(tái)上移植了μC/OS-II系統(tǒng)以及μC/TCP-IP協(xié)議棧,使H.264視頻編碼系統(tǒng)生成的數(shù)據(jù)流輸出到通用處理器終端,作進(jìn)一步的驗(yàn)證。
1 相關(guān)技術(shù)簡(jiǎn)介
1.1 OR1200微處理器以及Wishbone總線(xiàn)
OR1200是一種32位、標(biāo)量、哈佛結(jié)構(gòu)、5級(jí)整數(shù)流水線(xiàn)的RISC處理器,支持Cache、MMU和基本的DSP功能。在300 MHz時(shí),可以提供300 DMIPS和300M次32位×32位的DSP乘加操作的能力。OR1200定位于嵌入式、移動(dòng)和網(wǎng)絡(luò)應(yīng)用環(huán)境。
Wishbone總線(xiàn)規(guī)范是一種片上系統(tǒng)IP核互連體系結(jié)構(gòu)。它定義了一種IP核之間公共的邏輯接口,減輕了系統(tǒng)組件集成的難度,提高了系統(tǒng)組件的可重用性、可靠性和可移植性。Opencores組織經(jīng)過(guò)ASIC或FPGA驗(yàn)證的開(kāi)源IP核大多都支持Wishbone總線(xiàn)協(xié)議。
1.2 H.264/AVC視頻編碼標(biāo)準(zhǔn)
H.264/AVC標(biāo)準(zhǔn)是迄今最新的一套視頻編碼標(biāo)準(zhǔn),它與以往的MPEG2標(biāo)準(zhǔn)相比,碼流節(jié)省了50%以上。H.264標(biāo)準(zhǔn)中所用的編碼技術(shù)主要有:幀內(nèi)預(yù)測(cè)、運(yùn)動(dòng)估計(jì)、整形變換和環(huán)路濾波等。
H.264標(biāo)準(zhǔn)以宏塊(16x16大小的像素塊)為單位進(jìn)行編碼。所以它的數(shù)據(jù)輸入是以宏塊為單位的像素塊,輸出是經(jīng)過(guò)了預(yù)測(cè)編碼、變換編碼以及量化和熵編碼之后的比特流數(shù)據(jù)。
1.3 TRDB-D5M圖像采集模塊
TRDB-D5M圖像采集模塊中的采用Micron公司生產(chǎn)的CMOS傳感器MT9P031。它具有以下特性:低功耗,逐行掃描圖像傳感器;最高支持到2 592×1944@12fps;12位A/D轉(zhuǎn)換器;支持?jǐn)z像模式(viewfinder)和快照模式(snapshot);曝光時(shí)間可調(diào);雙線(xiàn)串行接口(I2C總線(xiàn)接口)等。
2 SoC驗(yàn)證平臺(tái)的總體框架
如圖1所示,SoC驗(yàn)證平臺(tái)主要包括OR1200處理器、片上RAM控制器、SSRAM控制器、Flash控制器、UART-BOOT模塊(用于啟動(dòng))、UART-16550模塊(用于顯示信息)、GPIO模塊、DM9000A控制器、圖像采集模塊、雙端口SDRAM控制器和VGA控制器。
評(píng)論