基于FPGA的音乐播放器系统设计_kaic

摘 要
音乐播放器随处可见,广播、CD、MP3、车载播放器、智能家居等系统,都用播放器娱乐着我们的生活。FPGA以硬件描述语言完成的电路设计,具有运算速度快,编程简单又稳定性,长期维护,成本等优点,本文基于FPGA实现音乐播放器设计。
本设计基于FPGA片上系统(SoC)完成动态显示乐曲演奏器的设计,完成音乐SD卡存储电路设计,音乐播放电路设计、FPGA主电路设计。利用Verilog HDL语言编程实现SD卡读取,格式转换,播放等功能。使乐曲演奏数字电路设计得到了更好的优化,同时减少了设计芯片的数量、缩小了体积、降低了功耗、提高了设计的灵活性、可靠性和可扩展性。
本文完成了基于FPGA的音乐播放器系统硬件电路设计和对应软件开发,并在这次设计中的两个难点音频播放和SD卡的设计进行了详细说明,给出了相关流程图和实现代码,本系统还可以扩展音乐播放显示、视频播放等功能,也可以实现录音机等功能。

关键词:FPGA;音乐播放器 ;Verilog HDL
 
Abstract
Music players can be seen everywhere. Broadcasting, CD, MP3, car players, smart homes and other systems all use players to entertain our lives. FPGA circuit design with hardware description language, has the advantages of fast operation, simple and stable programming, long-term maintenance, cost, etc.. This paper is based on FPGA music player design.
This design is based on the FPGA film system(SoC) to complete the design of the dynamic display music player, complete the music SD card storage circuit design, music playback circuit design, FPGA main circuit design. The use of Verilog HDL language programming to achieve SD card reading, format conversion, playback and other functions. The digital circuit design of music performance is better optimized, and the number of design chips is reduced, the volume is reduced, the power consumption is reduced, and the flexibility, reliability, and extensibility of the design are improved.
This paper completed the music player system based on FPGA hardware circuit design and the corresponding software development, and in the two difficulties in the design of audio playback, and has carried on the detailed design of the SD card, related flow charts are given and the implementation code, the system also can extend the music playback function such as display, video playback, can also realize the tape recorder, etc.

Key words: FPGA;Music player;Verilog HD
目录
1 绪论
1.1 设计背景
1.2 市场前景
1.3 设计任务
1.4 本文安排
2 方案设计
2.1 设计思路
2.2 系统结构
2.3 FPGA原理
2.4 音频播放原理
2.5 系统组成
3 硬件电路设计
3.1 系统硬件原理图
3.2 FPGA系统
3.2.1 主要特性
3.2.2 管脚说明
3.2.3 芯片擦除
3.2.4 复位电路
3.3 SD卡存储器
3.4 音频输出电路
3.5 系统软件实现
4 软件设计
4.1 主程序设计
4.2音频初始化程序
4.3 SD卡初始化程序
5 Quartus仿真
5.1 Quartus仿真
5.1.1 Quarutus介绍
5.1.2 Verilog HDL
5.2 Quartus仿真总体结构
5.3 Quartus仿真图
6 总 结
参考文献
谢 辞
附录
元件清单
电子密码锁的C语言程序
 
1 绪论
1.1 设计背景
FPGA是以硬件描述语言完成的电路设计,很多人都知道FPGA通过CPU已经入暮几年了,人们以硬件来使用很多计算的任务,所以芯片行业要求这些定制来执行新一类的很多计算任务。而且FPGA还很快,高效,速度越来越快面积也会跟着很快,不需要共享内容,因为FPGA是这有着不同的结构,可以通过简单的合成和布局,是现代设计验证技术的主流。在大多数FPGA中,编辑组件也包含内存组件。
FPGA主要基于并行操作和硬件描述语言。FPGA的开发需要从顶层设计、逻辑实现、软件调试和硬件调试开始。现代EDA技术代表了电子设计技术的最新发展方向。其基本特征是使用硬件描述语言的电路和系统的设计。系统级仿真和综合能力FPGA和EDA使设计方法有了质的变化。前者“电路设计+硬件+调试焊接”转变为“功能设计+”随着计算机的普及和互联网的迅猛发展,这些技术使得各类电子产品迅速进入我们的生活。每款产品的诞生都离不开EDA技术。从彩色电视机,智能冰箱到个人便携式音乐播放器都需要EDA技术来提供支持。
人们的生活水平逐渐被提及。符合电子技术发展趋势,利用EDA开发平台,采用可编程逻辑器件FPGA使硬件功能可以通过编程实现音乐播放器,Quartus2软件是进行FPGA设计的操作平台,他的功能强大,界面友好,易于使用的特点Quartus2软件集成了Altera可编程逻辑器件开发过程中几乎所有的工具和第三方软件接口,可以创建和组织。并管理用户的设计。
它可以实现设计输入、综合、布局布线、时序分析、仿真、编程与配置、系统级设计、软件开发、时序逼近、调试和工程变更管理等功能。它可以根据不同的配置模式在不同的编程模式中使用,并且可以在没有专门的FPGA程序员的情况下重复使用。
只要换一片EPROM芯片即可以修改FPGA功能.增强了设计的灵活性,有效地提高了工作效率,增加了系统的可靠性和稳定性,提高了技术指标因此, 基于FPGA的电路设计过程更加灵活且通用性更好。
1.2 市场前景
   每一个最后看来很成功的事物,从诞生到发展壮大的都不可避免地经历了很多的艰难历程,还成为了被研究的对象,FPGA也不例外。FPGA是一个技术密集型行业,没有坚实技术功底,从技术上来看未来FPGA的发展,至少在这几年内遵循摩尔定律的规则,工艺不断升级,重点应该还是瞄准通信和可能出现的新兴行业大数据处理等,还可以预见的是FPGA的前景是诱人的。流程升级仍然是未来五年FPGA未来发展的主要方向。
