1、目录目录 目录 0 摘要 1 正文 2 1 设计目的和要求 2 2 设计原理 2 3 设计内容 2 (1)程序源代码 . 3 (2)调试分析过程描述 . 9 (3)结果分析 11 总结与致谢 . 12 参考文献 . 13 附录 . 14 第 1 页 摘要 EDA(Electronic Design Automation)电子设计自动化,就是以大规模 可编程器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,通过 相关的软件,自动完成用软件方式设计的电子系统到硬件系统,最终形成集成电 子系统或专用集成芯片。 本次课程设计利用 Quartus II 为设计软件、 Verilog HDL 为
2、硬件描述语言,结合所学的数字电路的知识设计一个 24 时电子秒表,具有正 常时、分、秒计时,动态显示,清零等功能。利用硬件描述语言 Verilog HDL 对 设计系统的各个子模块进行逻辑描述, 采用模块化的设计思想完成顶层模块的设 计,通过软件编译、逻辑化简、逻辑分割、逻辑综合优化、逻辑布线、逻辑仿真, 最终将设计的软件系统下载设计实验系统,对设计的系统进行硬件测试。 关键词:EDA;Quartus II;Verilog HDL;电子秒表 第 2 页 正文 1 1 设计目的和要求设计目的和要求 (1)具有时、分、秒计数功能,以 24h循环计时的电子钟。 (2)计时结果要用 6 个数码管分别显
3、示时、分、秒的十位和个位。 (3)具有清零的功能。 (4)熟练掌握分频器的使用。 (5)熟练掌握各种计数器的使用,能用计数器构成二十四进制、六十进制等所 需进制的计数器。 2 2 设计原理设计原理 电子秒表以其显示时间的直观性、走时准确性作为一种计时工具, 电子秒表 的基本组成部分离不开计数器,在控制逻辑电路的控制下完成预定的各项功能。 电子秒表的基本原理方框图如下图所示: 本数字系统实现电子秒表的基本的计时功能,输入 50MHz 的时钟,采用 24 小时制计时,能显示时、分、秒。本电子秒表实际上是一个对标准频率(1Hz)进 行计数的计数电路。由于计数的起始时间不可能与标准时间一致,故需要在电
4、路 上加一个校时电路,同时标准的 50MHz 时间信号必须做到准确稳定。通常使用石 英晶体振荡器电路构成电子秒表。 电子秒表的基本组成 本电子秒表的实现可分为以下几个模块: 第 3 页 (1) 秒计数模块:秒计数,在频率为 1Hz 的时钟下以 60 次为循环计数,并 产生进位信号影响分计数; (2) 分计数模块:分计数,在秒进位信号为高电平时,计数一次,同样以 60 次为一个循环计数,同时产生分进位信号影响时计数; (3) 时计数模块:时计数,在分进位信号为高电平时,计数一次,以 24 次 为一个循环计数; (4) 频率产生模块:主要有 2 个部分,一个是产生 1Hz 的计数频率,一个是 产生
5、 5KHz 的数码管动态扫描频率; (5) 时间显示模块:通过选中不同的数码管,同时进行一定频率的扫描显 示时、分、秒。 一个基本的电子秒表电路主要由译码显示器、“时”,“分”,“秒”计数 器和定时器组成。干电路系统由秒信号发生器、“时”,“分”,“秒”计数器、 译码器及显示器、电路组成。本设计方案采用 CycloneEP2C35F672C8 试验箱实 现,首先由晶振电路产生震荡频率 50MHz 的 CLOCK 脉冲,通过计数器计数分频, 形成两个频率的脉冲,其中 CLK1 脉冲用来动态扫描数码管地址,CLK2 脉冲用来 秒计时。“秒计数器”采用六十进制计数器,每累计 60 秒向“分计数器”进
6、位; “分计数器”采用六十进制计数器,每累计 60 分向“时计数器”进位;“时计 数器”采用二十四进制计数器,按照“24 翻 1”规律计数。将时、分、秒的计数 结果分别用两个 4 位二进制数字表示出来,经译码器送 8 段数码管上显示。如遇 到复位,时、分、秒计数器同时清零,采用同步清零方式。 3 3 设计内容设计内容 (1) 程序源代码 module digital_clock(seg,scan,clk,reset); input clk,reset; output 7:0 seg,scan; reg 7:0 seg,scan; reg 2:0 cnt8; reg 3:0 data; reg clk1; reg clk2; reg 13:0 counter1; reg 25:0 counter2; 第 4 页 reg 3:0 hh,hl,mh,ml,sh,sl; reg 5:0 hour,min,sec; always (posedge clk) begin if (counter1=d10000) begin clk1=