基于軟硬件協(xié)同的AVS視頻解碼芯片SOC結(jié)構(gòu)設(shè)計(jì)_第1頁
基于軟硬件協(xié)同的AVS視頻解碼芯片SOC結(jié)構(gòu)設(shè)計(jì)_第2頁
基于軟硬件協(xié)同的AVS視頻解碼芯片SOC結(jié)構(gòu)設(shè)計(jì)_第3頁
基于軟硬件協(xié)同的AVS視頻解碼芯片SOC結(jié)構(gòu)設(shè)計(jì)_第4頁
基于軟硬件協(xié)同的AVS視頻解碼芯片SOC結(jié)構(gòu)設(shè)計(jì)_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、可重用A VS 視頻解碼SOC 架構(gòu)的軟硬件協(xié)同設(shè)計(jì)王忠平 祝永新 郭煒(上海交通大學(xué)微電子學(xué)院, 上海, 200240)摘 要 本文的目的是根據(jù)軟硬件設(shè)計(jì)思想設(shè)計(jì)一個(gè)較為合理的A VS 視頻解碼器架構(gòu)。首先把A VS 代碼移植到ARM9平臺(tái), 然后使用ARM ESL 工具對(duì)系統(tǒng)模塊性能做整體評(píng)估, 根據(jù)評(píng)估結(jié)果以及硬件實(shí)現(xiàn)復(fù)雜度進(jìn)行軟硬件模塊劃分,然后使用SystemC 模擬硬件模塊,最后在ARM SOC Designer 做軟硬件協(xié)同仿真及驗(yàn)證。 關(guān)鍵詞 ESL ARM SystemC AVS 軟硬件協(xié)同設(shè)計(jì)Design and Research on Multi-mode Digital

