論文簡介
Computer Engineering and Applications計算機工程與應用2008 ,44(20) 93AVS變長解碼的DSP優(yōu)化于新濤',張宏波1,馬磊1.2YU Xin- -tao',ZHANG Hong- -be' ,MA Leil21.山東大學信息科學與工程學院,濟南2501002.山大魯能信息科技有限公司,濟南2501001.School of Information Science and Engineering, Shandong University ,Ji' nan 250100, China2.Shanda Luneng Infomation Technology Co. ,Ldd,Ji' nan 250100,ChinaE-mail:yxt433@126.comYU Xin -tao,ZHANG Hong -bo,MA Lel.Optimization of AVS variable length decoding on DSP .Computer Engineeringand Applications ,2008,44(20):93-95.Abstract: The part of AVS variable length decoding is optimized based on DM642.The accessing method is changed accordingto the property of Exp-Golomb code.By altering the loop structure and assigning the registers appropriately ,the compiler canprocess an efctive software pipeline.The executive time is deduced by 30% afer optimization, which satisfies the requirements ofreal-time decoding of standard definition video sequences.Key words: Audio Video coding Standard(AVS);variable lengh decoding;Exp- Golomb;software pipeline摘要:在 DM642上對AVS變長解碼部分進行了優(yōu)化。針對指數(shù)哥倫布碼的特性調整了存儲器訪問的方式,并通過對循環(huán)結構的調整及寄存器資源的合理分配使編譯器能夠進行高效的軟件流水編排。經過優(yōu)化后代碼執(zhí)行時間降低了70%以上,達到了標清尺寸實時解碼要求。關鍵詞:AVS;變長解碼;指數(shù)哥倫布碼;軟件流水DOI: 10778/jis.100 8331.2008.20.029文 章編號:1002- 8331(2008)20-0093-03文獻標識碼:A 圖分類 號:TP301.61引言databits.其中k為階數(shù)。對于k階指數(shù)哥倫布碼,根據(jù)下式進行AVS標準(Audio Video coding Standard)是我國制定的擁解析:有自主知識產權的音視頻編解碼標準,在IPTV、視頻監(jiān)控等領CodeNum=2"* -2 +databits(1)域有著廣泛的應用。AVS編碼效率是MPEG- 2的2~3倍,優(yōu)于在AVS標準中規(guī)定了19個變長碼表",不同的碼表決定國際上的MPEC-4 AVCH.264. 而且方案簡沽,復雜度低于了ce(v )所用的指數(shù)哥倫布碼的階數(shù)。H.264,在高清部分處于領先地位。AVS 基本類標準于2006年2.2變長碼解碼2月正式成為中國國家標準".目前處于產業(yè)化階段,其中AVS由CodeNum做索引生成Level .Run的過程如圖1所示。標清/高清芯片的研發(fā)與實現(xiàn)是其中重要的工作。從碼流中讀取并解析CodeNum得到變換系數(shù)(rans_ coef-本文在TI公司的DM642平臺上對AVS解碼器中的變長ficient)。 如果變換系數(shù)的值小于59,則以該系數(shù)為索引查表求解碼部分進行了優(yōu)化,并且給出了Emulator. 上的仿真結果。得Level、Run的值并分別存入buf_ Jevel .buf run數(shù)組中。否則,需要解析下一個CodeNum,得到轉逸系數(shù)差值(es-2 AVS 變長解碼的主要流程cape_ Jevel dif)。在AVS變長解碼中,采用了基于指數(shù)哥倫布的自適應變由變換系數(shù)確定Run的值:長編碼技術。對于宏塊編碼數(shù)據(jù),解碼器首先用0階.1階.2階n= trans. coff-59(2)或3階指數(shù)哥倫布碼進行ce(v )解析.然后根據(jù)所得語法元素查表得到量化系數(shù)值( level)和游程( Run)。Lervel的模值由轉逸系數(shù)和RefAbsLevel確定,Level的符號由2.1指數(shù)哥倫布碼及 ce(v )語法元素解析變換系數(shù)的奇偶決定:指數(shù)哥倫布碼的比特串分為前綴和后綴兩部分。前綴由mlevel=中國煤化工”rons cof為奇數(shù))(3)個“0"和1個分隔符"I"組成,后綴有mth個比特,記作二s_ cof為偶數(shù))MYHCNMHG作者簡介:于新濤( 1981-),男,碩上研究生,主要研究領域為視頻編解碼與DSP應用:張宏波(1984-),男,碩士研究生,主要研究領域為視頻編解碼;馬磊( 1960-).男.教授,研究生導師,主要研究領域為信號處理及嵌入式開發(fā)。收稿日期:007-10-09修回 日期:208 -01-2194 2008 ,44(20)Computer Engineering and Applications計算機工程與應用初始3.2.2變長解碼部分軟件流水的優(yōu)化軟件流水線技術用來對一個循環(huán)結構的指令進行調度安。解析排,使之成為多重迭代循環(huán)并行執(zhí)行。在編譯代碼時,可以選擇CodeNum編譯器的-o2或o3選項,使編澤器將根據(jù)程序盡可能地安排traons. cofficient軟件流水線。' CodeNum(2)堿少冗余計算。對于幀內幀間或亮度塊的系數(shù)提取thile(trans coef?] =EOB)fran_ cof EOB其循環(huán)的公共操作如計算哥倫布階數(shù)等,放到循環(huán)外部執(zhí)行。END一方面避免了重復的運算,另-方面減少了循環(huán)內部的代碼長度,有利于軟件流水的編排。圍1宏塊系敷變長碼解碼的流程圖(3)改變程序結構,拆分for循環(huán)。其中RefAbsLevel與式(2)中求得的Run有關,當Run大于由于亮度系數(shù)的復朵性以及塊系數(shù)個數(shù)的不確定性,對變MaxRun時,RefAbsLevel等于1;否則以Run為索引查表求得長解碼流程中的循環(huán)往往難以進行流水編排。 造成流水失敗的RefAbsLevelo原因有以下幾種:保存Level .Run之后,更新碼表的表號,繼續(xù)解析下一個圖I所示的變長碼解碼的循環(huán)中,判斷變換系數(shù)是否小于塊系數(shù),直到變換系數(shù)值等于EOB時跳出循環(huán)。59處出現(xiàn)了i-.se..分*支語句。由于每個跳轉指令有5個延遲間隙,使得程序執(zhí)行時間延長;另外循環(huán)內跳轉也使軟件流3AVS變長解碼的DSP實現(xiàn)與優(yōu)化水受到阻塞。3.1 DSP 實現(xiàn)平臺同時,由于循環(huán)中的代碼過長,而且在碼表切換等處多次變長解碼所采用的DSP平臺為TI公司的TMS320DM642/用到條件寄存器,使得循環(huán)體內寄存器不夠分配,?從而導致系C64x系列芯片,具有第二代高性能的超長指令字結構Veloei-統(tǒng)編譯器無法實現(xiàn)循環(huán)的pipelineoTI.2,在8個功能單元里擴展了88條新的指令以增強其在視對于大部分的AVS編碼碼流,其宏塊殘差系數(shù)中變換系頻圖像應用中的性能,并提高了視頻處理的并行性。數(shù)小于59的比例占了90%以上,如表1所示。將AVS工作組提供的參考代碼m52j移植到DM642上,表1 不同碼流中亮度塊(幀內、幀間)系數(shù)<59的概率統(tǒng)計并通過以太網(wǎng)口傳送解碼輸出圖像。在優(yōu)化的過程中,主要是IntraInler發(fā)揮C64x芯片的并行性特點對數(shù)據(jù)進行處理,并且通過對數(shù)測試序列<59≥59<59 ≥59據(jù)存儲結構以及程序架構的調整,使編譯器更好地進行軟件流fobll 94.21% 5.79% 93.77% 6.239cctv. live 97.24% 2.76% 96.65% 3.35%水,以提高解碼的效率。mobile96.86% 3.14% 96.90% 3.10%3.2 DSP 優(yōu)化凹Morvie 1800k 98.52% 1.48% 97.57% 2.43%.2.1 指數(shù)哥倫布解碼的優(yōu)化對指數(shù)哥倫布解碼部分的優(yōu)化主要基于兩點:( 1)存儲器當變換系數(shù)大于等于59時,計算其對應的Level.Run以及更新碼表的操作都要比小于59時的情況復雜得多。根據(jù)這訪問的優(yōu)化;(2 )使用內聯(lián)指令(intrinsic)。在AVS工作組參考代碼中,指數(shù)哥倫布解碼部分的碼流-特點,本文把 trans. coff<59 的情況單獨拆分出來,即從復雜讀取是逐比特進行的。而對C6000的存儲器進行訪問是很費循環(huán)中拆分出一個較小的簡單循環(huán)。用偽代碼表示如下:時的,要提高數(shù)據(jù)處理效率,應使1條Load/Store指令能夠訪d問多個數(shù)據(jù)。所以,在DSP程序中,對變長解碼部分的碼流讀for( ;trans. coff<59 && != EOB;)取部分進行了改進。對于每個要解碼的系數(shù),一次讀入32 bit到寄存器中進行處理(itle Edian 模式下還要進行4字節(jié)倒序中國煤化工的操作)。使用內聯(lián)指令. Jmbd(Ox1 ,buf[. _bits )來判斷前綴“0”YHCNMHG的個數(shù),然后通過移位操作讀取dabits,按照公式(1 )進行指Processing:escpe- Jevel. dif數(shù)哥倫布解析。使用內聯(lián)指令加以改編,可以大幅度減少循環(huán))while(rans_ coff!= EOB)體執(zhí)行的指令周期數(shù)。(4)用邏輯判斷語句替代f-.語句,減少跳轉語句。把于新濤,張宏波,馬磊:AVS變長解碼的 DSP優(yōu)化2008 ,44(20)95if結構用條件運算表達式進行改寫,最后使循環(huán)可以pipeline。進行03級別的優(yōu)化(STEP- -3)。此時觀察asm反饋信息,得知(5)減少中間變量。避免對存儲器的冗余存取,減少寄存器編譯器多次嘗試軟件流水均未成功。通過3.2.2中(3)(4)的方的使用數(shù)目,利于對循環(huán)做出更進一一步的優(yōu)化。法調整循環(huán)結構,可以實現(xiàn)流水編排(STEP- 4)。(5)(6)進步降(6)利用數(shù)據(jù)打包解包減少存取時間。Level Run分別保低了循環(huán)體內部的數(shù)據(jù)存取時間,使編譯器做出了更好的優(yōu)化。存在兩個數(shù)組中.增加了寄存器的存儲時間?,F(xiàn)將二者打包存變長解碼的優(yōu)化為解碼器最終達到實時解碼奠定了基礎。放在一個int32型的數(shù)組中,在反]描反量化時再進行解包。經對于當前網(wǎng)絡帶寬條件下所能傳送的大部分碼流,變長解碼占測試,存儲所用時間有所降低,而后續(xù)進程中(反掃描部分)讀解碼理想總時間的比例都能夠控制在2%以下,達到了預期的取所耗費的時間基本不變。經過上述調整,可以使編譯器對占變換系數(shù)絕大部分比例目標。同時,對于更高碼率的碼流,仍需要進-步地優(yōu)化,以適應未來IPTV技術的發(fā)展需求。的小于59循環(huán)內進行軟件流水,提高了解碼效率。表3不同碼嗽測汰序列變 長解碼所占比例4實驗結果及結論測試序列NSCC Ad Muvie CCTV Jive Foball幀數(shù)50本文在CCS2.21環(huán)境下對AVS變長解碼部分的程序進行尺寸720x576 720>x576 720x576 702x480優(yōu)化,并且在XDS510 Emulator. 上進行了仿真,測試序列選用碼率/(Mb/s)1.471.761.3910.88了從I Mb/s到15 Mb/s的不同碼率的標清尺寸AVS碼流。解碼達實時(30 fs)所需總時間/ms26672933 2 867表2記錄了foball序列( 704x480,碼率10.88 Mb/s,50幀)變長解碼時間/ms_79.5121.9 91.6198.9各優(yōu)化階段的變長解碼函數(shù)占用時間。參考文獻: .表2各階段優(yōu)化后的變長解碼部分喃數(shù)時間[1] AVS工作組CB1200090.2 -2006信息技術一先 進音視頻編碼STEPCPU時鐘周期Clk函數(shù)時間/ms第2部分:視頻S].2006.1.使用-01 優(yōu)化406252.284677.1[2]陳光法.姚立敏,虞露.AVS熵解碼與DSP實現(xiàn)[小電視技術,20042.指數(shù)哥倫布優(yōu)化300,578.6255009(10):43-46.3.使用-03編譯選項260,613.528434.44.使循環(huán)pipline196,977 ,493328.3(3]李方慧:TMS320C6000系列DSPs原理與應用[M].2版北京:電子工5.其他軟件流水優(yōu)化119.342.005業(yè)出版社2005.[4]楊陽.基于OMAP平臺的AVS解碼實現(xiàn)![小J電子設計應用,2006(4):通過3.2.1中的方法對哥倫布解碼部分的優(yōu)化(STEP-2),90-93.使得解碼器對變長編碼數(shù)據(jù)的處理效率大為提高。再經過3.2.[51]畢厚杰新-代視頻壓縮編碼標準- H.264/AVC[M.北京:人民郵電2中的(1)(2)處理,使循環(huán)滿足使用軟件流水的條件,對程序出版社,2005.(上接50頁)i3 仿真結果達到最優(yōu)解未達到最優(yōu)解仿真最優(yōu)解送代次數(shù)用時/___達到最優(yōu)解次數(shù)_ 最差次優(yōu)解最好次優(yōu)解QEAQAIQEAHQAHQA IQEA HQAIQEA HQA7 0387.801.240.2320Car2 7166 94.53 9.95 17.75 0.35 173767226Car37312 114.00 23.93 20.20 0.83 2157491 7 3997328 7 366Can4800386.7219.8019.950.768008772090.2910.89 14.300.31197732Carf6 8505 65.23 8.79 8.22 0.22 131S570 8570 8570 857Car76590 15.165.951.500.1266458 36635.5511.424.060.29_2084248 424項指標上突出,就得在別的指標上付出代價,相對而言,HQA參考文獻:性能最好,各項指標都比較穩(wěn)定。[1]陸曉亮,胡蘇太量子計算機的發(fā)展現(xiàn)狀和趨勢J]高性能計算發(fā)展與應用, 2006(1):7-11.[2] Kuk -Hyun Han,Jong -Hwan Kim.Genetic quantum algorithm and5結束語its application to combinatorial optimization problem[CV/Proceed-采用具有并行性的量子比特的編碼方式,借鑒微粒群算法ngs of the 2000 IEEE Congress on Evolutionary Computation,的搜索特性,引進經典進化計算的優(yōu)化理念,合成了一種新型00的自適應算法一混合 量子算法。從原理上說明了該算法在尋[3]麥克中國煤化工北京:中國水利水電出優(yōu)方面的可用性,以及在組合優(yōu)化問題中的實用性,并將其應YHCNMH G,4]云慶復進化異次[]孔爾;舊五工業(yè)出版性, 2000: 148-151.用于置換flow shop 問題,其測試結果表明該算法具有種群小、[5]楊溆嬡,劉芳,焦李成.量子進化策略[小電子學報,2001 ,29(12):迭代次數(shù)少.用時少等優(yōu)點,并且克服了QEA的不足之處,具1873-1877.有實用價值。6]曾建潮,介婧,崔志華,微粒群算法(M]北京:科學出版社2004:3- 4.
論文截圖
版權:如無特殊注明,文章轉載自網(wǎng)絡,侵權請聯(lián)系cnmhg168#163.com刪除!文件均為網(wǎng)友上傳,僅供研究和學習使用,務必24小時內刪除。