新闻中心

EEPW首页>嵌入式系统> 一种高效的分布式的离散余弦变换的硬件结构

一种高效的分布式的离散余弦变换的硬件结构

——
作者:谢青青 石爱军 时间:2006-07-20 来源:北京大学软件与微电子学院 收藏

1. 引言
DCT是视频压缩编解码器中很重要的一部分,被广泛应用于各种视频格式的编码算法中,例如JPEG,MPEGx和H.26x等,这主要是因为:一 它能把图像的能量主要集中到数目很少的几个数据上,并打破数据间的相关性;二 它的实现有快速算法。人们很早以前就开始研究DCT的快速算法和它的硬件实现电路,到目前为止,基于行列变换的DCT被应用的最广泛。


分布式算法在二十多年就被提出来,并且现在已被广泛应用于VLSI和DSP的结构中,在这些实现中,大多数算法的运算量主要集中在乘法器或加法器。分布式算法的优点是首先计算所有可能的中间结果,并把他们保存在ROM中,然后通过查表得到我们所需要的结果,这样就可以把复杂的浮点乘法转换为加法,从而加速算法的运算速度。


在本文中,我们介绍了一种基于分布式算法的2D DCT结构,该结构中,我们充分利用了三角函数的周期性与对偶性,并利用简单ALU实现加减法的分时复用,从而比已有的分布式DCT结构节省了很多硬件资源;另一方面,在本文的硬件结构中,用RAM代替了ROM,从而加快了速度又节省了资源(因为随输入数据的数量和它们精度的增加ROM的容量呈指数级增加)。

2. 分布式算法的数学原理
首先,我们来考虑一下以下的求和结果:
(2-1)

这里,A k 是常数,X k 是输入的数据。上式用矩阵可表示为:

(2-2)

如果(2-2)中A1, ...AL均为N(包括符号位)比特的二进制有符号小数,则(2-2)可转化为:

(2-3)

在(2-3)式中,我们令矩阵

把A称作加法阵列矩阵, 且A中只含有‘0’和‘1’两种元素。通过观察,我们发现(2-3)式中Y0,Y1,...,YN-1的值都是X0,X1,...,XL中某几个数之和,这样Y的计算只要加法和移位两种运算就可以实现。这样我们就实现了把乘法转化成了加法。

3.(8



评论


相关推荐

技术专区

关闭