多功能数字钟设计仿真与实现.doc

多功能数字钟设计仿真与实现.doc

ID:56919208

大小:260.00 KB

页数:9页

时间:2020-07-24

多功能数字钟设计仿真与实现.doc_第1页
多功能数字钟设计仿真与实现.doc_第2页
多功能数字钟设计仿真与实现.doc_第3页
多功能数字钟设计仿真与实现.doc_第4页
多功能数字钟设计仿真与实现.doc_第5页
资源描述:

《多功能数字钟设计仿真与实现.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、电子电路测试与设计实验实验报告实验名称:多功能数字钟设计仿真与实现专业班级:自动化1107班姓名:熊博学号:U指导老师:实验日期:一.实验目的1.掌握数字电路系统层次化、模块化的设计方法。2.熟悉用VerilogHDL描述时序逻辑电路的方法,以及EDA仿真技术。3.掌握计数,分频,译码,显示电路的一般VerilogHDL描述方法。4.复习QuartusII软件的使用。二.实验条件计算机、QuartusII9.1软件,可编程逻辑器件实验板及专用的在系统编程电缆。三.实验要求及内容使用VerilogHD

2、L设计多功能数字钟,并使用DE0实验板下载验证。要求实现以下功能:(1)准确计时,以数字形式显示时分秒时间,小时计时为24小时制;(2)实现时间校正功能。四.分析与设计多功能数字钟的基本工作原理为由振荡器产生稳定的高频脉冲信号,作为数字钟的时间基准,再由分频电路输出秒计时脉冲信号。秒计时满60后向分计数器进位,分计时满60后向时计时进位,时计时满24置零。以十进制数字显示时间的基本原理为,计数器对时分秒的十位和个位分别以8421BCD码计时,再通过译码器送至显示器。通过以上分析可知,使用Veriog

3、HDL模拟多功能数字钟须有以下模块:顶层模块,分频模块,六十进制计数器,二十四进制计数器,译码模块,显示切换模块。1.顶层模块moduleclock(clk_50M,MODE,AMin,AHour,SHOW_MODE,nCR,EN,SEG0,SEG1,SEG2,SEG3,LED_STA,clk_1);//顶层模块,通过调用其他底层模块实现数字钟的功能inputnCR,EN,clk_50M,MODE,SHOW_MODE,AMin,AHour;//nCR为清零信号,低电平有效;EN为使能信号高电平有效;

4、clk_50M为DE0实验板提供的50MHz时钟信号;MODE表示数字钟工作状态0为计时,1为调时;Amin为分调时信号,AHour为时调时信号output[7:0]SEG3,SEG2,SEG1,SEG0;//四个显示器的输入信号output[4:0]LED_STA;//用LED灯表示工作状态outputclk_1;//1Hz秒脉冲信号wire[7:0]Hour,Minute,Second;//用于计时分秒的量,前四位为十位,后四位为各位wireclk_1;wire[3:0]LED_STA;wire

5、SET_SELECT;wire[7:0]SHOW1,SHOW2;wireMin_En,Hour_En;clk_divU0(clk_50M,clk_1);LED_STATIONU1(MODE,SHOW_MODE,LED_STA[3:0]);counter60U2(EN,clk_1,nCR,Second[7:4],Second[3:0]);//assignMin_EN=((MODE==1&&AMin)

6、

7、(Second==8'b));assignMin_EN=MODE?AMin:(Second==8'h

8、59);counter60U3(Min_EN,clk_1,nCR,Minute[7:4],Minute[3:0]);assignHour_EN=MODE?AHour:((Minute==8'h59)&&(Second==8'h59));counter24U4(nCR,Hour_EN,clk_1,Hour[7:4],Hour[3:0]);SHOW_CTRLU5(MODE,SHOW_MODE,clk_1,Hour,Minute,Second,SHOW1,SHOW2);HEX2LEDU6(SHOW1[7:

9、4],SEG3);HEX2LEDU7(SHOW1[3:0],SEG2);HEX2LEDU8(SHOW2[7:4],SEG1);HEX2LEDU9(SHOW2[3:0],SEG0);Endmodule1.分频模块由50MHz基础时钟脉冲分频,获得秒脉冲时钟信号。也可通过该模块获得其他频率信号以获取其他拓展功能要求的脉冲信号。moduleclk_div(clk_50M,clk_1);inputclk_50M;outputclk_1;regclk_1;reg[120:0]count;initialbegi

10、nclk_1<=1'b0;count<=1;endalways@(posedgeclk_50M)beginif(count==)//计数至次时翻转一次获得秒脉冲beginclk_1<=~clk_1;count<=1;endelsebegincount<=count+'d1;endendendmodule3.六十进制计数六十进制计数器,对分秒计时。modulecounter60(EN,CP,nCR,QoH,QoL);//QoH为十位,QoH为个位inputEN,CP,n

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。