分享

基于TMS320DM642 DSP的MPEG24视频编码器优化

 mzsm 2014-11-25
       摘要: 针对MPEG24 (Moving Picture Experts Group24) 视频编码器每个宏块在传送过程中Cache严重缺失, 视
频序列帧率低等问题, 提出了运动估计算法的优化、Cache使用优化、SAD ( Sum of Absolute Difference) 和像
素插值优化以及利用EDMA ( Extended DirectMemony Access) 进行数据搬移等方法, 提高存储速度, 并在
TMS320DM642 DSP (Digital Signal Processors) 平台上实现了MPEG24视频编码器的优化。实验结果表明, 优
化后比优化前, 图像和视频处理函数的计算速度提高了1118~9715倍。视频序列帧率提高了6倍以上, 达到
了25 帧/ s的实时性要求。
关键词: 数字信号处理器; 视频编码; MPEG24标准; 优化
中图分类号: TN919181 文献标识码: A
MPEG24 Video Encoder Realizaion and Op timization Based on TMS320DM642 DSP
WANG Gang, WANG Shi2gang
(College of Communication Engineering, J ilin University, Changchun 130012, China)
Abstract: In view of serious Cache flaw of each great block ofMPEG24 (Moving Picture Experts Group24) vid2
eo encoder in transmission p rocessing and the video sequence frame rate is low, We p roposed the motion estima2
tion algorithm op timization, Cache use op timization, SAD ( Sum ofAbsolute Difference) and p ixel interpolation
op timization, data removal using EDMA ( Extended DirectMemonyAccess) , and it has enhancedmemory speed
and realized theMPEG24 video encoder op timization on TMS320DM642 DSP p latform. The performance of the
video encoder before and after op timization is evaluated, the experimental result p roved that the image and the
video p rocessing function computation speed enhanced 1118~9715 time and the coding efficiency is imp roved six
times at least, and the research results can be used to real2time video communication formore than 25 frames per
second.
Key words: digital signal p rocessors (DSP) ; video encoder; moving p icture experts group24 (MPEG24) ; op2
timization
引 言
随着网络技术和多媒体技术的发展, 视频通信的需求逐渐增加, 同时最新的视频压缩标准不断推
出。MPEG24 (Moving Picture Experts Group24) [ 1, 2 ]是国际运动图像编码专家组(MPEG: Moving Picture
Experts Group) 于1998年11月制定的, 它不同于其他标准, 是个面向多媒体应用的压缩标准, 第1次
提出了基于对象的压缩方法, 使交互功能的实现成为可能。目前基于PC平台的MPEG24视频编码器在
基于互联网的远程教育和高清晰电影等方面已经有较多的应用, 但在数码摄像机、无线3G视频业务等
嵌入式系统将会有更多的应用领域。而DSPs[ 3 ] (Digital Signal Processors) 实现嵌入式系统[ 4, 5 ]具有开发
周期短、灵活性强的优点, 因此基于DSP实现视频编码器成为当前研究的热点。
1 DSPs结构特点
TMS320DM642是TI ( Texas Instruments Incorporated) 公司推出的最新高速DSP, 最主要的特点是结
构上采用了Veloci (VL IW: Very Long Instruction Word) 超长指令字内核结构, 具有600 MHz的CPU,
每个周期可以同时执行8条32 bit的指令, 速度可达到4 800M IPS (600MHz ×8条指令= 4 800M IPS) 。
片内采用2级高速缓存结构, 片外存储器有很强大的外部存储器接口EM IF ( ExternalMemory Interface) 。
TMS320DM642提供了3个特有的视频端口, 可以灵活配置, 支持多种视频标准。这些性能能满足视频
图像处理的实时性要求, 确立了它在高端多媒体应用中的地位。
采用的ICETEK2DM642评估板是个独立开发平台, 配有一片600 MHz TMS320DM642DSP, 并提供
丰富的外设资源, 可以对C64xDSP系列算法进行开发应用和评测。
2 对Cache的优化
最大程度地发挥Cache效率是达到期望编码器性能的一个关键因素。Cache高速的存储访问速度可
以减少CPU延迟周期, 提高处理器的效率。TMS320C64xDSP有两级存储结构应用于片内数据和程序存
储。对L1Cache能够以CPU的同样速度访问。L2Cache既可以作数据空间也可以作为程序空间使用, L2
是片外空间与L1的桥梁。
MPEG24 Simp le Profile视频编码器是以宏块为单位进行编码处理, 只有当前宏块处理完成所有的过
程后, 视频编码器才能传送一个宏块。直接出现的缺点是: 一个视频编码器整个代码大于L1P。每个宏
块在L1P和L2之间的传送过程, 导致严重的Cache缺失。而一个单独的宏块从片外存储空间到片内空
间的搬移, 也不能发挥EDMA (Extended DirectMemony Access) 的优势。
为避免发生的Cache大量缺失, 采取3种方法[ 6 ] 。
1) 整个编码算法应该分成3个模块: 宏块编码、运动估计、运动重建, 这样使每个模块代码都适
合L1P。每次循环以宏块组为单位, 宏块组的大小由L1D大小决定。在宏块编码模块中, 当宏块组被传
送到片内, 他们一起经过DCT (Direct Cosine Transform) 、量化、熵编码, 直到宏块组编码模块结束为
止, L1D才刷新这组宏块。同时对应的程序包括DCT、量化、熵编码也被保存到L1P。
2) 尽量减少数据类型的大小。可以用8位数据就不用16位数据, 这样不但节省空间, 而且能提高
L1D的使用效率。因为L1D行的大小是固定的, 在一行内如果采用8位数据, 比16位数据可多放一
倍, 从而减少程序中Cache缺失情况的发生。
3) 采用乒乓缓存结构[ 7 ] , 提高Cache命中率, 减少CPU等待时间。
图1 乒乓缓冲存储器结构
Fig11 Ping pang memory buffer
在MPEG24编码模块中, 当前帧和参
考帧数据放在片外存储器, 在编码过程
中需要依次对图像帧中的每个宏块进行
操作。但宏块直接从片外内存读取, 这
就会发生CPU 等待。可以设置两对片上
缓存, 一对存放当前帧宏块, 一对存放
参考帧宏块, 它们以乒乓方式工作。乒
乓缓冲工作模式如图1所示。编码前ED2
MA将片外的当前帧中编码宏块数据和在
搜索范围内的参考帧宏块数据搬移到片
上内存。在用EDMA 搬移数据到其中一
块片内缓存的同时, 处理器可以对另一块缓存中的数据进行处理。经过这样的修改, CPU一直从片上
存储器读取数据, 大大减少了CPU阻塞情况的发生, 提高了编码速度。
第6期王钢,等:基于TMS320DM642 DSP的MPEG24视频编码器优化591
3 SAD和像素插值的优化
SAD ( Sum of Absolute Difference) 是运动估计模块关键模块[ 8~10 ] , 而DM642提供了一套丰富的视
频和图像专用指令可以高效实现运动估计算法。
LDNDW (Load Non2aligned DoubleWord) 指令, 可以一次读取64位无边界数据。这个指令可以从
当前帧中和参考帧一次读取8个8位像素数据。因此可以提高当前帧和参考帧宏块数据的搬移速度。
SUBABS4 ( Subtractwith Absolute) 指令, 计算在两组8位数据包之间的4个绝对值之差。
DOPTPU4是个计算4对8位数据乘积求和的运算。两个DOPTPU4可在单周期内并行, 所以可极大
地提高SAD的计算速度。具体步骤如下:
1) 两个LDNDW指令从当前帧和参考帧取8个像素;
2) 两个SUBABS4计算8个像素的差值;
3) 两个DOTPU4计算8个像素乘积求和。
像素插值也是个计算量大的模块。AVG4指令可执行4个8位数值平均值计算。AVG2可以执行2
个16位数据的平均计算。SHRMB ( Shift Right andMerge Byte) 右移第2个寄存器, 把第1个寄存器的
低位作为高字节。AVG4计算平均值, SHRMB处理结果。
此外笔者参考TI提供的IMGL IB支持库(该库中还包括了许多常用的图像和视频处理的函数, 可
以完成DCT、IDCT ( Inverse Direct Cosine Transform) 、中值滤波等功能, 这些函数都是经过汇编优化得
到的, 完全能够实现软件流水, 执行效率很高) 。采用标准序列foreman1yuv编码5帧数据, 主要函数的
优化前后性能比较, 如表1所示。
表1 各个函数优化性能比较
Tab11 Performance of functions by analysis
函数名
时钟周期/ns
优化前优化后
能提高倍数
sad- 16x16 67 775 980 2 683 397 25126
transfer- 8 to16copy 1 554 180 1 315 492 1118
transfer- 16 to8copy 448 683 21 887 21100
macro- mean 212 554 58 916 3160
macro- dev 5 622 170 57 652 97150
  从表1的优化前后数据比较可以看出, 通过优化可以看出常用的图像和视频处理的函数计算速度提
