Rtc数字电路断电保护方法、rtc数字电路及其芯片

文档序号:1002960 发布日期:2020-10-23 浏览:26次 >En<

阅读说明:本技术 Rtc数字电路断电保护方法、rtc数字电路及其芯片 (RTC digital circuit power-off protection method, RTC digital circuit and chip thereof ) 是由 朱佳 翁秀梅 宋佳驹 黄维 刘勇 夏晓玲 雷丁扬 蒋云翔 于 2020-07-09 设计创作,主要内容包括:本发明公开了一种RTC数字电路断电保护方法,包括RTC数字电路内部的所有功能寄存器均无复位端;断电时对RTC数字电路的输入信号进行过滤处理;进行快时钟和慢时钟转换时通过握手和对信号进行计数的方式过滤循环溢出的异常;对apb接口的写操作和读操作进行访问延时的优化。本发明还公开了包括了所述RTC数字电路断电保护方法的RTC数字电路,以及包括了所述RTC数字电路断电保护方法和RTC数字电路的芯片。本发明通过增加三种断电保护电路提高模块的稳定性和鲁棒性,通过apb接口写操作和读操作的访问延时优化提高模块访问的效率和可靠性;本发明技术方案更为简洁,成本低廉,而且有效提高了RTC数字电路的工作效率和精度。(The invention discloses a power-off protection method for an RTC digital circuit, which comprises that all functional registers in the RTC digital circuit have no reset end; when the power is off, the input signal of the RTC digital circuit is filtered; filtering the abnormal cycle overflow by handshaking and counting signals when the fast clock and the slow clock are switched; and optimizing the access delay of the write operation and the read operation of the apb interface. The invention also discloses the RTC digital circuit comprising the RTC digital circuit power-off protection method, and a chip comprising the RTC digital circuit power-off protection method and the RTC digital circuit. According to the invention, the stability and robustness of the module are improved by adding three power-off protection circuits, and the access efficiency and reliability of the module are improved by optimizing the access delay of write operation and read operation of the apb interface; the technical scheme of the invention is simpler and has low cost, and the working efficiency and the precision of the RTC digital circuit are effectively improved.)

RTC数字电路断电保护方法、RTC数字电路及其芯片

技术领域

本发明属于芯片设计技术领域,具体涉及一种RTC数字电路断电保护方法、RTC数字电路及其芯片。

背景技术

随着经济技术的发展和人们生活水平的提高,导航应用已经成为了人们生产和生活中不必可少的辅助功能,给人们的生产和生活带来了无尽的便利。

在导航的产品应用中,为提高热启动和温启动的启动速度,提高重捕获的效率,导航时需要使用实时时钟rtc模块来记录当前的准确时间。产品软件在跟踪的过程中获取卫星授时的准确时间,根据准确时间和rtc的当前时间计算晶振的频率偏差,并对rtc模块进行时间和频率的校准。rtc电路工作的典型时钟为32.768KHz。

rtc电路解决方案分为外置rtc模块和内置rtc电路两种。典型的外置rtc芯片DS1342具有极低的待机电流,外部输入32KHz时钟,使用高速I2C接口进行配置操作,I2C接口时钟为400KHz,封装面积为9mm2,其典型的工作电路如图1所示。当用户侧中央处理器断电时,rtc芯片使用纽扣电池供电继续工作,更新当前时间。当用户侧上电后,通过I2C接口读取当前时间,用于导航热启动或温启动。该方案的问题是在产品的硬件设计中增加单独rtc芯片,增加了产品硬件成本和面积,同时中央处理器访问当前时间使用I2C接口,需要反复读取寄存器,导致访问rtc当前时间带来很大的不确定延时,获取当前时间不够精确,影响热启动和温启动的效率。

