用状态机实现的EDA多功能数字钟课程设计VHDL代码.doc

用状态机实现的EDA多功能数字钟课程设计VHDL代码.doc

ID:55278692

大小:39.50 KB

页数:10页

时间:2020-05-08

用状态机实现的EDA多功能数字钟课程设计VHDL代码.doc_第1页
用状态机实现的EDA多功能数字钟课程设计VHDL代码.doc_第2页
用状态机实现的EDA多功能数字钟课程设计VHDL代码.doc_第3页
用状态机实现的EDA多功能数字钟课程设计VHDL代码.doc_第4页
用状态机实现的EDA多功能数字钟课程设计VHDL代码.doc_第5页
资源描述:

《用状态机实现的EDA多功能数字钟课程设计VHDL代码.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、设计并实现具有一定功能的数字钟1、该数字钟可以实现3个功能:计时功能、整点报时功能和重置时间功能,因此有3个功能:计时、重置时间、复位。2、对所有设计的小系统能够正确分析;3、基于VHDL语言描述系统的功能;4、在quartus2环境中编译通过;5、仿真通过并得到正确的波形;6、给出相应的设计报告。其中计时模块有4部分构成:秒计时器(second)、分计时器(minute)、时计时器(hour)、日计时器(date)、月计时器(mouth)、年计时器(year)1)秒计时器(second)是由一个60进制的计数器构成的,具有清0、置数和计数功能。其中reset为清0信号,当reset为0时,秒

2、计时器清0;set为置数信号,当set为0时,秒计时器置数,置s1的值。clk为驱动秒计时器的时钟,sec为秒计时器的输出,ensec为秒计时器的进位信号,作为下一级的时钟输入信号。2)分计时器(minute)是由一个60进制的计数器构成的,具有清0、置数和计数功能。其中reset为清0信号,当reset为0时,分计时器清0;set为置数信号,当set为0时,分计时器置数,置m1的值。clkm为驱动分计时器工作的时钟,与ensec相连接;min为分计时器的输出;enmin为分计时器的进位信号,作为下一级的时钟输入信号。3)时计时器(hour)是由一个24进制的计数器构成的,具有清0、置数和计数

3、功能。其中reset为清0信号,当reset为0时,时计时器清0;set为置数信号,当set为0时,时计时器置数,置h1的值。clkh为驱动时计时器工作的时钟,与enmin相连接;hour为时计时器的输出;enhour为时计时器的进位信号,作为下一级的时钟输入信号。4)日计时器(date1)是由一个60进制的计数器构成的,具有清0、置数和计数功能。其中reset为清0信号,当reset为0时,星期计时器清0;set为置数信号,当set为0时,星期计时器置数,置d1的值。clkd为驱动星期计时器工作的时钟,与enhour相连接;date为日计时器的输出,endate为分计时器的进位信号,作为下一

4、级的时钟输入信号,由于月份的天数存在天数不同,闰年2月的天数为28天等情况,还设计了一个润年判别器,准确显示时间。5)月计时器(mouth)是由一个60进制的计数器构成的,具有清0、置数和计数功能。其中reset为清0信号,当reset为0时,星期计时器清0;set为置数信号,当set为0时,星期计时器置数,置mou1的值,clkmou为驱动星期计时器工作的时钟,与enday相连接;mou为日计时器的输出,enmou为分计时器的进位信号,作为下一级的时钟输入信号。6)计时器(year)是由一个60进制的计数器构成的,具有清0、置数和计数功能。其中reset为清0信号,当reset为0时,星期计

5、时器清0;set为置数信号,当set为0时,星期计时器置数,置y1的值,clky为驱动星期计时器工作的时钟,与enmou相连接;year为日计时器的输出。VHDL程序1、屏幕切换模块运用状态机进行屏幕切换,分别显示年月日,以及时分秒libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_ARITH.ALL;useIEEE.STD_LOGIC_UNSIGNED.ALL;--Uncommentthefollowinglinestousethedeclarationsthatare--providedforinstantiatingXilin

6、xprimitivecomponents.--libraryUNISIM;--useUNISIM.VComponents.all;entitymux3isPort(clk,Reset,sel:instd_logic;int1,int2,int3,int4,int5,int6,int7,int8,int9,int10,int11,int12:INSTD_LOGIC_VECTOR(3DOWNTO0);--rstmusta1,a2,a3,a4,a5,a6:outstd_logic_vector(3downto0));endmux3;architectureBehavioralofmux3isTYPE

7、statesIS(st0,st1,st2,st3,st4,st5,st6,st7);SIGNALSTX:states;beginCOM1:PROCESS(STX,int1,int2,int3,int4,int5,int6,int7,int8,int9,int10,int11,int12)BEGIN--决定转换状态的进程CASESTXISWHENst0=>a1<=int1;a2<=int2;a3<=

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

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

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