- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
乐曲演奏硬件电路设计报告精选
乐曲硬件演奏电路设计
一、设计任务要求
在EDA开发平台上利用VHDL语言设计数控分频器电路,利用数控分频的原理设计硬件演奏电路,并定制LPM-ROM存储音乐数据,以“梁祝”乐曲为例,将音乐数据存储到LPM-ROM,就达到了以纯硬件的手段来实现乐曲的演奏效果。设计设计
该系统主要由三个部分组成,顶层设计文件,其内部有三个功能模块:TONETABA.VHD、NOTATABS.VHD、和SPEAKERA.VHD。首先定制TONETABA.VHD、模块一类似于弹琴人的手指,模块二类似于琴键,模块三类似于琴弦或音调发生器。模块中的音符数据ROM“music”。然后根据给出的乘法器逻辑原理图及其模块的VHDL描述在 QuartusⅡ上完成设计。最后完成编译,综合,仿真,管脚锁定,编程下载。
音符的频率可由Speakera获得,这是一个数控分频器。由其clk端输入一个具有较高频率的信号,通过Speakera分频后由SPKOUT输出,由于直接数控分频器出来的输出信号是脉宽极窄的脉冲式信号,为了有利于驱动扬声器,需要另加一个D触发器以均衡器占空比,但这是的频率将是原来的1/2。Speakera对clk输入信号的分频比由11位预置数Tone[10..0]决定。SPKOUT输出频率将决定每一个音符的音调,这样,分频计数器的预置值Tone[10..0]与SPKOUT的输出频率就有了对应关系。
音频的持续时间需根据乐曲的速度及每个音符的节拍数来确定,模块ToneTaba的功能首先是为Speakera提供决定所发音符的分频预置数,而次数在Speakera输入口停留的时间即为此音符的节拍值。模块ToneTaba是乐曲简谱码对应的预置数,共13个,每一音符的停留时间由音乐节拍和音调发生器模块NoteTabs的clk的输入频率决定,在此喂4Hz。这13个值的输出由对应于ToneTaba的4位输入值Index[3..0]确定,而Index[3..0]最多有16种可选值。输向ToneTaba中的Index[3..0]的值ToneIndex[3..0]的输出值与持续时间由模块NoteTabs决定。
在NoteTabs中设置了一个8位二进制计数器计数最大值为138),作为音符数据ROM的地址发生器。这个计数器的技术频率选为4Hz,即每一个计数值的停留时间为0.25秒,恰为当全音符设为1秒时,四四拍的4分音符持续时间。
顶层电路VHDL程序设计
LIBRARY IEEE; -- 硬件演奏电路顶层设计
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY Songer IS
PORT ( CLK12MHZ : IN STD_LOGIC; --音调频率信号
CLK8HZ : IN STD_LOGIC; --节拍频率用于控制音长(节拍)的时钟频率;END;
ARCHITECTURE one OF Songer IS
COMPONENT NoteTabs --元件u1例换化
PORT ( clk : IN STD_LOGIC;
ToneIndex : OUT STD_LOGIC_VECTOR (3 DOWNTO 0) );
END COMPONENT;
COMPONENT ToneTaba --元件u2例换化
PORT ( Index : IN STD_LOGIC_VECTOR (3 DOWNTO 0) ;
CODE : OUT STD_LOGIC_VECTOR (3 DOWNTO 0) ;
HIGH : OUT STD_LOGIC;
Tone : OUT STD_LOGIC_VECTOR (10 DOWNTO 0) );
END COMPONENT;
COMPONENT Speakera --元件u3例换化
PORT ( clk : IN STD_LOGIC;
Tone : IN STD_LOGIC_VECTOR (10 DOWNTO 0);
SpkS : OUT STD_LOGIC );
END COMPONENT;
SIGNAL Tone : STD_LOGIC_VECTOR (10 DOWNTO 0);
SIGNAL ToneIndex : STD_LOGIC_VECTOR (3 DOWNTO 0);
BEGIN
u1 : NoteTabs PORT MAP (clk=CLK8HZ, ToneIndex=ToneIndex);--参数传递映射语句
u2 : ToneTaba PORT MAP(Index=ToneIndex,Tone=Tone,CODE=COD
您可能关注的文档
- 七年级英语上学期unit 5 period 1新目标精选.ppt
- 七年级英语上学期Unit 6 Period 5新目标精选.ppt
- 七年级英语上学期Unit 6 Period 7新目标精选.ppt
- 七年级英语上学期unit 7 section A新目标精选.ppt
- 七年级英语上学期unit 12新目标精选.ppt
- 七年级英语上学期Unit 6 Period 3新目标精选.ppt
- 七年级英语上学期unit1 reading 2牛津英语精选.ppt
- 七年级英语上学期Unit2 I’m from China and I’m Chinese外研英语精选.ppt
- 七年级英语上学期unit2 topic2 sectionA湘教版精选.ppt
- 七年级英语上学期unit12 section b Ellen精选.ppt
- 浙江衢州市卫生健康委员会衢州市直公立医院高层次紧缺人才招聘11人笔试模拟试题参考答案详解.docx
- 浙江温州泰顺县退役军人事务局招聘编外工作人员笔试备考题库及参考答案详解一套.docx
- 江苏靖江市数据局公开招聘编外工作人员笔试模拟试题及参考答案详解.docx
- 广东茂名市公安局电白分局招聘警务辅助人员40人笔试模拟试题带答案详解.docx
- 江苏盐城市大丰区住房和城乡建设局招聘劳务派遣工作人员4人笔试模拟试题带答案详解.docx
- 浙江舟山岱山县东沙镇人民政府招聘笔试模拟试题及参考答案详解1套.docx
- 最高人民检察院直属事业单位2025年度公开招聘工作人员笔试模拟试题含答案详解.docx
- 浙江金华市委宣传部、中共金华市委网信办所属事业单位选调工作人员笔试备考题库及答案详解1套.docx
- 广东深圳市党建组织员招聘40人笔试模拟试题及答案详解1套.docx
- 江苏南京水利科学研究院招聘非在编工作人员4人笔试模拟试题及参考答案详解.docx
文档评论(0)