安卓课程设计源代码
可编程逻辑设计课程设计报告书
课题名称电子闹钟设计
姓名1
姓名2
姓名3
专业
日期
1.设计的主要内容及目的要求
利用Verilog HDL 设计一个可以显示时分秒的电子数字时钟。
基本功能:
•数字时钟,具有时、分、秒显示;
•具有时间校准及闹钟功能;
•具有时钟复位功能;
•采用数码管显示时钟值(仿真中看不出数码管显示效果);
2.整体设计方案及方法
图1:流程图
实验整体流程图如上图,此后为具体解释。
a)时、分、秒计时功能:
i.产生以1000 ns 即1ps 为周期方波时钟信号
ii.采用cnt 计数的方式检测方波时钟信号的上升沿
iii.500 个上升沿即为1ms 1000个1ms 为1s,依次类推到小时
图2:ModelSim仿真- 秒计数实现b)时钟复位功能
i.在所有检测信号的技术模块内添加检测复位信号的条件。
ii.在处理内部首先判断信号值,当信号为0,清空计数。
图3:源代码- 复位功能代码展示
c)闹钟功能
i.在每个周期内检测时、分对应变量的值
ii.如果对应数值与预设值相同且闹钟开启则对应变量输出值0
图4:源代码- 设置闹钟开启图5:源代码- 检测闹钟是否开启d)数码管显示
i.根据时分秒的值对应控制七段数码管的高低电平即可
ii.具体实现见附件源代码。
3. Verilog HDL 硬件代码及注释
完整代码以及注释见附件src.zip,以下为简要解释。
•文件结构:
TOP.v 顶层文件
time_control.v 数字钟实现模块
display_ctrl.v 数码管驱动模块
tb_TOP.v 测试文件
•TOP.v
a)定义所有输入,输出变量,包括时钟的时、分、秒,闹钟的时、分、秒、数码管
的输出等。
b)实例化 time_control 和 display_ctrl。
•time_control.v
a)从ps 到ms 到 s 到 min 到 h 的cnt 计数实现。
b)闹钟与时钟数值对比的实现
•display_ctrl.v
a)根据段选和位选信号实现数码管的动态刷新。
4.Modelsim功能仿真(波形图)
图6:ModelSim仿真– 时钟功能
分析:当540000000000ns 时min_ge 输出位5 当600000000000ns时min_ge 输出从9变成0,min_shi从0变成1。分钟的十位和个位变化正确。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。