其次,为适应未来产业的应用,FPGA的市场定位是基于下游产业的发展趋势。在过去十年中,诸如Xilinx、Altera和Stand等公司最关注华为、中兴和爱立信的需求,因为FPGA已经占据了通信行业收入的一半,因此这些FPGA公司做得比较好[1]。
   首先,与Xilinx和Altera相比,国内FPGA制造商目前没有绝对优势,只有比较优势,比如高起点,不再从微米级技术开始,中国就是FPGA芯片的应用。劣势是显而易见的,从专利、技术产品到人才市场的品牌,国内的FPGA制造商和国外巨头有很大的差距。另一个机会,当前中国厂商面临的机会比较多,因为从国家层面来看已经把FPGA列为国家战略芯片,对一个企业发展至关重要。最后,随着人工智能和大数据等新兴行业的发展,FPGA市场容量可能会出现大规模的增长。最后说威胁,说到威胁,专利是一个。当中国企业还很弱小,当国际巨头远离竞争的时候,回头看看每一个发展的好产业基本上都是一个逻辑,首先是突破低端,取代同类产品,在产业稳定之后,开始不断改进,不断地完善我们的技术、产品、服务和专利产品。经过一段时间后,我们可以在邻域中细分高端。中国的通信制造业和高铁制造业都遵循这一逻辑。低端突破-持续改进-创造需求高端区域”是中国所有行业发展的必由之路。对于FPGA产业来说,也可以根据这个理念来发展。FPGA的市场前景是诱人的,但在芯片行业中,高门数是无与伦比的。
1.3 设计任务
  设计任务是设计和实现具有一定功能的音乐播放器。
(1)首先实现音乐播放器预置音乐功能。
(2)实现音乐键输入,实现简单的音乐功能。
(3)实现音乐播放器的实时连续播放。
1.4 本文安排
本文介绍了一个FPGA音乐播放器系统的总体设计,旨在实现系统中音乐子系统的设计与实现。主要工作是寻找和解决音乐播放系统中模型层的设计和音乐播放器文件的具体实现。本文共分五章。
第一章:主要介绍了FPGA音乐播放器的设计背景和市场背景,并介绍了该系统的设计模式。
第二章:主要介绍本系统中FPGA音乐播放器的需求,原理和总体设计。对本系统中的FPGA音乐播放器系统的设计进行详细分析。
第三章:主要介绍了本系统中FPGA音乐播放系统中对软件设计程序实现与测试。
第四章:主要介绍了Quartus2仿真和结果。
最后对全文进行总结。
 
