用FPGA实现数字钟的设计.doc
用FPGA实现数字钟的设计
设计要求
本设计要实现一个具有预置数的数字钟的设计,具体要求如下:
正确显示年、月、日;
正确显示时、分、秒;
具有校时,整点报时和秒表功能;
进行系统模拟仿真和下载编程实验,验证系统的正确性;
二、设计方案分析
数字钟的设计基本原理是计数器的设计,通过对各脉冲的计数实现计时。脉冲主要有两个:秒脉冲和百分秒脉冲(脉冲在本设计中由外界直接输入)。计数器有100进制、60进制、24进制等。
设计的主要框图如下:
整个数字钟的设计包括七个模块,各模块的设计解决方案具体如下:
秒表计数模块
秒表计数包含一个100进制计数器和三个60进制计数器分别计数百分秒、秒、分小时,但是为了和其他模块统一,输出采用6位bcd码输出,所以在编程时采用自动换档,当计数超过60分时,设置一个溢出标志flag ,flag初始为‘0’,输出百分秒、秒、分。当flag=‘1’时,输出秒、分、小时。
PROCESS(qc3)
BEGIN
IF RISING_EDGE(qc3)THEN
flag=1;
END IF;
IF flag=1 THEN
centsec=tsec;
sec=tmin;
min=thour;
ELSE
centsec=tcentsec;
sec=tsec;
min=tmin;
END IF;
END PROCESS;
秒表计数波形图和秒表自动换档波形图如下:
秒表正常
原创力文档

文档评论(0)