《Verilog HDL 多功能电子钟》由会员分享,可在线阅读,更多相关《Verilog HDL 多功能电子钟(20页珍藏版)》请在金锄头文库上搜索。
1、 基于verilog HDL语言的数字电子钟设计摘 要 : 本课程设计完成了数字电子钟的设计,数字电子钟是一种用数字显示秒、分、时的计时装置,由于十足集成电路技术的发展,使数字钟走时准确、多功能化且性能稳定等优点。在本次设计中,系统开发平台为MAX+plus ,硬件描述语言是Verilog HDL。依据Verilog HDL语言设计由计时,闹铃,秒表,报时等7大模块组成的多功能数字电子钟。根据输入,观察输出及仿真。设计方案和设计平台完成了程序编写和程序调试,通过运行程序及时序波形的仿真有效验证了设计的正确性,初步实现了设计目标。关键词 多功能数字电子钟;Verilog HDL; MAX +pl
2、us;专用集成电路; Based on Verilog HDL language digital electric clock design The students name: H The guide teacher: X Abstract:The course is designed to finished the design of digital electric clock, digital electric clock is a kind of digital display second, points, when the timer, because dye-in-the-wo
3、od integrated circuit technology development, and make a digital clock keeps good time, more functional and stable performance, etc. In this design, system developing platform for MAX + plus , hardware description language is Verilog HDL. According to the design scheme and design platform completed
4、programming and program test, through to run the program in time sequence waveform simulation verified effectively the correctness of design, and then realized the design goal.Keywords : application-specific integrated circuit, Verilog HDL, Multi-function digital electric clock; MAX + plus 目录1 引 言 1
5、.1课题设计的背景、目的1.2 课题设计环境2 Verilog HDL 简介3 多功能电子钟的7大模块设计及仿真芯片生成 3.1 计时模块 3.2 闹铃设置模块 3.3 校时模块 3.4 秒表功能模块 3.5 整点报时模块 3.6 闹铃屏蔽及响铃功能模块3.7 秒表提示功能模块4 7大模块组合的多功能电子钟的设计及仿真 4.1 功能描述 4.2 源程序(基于Verilog HDL语言) 4.3 模块仿真5 结束语参考文献 1 引 言数字电子钟的时间周期为24小时,具有显示时,分,秒的功能,并设置有闹钟,日历,时间调节等功能。 本课程设计设想采用专用集成电路(ASIC1,Application
6、Specific Integrated Circuit)实现数字电子钟的功能。在本次计中,系统开发平台为MAX+plus2 。MAX+plus是Altera公司提供的FPGA/CPLD开发集成环境,Altera是世界上最大可编程逻辑器件的供应商之一。Max+plus界面友好,使用便捷,被誉为业界最易用易学的EDA软件。在Max+plus上可以完成设计输入、元件适配、时序仿真和功能仿真、编程下载整个流程,它提供了一种与结构无关的设计环境,是设计者能方便地进行设计输入、快速处理和器件编程。在本次设计中,采用的硬件描述语言是Verilog HDL。Verilog HDL也是目前应用最为广泛的硬件描述
7、语言,并被IEEE采纳为IEEE#1064-1995标准。Verilog HDL可以用来进行各种层次的逻辑设计,也可以进行数字系统的逻辑综合、仿真验证和时序分析。Verilog HDL适合算法级(Algorithm)、寄存器传输级(RTL)逻辑级(Logic)、门级(Gate)和版图级(Layout)等各个层次的电路设计和描述。使设计者在进行电路设计时不必过多考虑工艺实现的具体细节,Verilog HDL只需要根据系统设计的要求施加不同的约束条件,即可设计出实际电路。利用计算机的强大功能,在EDA工具的支持下,把逻辑验证与具体工艺库相匹配,将布线及延迟计算分成不同的阶段来实现,减少了设计者的繁
8、重劳动。1.1课题的背景、目的20世纪末,数字电子技术得到飞速发展,有力地推动了社会生产力的发展和社会信息化的提高。在其推动下,数字电子技术的应用已经渗透到人类生活的各个方面。从计算机到手机,从数字电话到数字电视,从家用电器到军用设备,从工业自动化到航天技术,都尽可能采用数字电子技术。在此大的背景下,传统的只有计时功能的钟表已经远远不能马不能满足人们对生活和生产的需求。各个领域和不同人群要求钟表不止有计时的功能,而是应该积聚了计时,闹钟,秒表,报时等多功能的数字电子钟。EDA技术就是依靠功能强大的电子计算机,在EDA工具软件平台上,对以硬件描述语言HDL(Hardware Descriptio
9、n Language)为系统逻辑描述手段完成的设计文件,自动地完成逻辑化简、编译、综合、优化、仿真,直至下载到可编程逻辑器件CPLD/FPGA或专用集成电路ASIC(Application Specific Integrated Circuit)芯片中,实现既定的电子电路设计功能。 这给用语言Verilog HDL设计数字电子钟带来了极大的方便。1.2 课题设计环境 本次课题设计方要用到的开发环境是Altera公司的EDA设计工具软件MAX+plusII。Altera公司的工作与EDA厂家紧密结合,使MAX+plusII软件可以与其它工业标准的设计输入、综合和校验工具相连接。设计者可以使用Al
10、tera或标准EDA输入工具进行设计,使用MAX+plus II编译器对Altera器件的设计进行编译,并使用Altera或其它EDA校验工具进行仿真。目前,MAX+plusII支持与Cadence,Mentor Graphics, Synopsys, Viewlogic等EDA工具接口。MAX+plusII的设计输入、处理和校验功能都集中在统一的开发环境下,这样可以加快动态调试,缩短开发周期。MAX+plusII软件支持多种硬件描述语言设计输入,包括VHDL,Verilog HDL和Altera自己的硬件描述语言AHDL。MAX+plusII软件提供丰富的库单元供设计调用,其中包括74系列的
11、全部器件和一些基本的逻辑门,多种特殊的逻辑宏功能(Macro-Function)以及新型的参数化的兆功能(Mage-Function).调用库单元进行设计,可以大大减轻工作量。 2 Verilog HDL简介 Verilog HDL硬件描述语言简介模块是Verilog HDL的基本描述单位,用于描述某个设计的功能或结构及其与其他模块通信的外部端口。一个设计的结构可使用开关级原语、门级原语和用户定义的原语方式描述; 设计的数据流行为使用连续赋值语句进行描述; 时序行为使用过程结构描述。一个模块可以在另一个模块中使用。说明部分用于定义不同的项,例如模块描述中使用的寄存器和参数。语句定义设计的功能和
12、结构。说明部分和语句可以散布在模块中的任何地方;但是变量、寄存器、线网和参数等的说明部分必须在使用前出现。为了使模块描述清晰和具有良好的可读性, 最好将所有的说明部分放在语句前。本书中的所有实例都遵守这一规范。在模块中,可用下述方式描述一个设计:(1) 数据流方式;(2) 行为方式;(3) 结构方式;(4) 上述描述方式的混合。Verilog HDL模型中的所有时延都根据时间单位定义。 在顺序过程中出现的语句是过程赋值模块化的实例。模块化过程赋值在下一条语句执行前完成执行。过程赋值可以有一个可选的时延。时延可以细分为两种类型:(1) 语句间时延: 这是时延语句执行的时延。(2) 语句内时延:
13、这是右边表达式数值计算与左边表达式赋值间的时延。在Verilog HDL中可使用如下方式描述结构:(1) 内置门原语(在门级);(2) 开关级原语(在晶体管级);(3) 用户定义的原语(在门级);(4) 模块实例 (创建层次结构)。3 多功能电子钟的7大模块设计及仿真芯片生成本章根据模块功能共分为七个模块,分别为计时模块、闹铃设置模块、校时模块、秒表功能模块、整点报时模块、闹铃屏蔽及响铃功能模块、秒表提示铃声功能模块。3.1 计时功能模块及仿真模块功能为正常计时,即每秒钟读一次数,秒表加1,秒计时满60进1给分计时,分计时满60进1给小时计时,小时计时满24清零。从功能上讲分别为模60计数器,
14、模60计数器和模24计数器。 计时模块芯片如图3.1:图3.1 计时模块芯片计时模块仿真波形如图3.2:图3.2 计时模块符号仿真波形3.2 闹铃设置功能模块及仿真 模块功能为设置闹铃的分钟和小时,设置的时候由turn控制调整分钟及调整小时之间的切换,每按一次change,所调整的计数器加1,分钟计数器满60清零,小时计数器满24清零。闹铃模块芯片如图3.3:图3.3 闹铃设置模块芯片 闹铃仿真波形如图3.4:图3.4 闹铃模块仿真波形3.3 校时功能模块及仿真 模块功能为修正分钟和小时时间以及秒钟的精确调整清零。由turn控制调整分钟和调整小时之间的切换,每按一下change所调整的计数器加
15、1,分钟计数器满60清零,小时计数器满24清零;秒种的精确调整清零具体为在正常计时的情况下,长时间按住turn,即可使秒钟清零,进行精确调时。 校时模块芯片如图3.5:图3.5 校时模块芯片 校时仿真波形如图3.6:图3.6 校时模块仿真波形3.4 秒表功能模块及仿真 模块功能为进行手动计时,按一下count为计时,再按一次count为停止计时,保存计数数值,依此类推;按一次clr为计数清零,停止计数。计数器共有三个,分别为百分秒的模100计数器,秒钟的模60计数器和分钟的模60计数器。秒表模块芯片如图3.7:图3.7 秒表功能芯片生成 秒表仿真波形如图3.8:图3.8 秒表功能模块仿真波形3.5 整点报时功能模块及仿真 模块功能为当计时模块中分钟显示为59,秒种为55时开始,每秒都发出一次短音(1/4秒);当秒种和分钟同时显示为0时,发出一声长音(3/4秒);clk1000为扬声器驱