《Verilog数字钟课程设计(8页).doc》由会员分享,可在线阅读,更多相关《Verilog数字钟课程设计(8页).doc(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-Verilog数字钟课程设计-第 5 页课程设计报告课程设计题目: 数字钟系统设计 学 号:201420130327学生姓名:刘新强专 业:通信工程班 级:1421302指导教师:钟凯2016年 1月 4日摘要FPGA( Field Programmable Gate Array,现场可编程门阵列),一种可编程逻辑器件,是目前数字系统设计的主要硬件基础。可编程逻辑器件的设计过程是利用EDA 开发软件和编程和编程工具对器件进行开发的过程。通过modelsim软件下采用verilog语言实现数字钟系统设计,实现了以下几个方面的功能:1. 数字钟基本计时功能2. 数字钟校时功能3. 数字钟系统报时
2、功能关键词:FPGA ;VHDL;数字钟目录一、FPGA与VHDL简介11、FPGA与简介2、VHDL简介二、课程设计的目的与要求 21、教学目的2、教学要求3、数字钟系统设计要求三、设计方案21、系统框图2、模块说明四、仿真与实现31、数字钟基本计时功能实现2、数字钟校时功能实现3、数字钟系统报时功能实现五、实验心得4六、参考文献4七、代码5一、FPGA与VHDL简介1、FPGA简介以硬件描述语言(Verilog 或 VHDL)所完成的电路设计,可以经过简单的综合与布局, 快速的烧录至 FPGA 上进行测试,是现代 IC 设计验证的技术主流。这些可编辑元件可以被用来实现一些基本的逻辑门电路(
3、比如 AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的 FPGA 里面,这些可编辑的元件里也包含记忆元件例如触发器(Flipflop)或者其他更加完整的记忆块。系统设计师可以根据需要通过可编辑的连接把 FPGA 内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里。一个出厂后的成品 FPGA 的逻辑块和连接可以按照设计者而改变,所以 FPGA 可以完成所需要的逻辑功能。 FPGA 一般来说比 ASIC(专用集成电路)的速度要慢,无法完成复杂的设计,但是功耗较低。但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价。厂
4、商也可能会提供便宜的但是编辑能力差的 FPGA。因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的 FPGA 上完成的,然后将设计转移到一个类似于 ASIC 的芯片上。另外一种方法是用 CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)。 2、VHDL简介硬件描述语言已经有几十年的发展历史,并且在系统的仿真、验证和设计、综合等方面得到成功的应用。目前常用的硬件描述语言有 VHDL、 Verilog HDL 、ABEL 等234。VHDL则起源于 20 世纪 70 年代末和 80 年代初,美国国防部提出的 VHSIC 计划,目标是为下一
5、代集成电路的生产、实践阶段性的工艺极限和完成 10 万门级以上的电路设计而建立一种新的描述方法5。VHDL 的英文全称为 Very-High-Speed Integrated Circuit Hardware Description Language,是 IEEE 标准化的硬件描述语言,并且已经成为系统描述的国际公认标准,得到众多 EDA 公司的支持。 VHDL 具有很多的优点使它能够被大多数人认可,被广泛应用在逻辑电路的设计方面,并且成为了标准化的硬件描述语言,其优点如下: (1)功能强大和设计灵活。一个简洁的使用 VHDL 语言编写的程序就可以描述一个复杂的逻辑电路,因为 VHDL 拥有强
6、大的语言结构6。VHDL 多层次的设计描述功能可以有效地控制设计的实现,支持设计库和可重复使用的元件生成,还支持多种设计方式,如层次化设计、模块化设计和同步、异步和随机电路设计。 (2)与具体器件无关。用 VHDL 设计硬件电路时不用先确定设计要用到哪种器件,也不用特别熟悉器件的内部结构,这样可以使设计人员专注于进行系统设计。设计完成后,可以根据消耗的资源选择合适的器件,而不造成资源的浪费。 (3)很强的移植能力。VHDL 由很多不同的工具支持,同一个设计的程序可以在包括综合工具、仿真工具、系统平台等工具中使用。 (4)强大的硬件描述能力。VHDL 可以描述系统级电路和门级电路,而且描述方式多
7、样,可以采用行为描述、寄存器传输描述或者结构描述,也可以用其混合描述方式。同时,VHDL可以准确地建立硬件电路模型,因为它支持惯性延迟和传输延迟。VHDL 的数据类型很丰富,支持标准定义的数据类型,当标准定义的数据类型不能满足用户的需求时,用户可以自己定义的所需要的数据类型,增加了设计的自由度。 (5)语法规范,易于共享。当把用 VHDL 编写的代码文件看作是程序时,它可以作为设计人员之间的交流内容;当把它看作是文档时,可以作为签约双方的合同文本。VHDL 易于共享的特点,使得大规模的协作开发容易实现。同时,这些特点也促进了 VHDL 的发展和完善。 综上所述,VHDL 有很多其他的硬件描述语
8、言所不具备的优点。但是,VHDL 仍然存在一些缺点,主要是 3 个方面。 (1)要求设计者对硬件电路知识甚至是芯片结构方面的知识了解较多。应该摆脱一般的高级语言程序设计思路,因为在电路世界里的事件很多是并行发生的,并且硬件电路系统内部的模块可以是互相独立的,也可以是互为因果的,所以,在用 VHDL 设计硬件电路时应摆脱一般的高级语言程序设计思路。在设计电路时,应先构思电路,然后才能描述。 (2)不能进行太抽象的系统描述。因为 EDA 工具无法综合抽象性太强的系统,故用 VHDL描述系统电路时不能太抽象。目前的 VHDL 很难综合实际的硬件电路,只能适用于系统建模。 (3)不能描述模拟电路。对于
9、模拟电路而言,VHDL 并不是一种理想的硬件描述语言。但可以预见,未来硬件描述语言的发展方向是模拟电路和数模混合电路的描述方式。二、课程设计的目的与要求1、教学目的通信系统FPGA开发是通信工程专业教学计划中的一门重要专业实践课程,通过进行通信系统FPGA开发课程设计的训练,使学生全面掌握FPGA开发的基本操作,巩固verilog硬件描述语言的编写,培养学生正确的设计思想,严肃认真、实事求是的科学态度和勇于探索的创新精神。注意与生产劳动相结合,重视工艺规程,促进理论联系实际,为毕业设计打下良好的基础。2、教学要求从课程设计的目的出发,通过设计工作的各个环节,达到以下教学要求:(1)了解EDA软
10、件设计的一般操作流程。(2)掌握FPGA设计系统的一般方法。(3)熟练掌握使用modelsim和QuartusII软件设计较复杂的数字逻辑电路。(4)通过查阅手册和文献资料,培养学生独立分析问题和解决实际问题的能力。3、数字钟系统设计要求(1) 有基础的实时数字钟功能,即时,分,秒的正常显示模式。(24小时制)(2) 可对系统用手动方式校准,设计两个按键,按动校时键,时计数器加一,按动校分键,则电路处于校分状态。(3) 整点报时,要求在59分50秒,52秒,54秒,56秒和58秒发出一个低音信号,00分00秒发出一个高音信号。三、设计方案1、系统框图:时计时秒计时分计时进位进位Button_m
11、inButton_hour校分校时报时高音或低音2、模块说明秒计时:60进制计数器,在59秒产生进位信号,并在下一个上升沿清零分计时:60进制计数器,在59分产生进位信号,并在下一个上升沿清零时计时:24进制计数器,在23H59Min59S产生进位信号,并在下一个上升沿清零报时模块: 在59分50秒,52秒,54秒,56秒和58秒发出一个低音信号,00分00秒发出一个高音信号。校时模块四、仿真与实现1、数字钟基本计时功能实现:2、数字钟校时功能实现:3、数字钟系统报时功能实现:五、实验心得经过两周的课程设计,在老师的指导下和同学的帮助下,通过查阅图书馆资料和互联网资源,完成了本次课程设计,期间
12、收获了很多。做课程设计前,应该先画流程图,做个整体框架结构设计,然后去分别完成各个子模块,由繁入简,简化难度。及时查阅资料是必要的,有时苦于某一问题时,就应该去看书。通过本次课程设计,更加熟悉了modelsim软件、verilog硬件描述语言以及EDA设计一般流程,增强了我的动手查阅手册和文献资料的能力,以及培养独立分析问题和解决实际问题的能力。六、参考文献1刘福奇.Verilog HDL设计与实践.2王金明.数字系统设计与Verilog HDL(第5版).北京:电子工业出版社,2011七、代码:1、digital_clock:module digital_clock(clk,reset,bu
13、tton_hour,button_minute,second,minute,hour,alarm_1,alarm_2); input clk,reset,button_hour,button_minute; output reg5:0 second,minute; output reg4:0 hour; output reg alarm_1=1,alarm_2=0; always(posedge clk,negedge reset) begin if(reset)/复位 begin second=6b0;minute=6b0;hour=5b0;alarm_1=1;alarm_2=0;end e
14、lse begin if(minute=6d59) begin if(second=49|second=51|second=53|second=55|second=57) /报时 alarm_1=0; else alarm_1=1; end if(minute=6d59&second=6d59) alarm_2=1;else alarm_2=0; /报时 if(button_minute=1) begin minute=minute+1;if(minute=6d59) minute=0; end if(button_hour=1) begin hour=hour+1;if(hour=5d23)
15、 hour=0;end/校时 if(second!=6d59) second=second+1;/秒计时 else if(second=6d59) begin second=0;minute=minute+1;/分计时 if(minute=6d59) begin minute=0;hour=hour+1;/时计时 if(hour=5d23) hour=0; end end end endendmodule2、测试平台文件: timescale 1ps/1ps module digital_clock_test(); reg clk,reset,button_hour,button_minute
16、; wire5:0 second,minute; wire4:0 hour; wire alarm_1,alarm_2; digital_clock u(clk,reset,button_hour,button_minute,second,minute,hour,alarm_1,alarm_2); always #10 clk=clk; initial begin clk=0;reset=0;button_minute=0;button_hour=0; #10 reset=1; #500 button_minute=1; #50 button_minute=0;button_hour=1; #
17、50 button_hour=0; endendmodule东华理工大学课程设计评分表学生姓名: 班级: 学号:课程设计题目:项目内容满分24实 评选题能结合所学课程知识、有一11定的能力:训、练i。符合选题要求(5人一题)10工作量适中,难易度合理10能力水平能熟练应用所学知识,有一定查阅文献及运用文献资料能力10理论依据充分,数据准确,公式推导正确10能应用计算机软件进行编程、资料搜集录入、加工、排版、制图等10能体现创造性思维,或有独特见解10成果质量总体设计正确、合理,各项技术指标符合要求。10说明书综述简练完整,概念清楚、立论正确、技术用语准确、结论严谨合理;分析处理科学、条理分明、语言流畅、结构严谨、版面清晰10设计说明书栏目齐全、合理,符号统一、编号齐全。格式、绘图、表格、插图等规范准确,符合国家标准10有一定篇幅,字符数不少于500010总 分100指导教师评语: 指导教师签名: 年 月 日