2、 Video Soc Decoder Chip Based onSoftware-hardware Co-designW ANG Zhongping , ZHU Yongxin , GUO Wei(School of Microelectronics, Shanghai Jiao Tong University, Shanghai, 200240Abstract after study of AVS and H.264 decoding standard, the author designed which is the ESL platform presented by ARM corpor

3、ation. The model uses reconfigurable design methodology. A testing SoC system is built based on the previous work and the accelerating performance of the model is analyzed. Keywords ESL, SystemC, symmetry, line raster1 引言隨著集成電路設(shè)計(jì)規(guī)模不斷擴(kuò)大,復(fù)雜度越來越高,在系統(tǒng)級(jí)別進(jìn)行軟硬件規(guī)劃對(duì)SOC(System on Chip系統(tǒng)性能影響日趨增大。數(shù)字視頻解碼芯片是多媒體領(lǐng)域

4、的核心, A VS 音視頻編碼標(biāo)準(zhǔn)采用了最新視頻編碼技術(shù)對(duì)壓縮效果有很大改善,但其壓縮效率的提高也是以算法復(fù)雜度的提高為代價(jià)的,造成了單純用軟件解碼難以達(dá)到很高的性能。本文在研究了A VS 視頻編碼標(biāo)準(zhǔn)和數(shù)字視頻解碼芯片系統(tǒng)結(jié)構(gòu)的基礎(chǔ)上,設(shè)計(jì)了支持A VS Part-2的高清SOC 解碼芯片。在復(fù)雜視頻解碼架構(gòu)設(shè)計(jì)中迫切需要高效的性能分析和驗(yàn)證平臺(tái)從架構(gòu)層次上優(yōu)化性能,本文基于電子系統(tǒng)級(jí)設(shè)計(jì)ESL (Electronic System Level ),利用ARM SOC Designer ESL 平臺(tái)分析系統(tǒng)的瓶頸實(shí)現(xiàn)軟硬劃分。通過SystemC 對(duì)硬件單元周期精確建模,實(shí)現(xiàn)軟硬件協(xié)同仿真驗(yàn)證

5、。實(shí)踐證明基于軟硬件協(xié)同設(shè)計(jì)進(jìn)行系統(tǒng)設(shè)計(jì)不僅可以加快系統(tǒng)開發(fā)速度,并且設(shè)計(jì)的視頻解碼芯片能有效改善系統(tǒng)的性能。2 AVS 解碼器結(jié)構(gòu)軟硬件協(xié)同建模A VS 標(biāo)準(zhǔn)的開發(fā)路線是基于可以合法免費(fèi)使用的開放技術(shù)和自主研發(fā)的專利技術(shù)相結(jié)合,在具體實(shí)現(xiàn)上,A VS - P2 主要采用H. 264 作為模版。A VS 解碼器模塊大致可劃分為如下幾個(gè)部分:首先是碼流進(jìn)行熵解碼部分,然后經(jīng)由重排序?qū)ζ錃埐钚畔⑦M(jìn)行反量化和反變換。在宏塊級(jí)進(jìn)行幀內(nèi)預(yù)測(cè)和幀間運(yùn)動(dòng)補(bǔ)償,然后進(jìn)行環(huán)路濾波,恢復(fù)出編碼圖像,具體流程如圖1所示: 圖1 AVS 解碼模塊結(jié)構(gòu)圖2.1硬件平臺(tái)搭建為了便于對(duì)整個(gè)解碼器系統(tǒng)所有模塊做整體評(píng)估,以便

6、于軟硬件劃分,首先需要搭建一個(gè)簡單的測(cè)試平臺(tái)。硬件方面使用ARM 公司SoC Designer Canvas工具搭建一個(gè)簡單的模塊評(píng)估平臺(tái),如圖2所示所有硬件模塊均為SystemC 模擬實(shí)現(xiàn)。系統(tǒng)中CPU 選用ARM926,通過AHB 總線連接P-Memory 和D-Memory 以及APB Bridge,APB 總線上掛接Timer 模塊和中斷控制器。軟件方面從代碼移植入手,根據(jù)A VS 標(biāo)準(zhǔn)工作組提供的基于PC 平臺(tái)的A VS 解碼器代碼移植到ARM 平臺(tái)。圖2 軟硬件劃分系統(tǒng)測(cè)試平臺(tái)2.2軟件代碼移植軟件從x86平臺(tái)的C+語言向ARM 平臺(tái)的C 語言移植的過程中所做修改主要包括:(1)替

7、換原來x86匯編指令為ARM 指令。(2)修改C+語法為C 語言語法,如指針申請(qǐng)與釋放new 替換為malloc ,數(shù)據(jù)類型轉(zhuǎn)換,如bool 型替換為int ;修改頭C+文件為C 語言頭文件。(3)ARM 平臺(tái)語法移植。在源代碼數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換的地方根據(jù)ARM 平臺(tái)的系統(tǒng)結(jié)構(gòu)修改變量大數(shù)端和小數(shù)端;修改數(shù)據(jù)的對(duì)齊方式; x86和ARM 的移位操作,x86移入的數(shù)為1,而ARM 移入的數(shù)為0,所以也要對(duì)源代碼中的移位運(yùn)算做修改。3 軟硬件結(jié)構(gòu)劃分將移植修改之后的代碼用ADS 1.2編譯之后生成.axd 文件,使用SoC Designer Simulator 工具載入該文件運(yùn)行。使用自帶的Prof

8、iling 軟件,分析解碼器解6幀數(shù)據(jù)每個(gè)模塊所運(yùn)行的時(shí)間,如表1所示:FunctionNo. DurationCalls (CyclesMcIdctRecOneMarcroBlock 693 94721983 InterPredLumaP 507 48215814 InterPredChormaP 507 28767011 InterPredLuma16x16 282 20691452 InterPredChroma16x16 564 15750136 GetChromaBlock16x16 564 15669767 inv_transform_B8 2346 11500353 InterP

9、redLuma16x8 174 10916716 InterPredLuma8x8 264 8415599 ParseOneMacroBlock 693 8056738 InterPredLuma8x16 144 7982020 InterPredChroma16x8 348 4928671 InterPredChroma8x16 288 4104373 InterPredChroma8x8 528 3846784 DeblockOneMacroBlock 693 3839453 ReconB8 2346 3047070 IntraPredLuma 744 1546578 IntraPredC

10、hroma372 674802 ReadChromaCoeff451625672表1 軟件解碼器各模塊運(yùn)行時(shí)間統(tǒng)計(jì)從統(tǒng)計(jì)結(jié)果我們可以看到, InterPredLuma 、InterPredChorma 等幀間預(yù)測(cè)函數(shù)占用系統(tǒng)時(shí)鐘比例最大,inv_transform_B8整數(shù)型離散余弦變換(IDCT ),IntraPredLum 、IntraPredChroma 幀內(nèi)預(yù)測(cè)等函數(shù)也占相當(dāng)大的CPU 資源,其他占用系統(tǒng)資源的還有環(huán)路濾波,幀重建等函數(shù)。從系統(tǒng)調(diào)用次數(shù)及深度,以及硬件電路實(shí)現(xiàn)成本和復(fù)雜度考慮,適宜將整數(shù)離散余弦變換(IDCT )模塊、幀內(nèi)預(yù)測(cè)模塊、幀間預(yù)測(cè)模塊以及環(huán)路濾波模塊使用硬件加

11、速,其它碼流控制信息等使用軟件實(shí)現(xiàn)。4 硬件加速模塊實(shí)現(xiàn)項(xiàng)目使用ARM 工具集SoC Designer模擬上節(jié)分析結(jié)果中需要硬件加速的模塊,使之運(yùn)行速度更快。SoC Designer工具本身是兼容SystemC ,并且它提供了很多實(shí)現(xiàn)好的系統(tǒng)模塊庫供使用,使得建模的時(shí)候可以更專注于系統(tǒng)模塊之間的接口設(shè)計(jì),而不用過多的關(guān)注硬件方面等細(xì)節(jié)問題。SoC Designer 提供了各種類型的組件庫,有Bus ,Core ,Memory 等等不同類型的。用戶可以通過拖拽的方式方便的搭建起自己的系統(tǒng)。SoC Designer 還支持了用戶自定制庫的方式。它可以根據(jù)用戶的要求生成一個(gè)基本的框架,具有基本的類和

12、函數(shù),用戶也可以進(jìn)行相應(yīng)的設(shè)計(jì),并可以用VC .NET 2003將其編譯成DLL 動(dòng)態(tài)鏈接庫,并添加到SoC Designer 的庫列表里,使開發(fā)者可以與其他庫一樣調(diào)用自己定制的模塊庫。 使用SoC Designer 建模的另一個(gè)優(yōu)點(diǎn)就是開發(fā)者只需專注于系統(tǒng)接口的定義和模塊內(nèi)部的狀態(tài)轉(zhuǎn)換,而不需要設(shè)計(jì)很復(fù)雜的模擬硬件的時(shí)序信息。在該軟件中,用戶實(shí)現(xiàn)的功能模塊代碼主要集中在communicate 和update 函數(shù),在本項(xiàng)目中,需要的做操作主要是把原來軟件代碼函數(shù)傳輸?shù)膮?shù)修改成硬件的接口信號(hào),另外硬件還需要必要的時(shí)鐘信號(hào)和AHB 總線接口。硬件模塊內(nèi)部邏輯方面,把軟件函數(shù)實(shí)現(xiàn)的功能用Syst