在导航产品中,设计集成度较高的SoC芯片时,可在芯片设计中增加内置rtc电路实现实时计数的功能。rtc电路需要单独设计电源域,当芯片主电源断电时,rtc电源域能继续工作,保证计数正确。rtc电路工作频率低,典型值为32.768KHz。cpu和rtc之间通过apb接口访问rtc内部寄存器,apb的接口时钟较快,典型值为50MHz以上;其典型的框图如图2所示。该方案提高了产品的集成度,降低产品硬件成本和设计复杂度,成为主流的rtc解决方案。该方案在芯片设计中有两个缺陷:(1)rtc电路为单独电源域,当芯片断电时只有rtc电路正常工作,其他电路处于不确定状态。与rtc电路的输入接口为随机值,有概率产生复位和错误的apb操作,对rtc的功能产生冲击,造成rtc时间功能错误;(2)cpu通过快时钟域的apb接口访问rtc电路内部寄存器,因rtc的工作时钟为32.768KHz慢时钟域,两个时钟为异步关系,为避免跨时钟产生亚稳态,需要将apb接口从快时钟转换为慢时钟。apb接口的异步转换有较大延时,典型值为100us,导致cpu的总线访问效率明显降低,极端情况会影响业务正常功能。

发明内容

本发明的目的之一在于提供一种可靠性高、实用性好、成本低廉且精度较高的RTC数字电路断电保护方法。

本发明的目的之二在于提供一种包括了所述RTC数字电路断电保护方法的RTC数字电路。

本发明的目的之三在于提供一种包括了所述RTC数字电路断电保护方法和RTC数字电路的芯片。

本发明提供的这种RTC数字电路断电保护方法,包括如下步骤:

S1.RTC数字电路内部的所有功能寄存器均无复位端;

S2.当断电时,对RTC数字电路的输入信号进行过滤处理,从而保证apb接口不会操作异常;

S3.当进行快时钟和慢时钟转换时,通过握手的方式,和对信号进行计数的方式,过滤循环溢出的异常;

S4.对apb接口的写操作和读操作进行访问延时的优化,从而解决RTC数字电路访问延时的问题。

步骤S2所述的当断电时,对RTC数字电路的输入信号进行过滤处理,具体为当apb接口与RTC数字电路握手成功后,对握手成功信号进行边沿检测,并当检测到下降沿时产生快时钟域的配置使能。

步骤S3所述的当进行快时钟和慢时钟转换时,通过握手的方式,和对信号进行计数的方式,具体为从快时钟域的配置标志,产生握手信号,进行慢时钟域打两拍进行跨时钟域转换,产生标志信号,同时对该标志信号有效标志进行计数;当计数在累加到设定值后保持不变,可以过滤芯片主电源断电时产生的计数循环溢出的异常信号。

步骤S4中的对apb接口的写操作进行访问延时的优化,具体为设置快时钟域的配置标志,且规定该快时钟域的配置标志持续长度为设定的若干个快时钟周期;同时,快时钟域的配置标志为高时,启动配置异步转换,同时将更新状态位置高,表示配置正在生效;当判断完成配置同步处理后,对更新状态进行清零。

步骤S4中的对apb接口的读操作进行访问延时的优化,具体为选取根据地址选择的慢时钟域寄存器,并对选取的寄存器进行快时钟域延时打拍从而得到标志变量;并判断根据地址选择的慢时钟域寄存器和标志变量是否相等且持续设定的时间,从而判定读数据是否已经稳定,并适时返回读数据。

本发明还提供了一种RTC数字电路,该RTC数字电路包括了上述的RTC数字电路断电保护方法。

本发明还提供了一种芯片,该芯片包括了上述的RTC数字电路断电保护方法和RTC数字电路。

本发明提供的这种RTC数字电路断电保护方法、RTC数字电路及其芯片,通过增加三种断电保护电路提高模块的稳定性和鲁棒性,通过apb接口写操作和读操作的访问延时优化提高模块访问的效率和可靠性;本发明相比较传统方法,技术方案更为简洁,成本低廉,而且有效提高了RTC数字电路的工作效率和精确度。

附图说明