高从1118倍到9715倍不等, 这些函数都是视频压缩编码中经常使用的函数, 对提高视频压缩编码整体
运算速度至关重要。
4 利用EDMA进行数据搬移, 提高存储速度
DM642支持EDMA功能, 是在没有CPU介入的情况下, 访问存储器的一种工作方式。它可以直接
通过EDMA通道, 提前把外设或片外存储器中的数据直接搬移到片上内存。对CPU来说, 所访问的数
据总是在片内的, 没有阻塞的情况发生, 减少了CPU等待时间。
使用TI的CSL (Chip SupportL ibrary) 支持功能。它有专门的DMA模块, 便于对DMA的各个存储
器控制。主要使用DAT函数, 进行DMA存储器间数据传送。其中使用DAT- copy ( ) 和DAT- fill ( )
就象常用的内存操作memcpy ( ) 、memset ( ) 一样, 只需要在AP I接口指出源地址、目的地址、长
度、维数属性等, 而不需要再去考虑具体的寄存器。
下面的代码就是把SDRAM中的90帧QC IF (144 ×176) 格式视频序列中的一帧, 利用EDMA 在缓
存中进行搬移。
DAT- open ( DAT- CHAANY, DAT- PR I- LOW, DATOPEN
- 2D) ;
Copy2FrameBuf (Uint8 3 framebuf)
{
if ( ( tempbuf - rawbuf) > 3421463)
{
592 吉林大学学报(信息科学版) 第24卷
if ( tempbuf ! = NULL)
free ( tempbuf) ;
return 1;
}
DAT- copy ( tempbuf, framebuf, 38016) ;
tempbuf + = 38016;
return 0;
}
5 编码器的总体性能
表2 MPEG24编码器的性能
Tab12 Performance ofMPEG24 encoder
序列
优化前优化后
帧率/ ( Frame·s- 1 ) 信噪比/dB 帧率/ ( Frame·s- 1 ) 信噪比/dB
mother 712 3211 4211 2614
hall 516 2918 3812 2411
foreman 418 2812 3713 2216
  采用ICETEK2DM642 评
