




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
基于FPGA的幀內(nèi)預(yù)測編碼器硬件架構(gòu)設(shè)計(jì)詳解針對幀內(nèi)預(yù)測的快速算法,由于DSP架構(gòu)軟件順序執(zhí)行的局限性難以滿足實(shí)時(shí)性要求,而FPGA以其高速的計(jì)算速度和強(qiáng)大的并行處理能力成為H.264和AVS編解碼的理想平臺(tái)。本文在FPGA平臺(tái)上采用資源共享、高并行和多流水線結(jié)構(gòu)實(shí)現(xiàn)了亮度幀內(nèi)預(yù)測算法。該方法在分析AVS幀內(nèi)亮度5種預(yù)測模式的基礎(chǔ)上,將像素預(yù)測與模式判決在一個(gè)模塊中完成,并且利用各模式預(yù)測的相似性,實(shí)現(xiàn)運(yùn)算單元共享和多種模式并行執(zhí)行,兼顧了處理速度和實(shí)現(xiàn)代價(jià)。仿真及綜合結(jié)果表明該設(shè)計(jì)能夠完全滿足標(biāo)清(704×576,30f/s)數(shù)字視頻的實(shí)時(shí)處理要求。AVS(AudioVideoCodingStandard)標(biāo)準(zhǔn),是《信息技術(shù)—先進(jìn)音視頻編碼》系列標(biāo)準(zhǔn)的簡稱,是由我國自主提出的數(shù)字音視頻編解碼技術(shù)標(biāo)準(zhǔn),這個(gè)標(biāo)準(zhǔn)達(dá)到了當(dāng)前國際先進(jìn)水平。AVS具有以下優(yōu)點(diǎn):(1)性能高,編碼效率是MPEG2的2倍以上,與H.264的編碼效率處于同一水平;(2)復(fù)雜度低,算法復(fù)雜度比H.264明顯低,軟硬件實(shí)現(xiàn)成本都低于H.264;(3)我國掌握主要知識產(chǎn)權(quán),專利授權(quán)模式簡單,費(fèi)用低。AVS視頻標(biāo)準(zhǔn)制定的目標(biāo)是:適應(yīng)數(shù)字電視廣播、數(shù)字存儲(chǔ)媒體、因特網(wǎng)流媒體、多媒體通信等應(yīng)用中對運(yùn)動(dòng)圖像壓縮技術(shù)的需要,這就對編碼的實(shí)時(shí)性提出了很高的要求。幀內(nèi)預(yù)測是AVS編解碼中很重要的部分,其原理是利用圖像內(nèi)部相鄰像素間的相關(guān)性來降低編碼碼率,也就是通過減少空間冗余度來達(dá)到壓縮的目的。視頻編碼器幀內(nèi)預(yù)測部分的硬件架構(gòu)設(shè)計(jì)方案一般分為兩種。第一種是基于可重構(gòu)硬件電路的設(shè)計(jì)。這種電路結(jié)構(gòu)設(shè)計(jì)思想是根據(jù)幀內(nèi)預(yù)測各模式算法上的相似性,設(shè)計(jì)出能夠處理所有預(yù)測模式的可重構(gòu)的運(yùn)算單元。該運(yùn)算單元可根據(jù)預(yù)測模式的不同對輸入的數(shù)據(jù)選擇相應(yīng)的數(shù)據(jù)通路,從而達(dá)到資源的最優(yōu)化利用。由于該電路結(jié)構(gòu)是逐個(gè)處理各個(gè)模式的預(yù)測,因此其缺點(diǎn)是處理速度慢。第二種設(shè)計(jì)方案是將具有相同預(yù)測值求解算法的預(yù)測模式共用同一個(gè)預(yù)測器,以優(yōu)化資源利用,文獻(xiàn)采用了這種設(shè)計(jì)方案。本文參考第二種設(shè)計(jì)方案,提出了一種基于資源共享以及并行流水[7]的幀內(nèi)預(yù)測編碼器硬件架構(gòu)。1AVS幀內(nèi)預(yù)測模塊算法原理AVS的幀內(nèi)預(yù)測分為亮度(1uma)和色度(chroma)預(yù)測兩種,都是以8x8的塊為單位進(jìn)行預(yù)測的。其中,亮度預(yù)測包括33個(gè)參考像素點(diǎn),有5種預(yù)測模式(如圖1所示),Vertical預(yù)測模式、Horizontal預(yù)測模式、DC預(yù)測模式、Down_Left預(yù)測模式和Down_Right預(yù)測模式。圖1標(biāo)示了AVS幀內(nèi)預(yù)測模式的預(yù)測方向,標(biāo)號的對應(yīng)關(guān)系為:Vertical模式(模式值為0)、Horizontal模式(模式值為1)、DC模式(模式值為2)、Down_Left模式(模式值為3)、Down_Right(模式值為4)。色度預(yù)測包括17個(gè)參考像素點(diǎn),有4種預(yù)測模式,分別為:DC模式(模式值為0)、Horizontal模式(模式值為1)、Vertical模式(模式值為2)和Plane模式(模式值為3)。其中,DC模式、Horizontal模式、Vertical模式與亮度預(yù)測算法相同。AVS的幀內(nèi)預(yù)測模塊子塊級主要包括像素值預(yù)測和模式判決兩部分,實(shí)現(xiàn)的功能主要是在給出當(dāng)前塊的左邊像素,左上像素以及上邊像素的情況下按照各種模式預(yù)測的方法得到當(dāng)前塊的預(yù)測像素值。AVS編碼標(biāo)準(zhǔn)采用了計(jì)算預(yù)測塊和原始塊之間的SAD來尋找最合適的預(yù)測模式的方法。編碼器將所有的預(yù)測模式遍歷一遍,算出所有模式對應(yīng)的SAD值,取其中擁有最小SAD的模式作為最終選擇的模式。2幀內(nèi)預(yù)測硬件設(shè)計(jì)與實(shí)現(xiàn)2.1幀內(nèi)預(yù)測模塊硬件設(shè)計(jì)方案設(shè)計(jì)中,Blockjudge子模塊的功能是由系統(tǒng)計(jì)數(shù)的BlockNum變量判斷當(dāng)前塊在一幀圖像中的位置,從而決定當(dāng)前塊的相鄰塊邊緣像素的可用性。由圖2可知,在給定輸入數(shù)據(jù)的情況下,多種模式并行掛起,由于預(yù)測是按一個(gè)時(shí)鐘預(yù)測一個(gè)像素進(jìn)行的,在預(yù)測完一個(gè)像素就進(jìn)計(jì)算一次絕對誤差計(jì)算,然后預(yù)測完下一個(gè)就將誤差累加,最終預(yù)測完成,SAD的計(jì)算也完成。模式判決模塊完成的是在SAD計(jì)算完后比較得出各模式下的SAD最小值,按其對應(yīng)的預(yù)測模式即最佳預(yù)測模式選擇輸出對應(yīng)的預(yù)測數(shù)據(jù)??梢娬麄€(gè)過程是多個(gè)模式并行,并且共享公共運(yùn)算單元,單個(gè)模式多級流水,從而提高資源利用率。2.2亮度預(yù)測模塊的VHDL實(shí)現(xiàn)幀內(nèi)亮度預(yù)測模塊的VHDL實(shí)現(xiàn)主要涉及到四部分:讀寫數(shù)據(jù)單元,運(yùn)算單元,數(shù)據(jù)比較單元,輸出單元。這四個(gè)部分分別對應(yīng)于狀態(tài)機(jī)(亮度幀內(nèi)預(yù)測模塊狀態(tài)機(jī)如圖3所示)的streceive、stcalculate、stcompare和sttrans狀態(tài)。狀態(tài)之間的轉(zhuǎn)換通過狀態(tài)計(jì)數(shù)器完成,預(yù)測輸出數(shù)據(jù)用于與當(dāng)前塊數(shù)據(jù)做殘差供DCT使用,最佳模式輸出供熵編碼寫碼流。系統(tǒng)的起始狀態(tài)是stidle狀態(tài),當(dāng)使能en置1時(shí)轉(zhuǎn)到streceive狀態(tài);streceive狀態(tài)將接收的數(shù)據(jù)(總共接收97個(gè)數(shù)據(jù),前64個(gè)是8x8塊的原始數(shù)據(jù),后33個(gè)是參考數(shù)據(jù))分別暫存到RAM00和RAM11中,RAM00中存儲(chǔ)的當(dāng)前塊數(shù)據(jù)用于與各種模式預(yù)測值進(jìn)行SAD運(yùn)算,RAM11中的數(shù)據(jù)用于得出預(yù)測數(shù)據(jù),同時(shí)在該狀態(tài)存儲(chǔ)預(yù)測模式V和H需要的參考數(shù)據(jù);當(dāng)使能en置0時(shí)進(jìn)入stcalculate狀態(tài),在stcalculate狀態(tài)將33個(gè)參考數(shù)據(jù)中相鄰的三個(gè)數(shù)據(jù)按(a+2b+c+2)》》2低通濾波,得到31個(gè)預(yù)測數(shù)據(jù)。并且存儲(chǔ)DDR模式,DDL模式,DC_LEFT模式和DC_TOP模式需要的預(yù)測數(shù)據(jù)。在stm4狀態(tài)讀取DC_LEFT和DC_TOP的預(yù)測數(shù)據(jù)d和e,同時(shí)進(jìn)行運(yùn)算(d+e)》》1得到f,將f進(jìn)行限幅運(yùn)算clip(f),從而得到DC模式的預(yù)測值并將其存儲(chǔ);同時(shí)完成的有V,H,DDL,DDR的模式預(yù)測。預(yù)測過程按單像素進(jìn)行,即串行輸入串行輸出,SAD的計(jì)算通過SAD《=SAD+ABS(a-b)累加完成。各種模式下2個(gè)時(shí)鐘完成一個(gè)像素值的存儲(chǔ)和絕對差值的計(jì)算;系統(tǒng)在stcompare狀態(tài)通過冒泡排序法得到SAD最小值minSAD,其對應(yīng)的模式即為最佳預(yù)測模式;sttrans狀態(tài)完成最佳預(yù)測模式以及對應(yīng)的預(yù)測值輸出。各種模式實(shí)現(xiàn)過程中的公共單元:主要運(yùn)算單元:l《=(a+b+b+c+2)》》2;SAD《=SAD+ABS(a-b);讀寫數(shù)據(jù)單元:V,DC_TOP是將8個(gè)值按列賦值得到64個(gè)數(shù)據(jù);H,DC_LEFT是將8個(gè)值按行賦值得到64個(gè)數(shù)據(jù);DDL,DDR是將15個(gè)值按照循環(huán)移位的方式給行賦值得到64個(gè)數(shù)據(jù),都是通過循環(huán)嵌套計(jì)數(shù)器來完成。色度預(yù)測的狀態(tài)圖與亮度類似,只是輸入的參考數(shù)據(jù)是17個(gè)。Plane模式預(yù)測實(shí)現(xiàn)比較復(fù)雜,在給出輸入數(shù)據(jù)的情況下有一個(gè)預(yù)處理的過程,運(yùn)算量較大,預(yù)處理過程中得到的中間結(jié)果需要判斷正負(fù)號,而且涉及到左移四位右移五位的運(yùn)算,因此數(shù)據(jù)位寬需要擴(kuò)展至16位,最終的符號位才不會(huì)被移走,負(fù)數(shù)在運(yùn)算的過程中以補(bǔ)碼的形式存在,所以若符號位為1則在右移后高位補(bǔ)1,反之則補(bǔ)0。3實(shí)驗(yàn)結(jié)果本文設(shè)計(jì)是以8×8塊為單元,采用VHDL硬件描述語言實(shí)現(xiàn)了幀內(nèi)像素值預(yù)測以及模式判決模塊。設(shè)計(jì)中所采用的硬件處理平臺(tái)是Xilinx公司的VidexII系列FPGAxc2vp20,整個(gè)設(shè)計(jì)在ISE10.1環(huán)境下進(jìn)行。3.1功能仿真結(jié)果仿真過程中我們將預(yù)測輸出內(nèi)容存儲(chǔ)到Pre_RAM中,在每個(gè)子塊預(yù)測結(jié)束時(shí)打印至文本文件,同時(shí)將相同的視頻碼流加入到我們采用的軟件模型并打印與我們仿真相應(yīng)的部分內(nèi)容,將兩者進(jìn)行比較。至模塊完成時(shí),已成功完成一個(gè)完整視頻碼流的數(shù)據(jù)對比,結(jié)果完全相同。3.2時(shí)序仿真結(jié)果與功能仿真一樣,我們將Pre_RAM中存儲(chǔ)的內(nèi)容在每個(gè)塊預(yù)測結(jié)束時(shí)打印至文本文件,同時(shí)將相同的視頻碼流加入到我們采用的軟件模型并打印與我們仿真相應(yīng)的部分內(nèi)容,將兩者進(jìn)行比較,結(jié)果也完全相同。由于篇幅限制圖4僅給出了與圖5對應(yīng)的同一亮度塊在軟件模型中的內(nèi)存數(shù)據(jù),8x8亮度塊預(yù)測的仿真結(jié)果如圖5所示,圖中顯示的當(dāng)前狀態(tài)是stm4,stcompare和sttrans,其中sum_v,sum_h,sum_dc,sum_dc_left,sum_dc_top,sum_ddl,sum_ddr分別表示各對應(yīng)模式下的SAD值,log表示最佳預(yù)測模式,dataout表示最佳預(yù)測值,對比可知二者結(jié)果一致。3.3綜合資源利用情況如圖6所示,整個(gè)預(yù)測過程占用了328個(gè)時(shí)鐘周期。而系統(tǒng)時(shí)鐘頻率在100MHZ的情況下要達(dá)到實(shí)時(shí)時(shí)鐘周期需要控制在526之內(nèi),顯然仿真結(jié)果表明該硬件結(jié)構(gòu)完全滿足標(biāo)清AVS視頻實(shí)時(shí)編碼要求。4結(jié)束語本文將AVS幀內(nèi)亮度預(yù)測模塊的像素值預(yù)測和模式判決結(jié)合到
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 無息貸款合同
- 工程服務(wù)外包合同
- 安裝工程分包合同協(xié)議書
- 學(xué)校租賃校舍合同書
- 接手項(xiàng)目合同協(xié)議
- 出讓合同解除協(xié)議
- 廣告播放合同協(xié)議
- 鋼材貿(mào)易合同協(xié)議
- 勞資協(xié)議雙向合同
- 品種轉(zhuǎn)讓協(xié)議合同
- GB 15986-1995黑熱病診斷標(biāo)準(zhǔn)及處理原則
- 瑜伽師地論(完美排版全一百卷)
- SH2007型10萬噸a內(nèi)熱式直立炭化爐研發(fā)設(shè)計(jì)
- 道路運(yùn)輸達(dá)標(biāo)車輛核查記錄表(貨車)
- 精神病醫(yī)院患者探視記錄單
- 六年級下冊數(shù)學(xué)圓柱的認(rèn)識(教學(xué)課件)
- 土地整治項(xiàng)目立項(xiàng)、入庫審批、驗(yàn)收流程圖
- 民辦非企業(yè)單位變更登記申請表
- 阿那亞案例詳細(xì)分析
- 選煤廠安全管理制度匯編
- 部編版八年級歷史(下)全冊教案
評論
0/150
提交評論