基于ADSP-BF561处理器的视频编码器平台

基于ADSP-BF561处理器的视频编码器平台,第1张

1 硬件平台 
    1.1 ADSP-BF561处理器

    Blackfin561是Blackfin系列中的一款高性能定点DSP视频处理芯片。其主频最高可达750MHz,其内核包含2个16位乘法器MAC、2个40位累加器ALU、4个8位视频ALU,以及1个40位移位器。该芯片中的2套数据地址产生器(DAG)可为同时从存储器存取双 *** 作数提供地址,每秒可处理1200M次乘加运算。芯片带有专用的视频信号处理指令以及100KB的片内L1存储器(16KB的指令Cache,16KB的指令SRAM,64KB的数据Cache/SRAM,4KB的临时数据SRAM)、128KB的片内L2存储器SRAM,同时具有动态电源管理功能。此外,Blackfin处理器还包括丰富的外设接口,包括EBIU接口(4个128MBSDRAM接口,4个1MB异步存储器接口)、3个定时/计数器、1个UART、1个SPI接口、2个同步串行接口和1路并行外设接口(支持ITU-656数据格式)等。Blackfin处理器在结构上充分体现了对媒体应用(特别是视频应用)算法的支持。

    1.2 基于ADSP-BF561的视频编码器平台

    Blackfin561视频编码器的硬件结构如图1所示。该硬件平台采用ADI公司的ADSP-BF561EZ-kitLite评估板。此评估板包括1块ADSP-BF561处理器、32MBSDRAM和4MBFlash,板中的AD-V1836音频编解码器可外接4输入/6输出音频接口,而ADV7183视频解码器和ADV7171视频编码器则可外接3输入/3输出视频接口此外,该评估板还包括1个UART接口、1个USB调试接口和1个JTAG调试接口。在图1中,摄像头输入的模拟视频信号经视频芯片ADV7183A转化为数字信号,此信号从Blackfin561的PPI1(并行外部接口)进入Blackfin561芯片进行压缩,压缩后的码流则经ADV7179转换后从ADSP-BF561的PPI2口输出。此系统可通过Flash加载程序,并支持串口及网络传输。编码过程中的原始图像、参考帧等数据可存储在SDRAM中。


2 H.264视频压缩编码算法的主要特点

    视频编解码标准主要包括两个系列:一个是MPEG系列,一个是H.26X系列。其中MPEG系列标准由ISO/IEC组织(国际标准化组织)制定,H.26X系列标准由ITU-T(国际电信联盟)制定。I-TU-T标准包括H.261、H.262、H.263、H.264等,主要用于实时视频通信,如电视会议等。

    H.264视频压缩算法采用与H.263和MPEG-4类似的、基于块的混和编码方法,它采用帧内编码(Intra)和帧间编码(Inter)两种编码模式。与以往的编码标准相比,为了提高编码效率、压缩比和图像质量,H.264采用了以下全新的编码技术:

    (1)H.264按功能将视频编码系统分为视频编码层(VCL,VideoCodingLayer)和网络抽象层(NAL,NetworkAbstracTIonLayer)两个层次。其中VCL用于完成对视频序列的高效压缩,NAL则用于规范视频数据的格式,主要提供头部信息以适合各种媒体的传输和存储。

    (2)先进的帧内预测,它对含有较多空域细节信息的宏块采用4×4预测,而对于较平坦的区域则采用16×16的预测模式,前者有9种预测方法,后者有4种预测方法。

    (3)帧间预测采用更多的块划分种类,标准中定义了7种不同尺寸和形状的宏块分割(16×16、16×8、8×16)和子宏块分割(8×8、8×4、4×8、4×4)。由于采用更小的块和自适应编码方式,故可使得预测残差的数据量减少,从而进一步降低了码率。

    (4)可进行高精度的、基于1/4像素精度的运动预测。

    (5)可进行多参考帧预测。在帧间编码时,最多可选5个不同的参考帧。

    (6)整数变换(DCT/IDCT)。对残差图像的4×4整数变换技术,采用定点运算来代替以往DCT变换中的浮点运算。以降低编码时间,同时也更适合到硬件平台的移植。

(7)H.264/AVC支持两种熵编码方法,即CAVLC(基于上下文的自适应可变长编码)和CABAC(基于上下文的自适应算术编码)。其中CAVLC的抗差错能力比较高,但编码效率比CABAC低;而CABAC的编码效率高,但需要的计算量和存储容量更大。
    (8)采用新的环路滤波技术及熵编码技术等。

    H.264的这些新技术使运动图像压缩技术向前迈进了一大步,它具有优于MPEG-4和H.263的压缩性能,可应用于因特网、数字视频、DVD及电视广播等高性能视频压缩领域。

3 H.264视频编码算法的实现

    将H.264在DSP进行改进要经过以下3个步骤:PC机上的C算法优化、从PC机到DSP的程序移植、在DSP平台上的代码优化。

    3.1 PC机上的C算法优化

    根据系统要求,本设计选择了ITU的Jm8.5版本baselineprofile作为标准算法软件。ITU的参考软件JM是基于PC机设计的,故可取得较高的编码效果。将视频编解码软件移植到DSP时,应考虑到DSP系统资源,主要应考虑的因素是系统空间(包括程序空间和数据空间),所以,需要对原始的C代码进行评估,这就需要对所移植的代码有所了解。图2所示是H.264的算法结构。

    了解了算法结构以后,还需要确定在编码算法的实现过程中,运算量较大且耗时较长的部分。VC6自带的profile分析工具显示:帧内与帧间编码部分占用了整体运行时间的60%以上。其中ME(MoveEsTImation,运动估计)又占用了其中较多的时间。所以,移植与优化的重点应在运动估计部分,因此,应当对代码结构进行调整。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2513551.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-05
下一篇 2022-08-05

发表评论

登录后才能评论

评论列表(0条)

保存