13、emC 語言實(shí)現(xiàn),然后修改軟件和硬件的接口,使用中斷或者查詢方式進(jìn)行通信,由于查詢方式占用CPU 較多,本系統(tǒng)中所有硬件模塊全部采用中斷方式,使用硬件加速與軟件協(xié)同后的解碼器結(jié)構(gòu)如下: 圖3 軟硬件劃分后SOC 系統(tǒng)框圖 4 實(shí)驗(yàn)結(jié)果表2是使用純軟件A VS 解碼與使用SOC 系統(tǒng)軟硬件協(xié)同解碼前后解碼7幀A VS 測(cè)試序列的對(duì)比情況。使用的測(cè)試序列為IPPPPP , QCIF(176x144格式。模塊名稱 加速前 加速后 (時(shí)鐘周期 (時(shí)鐘周期加速比 IDCT InterPred IntraPredLoop Filter Total Chip表2 使用SOC 硬件加速前后解碼器性能比較從試驗(yàn)

14、結(jié)果看出,使用SOC 軟硬件協(xié)同解碼之后,對(duì)系統(tǒng)性能有很大提高。5 結(jié)論參考文獻(xiàn)1信息技術(shù)先進(jìn)音視頻編碼第2部分:視頻(報(bào)批稿.2004.2 高文, 黃鐵軍, 信源編碼標(biāo)準(zhǔn)AVS 及其在數(shù)字電視中的應(yīng)用 電視技術(shù)2003(11:4-63 Thomas Wiegand, Gary J. Sullivan. Overview of the H.264/AVC Video Coding StandardJ. IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, VOL.13, NO.7, JULY 2003.4 Rindert Schutten. 基于ESL 并采用SystemC 和SystemVerilog 的設(shè)計(jì)流程. EDN 電子設(shè)計(jì)技術(shù). 2006.04.5郭煒,郭箏,謝憬等,SOC 設(shè)計(jì)方法與實(shí)現(xiàn), 北京:電子工業(yè)出版社,2007.6.6 王爭, 劉佩林. AVS 解碼器基于SystemC 的實(shí)現(xiàn)J. 中國有線電視 2006.01.作

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論