- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
可编程逻辑器件数字钟
PAGE
PAGE 14
可编程逻辑器件及其应用
一 设计要求
用Verilog HDL设计一个多功能数字钟
基本功能描述:
时钟功能:包括时、分、秒的显示;
定时与闹钟功能:能在设定的时间发出闹铃音;
校时功能:能非常方便地对小时、分钟和秒进行手动调整以校准时间;
整点报时功能:每逢整点,产生“嘀嘀嘀嘀--嘟”,四短一长的报时音。
二 仿真环境
用Modelsim进行编译和仿真,工程文件在clocknew1文件夹中。
三 结果说明
此次设计实现了数字钟的基本功能,能够进行时分秒的计时,校准,能够整点报时,在设定的时间实现响铃功能。
此次设计对各种功能进行了分模块设计,记数模块中,对秒位,分位进行60位记数,小时模块进行24位记数;同时在记数模块中进行校准操作;报时模块里,每逢整点前的59分56秒、59分57秒、59分58秒、59分59秒,和整点时刻,发出“嘀嘀嘀??--嘟”的报时声;闹钟模块里,手动对数字钟进行定时,当数字钟的时刻与定时时刻相同时,ring=1发出响铃声。
在以上各个功能的模块基础上,设置top顶层模块,将以上功能综合起来实现。
为了验证数字钟的功能,编写测试testench模块,输入时钟#5 clk=~clk,观察各个信号输出。
四 仿真结果
图1仿真整体效果图
图2当reset键为0时,开始计数
图3 秒位计数
图4 分钟计数
图5 小时位计数
图6 整点报时功能
图7 定时响铃功能
图8 校时功能,校时使能键为1,停止计数,校时
图9 校时使能键为0,按校好的时间继续计数
五 设计代码
//顶层模块
module top ( //input
clk,reset012,dssl,dssh,dsml,dsmh,dshl,dshh,dingshi,
ksec,kmin,khour,cntsec,cntmin,cnthour,
//output
sl,sh,ml,mh,hl,hh,di,do,ring
);
input clk;
input reset012;
input [3:0] dssl,dssh,dsml,dsmh,dshl,dshh;
input ksec,kmin,khour;
input [7:0]cntsec,cntmin,cnthour;
input dingshi;
output[3:0] sl,sh,ml,mh,hl,hh;
wire [3:0] sl,sh,ml,mh,hl,hh;
output di,do,ring;
wire di,do,ring;
wire [3:0] c,d,e,f,g,j;
wire a,b;
//对模块立化
second my_second (.clk(clk),.reset(reset012),.sh(d),.sl(c),.co(a),.ksec(ksec),.cntsec(cntsec));
minute my_minute (.reset1(reset012),.mh(f),.ml(e),.clk1(a),.co1(b),.kmin(kmin),.cntmin(cntmin));
hour my_hour (.reset2(reset012),.hh(j),.hl(g),.clk2(b),.khour(khour),.cnthour(cnthour));
baoshi my_baoshi (.bssl(c),.bssh(d),.bsml(e),.bsmh(f),.bshl(g),.bshh(j),.di(di),.do(do));
naozhong my_naozhong (.dssl(dssl),.dssh(dssh),.dsml(dsml),.dsmh(dsmh),.dshl(dshl),.dshh(dshh),
.clksl(c),.clksh(d),.clkml(e),.clkmh(f),.clkhl(g),.clkhh(j),.dingshi(dingshi),.ring(ring));
assign sl = c;
assign sh = d;
assign ml = e;
assign mh = f;
assign hl = g;
assign hh = j;
endmodule
//秒位计数模块
module second(clk,reset,sh,sl
您可能关注的文档
最近下载
- 第四章刺胞动物门之一.pptx
- 中国的经济发展.pptx VIP
- 17J008 挡土墙(重力式、衡重式、悬臂式)(最新).pdf
- 空气能热泵热水机安装使用维修手册一.pdf
- 直播运营管理全套完整教学课件.pptx
- 2023年注册监理工程师继续教育电力工程专业考试试题及答案80分.pdf
- Q∕GDW 11897-2018- 调度自动化机房设计与建设规范.pdf
- 第4课《古代诗歌四首——闻王昌龄左迁龙标遥有此寄》课件(共27张PPT)2022—2023学年部编版语文七年级上册.pptx
- PDA TR27-1998 Pharmaceutical Package Integrity英文原版资料.pdf
- Q∕GDW 11897-2018 调度自动化机房设计与建设规范.docx
文档评论(0)