图1为现有常用的外置RTC芯片时钟电路的电路原理示意图。

图2为现有常用的内置RTC芯片时钟电路的电路原理示意图。

图3为本发明方法的方法流程示意图。

图4为本发明方法的断电时对RTC数字电路的输入信号进行过滤处理的流程示意图。

图5为本发明方法的通过握手的方式和对信号进行计数的方式过滤循环溢出异常的流程示意图。

图6为本发明方法的对apb接口的写操作进行访问延时优化的流程示意图。

图7为本发明方法的对apb接口的读操作进行访问延时优化的流程示意图。

具体实施方式

如图3所示为本发明方法的方法流程示意图:本发明提供的这种RTC数字电路断电保护方法,包括如下步骤:

S1.RTC数字电路内部的所有功能寄存器均无复位端;

在具体实施时,rtc电路内部计数器使用32.768KHz时钟,计数器和配置值等所有功能寄存器没有复位端,保证在芯片断电时,不管接口的复位信号处于任何状态,内部计数器和配置不会被清零;该设计需要用户软件在第一次使用时配置初始值,确保开始状态正确;

S2.当断电时,对RTC数字电路的输入信号进行过滤处理,从而保证apb接口不会操作异常;具体为当apb接口与RTC数字电路握手成功后,对握手成功信号进行边沿检测,并当检测到下降沿时产生快时钟域的配置使能;

具体实施时,芯片主电源断电时,rtc电路的输入信号包括快时钟为随机值,每个信号确定状态后不会反复切换,因此断电有概率产生apb接口的误操作;针对该问题需要引入过滤处理,对apb接口异常操作进行过滤,处理流程如图4所示;

其中判断apb_enable(表示发起寄存器访问请求,当发起寄存器访问请求时变量apb_enable有效)和apb_ready(表示完成寄存器访问请求,当完成寄存器访问请求时变量apb_ready有效)同时有效表示握手成功,对握手成功信号进行边沿检测,当检测到下降沿时产生快时钟域的配置使能;芯片主电源断电后,其输入apb_enable可能为任意值;同时因rtc输入快时钟消失,快时钟可能为任意值,导致rtc内部产生的apb_ready为任意值;当apb_enable和apb_ready同时为高时,会产生异常的握手成功信号,并一直持续为高;该部分引入进行下降沿检测判断该信号的变化,可将持续为高的异常值过滤掉,避免异常的配置;因此芯片主电源断电后,不管apb_enable和apb_ready处于任何状态,该方法都能保证不产生异常配置;

图中,apb_hs_ok表示apb_enable和apb_ready握手成功,当apb_enable和apb_ready握手成功时变量apb_hs_ok为1;apb_hs_ok_1dly表示握手成功标志延时1个周期;negedge detect表示下降沿检测;fast_cfg_vld表示快时钟域的配置生效标志,当时快时钟域的配置生效时变量fast_cfg_vld为1;

S3.当进行快时钟和慢时钟转换时,通过握手的方式,和对信号进行计数的方式,过滤循环溢出的异常;具体为从快时钟域的配置标志,产生握手信号,进行慢时钟域打两拍进行跨时钟域转换,产生标志信号,同时对该标志信号有效标志进行计数;当计数在累加到设定值后保持不变,可以过滤芯片主电源断电时产生的计数循环溢出的异常信号;

在具体实施时,fast_cfg_vld为快时钟域的配置标志,持续长度为1个快时钟周期,需要向慢时钟域进行异步转换,通过握手的交互方式,其处理流程如图5所示:

其中从快时钟域的配置标志,产生握手信号,进行慢时钟域打两拍进行跨时钟域转换,产生cfg_valid_sync2(表示配置有效标志同步两拍)信号,同时对该信号有效标志进行计数;该计数在累加到3后保持不变,可以过滤芯片主电源断电时产生的fast_cfg_vld(表示快时钟域的配置生效标志)长为有效导致计数循环溢出的异常;判断当cfg_valid_cnt(表示配置有效标志为高的计数器)为1且cfg_valid_sync1(表示配置有效标志同步一拍)已经清零时,产生rtc_cfg_vld的慢时钟配置使能,其中增加cfg_valid_sync1清零的判断可过滤芯片主电源断电时产生的fast_cfg_vld长为有效导致的第一次异常配置;

