EDA课程设计报告--乐曲自动演奏机.docVIP

EDA课程设计报告--乐曲自动演奏机.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《EDA技术及应用》报告 系 部: 指导教师: 学 号: 姓 名: 二О一 年 月 设计要求 (1)可以在电路上能自动演奏《友谊地久天长》乐曲,也可自行选择其他乐曲。 (2)有相应的LED灯指示高低音。 其他要求: 1.晶振为12 MHz 2. 采用CPLD 器件,为ALTERA 的EPM7064SL-44 EDA技术及应用课程设计 (乐曲自动演奏机) 一.设计目的 学习利用硬件电子琴实验的原理设计硬件演奏电路。在实验箱上实现自动演奏乐曲。 开发工具简介EDA技术 EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。    EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。   利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到计出IC版图或PCB版图的整个过程的计算机上自动处理完成。Verilog HDL 是硬件描述语言的一种,用于数字电子系统设计。该语言是 1983 年由 GDA ( GateWay Design Automation )公司的 Phil Moorby 首创的。随着 Verilog-XL 算法的成功, Verilog HD 语言得到迅速发展。Verilog HDL 的设计流程 一般是: 文本编辑:用任何文本编辑器都可以进行,也可以用专用的 HDL 编辑环境。通常 Verilog HDL 文件保存为 .v 文件。 功能仿真:将文件调入 HDL 仿真软件进行功能仿真,检查逻辑功能是否正确(也叫前仿真,对简单的设计可以跳过这一步,只有在布线完成之后,才进行时序仿真)。 3逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式。逻辑综合软件会生成 .edf ( EDIF )的 EDA 工业标准文件。(最好不用 MAX+PLUS II 进行综合,因为只支持 VHDL/Verilog HDL 的子集) 4 布局布线:将 .edf 文件调入 PLD 厂家提供的软件中进行布线,即把设计好的逻辑安放到 CPLD/FPGA 内。 5时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序(也叫后仿真)。 四.设计具体内容 1.源程序 module music(clk,beep,led); //模块名称 input clk; //系统时钟48MHz output beep; //蜂鸣器输出端 output[7:0] led; reg beep_r; //寄存器 reg[7:0] led_r; reg[7:0] state; //乐谱状态机 reg[13:0]count,count_end; reg[21:0]count1; parameter L_1 = 16d22936, L_2 = 16d20429, L_3 = 16d18204, L_4 = 16d17182, L_5 = 16d15306, L_6 = 16d13636, L_7 = 16d12148, M_1 = 16d11466, M_2 = 16d10216, M_3 = 16d91006, M_4 = 16d85898, M_5 = 16d76531, M_6 = 16d68182, M_7 = 16d60741, H_1 = 16d57389, H_2 = 16d51077, H_3 = 16d45506, H_4 = 16d42952, H_5 = 16d38268, H_6 = 16d34091, H_7 = 16d30372; parameter TIME = 3000000; assign beep = beep_r; always@(posedge clk) begin count = count + 1b1; if(count == count_end) begin count = 16h0; b

您可能关注的文档

文档评论(0)

ze122230743 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档