2 方案设计
2.1 设计思路
本次设计是基于FPGA的设计与实现,在EDA开发平台Quartus II上,采用VHDL语言,并利用数控分频电路设计音乐硬件。这种纯硬件设计可以方便地定制LPM-ROM来存储音乐数据,并通过修改存储在LPM ROM中的音乐数据来执行其他音乐。本次研究主要是设计一个基于 FPGA 的音乐播放系统,主要从以下几个方面进行研究[2]:
(1)基于FPGA的音乐播放系统的后台,包括EDA软件、Quartus II软件和FPGA的分析和应用,特别是Quartus II的特性、Quartus II图形用户界面的基本设计过程和FPGA的根本特性等等。
(2)研究了音乐硬件性能电路的基本原理,特别是硬件电路的声音产生原理。该程序用于控制FPGA芯片上的一个引脚的矩形波。不同的矩形波对应不同的频率,扬声器可以产生不同的声音频率。在设计过程中,主要包括音符频率的获取,音乐播放的控制,音乐发生器的设计,音乐硬件的性能电路的总体设计过程的计划。
(3)音乐硬件演奏电路单元模块,根据具体设计该设计是逻辑控制模块,音乐存储模块,地址发生器模块,分域预置数模块,时钟分周波模块,由6个模块被分成。全面来说,计数器模块(8HZ分周波器设计和12MHZ分周波器设计),音乐节写,音调发生器模块,音乐符数控制11分钟频率电路模块,音乐光谱对应分频率检查表电路模块等的研究需要计。
(4)音乐演奏系统软件程序设计,各单元的呼叫模块,布拉引脚和项目模拟(工程选择芯片、编译、分发、项目模拟等)窗口包含下载。
(5)乐曲演奏系统的测试与实现。重点介绍了FPGA单片机、数据采集模块、数据存储模块、数据处理与控制模块、显示模块和软件仿真,同时也扩充了对其相关知识介绍。
阐述音乐播放器设备中运用到的各种模拟电路,并确定了本设计采用的电路设计原理。随后介绍判定音乐播放器电路好坏的判定标准。对系统硬件部分做出总体设计。详细分析了系统中各模块的选用和电路设计,重点介绍了单片机、数据采集、数据存储、数据处理、数据控制和显示模块的选型和硬件电路设计。然后介绍系统的软件设计,分别从软件开发环境构建、系统总体设计、系统初始化、数据检测与显示设计、等方面进行介绍。最后利用软件对系统进行了软件仿真,并完成了音乐播放器的装配。
2.2 系统结构
FPGA系统的选择主要是为了实现音乐播放器,根据实现功能。输出由喇叭跟数码显示系统模块,以其为基础的音乐播放器设计过程中, 该模块的输出是基于喇叭和数字显示模块,以及基于此的音乐播放器的设计过程,FPGA播放器主要有下载模式和播放模式这两个基本工作模式。在下载模式中,运行的软件允许用户下载文件到播放器的闪存中。今天越来越多的人们喜欢音乐通过音乐来舒展舒适的生活,而音乐又是很小,方便装着小巧,让越来越多的人解除了困难,方便小巧在市场上也有着很大的发展。
2.3 FPGA原理
FPGA是构成逻辑组件CB、输入模块、输出模块IOB和内部连接三部分的逻辑单元阵列LAPM的概念。程序阵列(FPGA)是程序的可能设备,在FPGA上有不同的结构。FPGA通过小搜索实现组合的逻辑。各搜索表被连接到D触摸器的输入。驱动其他逻辑电路或驱动I / O,并获得基本逻辑单元模块,这些模块是实现组合逻辑功能和时间消息逻辑功能。电线相互连接,或连接到I / O模块。FPGA搭载了逻辑内部的静态记忆单元来实现数据。存储在存储器中的值决定了逻辑单元的功能和各模块之间的连接,在FPGA允许无限的编程的情况下,确定FPGA的实现功能。
FPGA(LIVE程序阵列)是基于PAL、GAL和其他逻辑设备而开发的。Xilinx和Altera的典型FPGA装置。设计师只需要在自己的实验室工作。芯片的最终功能设计可以通过相关的硬件和软件环境来完成。PGA的逻辑是通过将编程数据加载到内部静态存储单元来实现的。存储在存储单元中的值决定逻辑单元的逻辑功能,模块之间或模块之间的连接和I/O最终决定了FPGA可以实现的功能,FPGA(场程序器门阵列的程序器设备开发中的产品,开发分号电路,帮助在专用集成电路的研究方向上解决这些电路。他们可以克服他们自己的一些缺点。因为使用FPGA非常灵活,所以可以使用用于实现很多电路功能的程序。FPGA采用了逻辑单元阵列LCA这样一个概念,内部包括可配置逻辑模块CLB、输出输入模块IOB和内部连线三个部分。FPGA利用小型查找表(16×1RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了即可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。
FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。
这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。阐述音乐播放器设备中运用到的各种模拟电路,并确定了本设计采用的电路设计原理。
随后介绍判定音乐播放器电路好坏的判定标准。对系统硬件部分做出总体设计。详细分析了系统中各模块的选用和电路设计,重点介绍了单片机、数据采集、数据存储、数据处理、数据控制和显示模块的选型和硬件电路设计。然后介绍系统的软件设计,分别从软件开发环境构建、系统总体设计、系统初始化、数据检测与显示设计、等方面进行介绍。最后利用软件对系统进行了软件仿真,并完成了音乐播放器的装配。
  FPGA的基本特点
1)采用FPGA设计ASIC电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。
2)FPGA可做其它全定制或半定制ASIC电路的中试样片。
3)FPGA内部有丰富的触发器和I/O引脚。
4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
5)FPGA采用高速CMOS工艺,功耗低,可以与CMOS、TTL电平兼容。

 

 

  • 9
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

开心工作室(kaic_kaic)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值