基于DSP芯片和VPM642板卡实现AVS解码软件的优化设计.docVIP

基于DSP芯片和VPM642板卡实现AVS解码软件的优化设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于DSP芯片和VPM642板卡实现AVS解码软件的优化设计 AVS是中国自主制定的第二代音 视频编码标准。从编码效率上看,AVS与H.264/AVC相当,比MPEG-2高两倍;从编码的复杂度上看,AVS的编码复杂度相当于H.264的70%,解码复杂度相当于H.264的30%。同时,AVS不需要交纳高额的专利费用,具有很广阔的市场前景,如:数字音视频存储、IPTV和视频监控等。 TMS320DM642是 TI公司推出的一款面向多媒体 信号处理的 DSP,采用了C64x核。它具有极强的处理能力、高度的灵活性和可 编程性,同时又集成了音视频和 网络通信等外设,特别适用于多媒体 通信应用。DM642可应用于基于IP的音视频传输、数字视频记录、 机器视觉、 医学成像、安全监视和数字相机等领域。 本文把AVS解码软件移植到DM642平台上,并进行了优化,对于标清视频,解码速度达到30fps,完全满足实时播放的要求。 AVS标准 AVS的解码过程如图1所示。 图1 AVS解码器 AVS视频编解码标准中的核心技术包括:帧内预测、1/4精度像素插值、特殊的帧间预测运动补偿、8×8整数变换、量化、二维熵编码和去块效应环内滤波等。 AVS亮度和色度帧内预测都是以8×8块为单位的。亮度块采用5种预测模式,色度块采用4种预测模式。在编码效率基本相同的情况下,AVS采用了更少的预测模式,使 算法的复杂度大大降低。 对于帧间的运动补偿,AVS采用了4种块:16×16,16×8,8×16及8×8,可以更好地刻画物体运动,提高运动搜索的准确性,同时降低了运动矢量和块模式传输的开销,从而提 高压缩效率,降低了编解码实现的复杂度。AVS与H.264、MPEG-4一样,采用了1/4像素插值,但与H.264的6抽头1/2像素插值和双线性1/4像素插值不同,AVS采用了两种4抽头 滤波器对1/2和1/4像素进行插值,在不降低性能的情况下减少了插值所需要的参考像素点,减小了数据存取带宽需求。 8×8的整数变换可以在16位 处理器上无失真的实现,克服了早期的8×8变换不能无失真的缺点,同时又比H.264中4×4的整数变换有更好的去相关性。 在AVS熵编码过程中,所有的语法元素和残差数据都是以指数哥伦布码的形式映射成二进制比特流。采用指数哥伦布码的优势在于:一方面,它的 硬件复杂度比较低,可以根据闭合公式解析码字;另一方面,它可以根据编码元素的概率分布,灵活地确定以k阶指数进行哥伦布码编码,如果k选得恰当,则编码效率可以逼近信息熵。利用解码后的数据,通过查表得到残差数据。 AVS采用了两个级别的环路滤波,只对边界的两个像素进行滤波。与H.264的4个级别和边界3个像素的环路滤波相比,复杂度大为降低。 TMS320 DM642平台 TMS320DM642/C64x系列 芯片基于超长指令字结构VelociTI.2,在8个功能单元里扩展了88条新的指令,以增强其在视频/图像应用中的性能,并提高了视频处理的并行性。 本文的实验平台采用SEED公司的VPM642板卡,其主要配置如下:600MHz的TMS320DM642 DSP芯片;DM642外部扩展4MB Flash, 32MB SD RAM,可用于大量视频图像数据和程序的存储;4路视频 端口(PAL/NTSC制式或S 端子);10/100M 以太网 接口;板上JTAG 仿真接口,通过JTAG 仿真器可以方便地进行视频压缩算法的仿真调试。 AVS在DM642上的实时解码 针对DSP的特点,本文采用了大量行之有效的优化方法,使得解码速度大大提升。除了使用C6000编译器提供的编译选项-pm、-o3、-no debug以外,其他优化措施主要包括以下几个方面。 程序结构的调整 为了满足DSP结构的需要,本文对AVS解码软件的程序结构进行了调整。 PC上的程序是在解码一帧后再进行环路滤波,需要两次把数据从片外搬移到片内。本文对此进行了修改,在每个宏块解码完成以后就对该宏块进行滤波。如图2所示。 图2 环路滤波示意图 在解码一个宏块完成以后,先对每个8×8亮度块的垂直边界BsV00、BsV01、BsV10、BsV11和色度块BsV00(U)、BsV01(V)进行滤波,滤波的结果作为输入,再对水平边界进行滤波。 使用内联指令和数据打包 C6000编译器提供了许多内联函数(instrinsics),如_ add2、_avgu4、_dotpsu4等。内联函数是直接与C6000 汇编指令映射的在线函数。不易用C/ C++语言实现功能的汇编指令都有对应的内联函数。 对C6000的存储器进行访问是很费时的。要提高C6000的数据处理效率,应使1条L

文档评论(0)

150****6040 + 关注
实名认证
文档贡献者

互联网产品运营推广以及k12教育内容。

1亿VIP精品文档

相关文档