欢迎来到天天文库
浏览记录
ID:46598799
大小:274.38 KB
页数:4页
时间:2019-11-26
《基于模块级流水和并行处理的CAVLC编码器实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于模块级流水和并行处理的CAVLC编码器实现陆伊等2010年12月第41卷第4期(总第141期)陆伊,杨爱良,章宇东(中国航空无线电电子研究所,上海200233)[摘要]基于上下文的自适应变长编码(CAVLC)是高清视频压缩标准H.264的关键模块。CAVLC编码器设计的优劣直接影响系统实时性.本文设计的编码器整体采用模块级流水线架构,关键子模块内部采用并行处理,提高了实时性。设计在Xilinx公司的xc5vlx330t芯片上实现,综合后时钟频率可达222MHz。视频数据的实际测试显示,编码器可满足系统实时性需求。[关键词]
2、CAVLC;模块级流水;并行处理【中图分类号]TN919.3+【文献标识码】A【文章编号]1006.141X(2010)04-0033-04CAVLCEncoderImplementationBasedonModuleLevelPipelineandParallelProcessLUYi,YANGAi—liang,ZHANGYu-dong(ChinaNationalAeronauticalRadioElectronicsResearchInstitute,Shanghai200233,China)Abstract:Contex
3、t-basedAdaptiveVariableLengthCoding(CAVLC)isakeymoduleofH.264,theHDvideocompressionstandard.ThedesignofCAVLCencoderhasadirecteffectonsystemreal-time.Apromotiononreal-timeisachievedbyamodulelevelpipelinearchitectureusedontheentireencoderandaparallelprocessusedinkeysu
4、b-module.Thedesignisimplementedonxc5vlx330tchipofXilinxcorp.;thefrequencycanreach222MHzaftersynthesis.Actualtestofvideodatapresentsthatthesystemreal-timecouldbesatisfied.Keywords:CAVLC;modulelevelpipeline;parallelprocess1CAVLC算法分析分辨率高、画质清晰、播放流畅、占带宽低、存储空间小逐渐成为视频领域的公认
5、需求,由ITU-T和MPEG联合制定的新一代视频压缩标准H.264很好满足了这些需求。新一代视频压缩标准H.264仍采用类似MPEG-4的预测、变换、熵编码等算法混合的架构,而核心算法则选取了新技术,使性能大为提升并达到了该架构的极致。CAVLC是H.264引入的新技术之一。本文首先分析了CAVLC算法的基本原理,然后根据硬件实现的特点,以提高实时性为出发点,提出了模块级流水线架构、关键模块并行处理的实现方案。CAVLC属于变长编码的一种。变长码的原理是建立一张输入数据与输出码字的映射码表,对出现概率高的数据从码表中选取短码字
6、,对出现概率低的数据选取长码字,使平均码字长度接近信息熵Ⅲ。CAVLC在此基础上引入上下文自适应,即建立多张码表,并根据已经编解码好的句法元素动态选择不同的码表,以达到更好的编码效率。.33December2010V01.41No.4(serialNo.141)航空电子技术AVIONICSTECHNOLOGY在编码器系统中,CAVLC位于视频编码层的尾端。它以子块(block)为单位串行处理变换量化模块输出的残差数据,得到的变长码及码长,输出到网络提取层(NAL)。CAVLC算法实现都可划分成以下三部分:(1)扫描(scan)
7、:·解析块信息,然后按照反之字(zig-zag)顺序读取子块数据。·对子块数据实时进行参数统计,得到5类参数。·根据上下文,计算nC。(2)编码(emcoder),对5类参数分别进行编码[21:·非零系数和拖尾系数个数的编解码(CT):根据上下文,查表得到一个码字。·拖尾正负l的符号标记的编解码(Tls):记录±l的符号位。·非零、非拖尾系数幅值大小的编解码(1evel【i】):经计算得到一组码字。’·零系数个数的编解码(Tz):查表得到一个码字。·非零系数间连续0的个数的编解码(run[i】):经计算、查表后得到一组码字。(
8、3)打包(pack):按照CT-YTls'-Ylevel[i】--)TZ'-)run[i】的顺序将码字及相应码长成对写入输出缓存。2模块级流水线由于残差数据以子块为单位串行输入,而CAⅥ.C的三大子模块一扫描、编码、打包也是按顺序处理,这样的处理过程非常适合流水线操作。图l给
此文档下载收益归作者所有