基于FPGA的音乐电子琴
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
毕业设计(论文)
课题名称:基于FPGA的音乐电子琴
指导教师:***
系别:电子信息系
专业:应用电子技术
班级:13应用电子(1)班
姓名:***
【摘要】介绍了基于FPGA的电子琴的工作原理和设计过程。用Altera公司的EP3C40Q240C8芯片为核心器件,通过运用硬件编程语言VHDL描述,在Quartus II平台上,实现了电子琴的手动弹奏和自动演奏功能。本系统主要由音频发生模块,键盘控制模块和存储器模块组成。选择手动弹奏模式按键时,按下音符键后就会选通相应的频率输出;选择自动演奏模式按键时,储存器会将编写好的音乐信息依次取出,去选通各个对应的频率输出,实现自动演奏。音频发生器由分频器来实现,可产生16个频率,这些频率经放大后驱动喇叭,从而发出声音。
目录
第一章引言 (3)
1.1课题分析 (3)
1.2 VHDL语言和QUARTUS II环境简介 (4)
1.3 FPGA简介 (6)
第二章任务要求及原理分析 (9)
2.1 任务要求 (9)
2.2 任务分析 (9)
2.3系统设计的主要组成部分 (12)
第三章任务实施 (13)
3.1 系统流程 (13)
3.2 设计模块 (13)
3.3 Cyclone III芯片简介 (16)
3.4结论 (17)
附录 (18)
1.简谱 (18)
2.程序 (18)
参考资料 ................................................................................................. 错误!未定义书签。致谢 .. (27)
第一章引言
1.1课题分析
电子琴因其操作简单,且能模拟各种传统乐器的音色,而深受消费者喜爱。基于可编程逻辑器件FPGA(FieldProgrammable Logical Device)芯片,利用VHDL硬件描述语言设计系统核心部件,再配以适当的外围电路,可从琴键上进行演奏也可自动进行乐曲演奏。
随着电子技术的高速发展,由于FPGA/CPLD具有高速、高可靠性、串并行工作方式等突出优点,所以在电子设计中受到广泛的应用,并且它代表着未来EDA设计的方向。FPGA/CPLD 的设计采用了高级语言,例如VHDL语言,AHDL语言。从而进一步打破了软硬件之间的界限,加速了产品的开发过程,缩短了设计周期。所以采用FPGA/CPLD取代传统的标准集成电路、接口电路已经成为电子技术发展的必然趋势。
EDA(电子设计自动化) 代表了当今电子设计技术的最新发展方向,它的基本特征是:设计人员按照“自顶向下”的设计方法,对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片集成电路(FPGA/CPLD) 实现。
电子琴是数字电路中的一个典型应用。在实际的硬件设计中用到的器件非常多,连线比较复杂,同时会产生比较大的延时,从而造成测量误差较大,可靠性不好。以EDA工具作为开发手段,运用VHDL硬件描述语言将使整个系统大大简化,提高了电子琴整体的性能和可靠性。
1.2 VHDL语言和QUARTUS II环境简介
1.2.1VHDL语言简介
VHDL是超高速集成电路硬件描述语言,是一种用于电路设计的高级语言。它出现于80年代后期,最初是由美国国防部开发出来的,是为了供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言。VHDL主要是应用在数字电路的设计中。目前,它在中国的应用多数是用在FPGA/CPLD/EPLD的设计中,同时也被一些实力较为雄厚的单位用来设计ASIC。
VHDL具有多层次描述系统硬件功能的能力,支持自顶向下和基于库的设计特点。其开发流程:在顶层用方框图或硬件语言对电路的行为进行描述后,进行系统仿真验证和纠错。再用逻辑综合优化工具生成具体的门级逻辑电路的网表。然后通过适配器将网表文件配置于指定的目标器件,产生最终下载文件或配置文件。最后把适配后生成的下载或配置文件通过编程器或编程电缆下载到具体的FPGA/CPLD器件中去,以便进行硬件调试和验证,而实现可编程的专用集成电路ASIC的设计。
VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL 系统设计与其他硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。
1.2.2QUARTUS Ⅱ简介
Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。
Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。
此外,Quartus II 通过和DSP Builder工具与Matlab/Simulink相结合,可以方便地实现各种DSP应用系统;支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。
Maxplus II 作为Altera的上一代PLD设计软件,由于其出色的易用性而得到了广泛的应用。目前Altera已经停止了对Maxplus II 的更新支持,Quartus II 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。Altera在Quartus II 中包含了许多诸如SignalTap II、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC和HardCopy设计流程,并且继承了Maxplus II 友好的图形界面及简便的使用方法。
Altera Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。