1功能概述
万年历是记录一定时间范围内的年历,其名称只是一种象征,表示时间跨度大。由于其功能非常常用,且极为方便人们查询使用,因此广泛应用于钟表、历书出版物、电子产品、电子产品和手机应用等行业中。
与传统计时工具如钟表日历等相比,数字万年历具备精确度高、成本低廉、运行稳定、功能多样等众多优点,因此国内外许多设计人员先后进行了相关设计开发。其中,基于FPGA开发除设计简便、开发成本低、电路简洁等,更具备功能设计灵活方面的优势。只需要在软件上做简单修改即可添加不同功能,如闹钟、阴阳历对照等。
在FPGA设计中,数字万年历属于小规模集成电路。从原理上来讲,是典型的数字电路,包括组合逻辑电路和时序电路。在本案例中具体功能要求如下:
1.上板复位后从元年1月1号开始计数,为方便上板调试,将一天的时间压缩为1秒;
2.按键用于设置日历,按下按键0进入设置状态,再次按下按键0退出设置状态;
3.按键1用来选择想要设置的年月日的各个位;
4.按键2在设置状态时进行计数设置,每按一次数码管显示数字加1;
5.平年365天(52周+1天),闰年366天(52周+2天),其中平年2月28天,闰年2月29天。
6. 闰年:每400年整一闰,或每4年且不为百年的一闰。即能被400整除,或不能被100整除但能被4整除的年份为闰年。
2设计思路
首先根据所需要的功能,列出工程顶层的输入输出信号列表。如下表:