尽管mp3格式的数字音乐已经在因特网和光碟市场上唾手可得,但由于其核心器件flash存储器的成本居高不下,造成mp3播放器卖价不菲,如何降低成本成为业界关注的焦点?本文将介绍利用fpga实现的mp3播放器设计过程中,器件的选择策略。
本文介绍的mp3数字音频播放器具有先进用户接口特性,采用了现场可编程门阵列(fpga)产品spartan-ii、rc32364 risc控制器和多种assp。fpga器件主要用于实现存储器与输入输出器件的管理和接口功能,rc32364则用来实现mp3解码、图形用户界面和控制其它器件的功能。
本设计主要是解决如何对压缩的音频数据进行解码和播放,因此这里也列出一些这方面的技术问题的解决方案,包括:
1、如何在嵌入式系统中提供图形用户接口;
2、如何在嵌入式系统中实现低成本的lcd显示器、触摸屏、usb、irda和微型flash的接口;
3、使用nand flash存储器时如何进行误码处理;
4、如何控制sdram存储器。
器件的选用及特点
本方案实现的主要目的是如何用最低的成本提供尽可能多的附加性能,如个人数字助理(pda)中常见的存储联系信息、备忘录和其它功能。
图1提供了总体设计框图,其中的主要功能模块包括:
1、128×128像素的图形触摸屏;
2、用于下载音乐和进行网络连接的usb接口;
3、用于与其它设备交换数据的irda兼容红外线接口;
4、容量为32mb的内置flash存储器;
5、用flash卡或microdrive硬盘进行存储空间扩展所需的flash接口。
所有这些功能部件都在fpga和高性能32位risc处理器的驱动下工作。在详细介绍由fpga器件spartan-ii实现的功能以前,让我们先来看一下设计中用到的其它可定制标准器件。
a. 立体声数模转换器
本设计选用cs4343作为数模转换器件,该器件的特点包括:1.工作电压为1.8v到3.3v;2. 转换精度为24位,最高转换速度为96khz;3. 具有数字化音量控制功能;4. 具备数字化高音和低音增强功能;5. 内置耳机放大器,可以在16ω负载时提供5mw的输出功率。
另外,cs4343提供模拟立体声耳机接口、用于传送数字音频数据流的串行端口以及用于器件配置的控制端口。
b. flash存储器
本设计选用的flash存储器是km29u64000t,其容量为8×8mb。该存储器采用nand flash技术设计,具有密度高和位成本低的特点。
km29u64000t有两个重要的特点,在系统设计时须注意处理。第一个特点是高度复用的窄带访问接口,该接口为既用作地址总线、又用作数据总线的8位总线接口。
第二个是数据完整性问题,它是所有采用nand技术设计的器件所共有的问题。可以从两个方面来看待这个问题。首先,在器件出厂时,可能由于数据错误存在不可用的存储块,这在器件的数据手册中可以看得出来,手册中会有个称为nvb的参数用来表示器件所包含的有效块数量。器件不同,这个参数值也不相同,取值范围从1,014到1,024,典型值为1,020。尽管第一个块保证是完好的,但是存储器阵列中任何地方都可能出现不可用的块,在出厂时通常会在页面中第一个或第二个块的0地址处写入0以标志这些无效块。因此很有必要在系统级了解器件中哪些是好块,当由于不可用块的存在会产生不连续的存储映像。
c. sdram存储器
sdram存储器选用容量为512k×16×2的mt48lc1m16a1s。工作频率为125mhz到166mhz,该器件可提供lvttl同步接口。
d. usb控制器
本设计的usb接口采用usbn9