基于SPCA751A的MP3播放器的研究与实现
http://www.ic36.com 2006年9月5日16:21
摘 要:主要介绍了一种基于台湾凌阳科技公司生产的SPCA751A解码芯片的MP3播放器的制作过程。
1 引 言
数字技术是当今蓬勃发展的一项重要技术,他的发展越来越深刻地改变着人们的生活观念。视听、图像等五花八门的信息正以数字的形式进入我们的工作、生活和家庭。其中数字音乐已经是大家非常熟悉的了,而MP3音乐格式的出现和Internet日益普及,更是将数字音乐推向了高潮。

清华微电子推出高频管分立器件裸片,已做到9G截止频率
在1987年,德国的研究机构IIS(InstituteIntegrate Schaltungen)开始着手一项声音编码及数字声音广播的计划,名称叫做EUREKAEU147,即MP3的前身。之后,这项计划由几所大学共同合作,开发出一套非常强大的运算法则,经由150个国家标准组织认证之后,就成为现在的MP3。
MP3压缩音乐的方式是通过一个运算法则,去掉声音中高频与低频的部分,大幅删减不必要的容量浪费,同时保留了人类所能感受到的音频部分。因此他的好处在于大幅降低了数字声音文件的容量,而不会破坏原来的音质。音质越低的声音在MP3的运算法则下,可以得到越高的压缩比例。
以CD音质的Wave文件来说,如抽样分辨率为16 b,抽样频率为44.1 kHz,声音模式为立体声,那么存储1秒钟CD音质Wave文件,必须用掉16 b×44 100×2=1 411 200 b,也就是相当于1 411.2 kb的存储容量,存储介质的负担很大。而通过MP3格式压缩后,文件便可以压缩为原来的1/10~1/12,每1 s的MP3只需大约U2-128kb就可以了。
MP3播放系统分为便携式和非便携式两种。对于非便携式则是考虑和其他CD音乐格式的共容性。对于便携式系统,主要考虑的是其体积小巧、低功耗、高容量、低价格。本设计主要讨论的就是这种便携式MP3播放器,其系统框图如图1所示。
图中各部分的功能说明如下:
(1)解码部分
这是MP3播放器的核心部件,采用硬件解码技术。
(2)存储部分
目前一般采用32 MB的Flash存储器,32 MB的存储器能够存储36分钟128 kb/s(达到CD音质)的音乐,如果是播放16 kb/s的压缩话音,可以存储4个小时的内容。
(3)接口部分
一般通过PC的并口或USB口进行MP3文件的下载,并口的传输速率较低,USB口的传输速率可以高(4)电源管理
便携式MP3的体积小,只用1~2只AAA电池供电,因此采用低电压以及进行有效的功率管理是非常必要的。
2 音频解码芯片内部结构
现代的许多电子产品中都广泛使用编码器、解码器专用芯片,此类产品已有不少品种。
SPCA751A是台湾凌阳科技公司生产的单片信号处理芯片,是一个MPEGLayer2.5音频专用解码芯片,已经广泛应用于一些便携式的MP3播放器设计中。他可支持对8~320 kb/s基本数据流的解码,支持的取样频率范围为8~48 kHz,非常适合于MPEG的音频解码,并带有数字语音录音的MPEG播放模块,具有很高的性能/价格比。而他的小巧和低功耗的特点,尤其适合于便携式系统,他对主控制器没什么特别要求。解码后的信号是可以直接输出到DAC的立体声、单声道或双声道的数字信号,SPCA751A与DAC的接口是可编程的,适合于市场上最普通结构的DAC。只要通过通用的串行I/O口和控制接口就能对MPEG比特流进行输入/输出和回放控制,系统控制器都能很轻易地对MPEG音频信号进行解码。通过一个通用的可编程I2S接口,就能把已解码的音频PCM数据输出到外部的DAC中,因此大多数常用的音频DAC都能和SPCA751A兼容,以面向不同的用户要求。而且,只要通过通用的串行I/O口和控制接口就能对MPEG比特流进行输入/输出和回放控制,系统控制器对MPEG音频信号解码的工作量很小。
点击此处查看全部新闻图片
对于嵌入式的语音录音,SPCA751A具有高品质的10位8 kHz采样频率的ADC。基于SACM_S480或者SACM_S3200的运算法则,语音可以分别被压缩到4.8 kb/s和32 kb/s,而保持原始的语音效果。
SPCA751A的使用电源为3.0~3.6 V,他可以从其本身使用的16.934 MHz的晶振通过锁相环与系统时钟同步。SPCA751A信号处理器的工作频率可以达到34 MHz而功耗很少,这就使得SPCA751A特别适合于便携式系统。
SPCA751A芯片的内部功能如图2所示,其主控制器只要具有足够的I/O口、能访问闪存(FlashMemory)和能驱动LCD即可,因此,几乎市场上绝大多数的CPU都能符合要求。
为了适合数字录音应用的需要,SPCA751A有一个适合于语音波段的(SIGMA-DELTA)数/模转换器,转换器的电路包括2个主要模块:数/模转换器(ADC)模块和内部参考偏置电压模块,后者为一个带有10位谐和音的15位数据格式。
模/数转换模块包括麦克风放大器(M.A.)、1个可编程增益放大器(PGA)、1个模拟过采样调节器和十进制数据滤波器。PGA增益可以是-12~+12 dB(-12,-6,0,6,12 dB),当过采样信号频率为1.024 MHz时,调节器是一个(singma-delta)反馈回路,他完成微分模拟信号输入到脉冲密度调整单比特数字信号输出的转换。
3 硬件设计
SPCA751A是单片的CMOS微处理器,是实时的MPEG音频解码和语音录音的专用芯片。主处理器通过串行控制口I/O接口的命令控制SPCA751A对MPEG语音数据进行解码,主处理器也可以根据该接口检测解码过程。MPEG音频播放器系统框图如图3所示。
在数字录音模式下,通过在线ADC输入10 b的数字语音,音频的采样频率为8 kHz,经过编码后,数据压缩率为4.8 kb/s或32 kb/s。解码后的音频脉冲编码调制(PCM)数据经可编程通用I2S接口输出到外部DAC,该接口与普通的音频DAC兼容。嵌入式锁相环(PLL)能够从16.934 MHz的时钟源是从27 MHz的系统时钟分频出来的。SPCA7I51A与主控制器的连线如图4所示。
4 软件设计
SPCA751A工作于2种模式,MP3模式和数字语音录音(DVR)模式。在MP3模式,SPCA751A解码输入的比特流,发送到SPCA751A的数据作为输入数据。当FCEB1为高电平(缺省)时,主处理器发送比特流到SPCA751A;当FCEB1为低电平时,表明SPCA751A处于忙碌状态,这时,主处理器不能发任何数据到SPCA751A。在DVR模式,SPCA751A编/解码录入的数字比特流,如果FCEB1为高电平,主处理器能从SPCA751A接收数据;当FCEB1为低电平时,主处理器不能从SPCA751A获得比特流。对SPCA751A进行编程的流程图如图5所示。
5 结 语
MP3为了取得较好的压缩效果而采用了相对复杂的技术,而且宽带音频信号的取样率也较高(一般为44.1 kHz以上),所以MP3编解码的运算量和数据量都相当庞大。比如笔者曾在定点DSP平台上以汇编语言编写的解码程序,在128 kb/s、立体声的条件下需要近40 Mb/s进行实时解码,并需耗用15 kB程序/设计空间。这就是目前便携式MP3已在市场上流行,而能实时编码的同类产品尚不多见的原因之一。不过,随着硬件性能的不断提高和软件算法的不断改进,MP3实时编码器也必将取得进一步的发展。
参考文献
[1] 赵再军.语音信号数字处理的应用研究[D].北京邮电大学硕士论文,2002.
[2] Pan D.ATutorial on MPEG/Audio compression[J].IEEETrans.on Multimedia,1995,2(2):60-74.
[3] 苏公雨.MP3技术及系统构成[J].电子产品世界,1999,(9).
(关键词):MP3播放器 编码器 解码器 MPEG

我来评两句
请您注意:
·遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而导致的法律责任
·本网留言板管理人员有权删除其管辖留言内容
·您在本网的留言,本网有权在网站内转载或引用
·参与本留言即表明您已经阅读并接受上述条款