1、 本科毕业设计 ( 20 届) 基于 NiosII 的 SD 卡音乐播放器的实现 所在学院 专业班级 电子信息工程 学生姓名 学号 指导教师 职称 完成日期 年 月 - 2 - 摘 要 目前消费类电子产品的发展呈现出数字化和多功能集成化的明显趋势。在现代化生活中 SD卡的使用十分普遍,嵌入式 系统的应用越来越多 。 利用可编程的片上系统 SOPC可以方便灵活地进行音乐播放,不仅降低了成本,还具有很大的扩展性和灵活性。 本设计主要是为了开发出一套低成本、可扩展容量的音乐播放器。系统使用内嵌 NiosII软核处理器的 FPGA作为运算、控制核心的音乐播放系统,具有结构简单、可靠性高、使用方便、扩展
2、性强等优点。本文通过使用 SPI总线模拟 SD卡的工作时序,利用 NIOS II处理器对 SD卡中音频文件的读取操作,使用 WM8731音频 CODEC来播放音乐。从而完成一套基于 SOPC的音乐播放系统。 关键词 : SD 卡;音乐播 放器; Nios II; SOPC - 3 - Abstract At present the development of consumer electronic products shows a tendency of digital and multifunctional integration. In modern life the usage of
3、SD card is very popular, application of the embedded system is more and more extensive. The SOPC( system on a programmable chip) can make it neat and convenient to play music. It not only reduces the cost, but also has great expansibility and flexibility. This design is mainly to develop a low-cost
4、music player with a scalable capacity. System uses embedded NiosII FPGA soft-core processors as the operation control center of the music playback system, having a simple structure, high reliability, ease of use, scalability and other advantages. In this design,first,we use the SPI bus work timing s
5、imulation of SD card,and then use NIOS II do read operation of the audio file in the SD card,last play music with the WM8731 audio CODEC,so we can complete the music playback system based on SOPC Key Words: SD card; Music Player; Nios II ; SOPC - 4 - 目录 1 引言 . - 1 - 1.1 便携式音乐播放器的发展 . - 1 - 1.2 MP3 播
6、放器 . - 2 - 1.3 基于 SD 卡的音乐播放器的特点 . - 2 - 1.4 论文研究主要内容与意义 . - 3 - 2 SOPC 技术与 QUARTUS II 软件 . - 4 - 2.1 SOPC 概述 . - 4 - 2.2 Cyclone FPGA 系列 . - 4 - 2.3 Nios II 简介 . - 5 - 2.3.1 Nios II 内核种类 . - 6 - 2.3.2 Nios II 处理器结构 . - 6 - 2.4 QUARTUS II 介绍及开发流程 . - 7 - 3 SD 卡接口原理 . - 9 - 3.1 SD 卡简介 . - 9 - 3.2 SD 卡
7、引脚 . - 9 - 3.3 SD 卡通信协议 . - 10 - 3.3.1 传输模式 . - 10 - 3.3.2 初始化及读写时序 . - 11 - 4 硬件设计 . - 13 - 4.1 开发工具介绍 . - 13 - 4.2 硬件结构 . - 14 - 4.3 系统构建 . - 14 - 5 软件设计 . - 22 - 5.1 SOPC 系统的软件设计 . - 22 - 5.2 软件设计思路 . - 22 - 5.2.1 SD 卡读写 . - 23 - 5.2.2 音频解码 . - 24 - 5.3 设计操作流程 . - 24 - 6 总结 . - 27 - 6.1 基于 SD 卡的音
8、乐播放器测试结果 . - 27 - 6.2 结语 . - 27 - 致谢 .错误 !未定义书签。 参考文献 . - 28 - - - 1 - - 1 引言 1.1 便携式音乐播放器的发展 1979 年索尼 Walkman TPS-12 的问世,揭开了便携式音乐播放器发展的序幕。个人音乐娱乐市场的大门正式由这台磁带机音乐系统开启,而在这之前,笨重的立体声录音机,是人们在家里欣赏音乐的唯一选择。行至今日,便携式音乐播放器的历史已经由四部分组成:磁带机、 CD 机、 MD 播放器和 MP3 播放器1-4。在 1980 年,索尼和飞利浦共同制定了数字音频光盘格式标准,光盘采用16 位音频数据,比特率为
9、 1411.2Kbps,采样频率 44.1K,在此标准下的 CD 音轨几乎可以说几乎是无损的。真正意义上的 CD 随身听是 1982 年索尼推出的D-50 。 CD 的发展在上世纪九十年代达到了鼎盛。在数字技术蓬勃发展的今天,CD 作为完美音质的载体(尽管作为便携式音乐器体积稍显庞大),不管音乐播放器未来怎么样发展,永远也都不会落伍。德国人 Brandenburg 的博士论文,为MP3 这一数字音频压缩技术提供理论基础的是上世纪九十年代末德国人Brandenburg 的博士论文。音乐技术史上划时代的一刻定格在 1995 年,这一年,诞生了具有较高压缩比以及较小音 质损失的 MP3 标准。基于这
10、种数字音乐压缩技术,人们开始了 MP3 随身听的开发和应用。从 1995 年上半年开始直到整个九十年代后期, MP3开始在因特网上蓬勃发展。 MP3的流行主要得益于如 Nullsoft于 1997 年发布的 Winamp 和 Napster 于 1999 年发布的 Napster 这样的公司和软件包的成功,并且它们相互促进发展。这些程序使得普通用户很容易地播放、制作、共享和收集 MP3 文件。 当 MP3 在容量、外观、音质上的发展无法再吸引更多眼球的时候,开始转向多功能的方向发展。正如在手机身上所发生的一切,人们对于 MP3 的要求,不再是单一的欣赏音乐,而是能够像手机一样身兼多职。而目前消
11、费类电子产品的发展呈现出数字化和多功能集成化的明显趋势。在 MP3 研究上,由于市场趋近饱和,大多数公司都将精力集中在外观造型上,对于其功能及性价比的探索趋势相对较弱。 - - 2 - - 1.2 MP3 播放器 MP3,顾名思义, “ MP” 就是国际标准 MPEG, “ 3”就是 第三层音频压缩模式,在中文中被称为 “电脑网络音乐”, 是一种对声音信号进行压缩的格式。之所以采用 MPEG 中第三层的压缩模式,是因为其音质比第一层和第二层要高,但相对的,编码方式要较第一层和第二层更 为复杂。 MP3 数据量与 CD 的相比,仅为 32kbps320kbps,是压缩前数据量的 1/41/40。
12、 CD的容量没变,所存音乐的数据量却下来了,也就是说一张 CD 现在可以存的音乐是以前的 440 倍,音乐效果却没打什么折扣。 MP3 播放器 4,顾名思义也就是可播放 MP3 格式的音乐播放工具。 MP3 播放器的压缩率可以达到 1/41/40,但在人耳听起来,却并没有什么失真,因为它将超出人耳听力范围的声音从数字音频中去掉,而不改变最主要的声音。此外,MP3 播放器也可以上传、下载其他任何格式的电脑文件, MP3 播放器具有 移动存储的功能。 MP3 播放器其实就是一个功能特定的小型电脑。在 MP3 播放器小小的机身里,拥有 MP3 播放器存储器(存储卡)、 MP3 播放器显示器( LCD
13、 显示屏)、 MP3 播放器中央处理器 MCU(微控制器)或 MP3 播放器解码 DSP(数字信号处理器)等。典型的 MP3 播放器如图 1-1。 图 1-1 MP3 播放器 1.3 基于 SD 卡的音乐播放器的特点 在半导体行业中,消费类电子是近年来发展最迅猛的一个领域。 2006 年消费类电子在中国 MCU 市场的需求所占份额超过了百分之四十 5。 现在音乐播放器技术已基本成熟,一般 MP3 都采用专用 DSP 芯片和集成的数据程序存储器。集成数据存储器的优点是成本低廉,但是,这样却无法方便的- - 3 - - 进行容量的扩展。因此,本次论文在于设计出能够用 SD 卡作为音乐存储介质的存储
14、器,从而,使播放器的容量能够方便地得到扩展。 随着现在存储器微型化快速发展,无法扩展容量的音乐播放器已经很难满足人们的需求。虽然现在一些 mp3 容量已经达到 2G、 4G 甚至 8G。但是,由于其容量无法扩展,为用户以后的使用造成了极大不便。当用户想要扩展容量时,不得不再换一个新的 mp3。这样就造成了用户成本上的增加,会使用户觉得得不偿失。而 SD 卡音乐播放器的出现则可以解决用户的这一烦恼。这也是本次设计的优势所在。 1.4 论文研究主要内容与意义 1能够完成对 SD 卡初始化及 SD 卡中音频数据进行读取。 2通过音频解码芯片播放出原音频文件。 3通过控制部分,能够进行上一曲、下一曲的
15、切换等。 4在 DE2 板的 LED 频上显示 “ Altera DE2 Board SD Music Player” 。 本文采用 Altera DE2 板上提供的 SD卡、音频处理的硬件及软件开发平台,同时借助 FPGA 和 WM8731(音频输入 /输出芯片 )优秀的音频输入 /输出能力,使该 方案的性能达到优化,旨在实现一种设计思路,即硬件设计软件化。本次设计具有以下优势: (1)本设计可以改变便携式音乐播放器不同模块间软件和硬件的差异化设计。 (2)提高系统集成度,降低成本,在系统中实现不同功能却基于相同的业务载体,是本次设计的又一大亮点。 作为一种系统级设计技术,本设计将系统级可配
16、置和可重用的设计方法融入多媒体设备设计中,可提高产品和企业的市场竞争力,有助于企业知识和经验的积累。 - - 4 - - 2 SOPC 技术与 QUARTUS II 软件 2.1 SOPC 概述 SOC 的设计以口核为基础,借助 EAD 工具,然后系统功能和结构的描述是以分层次的硬件描述语言为主要手段。在少数几个芯片上实现整个系统的功能是SOC 以系统为框架,把处理机制、模型算法、芯片结构直到器件的设计紧密结合起来的产物。 SOC 能实现更高性能的系统指标在同样的工艺条件下。美国公司 Altera 最早提出了 SOPC(System On Programmable Chip),而 Ouartu
17、s II 是他在同时推出的相应开发工具。 SOPC 技术将 I/O 口、存储器、处理器等系统设计需要的功能模块集成到一个可编程器件 (FPGA)上,从而在片上构成了一个可编程的 系统 6。 SOPC 的主要优点有: 用户可以根据自己的需要直接设计专用集成电路。 整个设计过程都由计算机进行,如系统电路描述、系统硬件设计、系统软件设计等。 在实现系统专用集成电路时有了更多的选择,不但可以使用原来 ASIC 器件,更可以选择规模更大的 FPGA。 2.2 Cyclone FPGA 系列 FPGA 是 Field Programmable Gate Array 的缩写,中文意思是现场可编程逻辑闸阵列,
18、是一个含有可编辑元件的 半导体 设备,可供使用者现场程式化的逻辑闸阵列元件。系统设计师可以根据需要通过可编辑的连接把 FPGA 内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。 FPGA 虽然速度较慢,对于复杂的设计也无能为力,但可以快速成品是它的杀手锏,且它的成品更为低廉。在一些技术更新比较快的行业, FPGA 几乎是电子系统中的必要部件,因为在大批量供货前,必须迅速地抢占市场,这时 FPGA 方便灵活的优势就显得很重要 7。 本次设计采用的 FPGA 是 Altera 公司的 cyclone II,虽然是 05 年的产品,现- - 5 - - 在来讲稍微有点过时,但本次设计的
19、主要宗旨是硬件设计的软件化,起一个抛砖引玉的作用。 Altera 公司开发 Cyclone FPGA 系列是为了满足市场对低功耗、低成本设计的需求,至今为止已经推出了五代。 Cyclone 是最初的低成本 FPGA。 2003 年推出, 0.13um 工艺 ,1.5v 内核供 电,与 Stratix 结构类似,是一种低成本 FPGA 系列 ,是目前主流产品,其配置芯片也改用全新的产品 8。 CycloneII 是 Cyclone 的下一代产品, 2005 年开始推出, 90nm工艺, 1.2v 内核供电,属于低成本 FPGA,提供硬件乘法器单元,为大批量、低成本应用提供用户需要的各种功能 8。
20、 Cyclone III 系列于 2007 年推出,采用台积电 (TSMC)的低功耗 (LP)工艺技术制造,以相 当于 ASIC 的价格实现了低功耗 8。 Cyclone IV 系列于 2009 年推出, 60nm 工艺,面向对成 本敏感的大批量应用,帮助顾客满足越来越大的带宽需求,同时降低了成本 8。 CycloneV FPGA 系列 2011 年推出, 28nm 工艺,实现了业界最低的系统成本和功耗,其性能水平使得该器件系列成为突出您大批量应用优势的理想选择。与前几代产品相比,它具有高效的逻辑集成功能,提供集成收发器型号,总功耗降低了 40,静态功耗降低了 30 8。 2.3 Nios I
21、I 简介 Nios II 系列软核处理器是 Altera 的第二代 FPGA 嵌入式处理器,其性能超过200DMIPS( 所谓软核,是指未被固化在硅片上,使用时需要 借助 EDA 软件对其进行配置并下载到可编程芯片 (比如 FPGA)中的 IP 核。软核最大的特点就是可由用户按需要进行配置)。 它相较于普通的嵌入式 CPU 有两大亮点: (1) 外设可以根据用户的需求自由的选择。 (2) CPU 通过一条名为 “ Avalon”的总线与外设相连, 系统主从设备的端口连接和时序关系由这条总线规定。 CPU的所有数据交换都通过这条总线,系统的多 个设备也可以同时使用这条总线。 9 Nios II
22、软核处理器具有以下的优点: - - 6 - - (1)设计灵活。 (2)价格低廉。在不增加成本的情况下一块 FPGA 可以实现多核,添加 Nios II软核几乎不增加成本。 (3)开发迅速。通过 IP 复用以及 Altera 提供的大多数外设的驱动程序,大大加快开发速度。 2.3.1 Nios II 内核种类 Nios II 有三种类型的内核,其具体分类及特点参见图 2-1。 图 2-1 Nios 内核的类型特点 2.3.2 Nios II 处理器结构 在没有 协处理器的情况下, Nios II 的 数据处理主要由算术逻辑单元完成。用户定制的逻辑电路通过逻辑接口与 Nios II 内核相连接。 Nios II 采用数据总线和指令总线分开的哈佛结构。 Nios II 处理器内集成有一个 JTAG 调试模块。为了提高系统的整体性能, Nios II 内核除带有紧耦合存储器 TCM 接口外,还集成有数据 Cache 和指令 Cache。 TCM 使 Nios II 在处理器可预测实时响应的同时又提高了系统性能。中断控制器管理外部硬件的中断,异常控制器管理内核异常。具体结构如图 2-2。