元件 次系统 自动控制 |
最新动态
|
产业快讯
|
|
Operation
Computational Characteristics
ME
Regular data flow, high data locality
Shape Coding
BME: bit-level parallelism, regular data flowOthers: bit-level processing of high data locality
Block Operation
High data locality at MB level, rich DSP computations
Bitstream Operation
Irregular bit/bitstream operations, complex control flow, rich conditional branch
移动估计(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×16、8×8、4×4),因此可重组化(configurable)的功能在此是十分需要的。在Arithmetic Coder的部份,则是需要注意其输出效率,避免使其成为瓶颈。而在整个形状编码的运算中,主要是针对其数据流的安排、数据重复使用的方式来增加运算的平行度与减少数据的传递。
Block-level Operation
Bock-level的运算包含了DCT/IDCT、量化(Quantization;Q)/Inverse Quantization(IQ)、与在MPEG-4中出现的AC/DC Prediction,这些运算都是以8×8的block为处理的单位。如(图一)所示,灰色的部份就是Bock-level的运算。我们可以发现,由于DCT/Q/IQ/IDCT形成一个Coding Loop,而MC的输出同时必须给不同时间点的A与B。如果Coding Loop的Latency过长,就需要较多的缓冲区来储存MC的输出。这就是在设计上的一个取舍,必须根据真实的应用来作调整。使用两套的DCT与IDCT模块可以达成最短的Coding Loop Latency,但是会造成成本的增加。因此有许多不同的排程方式被提出来。另外一个值得注意的是,Q/IQ与AC/DC Prediction都有类似的乘除器的Data Path。因此,藉由适当的排程,可达到二者Data Path的共享,进一步节省所需的成本。
《图一 Block-level Operation 流程图》
系统架构
实现一个完整的多媒体系统需同时兼顾运算能力、可调性、与未来扩充性。实现的方式可以用纯软件,或是纯硬件的设计,但都有其缺点。融合了硬件与软件的特性与优势,平台架构设计(Platform-based Design)是包含一套处理器与内存的完整系统,针对适合于硬件加速的算法以外围的方式挂在总线之上,经由定义好的协议,达成软件与硬件的共同工作(HW/SW Co-Design)。由于兼具软、硬件的实现平台,使适合于软件实现的算法由软件实现,而需要硬件加速的部分由硬件来实现,可达成低成本、高效能、且具高度的延伸性,因此相当适合于实现一个多媒体系统。
(图二)即为一个MPEG-4编码系统的架构图,包含了RISC Processor、二条总线(RISC Bus与Data Bus)、DMA(Direct Memory Access)、MEM IF(Memory Interface)、与其它视讯编码模块。RISC Processor可负责整个编码流程的控制,与部分具有较低运算量的算法,如:编码的模式之决定(Mode Decision)、移动向量的编码(Motion Vector Coding)、移动向量的预测 (Motion Vector Prediction)等。RISC Processor可透过RISC Bus来驱动每一个硬件电路模块,并且可以控制DMA模块,在适当的周期时间,读取外部的数据至Data Bus上,或是将Data Bus上的数据写入至外部内存。所有的专属硬件单元都具有一个Wrapper,负责将RISC Bus上的讯号解译(Address Decoding)并且可负责作数据型式的转换。
《图二 系统架构图》
结语
在本文中,我们简单说明了一个多媒体系统芯片之应用与技术架构。以MPEG-4这个标准为例,从系统分析,模块的特性与设计观念,到系统整合,都有概括的介绍。多媒体的标准日新月异,应用的层面也在不断的扩大。展望未来,相信如何使得整个系统消耗最低的功率却提供最多样化的功能,将是设计者主要的目标,而「低功率」与「可重组化」将是二个主要的设计方向。
(作者陈良基为台大系统芯片中心研究教授、张永基为台大电机系博士班研究生)
参考文献
[1]MPEG-4 Video Group. Generic Coding of Audio-Visual Objects: Part 2 - Visual 14496-2, ISO/IEC JTC1/SC29/WG11 N2502a, FDIS, Atlantic City, Oct. 1998.
[2]ISO/IEC JTC1 IS 11172, Coding of Moving Picture and Coding of Continuous Audio for Digital Storage Media up to 1.5Mbps, 1992.
[3]ISO/IEC JTC1/SC29/WG11 Draft CD 13818-2, General Coding of Moving Pictures and Associated Audio, ITU-T Recommendation H.262 Committee Draft, 1994.
[4]ITU-T Recommendation H.263: Video coding for low bit rate communication, version 2, Jan. 1998.
[5]W.-M. Chao, Y.-C. Chang, C.-W. Hsu, and L.-G. Chen. "Platform Architecture Design for MPEG-4 Video Coding", in Proceedings of 2003 IEEE International Conference on Image Processing (ICIP2003), Barcelona, Spain, September 2003
[6]H.-C. Chang, Y.-C. Chang, Y.-C. Wang, W.-M. Chao, and L.-G. Chen, "VLSI Architecture Design of MPEG-4 Shape Coding," IEEE Trans. on Circuits and Systems for Video Technology, vol. 12, no. 9, pp.741-751, September 2002.
[7] C.-W. Hsu, W.-M. Chao, Y.-C. Chang, and L.-G. Chen, "Texture Coder Design of MPEG-4 Video by Using Interleaving Schedule," in Proc. International Conference on Multimedia and Exposition (ICME'2002), Lausanne, Switzerland, August 2002.
[8] W.-M. Chao, C.-W. Hsu, Y.-C. Chang, and L.-G. Chen, "A Novel Hybrid Motion Estimator Supporting Diamond Search and Fast Full Search," in Proc. of 2002 IEEE International Symposium on Circuits and Systems (ISCAS 2002), Scottsdale, Arizona, USA, May 2002.
[9]H.-C. Chang, L.-G. Chen, M.-Y. Hsu, and Y.-C. Chang, "Performance Analysis and Architecture Evaluation of MPEG-4 Video Codec System", in Proc. Int. Symposium on Circuits and Systems (ISCAS 2000), May 2000.
[10]N. Brady, "MPEG-4 Standardized Methods for the Compression of Arbitrarily Shaped Video Objects," IEEE Trans. on Circuits and Systems for Video Technology, vol. 9, no. 8, December 1999.
[11]M. Berekovic, G. Meyer, Y. Guo, P. Pirsch, "A multimedia RISC core for efficient bitstream parsing and VLD," Proceedings of SPIE: Multimedia Hardware Architectures, Vol.3311, pp.131-141, 1998.
[12]Z. L. He and M. L. Liou, "Cost Effective VLSI Architecture for Full-Search Block-Matching Motion Estimation Algorithm," Journal of VLSI Signal Processing, vol. 17, pp. 225-240, Nov. 1997.
[13]B. Natarajan, V. Bhaskaran, and K. Konstantinides, "Low-Complexity Block-Based Motion Estimation via One-Bit Transforms", IEEE Trans. on Circuits and Systems for Video Technology, vol.7, No.4, August 1997.
[14]S. H. Nam and M. K. Lee, "Flexible VLSI Architecture of Motion Estimator for Video Image Compression", IEEE Trans. on Circuits and Systems - II: Analog and Digital Signal Processing, Vol. 43, pp. 467-470, Jun 1996.
[15]S. Chang, J.-H. Hwang and C.-W. Jen, "Scalable Array Architecture Design for Full Search Block Matching", IEEE Trans. on Circuits and Systems for Video Technology, Vol. 5, pp. 332-343, Aug. 1995.
|
||||||||||
|
|
comments powered by Disqus | |
|
|
|
|
||||||||||||
|
|