MP3播放器的解析SoC的设计挑战和应对

互联网 | 编辑: 2006-10-24 00:00:00转载 一键看全文

最近几年来,便携式音频播放器(以俗称的MP3为代表)已经成为消费电子市场最绚丽的亮点。与此同时,各家芯片供应商之间的竞争也日趋白热化。消费电子产品的比拼永远集中于往更高性能、更低成本、更高集成度和更低功耗的方向发展,而便携式音频播放器芯片则更加突出地表现出了

低功耗设计

低功耗设计

便携式产品对整机功耗有严格的要求,不仅要求播放器在正常工作状态下功耗要低(终端用户侧表现为播放时间长),而且要求播放器的待机电流要很小,因为没有人愿意在不听歌时拔下电池。

ATJ2097通过对芯片内每个模块达到精确的掌控,采用严格停止不同功能模块的时钟和关断一些偏置电流等各种方法,能够将其在锂电池供电模式下的整机待机电流控制在160uA以下,也就是说如果使用常见的720毫安小时的锂电池,放置半年后播放器仍然能够正常工作。

要降低播放器在正常工作状态下的功耗,需要从两个方向努力。一是尽力提高电源的转换效率;播放器芯片通常都集成了高转换效率的升、降压型开关电源(DC-DC);二是解码电路(或处理器)和音频电路的耗电要低。下面以MP3播放为例,重点介绍一下降低MP3解码电路功耗的努力。

MP3解码算法中运算量较大的函数主要有:HUFFMAN(约占20%),DEQUANTIZE(约占18%),IMDCT(约占18%),SYNTHESIS(约占20-25%),这几个函数约占70-90%,几乎决定了解码器的所有工作量。ATJ2097对这些函数进行了大幅的优化,在此仅对部分函数的优化方法做一点简单描述。

众所周知,HUFFMAN是上世纪五十年代初提出的一种经典而有效的可变长的无损编码方式,它根据字符出现的概率来构造平均长度最短的编码,不过其解码的复杂度高于编码。MP3用到了34张HUFFMAN表(其中有些表是相同的),其中32张用于两个数据的同时编码,另外2张用于4个数据的同时编码。

解码时,如果依照传统的HUFFMAN树按位展开进行解码,即每次输入1bit,若值为1,表示为右节点,为0表示为左节点,通过查找HUFFMAN树,直到查找到叶结点为止(表中值为0为叶结点,否则为下一个节点在表中相对当前节点的偏移值),当码字长度较长时需要的解码周期也较长。而ATJ2097则采用并行HUFFMAN解码,很好地解决了这个问题。其基本思想是通过保存HUFFMAN码字来重新组成新的HUFFMAN表,解码时每次输入长度固定为24位元的解码数据流,通过查找新的码子HUFFMAN表来进行解码,如此即明显地加快了解码的速度,同时也节省了HUFFMAN树的存储空间。

又如只会在MP3中才使用到的MDCT函数,为了在时域和频域都有较好的分辨率,其在MP3中使用了长块18个样本,短块6个样本的MDCT变换,由此所需要的运算量及存储空间都将相当大。而在ATJ2097中对该算法进行了充分的优化,其重点主要是尽量发挥DSP处理器的地址产生器等特点来进行算法优化。最终,对MDCT函数减小了近一半的运算量及存储空间,在降低了成本的同时,也使播放器的功耗有了明显的降低。

另一方面,在硬件电路上,ATJ2097同样做了精心的设计。众所周知,处理器、存储器、逻辑界面等数字电路,其功耗约等于F×C×V2,所以为了减小功耗,除了缩减运算量以降低工作频率外,还可以在减少逻辑门数量、压缩电路可工作电压两方面下很多功夫。减少逻辑门数量几乎是所有数字电路设计人员的努力方向之一,而各家芯片供应商的方法各自有所侧重,无非提高系统架构的效率、缩减非必要的功能、更具体细节地撰写硬件描述语句之类,ATJ2097亦然。

在压缩电路可工作电压方面,由于当工作电压降低时,逻辑器件功耗降低的同时,反应速度也将明显下降,所以ATJ2097采用的相应技术是提高逻辑电路的时序裕量、减小单位时钟周期内的绝对延时量、合理拆分耗时较多的逻辑运算到不同的时钟周期等几个方面。比较明显的表征是,利用0.25um工艺设计生产的系统芯片,通常的内核工作电压应该是2.5V,而ATJ2097则可以轻松工作在1.8V甚至1.6V,如此,自然大幅压低了内核的功耗。

提示:试试键盘 “← →” 可以实现快速翻页 

一键看全文

本文导航

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