图中,fast_cfg_valid表示快时钟域配置有效标志;hold为数据保持操作;

S4.对apb接口的写操作和读操作进行访问延时的优化,从而解决RTC数字电路访问延时的问题;其中对apb接口的写操作进行访问延时的优化,具体为设置快时钟域的配置标志,且规定该快时钟域的配置标志持续长度为设定的若干个快时钟周期;同时,快时钟域的配置标志为高时,启动配置异步转换,同时将更新状态位置高,表示配置正在生效;当判断完成配置同步处理后,对更新状态进行清零;对apb接口的读操作进行访问延时的优化,具体为选取根据地址选择的慢时钟域寄存器,并对选取的寄存器进行快时钟域延时打拍从而得到标志变量;并判断根据地址选择的慢时钟域寄存器和标志变量是否相等且持续设定的时间,从而判定读数据是否已经稳定,并适时返回读数据;

具体实施时,当判断是写操作时,直接返回apb_ready,此时写操作并没有真正生效,同步产生一个更新状态标志位,用于软件判断当前操作是否真正生效,其处理流程如6所示;

其中fast_cfg_vld为快时钟域的配置标志,持续长度为1个快时钟周期;该配置为高时,启动配置异步转换,同时将更新状态位置高,表示配置正在生效;当判断完成配置同步处理后,对更新状态进行清零;用户软件需要对rtc电路的寄存器进行配置时,需先读取update_state(表示寄存器更新状态,当寄存器更新状态为1时表示寄存器正在更新)状态,当状态为1时表示上一次的配置尚未完全生效,无法进行新的配置操作;该方法针对apb接口的写操作,可以快速返回完成标志,释放cpu的总线,提高写操作的访问效率,同时增加状态标志位,提高写操作的可维护性,避免写操作异常;

图中,apb_enable表示发起寄存器访问请求,当访问请求为1时表示正在发起访问;apb_write表示发起寄存器访问的操作类型,当操作类型为1时表示写操作;apb_ready表示完成寄存器访问请求,当完成请求标志为1时表示当前访问完成;cfg sync表示配置同步操作,当cfg_sync为1时表示配置同步操作完成;rtc_cfg_vld表示配置生效标志,当配置生效标志为1时表示配置已经生效;

当判断是读操作时,在快时钟域根据读地址选择读取的寄存器,并对寄存器进行跨时钟域的保护,避免因亚稳态读取异常的寄存器值,其处理流程如7所示;

其中rdata为根据地址选择的慢时钟域寄存器,对其进行快时钟域进行延时打拍产生rdata_1dly(表示读操作返回读数据一拍延时),两个值进行比对判断是否相等表示是否有亚稳态和跳变;当连续相等足够长时间后,表示读数据已经稳定,此时返回apb_ready(表示完成寄存器访问请求,当完成请求标志为1时表示当前操作完成)和读数据,apb读操作完成;该部分利用多bit信号在跨时钟域采样时会产生亚稳态和跳变的特性,用判断一致性的方法进行读数据过滤,在保证读数据正确性的前提下,将apb读操作延时从100us量级降低为1us量级,有效的提高apb读操作的效率;

图中,rdata表示表示读操作返回读数据;rdata_1dly表示表示读操作返回读数据延时一拍;same_flag表示读数据不变的标志,当same_flag为1时表示读数据在连续两拍内未发生变化;same_cnt表示表示读数据不变的计数;apb_ready表示完成寄存器访问请求,当完成请求标志为1时表示当前访问完成。

13页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:具有滑动式可展开显示器的电子设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!