基于VHDL的数字时钟设计和时序仿真
第 1 页 共 45 页
毕业设计
基于VHDL的数字时钟设计
和时序仿真
学生姓名:
学 院:
专 业:
指导教师:
年 月
基于VHDL的数字时钟设计和时序仿真
第 2 页 共 45 页
目 录
1 引言„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„1
2 设计概述„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„2
3 开发工具简介„„„„„„„„„„„„„„„„„„„„„„„„„„„„4
3.1 VHDL语言简介„„„„„„„„„„„„„„„„„„„„„„„„„„4
3.1.1 VHDL发展史„„„„„„„„„„„„„„„„„„„„„„„„„„4
3.1.2 VHDL设计特点„„„„„„„„„„„„„„„„„„„„„„„„„4
3.1.3 VHDL设计结构„„„„„„„„„„„„„„„„„„„„„„„„5
3.1.4 VHDL设计步骤„„„„„„„„„„„„„„„„„„„„„„„„6
3.2 Quartus II软件简介„„„„„„„„„„„„„„„„„„„„„„„6
3.2.1 Quartus II软件介绍 „„„„„„„„„„„„„„„„„„„„„„6
3.2.2 Quartus II软件设计流程„„„„„„„„„„„„„„„„„„„„6
4 数字时钟的设计要求和原理„„„„„„„„„„„„„„„„„„„„„8
4.1 设计要求„„„„„„„„„„„„„„„„„„„„„„„„„„„„„8
4.2 设计原理„„„„„„„„„„„„„„„„„„„„„„„„„„„„„8
5 数字时钟模块化设计„„„„„„„„„„„„„„„„„„„„„„„„10
5.1 分频模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„11
5.2 计时模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„13
5.2.1 秒计时模块„„„„„„„„„„„„„„„„„„„„„„„„„„13
5.2.2 分计时模块„„„„„„„„„„„„„„„„„„„„„„„„„„15
5.2.3 时计时模块„„„„„„„„„„„„„„„„„„„„„„„„„„17
5.3 报警模块„„„„„„„„„„„„„„„„„„„„„„„„„„„„18
5.4 数据选择模块„„„„„„„„„„„„„„„„„„„„„„„„20
5.5 译码显示模块„„„„„„„„„„„„„„„„„„„„„„„„„„22
6 数字时钟模块化仿真„„„„„„„„„„„„„„„„„„„„„„„„24
6.1 计时模块仿真图„„„„„„„„„„„„„„„„„„„„„„„„„24
6.1.1 秒模块仿真图„„„„„„„„„„„„„„„„„„„„„„„„„24
6.1.2 分模块仿真图„„„„„„„„„„„„„„„„„„„„„„„„„24
6.1.3 时模块仿真图 „„„„„„„„„„„„„„„„„„„„„„„„25
基于VHDL的数字时钟设计和时序仿真
第 3 页 共 45 页
6.2 报警模块仿真图„„„„„„„„„„„„„„„„„„„„„„„„„25
6.3 数据选择模块仿真图„„„„„„„„„„„„„„„„„„„„„„„26
6.4 译码模块仿真图„„„„„„„„„„„„„„„„„„„„„„„„„26
6.5 数字时钟整体仿真图„„„„„„„„„„„„„„„„„„„„„„„27
7 FPGA开发板实验„„„„„„„„„„„„„„„„„„„„„„„„„„28
7.1 芯片和器件选择„„„„„„„„„„„„„„„„„„„„„„„„„ 28
7.2 外部电路接线„„„„„„„„„„„„„„„„„„„„„„„„„„ 28
7.2 硬件实物图„„„„„„„„„„„„„„„„„„„„„„„„„„„ 28
8 结论„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„30
附录„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„31
参考文献„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„42
致谢„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„„43
基于VHDL的数字时钟设计和时序仿真
第 4 页 共 45 页
1
随着科学技术的迅猛发展,在计算机技术的推动下电子技术获得了飞速的发
展。电子产品几乎渗透到了工业、生活的各个领域,其中集成电路的设计正朝着速
度快、性能高、容量大、体积小和微功耗的方向发展。基于这种情况,可编程逻辑
器件的出现和发展大大改变了传统的系统设计方法。 可编程逻辑器件和相应的设计
技术主要体现在三个方面: 一是可编程逻辑器件的芯片技术; 二是适用于可逻辑编
程器件的硬件编程技术, 三是可编程逻辑器件设计的EDA开发工具,它主要用来进
行可编程逻辑器件应用的具体实现
[1]
。 在本设计中采用了集成度较高的FPGA 可编
程逻辑器件,选用了VHDL硬件描述语言和Quartus II开发软件进行设计。VHDL
硬件描述语言在电子设计自动化( EDA)中扮演着重要的角色, 由于采用了具有多层
次描述系统硬件功能的“自顶向下”(Top -Down)的全新设计方法,使设计师们摆
脱了大量的辅助设计工作, 而把精力集中于创造性的方案与概念构思上, 用新的思
路来发掘硬件设备的潜力,从而极大地提高了设计效率,缩短了产品的研制周期
[2]
。
Quartus II软件是集成了编辑器、仿真工具、检查/分析工具和优化/综合工具的这些
所有开发工具的一种集成的开发环境, 通过该开发环境能够很方便的检验设计的仿
真结果以及建立起与可编程逻辑器件的管脚之间对应的关系
[3]
。
EDA技术是以计算机为工具,根据硬件描述语言HDL完成的设计文件,
自动地完成逻辑编译、化简、分割、综合及优化、布局布线。仿真以及对于
特定目标芯片的适配编译和编程下载等工作。典型的EDA工具中必须包含两
个特殊的软件包,即综合器和适配器。综合器的功能就是将设计者在EDA平
台上完成的针对某个系统项目的HDL、原理图或状态图形描述,针对给定的
硬件系统组件,进行编译、优化、转换和综合,最终获得我们欲实现功能的
描述文件。综合器在工作前,必须给定所要实现的硬件结构参数,它的功能
就是将软件描述与给定的硬件结构用一定的方式联系起来。综合过程就是将
电路的高级语言描述转换低级的。 可与目标器件FPGA/CPLD相映射的网表文
件。适配器的功能是将由综合器产生的王表文件配置与指定的目标器件中,
产生最终的下载文件,如JED文件。适配所选定的目标器件(FPGA/CPLD芯
片)必须属于在综合器中已指定的目标器件系列。
基于VHDL的数字时钟设计和时序仿真
第 5 页 共 45 页
2
数字时钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相
比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,数字时钟可
植入自动控制、测试等系统内部,作为系统的时钟源,可为系统提供定时信号或中
断控制的时间基准, 具有广泛的用途。 由于数字集成电路的发展使得数字时钟的精
度远远超过老式钟表, 钟表的数字化给人们生产生活带来了极大的方便, 而且大大
地扩展了钟表原先的单一报时功能
[4]
。 加入了一些诸如自动报时、 定时闹钟等功能。
这些都是以钟表数字化为基础的。因此,研究数字时钟及扩大其应用,有着非常现
实的意义。
数字时钟的设计方法有很多种, 包括基于单片机的硬件设计、 基于各种描述语
言的软件设计,本设计采用VHDL语言来设计数字时钟有着多方面的优越性,通
过把整个设计分为多个模块依次来实现, 减少了众多重复性步骤, 合理化了设计过
程,使得设计更加省时、快捷,提高了设计效率。
目前,电子系统的EDA技术正从着眼与数字逻辑向模拟电路和数模混合电路
的方向发展,21世纪是EDA技术飞速发展的时期,可以预见EDA技术将会对今
后电子设计的发展产生重大的影响。随着电子技术的发展,集成电路经历了从
小规模、中规模到大规模和超大规模集成的过程,应用系统向小型化、快速
化、大容量、重量轻的方向发展
[5]
;数字系统的设计也已从芯片组合化设计走
向单片系的设计。随着微电子和计算机领域的原理创新、技术创新、应用创
新层出不穷,许多特定功能的专用集成电路应用日益广泛,用户迫切希望根
据自身设计要求自行构造逻辑功能的数字电路,复杂可编程逻辑器件FPGA
顺应了这一新的需要。它能将大量逻辑功能集成于一个芯片中,其规模可达
几十万或上百门以上,从而电子设计自动化EDA技术应运而生,它是电子产
品及系统开发领域中一场革命性变革,EDA技术极大地推动了科学技术的发
展
[6]
。EDA技术的发展使硬件电路设计软件化,降低了硬件电路设计的难度,
使设计周期和产品的开发时间缩短,设计更新变成了程序的修改,适应了千
变万化的市场潮流。它的设计输入可以使用硬件描述语言(HDL),采用“自顶
向下”的设计方法
[7]
,为设计者提供了一个高效、便捷的设计环境,同时也为