当前位置:首页 > 电源 > 数字电源
[导读]0 引 言 MP3(MPEG I Audio Layer 3)格式是基于电影专家组系统(Motion Picture Expert Group,MPEG)压缩标准的一种声音文件格式,其压缩比根据采样频率、压缩位率和声音模式的不同而有所变化。MP3具有很高的压缩率

0 引 言

    MP3(MPEG I Audio Layer 3)格式是基于电影专家组系统(Motion Picture Expert Group,MPEG)压缩标准的一种声音文件格式,其压缩比根据采样频率、压缩位率和声音模式的不同而有所变化。MP3具有很高的压缩率,可以达到1:12。一分钟左右的CD音乐经过MP3格式压缩编码后,可以压缩到1兆左右的容量,其音色和音质还可以保持基本完整而不失真。随着数字音乐的不断普及,现在MP3音乐已经不仅局限于MPEG视频应用中,而是以一种独立的数字音乐压缩技术出现在计算机、网络和各种电子设备上。目前市场流行的MP3播放器是基于DSP和专用芯片的解决方案,通过硬件或专用算法实现解码,具有良好的实时性。而消费类电子产品正朝着多功能、低成本的方向发展。随着ARM9功能的不断增强,利用系统本身处理器实现MP3软解码成为可能。另外,软件实现更便于产品功能的升级和维护,可以预见,嵌入式MP3软解码器的应用将越来越广泛。这里在分析MPEG I Audio Lay-er3解码算法的基础上,提出基于ARM946E处理器实现解码算法的软件优化方法。

1 MPEG Audio Layer3的解码流程
    MP3解码算法流程如图1所示。

主要过程包括:数据流解码、Huffman解压缩、反量化与重排序、立体声解码、IMDCT和子带合成运算等。其中Huffman解码与反量化、IMDCT和子带合成等3个过程在MP3解码过程中占用了最多的CPU和内存资源,是嵌入式系统实现软件解码的关键。


2 ARM946E处理器
    ARM946E处理器属于ARM9内核带有E扩展的一个可综合版本,执行v5TE架构指令。采用5级流水线,存储器系统根据哈佛体系结构重新设计,独立的数据和指令总线。带有一套存储器子系统,以提高系统性能和支持大型操作系统。
    如图2所示,存储器子系统包含1个存储器保护单元(MPU)、高速缓存(Cache)和写缓冲(Write Buffer);CPU通过该子系统与系统存储器相连。

相对于ARM7,ARM9E性能上的提高主要表现在工作频率、改进的硬件特性及优化的指令执行效率。另外,ARM9E集成了轻量级的DSP处理能力,以很小的成本(CPU增加功能需要增加硬件)换来非常实用的DSP性能。充分利用好芯片资源是实现MP3解码优化的关键。


3 算法优化
    针对MP3中涉及较大运算的Huffman解码与反量化、IMDCT和子带合成,分别提出算法优化处理。3.1 定长查找冗余表Huffman解码算法Huffman解码器可以通过从头至尾逐一检测各符号,以查表比较的方式进行解码。即从一维的bit流中分辨出各个长度不同的Huffman码字,然后进行复杂的匹配。
    由于LayeIⅢ中的Huffman码表组长度不一,会增加码字的搜索时间。定长查找冗余表法扩充Huff_man查找表,每次选取定长N bit码流作为查找索引。查找表中包括跳转指针和编码值。若节点索引值为跳转指针时,将通过扩充Huff-man查找表得知此Huffman编码的后续bit数,并跳转到另外一个节点;然后再根据后续bit数从码流中取值;接着从上次跳转节点开始查找,如此重复直到找出对应huffman编码的内容。查找表利用Union数据结构实现,可减小Huffman表占用的空间。假设一Huff-man编码长度为l,采用传统算法需要1次移位操作和1次比较,使用定长查找法只需[z/N]次查找和[l/N]次比较操作。
    表1,表2是Huffman解码的举例说明:[!--empirenews.page--]

