基于矩阵乘法器的MP3解码优化设计

分享到:

        0 引言

  MP3(MPEG Audio Layer 3)是一种以高保真为前提实现的高效压缩技术。MP3音频编码器复杂,压缩率很高,但其音色和音质还可以保持基本完整,因此该音频格式文件在计算机、网络和各种电子设备上都得到了广泛运用。

  由于MP3音频解码相对比较复杂,为了达到在控制成本的范围内实现快速解码的要求,提出了在SoC上通过增加矩阵乘法器运行快速的两个16点DCT算法,进一步提高MP3解码速度的可行性方案。

  1 MP3解码流程分析

  MP3解码的流程如图1所示,解码的主要过程包括同步处理、解帧头、解边带信息、解比例因子、Huffman解码、逆量化、频率线重排序、立体声处理、混叠重建、改进离散余弦逆变换(IMDCT)、频率倒置处理、子代综合滤波,最后输出原始的PCM数据。

 

  在这些过程中由于IMDCT和子带综合滤波的算法比较复杂,占用硬件资源较多,处理时间长,因此功耗所占比例相应较高。表1是在DSP平台上成功移植后,对代码进行耗时分析的结果。

 

  根据表1可知,子带综合滤波占了整个解码时间的60 %以上,是决定解码速度的最关键模块;其次是长块IMDCT运算,占了整个解码时间的10%以上。若采用MPEG-1建议的算法流程,数值计算主要集中在子带综合滤波上。以两声道48 kHz采样率为例,乘法运算量为(48 000/32)×(64×32+512)×2=7 680 000次/s。因此,子带综合滤波是MP3解码器的优化重点,减少子带综合滤波的计算量和计算时间是MP3解码器实现的核心。

  2 子带综合滤波分析

  子带综合滤波是MP3解码的最后一部分,也是解码过程中最为耗时的关键步骤。它负责从IMDCT的输出值中把PCM值还原出来,可以分成5个步骤。首先是Matrixing(矩阵)运算,即,2,…,63。由公式可知,它从32个子带Sk的每个子带中取出一个值组成32个值送入一个矩阵中进行运算,然后把输出Vi的64个结果放入一个1 024的先入先出(FIFO)缓存中,再从1 024值中取出一半,组成一个512矢量Ui,并对这512矢量进行加窗运算,即Wi=UiDi,i=1,2,…,511,加窗系数Di由MP3官方协议 AnnexB Table3-B.3提供。最后将加窗结果Wi进行叠加生成32个时域PCM输出。

 

  1次矩阵运算乘法和加法运算过程分别为1 024次和992次,完成1个声道的解码需要18次矩阵运算。矩阵运算是子带综合滤波的关键步骤。实际上,Konstantinos Konstantinides提出的方法,只需要做一些变化就可以通过32点DCT变换成矩阵运算。

  2.1 32点快速DCT算法分析

  快速DCT变换算法主要基于系数矩阵分裂方法,增加输入的预处理,使得乘法和加法计算量减半。32点的DCT变换到矩阵运算如图2所示。其中V(1×64)表示矩阵的输出,A,B都是长度为1×16的矢量,(A,B)表示32点DCT的输出。

  由于32点的DCT可以分解成2个16点的DCT变换,依次类推可以分解成8点的DCT变换,考虑到定点数字信号处理中的有限字长效应,实际只需分解1 次,将32点DCT化成2个16点的DCT。简化子带滤波流程以及使用快速DCT变换后,子带综合滤波部分的运算量可以减少约60 %。

  由32点DCT分解为2个16点DCT过程推导如下:

  

继续阅读
华为海思涉足广泛而且发展迅速,现如今被多个巨头开始市场狙击

得益于华为从资金到市场的支持,华为旗下的海思半导体在过去多年里发展神速,所涉足的多个领域在市场上也口碑良好,公司也获得了国内乃至国外用户的认可。尤其是因为近半年在麒麟、鲲鹏和昇腾等多方面的接触表现,海思半导体俨然中国集成电路实力的象征。但即使强如华为海思,也在面临着强大的挑战。

架构设计越来越难?十几年前提出的系统级设计方法学或许能够提供新的思路

当我们谈体系结构的黄金时代,我们不仅需要设计更有效的架构,也必须思考更有效的设计方法学。当我们用五花八门的架构来提高运算效率的时候,也面临一个新的问题:怎么通过改进设计方法提高软硬件开发的效率?十几年前提出的系统级设计(ESL)的概念和方法学也许可以给我们一些灵感。

未来十年人工智能将成半导体新动力源

11月29日,中国集成电路设计业2018年会暨珠海集成电路产业创新发展高峰论坛在珠海召开。与会嘉宾纷纷表示,人工智能时代的到来,给IC设计企业带来机遇的同时,也让他们面临更大挑战,搭建产业生态环境,补短板、加长板,找准市场定位,是国内IC设计业实现突破的解决之道。

地平线正在筹集10亿美元资金,专注于自动驾驶、人脸图像辨识等专用领域

11月27日消息,据英国金融时报报道,AI芯片制造商地平线正筹集资金高达10亿美元。 公开资料显示,地平线成立于 2015 年7月,总部在北京,创始人是前百度深度学习研究院负责人余凯。BPU(BrainProcessing Unit) 是地平线机器人自主设计研发的高效人工智能处理器架构IP,支持 ARM/GPU/FPGA/ASIC 实现,专注于自动驾驶、人脸图像辨识等专用领域。

仿生芯片没你想的“高大上”

仿生是模仿生物系统的功能和行为,来建造技术系统的一种科学方法。它打破了生物和机器的界限,将各种不同的系统沟通起来。从这个角度来看,人工智能芯片可以算作是仿生。我认为目前的人工智能还只是停留在人工阶段,真正的智能应该是具有自我学习能力(不需要依赖大数据训练,会自主学习)。

精彩活动