估板, 对标准300帧标准测试
序列C IF (352 ×288) 进行测
试, 优化前后性能结果比较,
如表2所示。
从表2 的数据可以看出,
对不同的视频序列帧率提高至
少5倍以上, 信噪比虽然多少有所降低, 但是由于帧频的大幅度提高并达到实时要求而得到弥补, 显示
视频的效果也就更好。
6 结 语
笔者论述了TMS320DM642DSP平台上进行视频编码算法优化的一些方法。主要考虑根据DSP自身
特点和算法特点进行优化, 通过实验可以验证达到25 帧/ s以上的实时性要求。随着IC技术的发展和
DSP价格的降低, 基于TMS320DM642DSP的MPEG24视频编码器的商用价值会越来越明显地体现出来。
参考文献:
[ 1 ]钟玉琢. 基于对象的多媒体数据压缩编码国际标准MPEG24及其校样模型[M ]. 北京: 科学出版社, 2000.
ZHONG Yu2zhuo. MPEG24 Standard and Verification [M ]. Beijing: Science Press, 2000.
[ 2 ] FRED HALSALL. 多媒体通信[M ]. 北京: 人民邮电出版社, 2004.
FRED HALSALL. Multimed Communications [M ]. Beijing: Peop le?s Posts & Telecom Press, 2004.
[ 3 ]周霖. DSP信号处理技术的应用[M ]. 北京: 国防工业出版社, 2004.
ZHOU L in. Digital Signal Processor App lication Nation Defense Industry Pressing [M ]. Beijing: National Defence Industry
Press, 2004.
[ 4 ]李芳慧, 王飞, 何佩琨, 等. TMS320C6000 系列DSPs的原理与应用[M ]. 北京: 电子工业出版社, 2003.
L I Fang2hui, WANG Fei, HE Pei2kun, et al. TMS320C6000 DSPs Princip le and App lication [M ]. Beijing: Publishing
House of Electronics Industry, 2003.
[ 5 ]王世刚, 祝宇宏, 王金芳, 等. MPEG24多路视频编码器硬件解决方案[ J ]. 吉林大学学报: 信息科学版, 2003, 21
(5) : 17220.
WANG Shi2gang, ZHU Yong2hong, WANG J in2fang, et al. Hardware Scheme ofMulti2Channel Audio /Video Encoder [ J ].
Journal of J ilin University: Information Science Edtion, 2003, 21 (5) : 17220.
[ 6 ]焦敬恩, 尔桂花, 戴琼海. 基于TMS320C6000系列DSP的MPEG24 编码器实现[ J ]. 电子技术应用, 2003 (6) : 242
26.
J IAO J ing2en, ER Gui2hua, DA I Qiong2hai. Imp letion ofMPEG24 Video Encoder on TMS320C6000 DSPs [ J ]. Electrics
App lication, 2003 (6) : 24226.
[ 7 ]周雅赟, 徐运欣, 方健, 等. 基于TMS320DM642的MPEG24编码器设计与优化[ J ]. 电视技术, 2005 (6) : 36239.
ZHOU Ya2yun, XU Yun2xin, FANG J ian, et al. Imp lementation ofMPEG24 Video Encoder Based on TMS320DM642 [ J ].
Video Engineering, 2005 (6) : 36239.
[ 8 ]刘学勇, 王汇源, 杨大成. 基于TMS320C6201的MPEG24视频编码器的实现[ J ]. 现代电子技术, 2004, 21: 64268.
L IU Xue2yong, WANG Hui2yuan, YANG Da2cheng. MPEG24 Video Coder Imp lementation Based on TMS320C6201 DSP
[ J ]. Modern Electric Technology, 2004, 21: 64268.
[ 9 ]焦晓, 朱光喜, 赵娟, 等. 基于DSP的实时MPEG24编码的软件优化设计[ J ]. 电视技术, 2003, 10: 27230.
J IAO Xiao, ZHU Guan2xi, ZHAO Juan, et al. MPEG24 Video Encoder Software Op timization on DSPs [ J ]. TV Engineering,
2003, 10: 27230.
[ 10 ]李朝晖, 李冬梅. 基于TMS320C6201的MPEG24运动补偿快速算法[ J ]. 华北航天工业学报, 2002 (6) : 7210.
L I Zhao2hui, L IDong2mei. FastArithmetic ofMPEG24Motion Compensation on the TMS320C64X DSP [ J ]. Journal ofNorth

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多