一种百年星期自动计算电路制造技术

技术编号:38562719 阅读:17 留言:0更新日期:2023-08-22 21:02
本实用新型专利技术提供一种百年星期自动计算电路,包括闰年判断模块、码值转换模块、除4运算模块、月份修正译码模块、求和计算模块、对7求余模块,所述百年星期自动计算电路对输入的年值year、月值month、日值day进行运算,输出该天对应的星期值week。本实用新型专利技术的百年星期自动计算电路,通过对各类逻辑电路及计算模块的组合,能够实现2000~2099百年之内的星期值的计算。算。算。

【技术实现步骤摘要】
一种百年星期自动计算电路


[0001]本技术属于星期值计算
,尤其是涉及一种百年星期自动计算电路。

技术介绍

[0002]目前市售的实时时钟芯片或者片上内置了实时时钟功能模块的MCU或SoC芯片,有些型号是提供星期值的,有些型号不提供星期值。即便是提供星期值的芯片,也需要首先对相应的年、月、日、星期、时、分、秒等寄存器设定正确的初始值,完成初始化工作后才能正常运行。年、月、日、时、分、秒寄存器的设置不需要进行复杂计算就可以进行,实现起来比较简单。但是星期的值和具体的年、月、日值是有关联的,是一一对应的。设置星期值时软件开发人员可能需要查询纸质日历或者具有存储日历功能的手机、电脑,或人工计算。人工计算时必须掌握一定的方法,而且计算麻烦,容易出错。

技术实现思路

[0003]本技术旨在解决上述技术问题,提供一种百年星期自动计算电路。
[0004]为了达到上述目的,本技术采用如下技术方案:
[0005]一种百年星期自动计算电路,包括闰年判断模块、码值转换模块、除4运算模块、月份修正译码模块、求和计算模块、对7求余模块;
[0006]闰年判断模块输入年值year,并输出闰年标志leap,leap输出为1或0;
[0007]月份修正译码模块输入月值month和闰年判断模块输出的闰年标志leap,输出一个对应的修正译码值;
[0008]所述码值转换模块输入年值year、日值day,将年值year、日值day的BCD码值转换为自然二进制码值;
[0009]所述除4运算模块输入年值year的自然二进制码值,进行除4运算后输出商值;
[0010]所述求和计算模块输入年值year的自然二进制码值、所述月份修正译码模块输出的修正译码值、日值day的自然二进制码值、所述除4运算模块输出的商值,进行求和运算后输出和值;
[0011]所述对7求余模块输入所述求和计算模块输出的和值,进行除以7求余后输出余数。
[0012] 作为一种优选的技术方案,闰年判断模块的输入的年值year取年份的后两位,并转换为8位BCD码,表示为year[7:0],通过逻辑电路对year[7:0]中的year[4]、year[1]、year[0] 三位信号进行逻辑运算:year[4]&year[1]&!year[0]或者year[4]|year[1]|year[0],当逻辑表达式year[4]&year[1]&!year[0]的结果为真时,或者当逻辑表达式year[4]|year[1]|year[0]的结果为假时,该年份为闰年,否则不是闰年。
[0013]作为一种优选的技术方案,所述闰年判断模块的逻辑电路包括非门一、非门二、与门一、与门二、或门一、或门二、或门三,非门一的输入端输入year[0],非门一的输出端连接与门一的第一输入端,与门二的两个输入端输入year[1]、year[4],与门二的输出端连接与
门一的第二输入端,与门一的输出端连接或门三的第一输入端,或门一的两个输入端输入year[0]、year[1],或门一的输出端连接或门二的第一输入端,或门二的第二输入端输入year[4],或门二的输出端连接非门二的输入端,非门二的输出端连接或门三的第二输入端,或门三的输出端输出闰年标志leap。
[0014] 作为一种优选的技术方案,闰年判断模块输入的年值year为经过所述码值转换模块转换的年值year的自然二进制码值,通过逻辑电路判断自然二进制数码值末尾2 bit位是否都为0,如果都是0,则该年份是闰年,否则不是闰年。
[0015] 作为一种优选的技术方案,所述闰年判断模块的逻辑电路包括或门四、非门三,年值year的自然二进制数码值末尾2 bit位表示为year_c[1]、year_c [0],或门四的两个输入端输入year_c[1]、year_c [0],或门四的输出端连接非门三的输入端,非门三的输出端输出闰年标志leap。
[0016]作为一种优选的技术方案,所述码值转换模块包括加法器一和加法器二,年值year/日值day的BCD码值的高4位向左移一位得到的值和年值year/日值day的BCD码值的高4位向左移三位得到的值作为加法器一的输入,年值year/日值day的BCD码值的低4位和加法器一的输出值作为加法器二的输入,加法器二输出转换得到的自然二进制码值。
[0017]采用上述技术方案后,本技术具有如下优点:
[0018]本技术的百年星期自动计算电路,通过对各类逻辑电路及计算模块的组合,能够实现2000~2099百年之内的星期值的计算。本技术相对比传统常规的查询纸质日历或者具有存储日历功能的手机、电脑,或人工计算方式,或操作星期查询机械盘来讲,提供了一种新的星期值获取方式,即通过数字电路以硬件的方式来自动计算得到星期值。当该电路被集成到实时时钟电路后可以获得的优势是:不需要为星期进行初始化设置,避免人工计算的麻烦;不需要开发星期计算软件,能够节省一些程序空间;星期值由硬件电路实时自动计算,计算速度比软件计算快;星期计算电路规模约在百余门量级即可实现,消耗逻辑资源较少。
附图说明
[0019]图1为一种百年星期自动计算电路的示意图;
[0020]图2为实施例1的一种百年星期自动计算电路的逻辑原理图;
[0021]图3为图2中各输入输出值的时序波形图;
[0022]图4为实施例1的闰年判断模块的闰年判定逻辑电路;
[0023]图5为码值转换模块的计算原理图;
[0024]图6为码值转换模块的逻辑电路图;
[0025]图7为一种可实施的月份修正译码逻辑电路图;
[0026]图8为一种对7求余模块的结构图;
[0027]图9为实施例2的一种百年星期自动计算电路的逻辑原理图;
[0028]图10为实施例2的闰年判断模块的闰年判定逻辑电路。
具体实施方式
[0029] 以下结合附图及具体实施例,对本技术作进一步的详细说明。
[0030]实施例1
[0031]如图1

