CN114296511A - 实时时钟校准电路、方法及芯片结构 - Google Patents
实时时钟校准电路、方法及芯片结构 Download PDFInfo
- Publication number
- CN114296511A CN114296511A CN202111362381.4A CN202111362381A CN114296511A CN 114296511 A CN114296511 A CN 114296511A CN 202111362381 A CN202111362381 A CN 202111362381A CN 114296511 A CN114296511 A CN 114296511A
- Authority
- CN
- China
- Prior art keywords
- clock
- real
- time clock
- cycles
- counting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 230000008569 process Effects 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 12
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 11
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 11
- 102100040844 Dual specificity protein kinase CLK2 Human genes 0.000 description 7
- 101000749291 Homo sapiens Dual specificity protein kinase CLK2 Proteins 0.000 description 7
- 238000004590 computer program Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 239000013078 crystal Substances 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 101100113692 Caenorhabditis elegans clk-2 gene Proteins 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 101100422644 Caenorhabditis elegans syx-5 gene Proteins 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000002277 temperature effect Effects 0.000 description 1
- 230000001550 time effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Landscapes
- Electric Clocks (AREA)
Abstract
本发明实施例提供一种实时时钟校准电路、方法及芯片结构,属于芯片技术领域。所述实时时钟校准电路包括:时钟模块,包括系统时钟、实时时钟和参考时钟,其中所述参考时钟被配置为具有固定频率;统计模块,用于在所述系统时钟、所述实时时钟和所述参考时钟处于时钟同步时,统计所述实时时钟和所述参考时钟的周期数;以及校准模块,用于根据所述实时时钟和所述参考时钟各自的频率和所述周期数,校准所述实时时钟。本发明的实时时钟校准电路克服了系统时钟的频率不稳定性带来的校准不精确且操作复杂的问题。
Description
技术领域
本发明涉及芯片技术领域,具体地涉及一种实时时钟校准电路、方法及芯片结构。
背景技术
实时时钟(Real Time Clock,RTC)作为主控芯片和计量芯片等中必不可少的一部分,承担着计时、闹钟、万年历等一系列应用需求。而计时精度作为实时时钟设计方案最需要考虑的一环,直接影响着实时时钟的性能指标。通常,实时时钟采用时钟频率为32768Hz且相对稳定的内部晶体振荡器作为计时时钟源。但由于时间或温度的影响,内部晶体振荡器的频率会发生偏移。另外,某些设计中也会采用其他频率在32768Hz附近的外部晶体振荡器作为时钟源的备选方案,但其精度也不易保证。因此,关于计时时钟源的校准方案已经成为了RTC设计中不可或缺的一环。
现有方案主要是利用数字硬件电路来实现RTC校准,包括:第一步,通过统计电路设置适当的RTC计时周期数,得到在这个周期数内系统时钟的个数,进而得到系统时钟与RTC时钟的实际分频比;第二步,通过计算电路计算实际分频比和理想分频比(即,系统时钟与标准32768Hz时钟的分频比)之差,并通过归一化、寄存器移位等处理方式,得到校准参数;第三步,根据得到的校准参数,进行实时时钟模块的校准操作。
但是,本申请发明人在实现本发明的过程中发现,现有方案至少存在以下缺陷:
1)芯片的系统时钟的时钟源通常会有多个不同频率的时钟供切换并且无法保证每一时钟的稳定性,进而使得上述第一步得到的实际分频比实质上不准确。
2)对于第二步,需要对实际分频比与理想分频比做一系列算法,才能得出校准参数。其中,理想分频比由系统时钟决定,但芯片的应用场景很多,不同的应用场景需要不同频率的系统时钟来完成,从而无法保证每次执行RTC校准的系统时钟为固定频率,这样会导致第二步中的算法配置可能会经常变化,带来时钟校准操作的复杂性。而若是简单地考虑时钟校准而固定系统时钟的频率,又会为芯片的应用带来局限性。
发明内容
本发明实施例的目的是提供一种实时时钟校准电路、方法及芯片结构,用于至少部分地解决上述技术问题。
为了实现上述目的,本发明实施例提供一种实时时钟校准电路,包括:时钟模块,包括系统时钟、实时时钟和参考时钟,其中所述参考时钟被配置为具有固定频率;统计模块,用于在所述系统时钟、所述实时时钟和所述参考时钟处于时钟同步时,统计所述实时时钟和所述参考时钟的周期数;以及校准模块,用于根据所述实时时钟和所述参考时钟各自的频率和所述周期数,校准所述实时时钟。
进一步的,所述统计模块包括:计数单元,用于计数所述实时时钟和所述参考时钟在相对于所述系统时钟的一次时钟同步过程中的周期数;以及同步单元,用于实现所述系统时钟、所述实时时钟和所述参考时钟的时钟同步,以使所述计数单元基于同步时钟进行关于所述实时时钟和所述参考时钟的周期数的计数。
进一步的,所述计数单元包括:第一计数电路,其以所述实时时钟为时钟,且响应于来自所述系统时钟的开始信号而开始进行关于所述实时时钟的周期数的计数;以及第二计数电路,其以所述参考时钟为时钟,且响应于来自所述系统时钟的开始信号而开始进行关于所述参考时钟的周期数的计数。
进一步的,所述同步单元包括:第一时钟同步单元,设置在所述系统时钟与所述第一计数电路之间,用于实现所述系统时钟和所述实时时钟的时钟同步;第二时钟同步单元,设置在所述系统时钟与所述第二计数电路之间,用于实现所述系统时钟和所述参考时钟的时钟同步;以及第三时钟同步单元,设置在与所述第一计数电路与所述第二计数电路之间,用于实现所述实时时钟与所述参考时钟的时钟同步。
进一步的,所述第一计数电路被配置为从预设周期数开始进行减法计数,所述第二计数电路被配置为从零开始进行加法计数;并且,所述第一计数电路在减法计数至零时,生成停止信号,并经所述第三时钟同步单元将所述停止信号发送至所述第二计数电路,所述第二计数电路响应于接收到所述停止信号而停止计数。
进一步的,所述系统时钟利用控制寄存器生成所述开始信号,并通过所述第一时钟同步单元向所述第一计数电路发送所述开始信号,以及通过所述第二时钟同步单元向所述第二计数电路发送所述开始信号。
进一步的,所述校准模块包括:补偿周期计算电路,用于根据所述实时时钟和所述参考时钟的理想分频比和所述周期数,计算所述实时时钟的待补偿周期数;以及时钟补偿电路,用于根据所计算的待补偿周期数校准所述实时时钟。
进一步的,所述补偿周期计算电路采用下式计算所述实时时钟的待补偿周期数Y:
进一步的,在所述统计模块对所述实时时钟进行减法计数以统计对应的周期数时,C1是所述实时时钟在一次时钟同步计数中的预设周期数;并且,所述补偿周期计算电路还用于通过增大C1以提升所计算的所述实时时钟的待补偿周期数的准确度。
进一步的,所述时钟补偿电路根据所计算的待补偿周期数校准所述实时时钟包括:基于所述待补偿周期数Y和所述实时时钟的初始频率M,确定所述实时时钟的频率误差X=Y*M;若所述待补偿周期数Y大于零,则在所述实时时钟处于计时阶段时,增加所述实时时钟的周期数,以使得所述实时时钟通过计时M+X个周期来补偿存在的频率误差;以及若所述待补偿周期数Y小于零,则在所述实时时钟处于计时阶段时,减少所述实时时钟的周期数,以使得所述实时时钟通过计时M-X个周期来补偿存在的频率误差。
进一步的,所述补偿周期计算电路还用于:在所计算的实时时钟的待补偿周期数Y为小数时,将待补偿周期数Y更新为Y*P,其中P为正整数。
进一步的,所述系统时钟为具有任意时钟频率的时钟源。
本发明实施例还提供了一种实时时钟校准方法,包括:在系统时钟、实时时钟和参考时钟处于时钟同步时,统计所述实时时钟和所述参考时钟的周期数,其中所述参考时钟被配置为具有固定频率;以及根据所述实时时钟和所述参考时钟各自的频率和所述周期数,校准所述实时时钟。
进一步的,所述统计所述实时时钟和所述参考时钟的周期数包括:计数所述实时时钟和所述参考时钟在相对于所述系统时钟的一次时钟同步过程中的周期数;以及在所述系统时钟、所述实时时钟和所述参考时钟处于时钟同步时,基于同步时钟进行关于所述实时时钟和所述参考时钟的周期数的计数。
本发明实施例还提供了一种芯片结构,包括:系统时钟、实时时钟和参考时钟;以及上述任意的实时时钟校准电路,用于对所述实时时钟进行校准。
通过上述技术方案,本发明实施例的实时时钟校准方案引入了具有固定频率的参考时钟,使得对实时时钟的校准不再依赖于芯片的系统时钟,进而可以克服系统时钟的频率不稳定性带来的校准不精确且操作复杂的问题,或者克服系统时钟被固定而导致芯片应用范围受限的问题。
本发明实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:
图1是本发明实施例的实时时钟校准电路的功能结构示意图;
图2是本发明实施例的示例实时时钟校准电路的结构示意图;
图3是本发明实施例中进行时钟精度补偿的流程示意图;以及
图4是本发明实施例的一种实时时钟校准方法的流程示意图。
附图标记说明
100、时钟模块;200、统计模块;300、校准模块;
210、计数单元;220、同步单元;
310、补偿周期计算电路;320、时钟补偿电路;
211、第一计数电路;212、第二计数电路。
具体实施方式
以下结合附图对本发明实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明实施例,并不用于限制本发明实施例。
图1是本发明实施例的实时时钟校准电路的功能结构示意图。如图1所示,该实时时钟校准电路包括:时钟模块100,包括系统时钟、实时时钟(下文也称RTC时钟)和参考时钟,其中所述参考时钟被配置为具有固定频率;统计模块200,用于在所述系统时钟、所述实时时钟和所述参考时钟处于时钟同步时,统计所述实时时钟和所述参考时钟的周期数;以及校准模块300,用于根据所述实时时钟和所述参考时钟各自的频率和所述周期数,校准所述实时时钟。
其中,所述参考时钟被配置为具有固定频率,需知该固定频率是无频率误差的,例如参考时钟是一个频率明确为5MHz且稳定的时钟源;所述实时时钟是指用于提供实时时间信息的时钟,其是本发明实施例中预期进行校准的时钟,其例如是具有频率误差X的10MHz的时钟源;所述系统时钟是指操作系统内部的向各个模块提供工作时钟基础的主时钟,在本发明实施例中,所述系统时钟可以是具有任意时钟频率的时钟源,其在本发明实施例中主要负责整个电路的开始和配置参数(下文将会对此有详细描述),而对于时钟频率则并无明确要求。
本发明实施例的实时时钟校准电路引入了具有无频率误差的固定频率的参考时钟,使得对实时时钟的校准不再依赖于芯片的系统时钟,进而可以克服系统时钟的频率不稳定性带来的校准不精确且操作复杂的问题,或者克服系统时钟被固定而导致芯片应用范围受限的问题。
在一个优选的实施例中,所述统计模块200可以包括:计数单元210,用于计数所述实时时钟和所述参考时钟在相对于所述系统时钟的一次时钟同步过程中的周期数;以及同步单元220,用于实现所述系统时钟、所述实时时钟和所述参考时钟的时钟同步,以使所述计数单元210基于同步时钟进行关于所述实时时钟和所述参考时钟的周期数的计数。
在另一个优选的实施例中,所述校准模块300可以包括:补偿周期计算电路310,用于根据所述实时时钟和所述参考时钟的理想分频比和所述周期数,计算所述实时时钟的待补偿周期数;以及时钟补偿电路320,用于根据所计算的待补偿周期数校准所述实时时钟。
下面通过示例来具体介绍上述两个优选的实施例中的统计模块200和校准模块300的实现。图2是本发明实施例的示例实时时钟校准电路的结构示意图。
如图2所示,在该示例中,计数单元210可以包括:第一计数电路211,其以所述实时时钟为时钟(即CLK1),且响应于来自所述系统时钟的开始信号(即start信号)而开始进行关于所述实时时钟的周期数的计数;以及第二计数电路212,其以所述参考时钟为时钟(即CLK2),且响应于来自所述系统时钟的开始信号(即start信号)而开始进行关于所述参考时钟的周期数的计数。
进一步地,在该示例中,所述同步单元220包括:第一时钟同步单元sync1,设置在所述系统时钟与所述第一计数电路211之间,用于实现所述系统时钟和所述实时时钟的时钟同步;第二时钟同步单元sync2,设置在所述系统时钟与所述第二计数电路212之间,用于实现所述系统时钟和所述参考时钟的时钟同步;以及第三时钟同步单元sync2,设置在与所述第一计数电路与所述第二计数电路之间,用于实现所述实时时钟与所述参考时钟的时钟同步。
其中,所述系统时钟可利用控制寄存器生成所述开始信号(start信号),并通过所述第一时钟同步单元sync1向所述第一计数电路211发送所述开始信号,以及通过所述第二时钟同步单元sync2向所述第二计数电路212发送所述开始信号。需说明的是,实时时钟和参考时钟可以在CLK1和CLK2输入源位置互换,以使得该示例的应用更具灵活性。
其中,所述第一计数电路211被配置为从预设周期数开始进行减法计数,所述第二计数电路212被配置为从零开始进行加法计数;并且,所述第一计数电路211在减法计数至零时,生成停止信号(即stop信号),并经所述第三时钟同步单元sync2将所述停止信号发送至所述第二计数电路212,所述第二计数电路212响应于接收到所述停止信号而停止计数。
基于上文,参考图2,开始工作时,控制寄存器发送start信号通过时钟同步单元sync1和sync2分别到第一计数电路211和第二计数电路212。第一计数电路211从CLK1的周期数开始做减法计数直到为0,发送stop信号,经过时钟同步单元syn3到第二计数电路212。第二计数电路212从0开始做加法计数,收到stop信号后停止计数,此时的计数值即是CLK2的周期数。如此,得到关于CLK1的周期数和CLK2的周期数。
在只具有系统时钟和实时时钟的传统方案中,因系统时钟和实时时钟为异步时钟,所以两者之间的信号交互有可能会产生毛刺,影响相应计数电路的正确计数。对此,该示例不仅引入了参考时钟,还设计了上述的通过多个同步单元和两个计数电路来实现三个时钟源的信号动态安全交互的方案,克服了信号毛刺的缺陷,能够正确地统计CLK1、CLK2的周期数。
进一步地,关于补偿周期计算电路310,其可通过以下步骤来计算出所需要的待补偿周期数:
假设CLK1的频率为M Hz,CLK2的频率为N Hz,CLK1的周期数为C1,CLK2的周期数C2。并且,CLK1为待校准的RTC时钟,其频率误差为X Hz;CLK2为已知的精准的参考时钟,无频率误差。基于此,根据CLK1、CLK2的频率比,可以得知:
(M+X)/N=C2/C1 (1)
对式(1)进行变换,可求得:
而待补偿周期数Y=X/M,将该式与上述的式(1)和式(2)相结合,可得到下面的所述实时时钟的待补偿周期数Y的式(3):
式中,如上,C2和C1分别是所述参考时钟和所述实时时钟对应的所述的周期数,而为所述参考时钟和所述实时时钟的理想分频比,N是所述参考时钟的无频率误差的固定频率,M是所述实时时钟的存在频率误差的初始频率。
在示例中,在所述统计模块200(具体是第一计数电路211)对所述实时时钟进行减法计数以统计对应的周期数时,C1即是所述实时时钟在一次时钟同步计数中的预设周期数(即CLK1的周期数)。基于此,优选地,所述补偿周期计算电路310还可用于通过增大C1以提升所计算的所述实时时钟的待补偿周期数的准确度。即,在上述计算过程中,可以通过增大CLK1的周期数,有效提升补偿周期数的准确度,减少第二计数电路212收到stop结束时因计数时钟周期不完整带来的误差。
在示例中,时钟补偿电路320通过得到的待补偿周期数对时钟进行校准,结合上述参数定义,这一过程可以包括以下步骤:
1)基于所述待补偿周期数Y和所述实时时钟的初始频率M,确定所述实时时钟的频率误差X=Y*M;
2)若所述待补偿周期数Y大于零,则在所述实时时钟处于计时阶段时,增加所述实时时钟的周期数,以使得所述实时时钟通过计时M+X个周期来补偿存在的频率误差;以及
3)若所述待补偿周期数Y小于零,则在所述实时时钟处于计时阶段时,减少所述实时时钟的周期数,以使得所述实时时钟通过计时M-X个周期来补偿存在的频率误差。
举例而言,实时时钟RTC最常用的应用场景之一是秒计时,即计时一秒的时间。在此应用场景下,若RTC的理想时钟频率为M Hz,那么计数器需要计M个周期的RTC时钟才能得到一个精确的1秒。如此,如果Y>0,则RTC时钟的真实频率M’大于M,在RTC计时阶段需要增加对应的周期数,即计时M+X个周期得到精确的1秒;如果Y<0,则RTC时钟的真实频率M’小于M,在RTC计时阶段需要减少对应的周期数,即计数M-X个周期得到精确的1秒。
通过该示例,易知本发明实施例的实时时钟校准电路涉及对于系统时钟、实时时钟和参考时钟三个时钟源的利用,其中参考时钟的频率明确且稳定,从而使得校准基于参考时钟与实时时钟的频率比和周期数比进行,不再依赖于系统时钟的频率,避免了因系统时钟的频率不稳定所带来的校准不精确且操作复杂的问题。另外,在该示例中,系统时钟仅负责整个校准电路的开始和配置参数,在整个时钟校准过程中对其的时钟频率不做要求,从而系统时钟可以根据芯片实际应用场景进行频率变化,扩大了相应芯片的应用性。
另外,在该示例中,通过多个时钟同步单元处理跨时钟域信号的交互,能有效地减少信号毛刺的产生,提高时钟校准的准确性,并且信号毛刺的减少有助于保证时钟信号之间的动态安全交互。同时,该示例中给出了一种简单且精确的计算待补偿周期数的算法(上述的式(1)-(3)),易于实现。
请注意,承接上面的示例,在现有技术中,例如以一秒计时为例,需要对32768Hz的RTC时钟计数32768个周期,得到一个精确的1s计时时间;而通过校准发现实际RTC时钟频率可能会与标准的32768Hz有一些偏差。假设发现实际的RTC时钟频率为(32768-X)Hz时,则需要计数32768-X个周期,得到一个精确的1s计时时间;而若X为小数,假设整数部分为X1,小数部分为X2,X=X1+X2;按现有方法只能对X取整数部分X1,再按上述计时32768-X1个周期。但这种情况下会忽略小数部分X2,带来一定的时钟偏差
对此,所述补偿周期计算电路310还被配置为:在所计算的实时时钟的待补偿周期数Y为小数时,将待补偿周期数Y更新为Y*P,其中P为正整数。下面结合图3对这一补偿方法进行详细说明。图3是本发明实施例中进行时钟精度补偿的流程示意图,其特别地针对上述待补偿周期数Y为小数的情况,且包括以下步骤:
步骤S310,基于所述实时时钟校准电路,计算所述实时时钟的待补偿周期数Y。
步骤S320,在预设倍数P的时间内,更新补偿周期数为S=Y*P。
举例而言,单位精度例如是每秒精度,由于RTC计数器采用M(例如32768)Hz的时钟进行计数,如果需要对每秒精度进行补偿时,只能按照M(例如32768)Hz的整数周期补偿,则每秒最小补偿单位为1/M(对应为1/32768)。而本发明实施例预期在同条件的RTC时钟下实现较高的时钟补偿,从而将最大补偿周期扩大P倍(如2的整数倍,4),则每秒的补偿单位变成了1/(M*P),以前面的M为32768、P为4为例,则1/(M*P)=(1/131072)。如此,例如Y=1.25时,可以在P(4)秒内,将补偿周期数变成S=Y*P=1.25*4=5个,即增大了补偿周期,且S=Y*P=5使得最大补偿周期变为整数个周期,从而更好地提高了补偿精度。需说明的是,即使对于例如Y=1.2、P=4,补偿周期数S=1.2*4=4.8没有变成整数个周期,但此时也可以按照四舍五入的方式,按4秒内补偿5个周期数的方式补偿;相对于原来为Y=1.2的周期数,也将最大补偿周期扩大4倍,新补偿方式的在4秒内的误差为5-4.8=0.2个周期,每秒误差为0.05周期;相对于原始方式的每秒误差1.2-1=0.2有显著提高。这种补偿方式使得每秒的补偿单位变成了1/(M*P),相对于1/M,每秒补偿单位变小,补偿精度提高。
优选地,所述预设倍数P(例如4)是2K(例如K=2)的倍数,其中K为正整数。通过RTL(Register Transfer Level,寄存器传输级)代码,假设S的值储存在一个32位二进制的寄存器中S[31:0]=32‘b0000_0000_0000_0000_0000_0000_0000_0101。通过寄存器移位的方式,可以得知:在P秒内,每秒的补偿周期的整数部分为S[31:K]=S[31:2]=30’b00_0000_0000_0000_0000_0000_0000_0001,;而剩余的小数部分S[K-1:0]=[1:0]=2’b01值则代表第1秒至第S[K-1:0]=2’b01秒,再多补偿1个周期。即第1秒至第S[K-1:0]秒,每秒的补偿周期为S[31:K]+1=2;第S[K-1:0]+1=2秒至2K=4秒,每秒的补偿周期为S[31:K]=1。
因此,本发明实施例的实时时钟校准电路针对具有为小数的频率误差的实时时钟,通过扩大最大补偿周期,能够将其补偿周期数变成整数的周期数,提高了最小补偿精度。并且,步骤S310和步骤S320所实现的补偿方法可以通过数字硬件电路实现,设计简单且能提高最小补偿精度。
图4是本发明实施例的一种实时时钟校准方法的流程示意图。如图4所示,所述方法包括:
步骤S410,在系统时钟、实时时钟和参考时钟处于时钟同步时,统计所述实时时钟和所述参考时钟的周期数,其中所述参考时钟被配置为具有固定频率。
其中,统计所述实时时钟和所述参考时钟的周期数可优选包括:计数所述实时时钟和所述参考时钟在相对于所述系统时钟的一次时钟同步过程中的周期数;以及在所述系统时钟、所述实时时钟和所述参考时钟处于时钟同步时,基于同步时钟进行关于所述实时时钟和所述参考时钟的周期数的计数。
步骤S420,根据所述实时时钟和所述参考时钟各自的频率和所述周期数,校准所述实时时钟。
本发明实施例的实时时钟校准方法的更多实施细节及效果可参考上述关于实时时钟校准电路的实施例,在此则不再进行赘述。
本发明另一实施例还提供了一种芯片结构,包括:系统时钟、实时时钟和参考时钟;以及上述实施例所述的实时时钟校准电路,用于对所述实时时钟进行校准。其中,所述芯片结构例如是主控芯片,如微控制器。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (15)
1.一种实时时钟校准电路,其特征在于,包括:
时钟模块,包括系统时钟、实时时钟和参考时钟,其中所述参考时钟被配置为具有固定频率;
统计模块,用于在所述系统时钟、所述实时时钟和所述参考时钟处于时钟同步时,统计所述实时时钟和所述参考时钟的周期数;以及
校准模块,用于根据所述实时时钟和所述参考时钟各自的频率和所述周期数,校准所述实时时钟。
2.根据权利要求1所述的实时时钟校准电路,其特征在于,所述统计模块包括:
计数单元,用于计数所述实时时钟和所述参考时钟在相对于所述系统时钟的一次时钟同步过程中的周期数;以及
同步单元,用于实现所述系统时钟、所述实时时钟和所述参考时钟的时钟同步,以使所述计数单元基于同步时钟进行关于所述实时时钟和所述参考时钟的周期数的计数。
3.根据权利要求2所述的实时时钟校准电路,其特征在于,所述计数单元包括:
第一计数电路,其以所述实时时钟为时钟,且响应于来自所述系统时钟的开始信号而开始进行关于所述实时时钟的周期数的计数;以及
第二计数电路,其以所述参考时钟为时钟,且响应于来自所述系统时钟的开始信号而开始进行关于所述参考时钟的周期数的计数。
4.根据权利要求3所述的实时时钟校准电路,其特征在于,所述同步单元包括:
第一时钟同步单元,设置在所述系统时钟与所述第一计数电路之间,用于实现所述系统时钟和所述实时时钟的时钟同步;
第二时钟同步单元,设置在所述系统时钟与所述第二计数电路之间,用于实现所述系统时钟和所述参考时钟的时钟同步;以及
第三时钟同步单元,设置在与所述第一计数电路与所述第二计数电路之间,用于实现所述实时时钟与所述参考时钟的时钟同步。
5.根据权利要求4所述的实时时钟校准电路,其特征在于,所述第一计数电路被配置为从预设周期数开始进行减法计数,所述第二计数电路被配置为从零开始进行加法计数;
并且,所述第一计数电路在减法计数至零时,生成停止信号,并经所述第三时钟同步单元将所述停止信号发送至所述第二计数电路,所述第二计数电路响应于接收到所述停止信号而停止计数。
6.根据权利要求4所述的实时时钟校准电路,其特征在于,所述系统时钟利用控制寄存器生成所述开始信号,并通过所述第一时钟同步单元向所述第一计数电路发送所述开始信号,以及通过所述第二时钟同步单元向所述第二计数电路发送所述开始信号。
7.根据权利要求1所述的实时时钟校准电路,其特征在于,所述校准模块包括:
补偿周期计算电路,用于根据所述实时时钟和所述参考时钟的理想分频比和所述周期数,计算所述实时时钟的待补偿周期数;以及
时钟补偿电路,用于根据所计算的待补偿周期数校准所述实时时钟。
9.根据权利要求8所述的实时时钟校准电路,其特征在于,在所述统计模块对所述实时时钟进行减法计数以统计对应的周期数时,C1是所述实时时钟在一次时钟同步计数中的预设周期数;
并且,所述补偿周期计算电路还用于通过增大C1以提升所计算的所述实时时钟的待补偿周期数的准确度。
10.根据权利要求8所述的实时时钟校准电路,其特征在于,所述时钟补偿电路根据所计算的待补偿周期数校准所述实时时钟包括:
基于所述待补偿周期数Y和所述实时时钟的初始频率M,确定所述实时时钟的频率误差X=Y*M;
若所述待补偿周期数Y大于零,则在所述实时时钟处于计时阶段时,增加所述实时时钟的周期数,以使得所述实时时钟通过计时M+X个周期来补偿存在的频率误差;以及
若所述待补偿周期数Y小于零,则在所述实时时钟处于计时阶段时,减少所述实时时钟的周期数,以使得所述实时时钟通过计时M-X个周期来补偿存在的频率误差。
11.根据权利要求8所述的实时时钟校准电路,其特征在于,所述补偿周期计算电路还用于:在所计算的实时时钟的待补偿周期数Y为小数时,将待补偿周期数Y更新为Y*P,其中P为正整数。
12.根据权利要求1所述的实时时钟校准电路,其特征在于,所述系统时钟为具有任意时钟频率的时钟源。
13.一种实时时钟校准方法,其特征在于,包括:
在系统时钟、实时时钟和参考时钟处于时钟同步时,统计所述实时时钟和所述参考时钟的周期数,其中所述参考时钟被配置为具有固定频率;以及
根据所述实时时钟和所述参考时钟各自的频率和所述周期数,校准所述实时时钟。
14.根据权利要求13所述的实时时钟校准方法,其特征在于,所述统计所述实时时钟和所述参考时钟的周期数包括:
计数所述实时时钟和所述参考时钟在相对于所述系统时钟的一次时钟同步过程中的周期数;以及
在所述系统时钟、所述实时时钟和所述参考时钟处于时钟同步时,基于同步时钟进行关于所述实时时钟和所述参考时钟的周期数的计数。
15.一种芯片结构,其特征在于,所述芯片结构包括:
系统时钟、实时时钟和参考时钟;以及
权利要求1-12中任意一项所述的实时时钟校准电路,用于对所述实时时钟进行校准。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111362381.4A CN114296511A (zh) | 2021-11-17 | 2021-11-17 | 实时时钟校准电路、方法及芯片结构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111362381.4A CN114296511A (zh) | 2021-11-17 | 2021-11-17 | 实时时钟校准电路、方法及芯片结构 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114296511A true CN114296511A (zh) | 2022-04-08 |
Family
ID=80966420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111362381.4A Pending CN114296511A (zh) | 2021-11-17 | 2021-11-17 | 实时时钟校准电路、方法及芯片结构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114296511A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116909351A (zh) * | 2023-09-14 | 2023-10-20 | 深圳扬兴科技有限公司 | 一种时钟芯片内部时钟精度校正方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101452019A (zh) * | 2007-12-03 | 2009-06-10 | 扬智科技股份有限公司 | 时钟频率比较装置及方法 |
US20100295623A1 (en) * | 2009-05-22 | 2010-11-25 | Sirf Technology, Inc. | Systems and methods for calibrating real time clock |
US20110204945A1 (en) * | 2010-02-24 | 2011-08-25 | Fujitsu Semiconductor Limited | Calibration |
CN106569544A (zh) * | 2015-10-10 | 2017-04-19 | 上海东软载波微电子有限公司 | 实时时钟芯片及其时钟校准方法、装置 |
CN106788420A (zh) * | 2016-11-30 | 2017-05-31 | 上海顺久电子科技有限公司 | 一种信号频率检测方法、装置及信号频率控制器 |
CN107256065A (zh) * | 2017-07-14 | 2017-10-17 | 佛山华芯微特科技有限公司 | 一种实时时钟的处理系统及方法 |
CN107817871A (zh) * | 2016-09-10 | 2018-03-20 | 德州仪器德国股份有限公司 | 实时时钟的频率偏移校正精确度 |
CN113391539A (zh) * | 2021-06-16 | 2021-09-14 | 北京康斯特仪表科技股份有限公司 | 一种rtc时钟校准方法及工业现场校验装置 |
-
2021
- 2021-11-17 CN CN202111362381.4A patent/CN114296511A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101452019A (zh) * | 2007-12-03 | 2009-06-10 | 扬智科技股份有限公司 | 时钟频率比较装置及方法 |
US20100295623A1 (en) * | 2009-05-22 | 2010-11-25 | Sirf Technology, Inc. | Systems and methods for calibrating real time clock |
US20110204945A1 (en) * | 2010-02-24 | 2011-08-25 | Fujitsu Semiconductor Limited | Calibration |
CN106569544A (zh) * | 2015-10-10 | 2017-04-19 | 上海东软载波微电子有限公司 | 实时时钟芯片及其时钟校准方法、装置 |
CN107817871A (zh) * | 2016-09-10 | 2018-03-20 | 德州仪器德国股份有限公司 | 实时时钟的频率偏移校正精确度 |
CN106788420A (zh) * | 2016-11-30 | 2017-05-31 | 上海顺久电子科技有限公司 | 一种信号频率检测方法、装置及信号频率控制器 |
CN107256065A (zh) * | 2017-07-14 | 2017-10-17 | 佛山华芯微特科技有限公司 | 一种实时时钟的处理系统及方法 |
CN113391539A (zh) * | 2021-06-16 | 2021-09-14 | 北京康斯特仪表科技股份有限公司 | 一种rtc时钟校准方法及工业现场校验装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116909351A (zh) * | 2023-09-14 | 2023-10-20 | 深圳扬兴科技有限公司 | 一种时钟芯片内部时钟精度校正方法 |
CN116909351B (zh) * | 2023-09-14 | 2023-12-19 | 深圳扬兴科技有限公司 | 一种时钟芯片内部时钟精度校正方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2758838C1 (ru) | Устройство синхронизации по времени, электронное устройство, система синхронизации по времени и способ синхронизации по времени | |
US8422619B2 (en) | Clock frequency divider circuit, clock distribution circuit, clock frequency division method, and clock distribution method | |
TWI642277B (zh) | 分頻時鐘校準 | |
US20130215910A1 (en) | Transmission apparatus, transmission method, program, and communication system | |
US7605629B2 (en) | Adjusting circuit and method for delay circuit | |
JP2013024856A (ja) | 周波数測定方法及びそのシステム | |
JP2013024858A (ja) | 周波数校正方法及びそのシステム | |
WO2016054289A1 (en) | Digital open loop duty cycle correction circuit | |
KR20150007522A (ko) | 클럭 지연 검출회로 및 이를 이용하는 반도체 장치 | |
CN114296511A (zh) | 实时时钟校准电路、方法及芯片结构 | |
CN115987477A (zh) | 一种多参考源时间同步方法及系统及模块及介质 | |
JP2013024855A (ja) | 時間測定方法及びそのシステム | |
CN102916654A (zh) | 一种用于补偿晶振老化的方法 | |
CN116483161A (zh) | 芯片内部时钟源调节方法、装置、设备及存储介质 | |
JP2008172574A (ja) | クロック位相シフト回路 | |
CN114528998B (zh) | 用于量子测控系统的多板卡信号同步方法、设备及介质 | |
US9104364B2 (en) | Generation and distribution of steered time interval pulse to a plurality of hardware components of the computing system | |
CN113206665A (zh) | 一种信号采样方法及装置 | |
JP2013024857A (ja) | 速度測定方法及びそのシステム | |
JP6512640B1 (ja) | 非同期fifo回路 | |
JP7114012B2 (ja) | 時刻同期装置、時刻同期方法、及び、時刻同期プログラム | |
CN111446960A (zh) | 一种时钟输出电路 | |
JP6682055B1 (ja) | 時刻同期装置、時刻同期方法及び時刻同期プログラム | |
CN117092444B (zh) | 不依靠仪器间接测量dtc步进的方法、系统、设备及介质 | |
CN116388919B (zh) | 一种基于工业以太网实现从站同步的方法和从站 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |