AVS变长解码的DSP优化 AVS变长解码的DSP优化

AVS变长解码的DSP优化

  • 期刊名字:计算机工程与应用
  • 文件大小:825kb
  • 论文作者:于新涛,张宏波,马磊
  • 作者单位:山东大学,山大鲁能信息科技有限公司
  • 更新时间:2020-09-30
  • 下载次数:
论文简介

Computer Engineering and Applications计算机工程与应用2008 ,44(20) 93AVS变长解码的DSP优化于新涛',张宏波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变长解码部分进行了优化。针对指数哥伦布码的特性调整了存储器访问的方式,并通过对循环结构的调整及寄存器资源的合理分配使編译器能够进行高效的软件流水编排。经过优化后代码执行时间降低了70%以上,达到了标清尺寸实时解码要求。关键词:AVS;变长解码;指数哥伦布码;软件流水DOI: 10778/jis.100 8331.2008.20.029文 章编号:1002- 8331(2008)20-0093-03文献标识码:A 图分类 号:TP301.61引言databits.其中k为阶数。对于k阶指数哥伦布码,根据下式进行AVS标准(Audio Video coding Standard)是我国制定的拥解析:有自主知识产权的音视频编解码标准,在IPTV、视频监控等领CodeNum=2"* -2 +databits(1)域有着广泛的应用。AVS编码效率是MPEG- 2的2~3倍,优于在AVS标准中规定了19个变长码表",不同的码表决定国际上的MPEC-4 AVCH.264. 而且方案简沽,复杂度低于了ce(v )所用的指数哥伦布码的阶数。H.264,在高清部分处于领先地位。AVS 基本类标准于2006年2.2变长码解码2月正式成为中国国家标准".目前处于产业化阶段,其中AVS由CodeNum做索引生成Level .Run的过程如图1所示。标清/高清芯片的研发与实现是其中重要的工作。从码流中读取并解析CodeNum得到变换系数(rans_ coef-本文在TI公司的DM642平台上对AVS解码器中的变长ficient)。 如果变换系数的值小于59,则以该系数为索引查表求解码部分进行了优化,并且给出了Emulator. 上的仿真结果。得Level、Run的值并分别存入buf_ Jevel .buf run数组中。否则,需要解析下一个CodeNum,得到转逸系数差值(es-2 AVS 变长解码的主要流程cape_ Jevel dif)。在AVS变长解码中,采用了基于指数哥伦布的自适应变由变换系数确定Run的值:长编码技术。对于宏块编码数据,解码器首先用0阶.1阶.2阶n= trans. coff-59(2)或3阶指数哥伦布码进行ce(v )解析.然后根据所得语法元素查表得到量化系数值( level)和游程( Run)。Lervel的模值由转逸系数和RefAbsLevel确定,Level的符号由2.1指数哥伦布码及 ce(v )语法元素解析变换系数的奇偶决定:指数哥伦布码的比特串分为前缀和后缀两部分。前缀由mlevel=中国煤化工”rons cof为奇数)(3)个“0"和1个分隔符"I"组成,后缀有mth个比特,记作二s_ cof为偶数)MYHCNMHG作者简介:于新涛( 1981-),男,硕上研究生,主要研究领域为视频编解码与DSP应用:张宏波(1984-),男,硕士研究生,主要研究领域为视频编解码;马磊( 1960-).男.教授,研究生导师,主要研究领域为信号处理及嵌入式开发。收稿日期:007-10-09修回 日期:208 -01-2194 2008 ,44(20)Computer Engineering and Applications计算机工程与应用初始3.2.2变长解码部分软件流水的优化软件流水线技术用来对一个循环结构的指令进行调度安。解析排,使之成为多重迭代循环并行执行。在编译代码时,可以选择CodeNum编译器的-o2或o3选项,使编泽器将根据程序尽可能地安排traons. cofficient软件流水线。' CodeNum(2)碱少冗余计算。对于帧内帧间或亮度块的系数提取thile(trans coef?] =EOB)fran_ cof EOB其循环的公共操作如计算哥伦布阶数等,放到循环外部执行。END一方面避免了重复的运算,另-方面减少了循环内部的代码长度,有利于软件流水的编排。围1宏块系敷变长码解码的流程图(3)改变程序结构,拆分for循环。其中RefAbsLevel与式(2)中求得的Run有关,当Run大于由于亮度系数的复朵性以及块系数个数的不确定性,对变MaxRun时,RefAbsLevel等于1;否则以Run为索引查表求得长解码流程中的循环往往难以进行流水编排。 造成流水失败的RefAbsLevelo原因有以下几种:保存Level .Run之后,更新码表的表号,继续解析下一个图I所示的变长码解码的循环中,判断变换系数是否小于块系数,直到变换系数值等于EOB时跳出循环。59处出现了i-.se..分*支语句。由于每个跳转指令有5个延迟间隙,使得程序执行时间延长;另外循环内跳转也使软件流3AVS变长解码的DSP实现与优化水受到阻塞。3.1 DSP 实现平台同时,由于循环中的代码过长,而且在码表切换等处多次变长解码所采用的DSP平台为TI公司的TMS320DM642/用到条件寄存器,使得循环体内寄存器不够分配,?从而导致系C64x系列芯片,具有第二代高性能的超长指令字结构Veloei-统编译器无法实现循环的pipelineoTI.2,在8个功能单元里扩展了88条新的指令以增强其在视对于大部分的AVS编码码流,其宏块残差系数中变换系频图像应用中的性能,并提高了视频处理的并行性。数小于59的比例占了90%以上,如表1所示。将AVS工作组提供的参考代码m52j移植到DM642上,表1 不同码流中亮度块(帧内、帧间)系數<59的概率统计并通过以太网口传送解码输出图像。在优化的过程中,主要是IntraInler发挥C64x芯片的并行性特点对数据进行处理,并且通过对数测试序列<59≥59<59 ≥59据存储结构以及程序架构的调整,使编译器更好地进行软件流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 优化凹Morvie 1800k 98.52% 1.48% 97.57% 2.43%.2.1 指数哥伦布解码的优化对指数哥伦布解码部分的优化主要基于两点:( 1)存储器当变换系数大于等于59时,计算其对应的Level.Run以及更新码表的操作都要比小于59时的情况复杂得多。根据这访问的优化;(2 )使用内联指令(intrinsic)。在AVS工作组参考代码中,指数哥伦布解码部分的码流-特点,本文把 trans. coff<59 的情况单独拆分出来,即从复杂读取是逐比特进行的。而对C6000的存储器进行访问是很费循环中拆分出一个较小的简单循环。用伪代码表示如下:时的,要提高数据处理效率,应使1条Load/Store指令能够访d问多个数据。所以,在DSP程序中,对变长解码部分的码流读for( ;trans. coff<59 && != EOB;)取部分进行了改进。对于每个要解码的系数,一次读入32 bit到寄存器中进行处理(itle Edian 模式下还要进行4字节倒序中国煤化工的操作)。使用内联指令. Jmbd(Ox1 ,buf[. _bits )来判断前缀“0”YHCNMHG的个数,然后通过移位操作读取dabits,按照公式(1 )进行指Processing:escpe- Jevel. dif数哥伦布解析。使用内联指令加以改编,可以大幅度减少循环)while(rans_ coff!= EOB)体执行的指令周期数。(4)用逻辑判断语句替代f-.语句,减少跳转语句。把于新涛,张宏波,马磊:AVS变长解码的 DSP优化2008 ,44(20)95if结构用条件运算表达式进行改写,最后使循环可以pipeline。进行03级别的优化(STEP- -3)。此时观察asm反馈信息,得知(5)减少中间变量。避免对存储器的冗余存取,减少寄存器编译器多次尝试软件流水均未成功。通过3.2.2中(3)(4)的方的使用数目,利于对循环做出更进一一步的优化。法调整循环结构,可以实现流水编排(STEP- 4)。(5)(6)进步降(6)利用数据打包解包减少存取时间。Level Run分别保低了循环体内部的数据存取时间,使编译器做出了更好的优化。存在两个数组中.增加了寄存器的存储时间。现将二者打包存变长解码的优化为解码器最终达到实时解码奠定了基础。放在一个int32型的数组中,在反]描反量化时再进行解包。经对于当前网络带宽条件下所能传送的大部分码流,变长解码占测试,存储所用时间有所降低,而后续进程中(反扫描部分)读解码理想总时间的比例都能够控制在2%以下,达到了预期的取所耗费的时间基本不变。经过上述调整,可以使编译器对占变换系数绝大部分比例目标。同时,对于更高码率的码流,仍需要进-步地优化,以适应未来IPTV技术的发展需求。的小于59循环内进行软件流水,提高了解码效率。表3不同码嗽测汰序列变 长解码所占比例4实验结果及结论测试序列NSCC Ad Muvie CCTV Jive Foball帧数50本文在CCS2.21环境下对AVS变长解码部分的程序进行尺寸720x576 720>x576 720x576 702x480优化,并且在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各优化阶段的变长解码函数占用时间。参考文献: .表2各阶段优化后的变长解码部分喃数时间[1] AVS工作组CB1200090.2 -2006信息技术一先 进音视频编码STEPCPU时钟周期Clk函数时间/ms第2部分:视频S].2006.1.使用-01 优化406252.284677.1[2]陈光法.姚立敏,虞露.AVS熵解码与DSP实现[小电视技术,20042.指数哥伦布优化300,578.6255009(10):43-46.3.使用-03编译选项260,613.528434.44.使循环pipline196,977 ,493328.3(3]李方慧:TMS320C6000系列DSPs原理与应用[M].2版北京:电子工5.其他软件流水优化119.342.005业出版社2005.[4]杨阳.基于OMAP平台的AVS解码实现![小J电子设计应用,2006(4):通过3.2.1中的方法对哥伦布解码部分的优化(STEP-2),90-93.使得解码器对变长编码数据的处理效率大为提高。再经过3.2.[51]毕厚杰新-代视频压缩编码标准- H.264/AVC[M.北京:人民邮电2中的(1)(2)处理,使循环满足使用软件流水的条件,对程序出版社,2005.(上接50页)i3 仿真结果达到最优解未达到最优解仿真最优解送代次数用时/___达到最优解次数_ 最差次优解最好次优解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参考文献:性能最好,各项指标都比较稳定。[1]陆晓亮,胡苏太量子计算机的发展现状和趋势J]高性能计算发展与应用, 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,的搜索特性,引进经典进化计算的优化理念,合成了一种新型00的自适应算法一混合 量子算法。从原理上说明了该算法在寻[3]麦克中国煤化工北京:中国水利水电出优方面的可用性,以及在组合优化问题中的实用性,并将其应YHCNMH G,4]云庆复进化异次[]孔尔;旧五工业出版性, 2000: 148-151.用于置换flow shop 问题,其测试结果表明该算法具有种群小、[5]杨溆嬡,刘芳,焦李成.量子进化策略[小电子学报,2001 ,29(12):迭代次数少.用时少等优点,并且克服了QEA的不足之处,具1873-1877.有实用价值。6]曾建潮,介婧,崔志华,微粒群算法(M]北京:科学出版社2004:3- 4.

论文截图
版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。