新闻中心

EEPW首页>消费电子>设计应用> 多媒体系统芯片的应用与技术架构─以MPEG-4为例

多媒体系统芯片的应用与技术架构─以MPEG-4为例

作者:陈良基 张永基 时间:2005-01-25 来源:电子产品世界 收藏

2004年9月A版

  多媒体系统在信息传播与记录上的应用已日趋普遍,且成为信息传播的主流。在多媒体的传输当中,视频占了很大的比重。由于视频数据量十分庞大,在实际的储存与传输上都有困难,因此已有许多压缩标准被制订出来。如:应用在VCD的产业上,成为VCD标准的MPEG-1;应用在DVD和HDTV上,现有的DVD也已经成功应用的MPEG-2;应用在ISDN上的H.261;与应用在GSTN上的H.263和H.263+等等。其中,国际标准组织 (ISO) 于1998年底完成制订了一个新的视频压缩标准,也就是MPEG-4。在这个标准之下,包含了许多新的功能,目的就是为了支持在新的传输环境下,有更好的视频影像传输效果及更加生动的功能,而相对的,MPEG-4的复杂度也较以往的其它标准为高。因此,我们就以MPEG-4为例,介绍一个的应用以及技术架构。

运算量分析

  在过去,许多视频标准在各种软件与硬件的平台上能够有效的实现,是基于运算资源能否有效利用与整合分配。因此,需要对MPEG-4算法做详尽完整的运算特性与复杂度分析。基于这些分析,才能对运算资源做有效规划,以取得最佳的设计取舍,并决定后续实现的方式。

  表1及表2为现有对MPEG-4 Core Profile Level 2这样的规格之下,MPEG-4所需要的运算资源,这些运算资源包含有数据处理运算(Data Processing)与内存存取量 (Data Transfer)。首先,可看出MPEG-4编码的运算远远大于解码的运算,且在实时的应用下,以现今常见的高阶运算处理器也很难提供如此巨额的运算需求。此外,在编码算法中,最主要的运算就是全搜寻法移动估计运算 (Full Search Motion Estimation, ME)以及二元形状编码法运算(Shape Coding) ,占去整个视频编码运算约百分之九十的运算负载。其中二元形状编码是在MPEG-4中特有的运算。而其它的部份如以MB为基本单位的移动补偿 (Motion Compensation, MC)、以Block为基本单位的离散余弦转换 (Discrete Cosine Transform, DCT)、以Bit为基本单位不定长度编码 (Variable Length Coding, VLC) 等,所占的运算量都不大。表3为这些主要运算的特性。根据这些特性,在架构设计时,即可将数据平行化 (data parallelism)、运算管线化 (task-pipelining)、硬件寻址 (hardware addressing) 与数据重用 (data reuse) 等技巧套用上去,以实现MPEG-4视频编解码系统。

移动估计 (Motion Estimation)

  ME的设计已被广泛的讨论于许多文献中,其具有高度数据平行运算的特性。由于ME的算法有全搜寻法 (Full search) 与快速算法 (Fast algorithm)两大类,此二者在搜寻时所需数据的顺序大不相同,因此也产生出各自适合的架构。对全搜寻法,常见的为systolic array的架构;但对于快速算法,架构上的设计就需要搭配算法,以得到较高的效率。近年来的作法,是针对不同的应用,以不同的算法来处理,因而产生了一种混合式的设计,是可在全搜寻法与快速算法间作切换。此种作法共分成三个处理程序,第一级为Pattern Generation,根据不同的Search Pattern来产生适当的搜寻位置,如:在全搜寻法时可采用螺旋状(Spiral Pattern),而在快速算法(例如Diamond Search)时为Diamond Pattern,并且将此搜寻位置送入第二级FIFO,以提高第三级的硬件使用率。第三级为Distortion Calculation,使用加法树来计算Distortion并且累加成为SAD值。此外,由于ME需要存取大量的数据,因此如何减少内存存取便成为一个重要的课题,一般的作法会是以内存的重新排序或是其它技巧以达到数据重复使用的目的。

形状编码 (Shape Coding)

  二元形状编码法为MPEG-4视频标准中用以支持对象导向功能最为核心关键的一个技术,因其内含大量的位层次运算以及大量的数据交换特性,导致在精简指令集计算器运算上的瓶颈。在设计上可采用延迟线模型(Delay Line Model)来实现,利用一些缓存器及适当安排的数据排程,便可达到数据重用的目的,以减少对内存的存取。另外,对于CAE (Context Arithmetic Encoder)的运算,需要因应不同的Template与不同Block(块)大小(16



评论


相关推荐

技术专区

关闭