3所示,一种百年星期自动计算电路,包括闰年判断模块、码值转换模块、除4运算模块、月份修正译码模块、求和计算模块、对7求余模块,所述百年星期自动计算电路对输入的年值year、月值month、日值day进行运算,输出该天对应的星期值week。电路的输入、输出信号均为BCD码。输出信号week的有效值为0x0、0x1、0x2、0x3、0x4、0x5、0x6,分别表示周日、周一、周二、周三、周四、周五、周六。
[0032]所述闰年判断模块为一闰年判定逻辑电路,所述闰年判断模块的输入端输入年值year,所述闰年判断模块输出一位指示信号:闰年标志leap,如果为闰年,leap输出1,如果不是,leap输出0。因为年份的头两位固定为20,所以闰年判断的规则可以简化为:本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种百年星期自动计算电路,其特征在于,包括闰年判断模块、码值转换模块、除4运算模块、月份修正译码模块、求和计算模块、对7求余模块;闰年判断模块输入年值year,并输出闰年标志leap,leap输出为1或0;月份修正译码模块输入月值month和闰年判断模块输出的闰年标志leap,输出一个对应的修正译码值;所述码值转换模块输入年值year、日值day,将年值year、日值day的BCD码值转换为自然二进制码值;所述除4运算模块输入年值year的自然二进制码值,进行除4运算后输出商值;所述求和计算模块输入年值year的自然二进制码值、所述月份修正译码模块输出的修正译码值、日值day的自然二进制码值、所述除4运算模块输出的商值,进行求和运算后输出和值;所述对7求余模块输入所述求和计算模块输出的和值,进行除以7求余后输出余数。2.如权利要求1所述的百年星期自动计算电路,其特征在于,所述闰年判断模块的逻辑电路包括非门一、非门二、与门一、与门二、或门一、或门二、或门三,非门一的输入端输入year[0],非门一的输出端连接与门一的第一输入端,与门二的两个输入端输入year[1]、year[4],与门二的输出...

【专利技术属性】
技术研发人员:任勇邵金莎赵双龙
申请(专利权)人:杭州晶华微电子股份有限公司
类型:新型
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1