计算量可降低一半。
    子带合成滤波在解码过程中包括了32点到64点的IMDCT处理,如式(3)所示:

由于N(i)(k)具有对称特性,可以得出:

只要计算0≤i<n/4和n/2+1≤i<3n/4范围的V(i)值即可。其减少了将近一半的计算量。


4 代码优化[!--empirenews.page--]
    根据ARM946E处理器硬件特点,对实时性要求较高的关键程序进行C语言和ARM汇编级代码优化。
4.1 减计数循环体
    IMDCT和子带合成滤波器组2个运算量最大部分中有多个循环体运算,为了提高执行效率,推荐使用减计数循环体。
    如表3所示,对于固定次数的循环,减计数循环比增计数循环速度快。这是因为每次增计数循环体外加3条指令,而减计数循环体外只有2条指令,减循环终止条件为减计数到零,而不是计数增加到某个特定的限制值。由于减计数结果已存储在指令条件标志里,省去与零比较指令。

4.2 内联函数和内嵌汇编
    MP3解码算法中定点化乘法都是通过函数调用来实现,每次调用需要开销23~28个时钟周期,其中超过15个周期用于函数调用时PC指针以及寄存器压栈保护上。采用内联函数方式(使用关键字_inline声明)或宏指令,在编译阶段代码段将被直接展开。另外armcc编译器允许在C源程序中使用内嵌汇编(但代码可移植性差),使用包括汇编的内嵌函数,可以使编译器支持通常不能有效使用的ARM指令和优化方法,例如C编译器不支持的ARM v5E扩展指令。使用内联函数结合内嵌汇编实现移位乘法,可使平均时钟周期缩短为6~8个。
4.3 ARM DSP扩展指令的运用
    ARM946E处理器支持ARMDSP扩展指令,主要包括3个类型:
    (1)单周期的16×16和32×16 MAC操作;
    (2)对原有的算术运算指令增加了饱和处理扩展;
    (3)前导零(CLZ)运算指令,提高归一化、浮点运算以及除法操作的性能。
    ARM处理器不支持浮点运算,经过测试及分析,定点运算中数值的截断误差选择为28 b,其可以达到较好的解码音质,不会因为爆音过多而影响播放效果。
    完成类似的乘法功能,ARM的SMULL(32×32)指令需要3个周期,而ARMDSP扩展指令SMULWT(32×16)只需要1个周期。从数据的准确性上分析,由于乘数的精度为16 b,最终结果有些差异,但由于MP3解码运算都是基于28 b的定点数值的,所以通常的运算都是一个运算结果跟某一个固定定点表中的数据相乘的。若选择固定定点表中数据的高16 b数据进行运算,运算的结果误差在1 b以内。
    为了验证使用ARMDSP扩展指令的优化效果,在系统120 MHz主频下,以128 Kb/s的压缩速率进行编码测试,采用的测试文件如表4所示。

上述3个MP3测试文件的比特率均为128 Kb/s,使用这三首MP3歌曲进行解码分析结果如图3所示。

实验表明,使用ARMDSP扩展指令比使用ARM一般指令解码性能平均提高17.5%,主观听觉上音质效果无差异。


5 结 语
    这里充分利用ARM946E处理器的DSP扩展指令特点提高程序代码的执行效率,对3个关键模块:Huff-man解码,IMDCT运算,合成子带滤波进行算法优化及简化处理,减少了各模块的运算量,同时从C语言和ARM汇编层次来优化代码,取得了较好的实时MP3解码效果。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

南京2022年10月17日 /美通社/ -- 日前《2022第三届中国高端家电品牌G50峰会》于浙江宁波落幕,来自两百余名行业大咖、专家学者共同探讨了在形势依然严峻的当下,如何以科技创新、高端化转型等手段,帮助...

关键字: LINK AI BSP 智能家电

数字电源

15504 篇文章

关注

发布文章

编辑精选

技术子站

关闭