论文部分内容阅读
离散余弦变换(Discrete Cosine Transform,DCT)及其反变换(Inverse Discrete Cosine Transform,IDCT)在媒体处理领域中应用十分广泛,已经被多个国际标准采用,包括图像编解码标准JPEG,视频编解码标准H.26x和MPEG-x系列等。DCT和IDCT具有数据运算量大的特点,对处理系统的计算能力和实时性有着较高的要求。粗粒度可重构平台兼具通用处理器的灵活性和专用集成电路的高效性,是实现DCT/IDCT运算的理想平台。本文将基于可重构阵列框架,对其中的关键部件进行设计和优化,以提高DCT和IDCT运算在可重构阵列上的运算速度。本文首先分析DCT/IDCT的基本操作和数据流的统计特征,对处理单元的电路结构进行了设计,并优化其中的乘加单元和数据输出单元,同时定义了相应的配置信息格式,以支持不同算法的手工映射。根据计算密集型算法的数据规整、计算密集以及数据相关性小等特点,通过分析不同存储结构的优缺点,设计了分布式数据RAM结构和支持类SIMD计算模式的配置RAM结构,提高了数据和配置信息的加载效率。基于行列分解法和优化设计的可重构阵列结构,确定了二维DCT/IDCT的映射方案,对行和列分别进行一维DCT/IDCT映射,并选择与已有架构匹配的快速一维DCT/IDCT算法,达到更快的运算速度。通过分析快速算法的数据流特点,优化设计了阵列的互联结构,在满足计算密集型算法基本映射需求的基础上,进一步提高DCT和IDCT映射时的处理单元利用率和运算速度。针对DCT和IDCT优化后的互联结构,处理单元利用率与全互联结构相同,达到了71.4%,相比于Mesh互联结构,处理单元利用率提升了20.4%;可重构阵列的仿真实验结果表明,DCT和IDCT的计算精度符合IEEE1180-1990标准的要求,完成8×8的二维DCT和IDCT运算都需要16个时钟周期,相比于同类的可重构处理器SmartCell,运算速度都提高了55.6%。