- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
江西理工大学应用科学学院SOPC/EDA综合课程设计报告设计题目:硬件乐曲自动演奏电路设计设计者:余海光学号: 32班级:自动化082指导老师:王忠锋完成时间: 2010年01月19日设计报告综合测试总评格式(10)内容(40)图表(10)答辩(20)平时(20)目录一:设计任务要求………………………………………………2二:总体框图……………………………………………………2三:选择器件……………………………………………………3四:各模块电路及顶层文件……………………………………31:音乐数据ROM模块…………………………………………32:音符控制输出模块NOTETABS…………………………………73:音符译码电路TONETABS…………………………………84:数控分频器计输出模块SPEAKERA…………………………115、顶层设计VHDL描述songer模块 …………………………12五:管脚锁定……………………………………………………14六:硬件仿真结果…………………………………………………16七:心得体会……………………………………………………16八:参考资料……………………………………………………17一、设计任务要求本文介绍在EDA开发平台上利用VHDL语言设计数控分频器电路,利用数控分频的原理设计音乐硬件演奏电路,并定制LPM-ROM存储音乐数据,以“感恩的心”乐曲为例,将音乐数据存储到LPM-ROM,就达到了以纯硬件的手段来实现乐曲的演奏效果。只要修改LPM-ROM所存储的音乐数据,将其换成其他乐曲的音乐数据,再重新定制LPM-ROM,连接到程序中就可以实现其它乐曲的演奏。二、总体框图 该主系统由三个模块:tonetaba.vhd、notetabs.vhd、speakera.vhd组成。①首先定制notetabs.vhd、模块中的音符数据ROM”music”。②根据给出的乘法器逻辑原理图及其模块的VHDL描述在MAX+plusⅡ上完成设计。③完成编译,综合,仿真,管教分配,编程下载。1.对于模块NoteTabs的功能描述:该模块的功能就是定义音符数据ROM“music”随着该模块中的计数器控制时钟频率速率作加法计数时,即地址值递增时,音符数据ROM中的音符数据。将从ROM中通过ToneIndex[4..0]端口输向ToneTaba模块,演奏《送别》。在该模块中设置了一个8位二进制计数器(计数最大值为197),作为音符数据ROM的地址发生器。这个计数器的计数频率为4Hz,即每一计数值的停留时间为0.25秒,恰为当全音符设为1秒时,四四拍的4分音符持续时间。2.对于模块ToneTaba,是乐曲简谱码对应的分频预置数查找表电路,其中设置了乐曲的全部音符所对应的分频置数,每一音符的停留时间由音乐节拍和音调发生器模块NoteTabs的CLK的输入频率决定,这些值由对应于ToneTaba的5位输入值Index[4..0]确定,最多有22种可选值。输向ToneTaba中Index[4..0]的值ToneIndex[4..0]的输出值与持续的时间由模块NoteTabs决定。3.模块Speakera是一个数控分频器,音符的频率可由此模块获得。由CLK端输入一具有较高频率的信号,通过Speakera分频后由SPKOUT输出。由于直接从数控分频器中出来的输出信号是脉宽极窄的脉冲式信号。为了利用驱动扬声器,需加一个D触发器以均衡其占空比,频率将是原来的1/2。Speakera对CLK输入信号的分频比由预置数Tone决定。SPKOUT的输出频率将决定每一音符的音调。三、选择器件1.EP1C12Q240C8芯片及相应的连接设备2.外置扬声器3.7段数码管4.计算机5.LED灯一个四、各模块电路及顶层文件--1、音乐数据ROM模块:该模块为音乐曲谱的存放文件。其利用LPM_ROM宏模块将共设定256每个音符宽度为5位,可存放高、中、低三阶21个音符的数据。文件名为music.mif.其中[0..127]存放第一首歌《挥着翅膀的女孩》, [127..255]存放第二首歌《菊花台》。在该数据中,每个字符持续时间为0.25秒(由音符控制输出模块的时钟源4HZ信号确定),故在根据乐谱中音符的实际持续时间进行编写。如四四拍的则每拍时间为0.5秒,则此处对应数据应该持续两个字符。ROM中的音符数据模块(MUSIC)程序如下:WIDTH=5;DEPTH=512;ADDRESS_RADIX=UNS;DATA_RADIX=UNS;CONTENT BEGIN[0..2] : 10;3 : 11;[4..5] : 12;6 : 8;7 : 9;[8..10] : 10;11 :
文档评论(0)