实时时钟校准系统及其方法

文档序号:6461492阅读:1459来源:国知局
专利名称:实时时钟校准系统及其方法
技术领域
本发明是关于校准实时时钟(Real Time Clock,以下简称为RTC),尤其是 关于一种利用平均校准方法来校准RTC的方法。
背景技术
实时时钟(Real Time Clock,以下简称为RTC)是4艮多电子装置的必要元件, 它是利用晶体来执行定时的功能。晶体在预设的频率振荡,并在完成预设振荡 数目后以一秒来更新计数器。振荡的频率随温度改变而不同,而当环境条件改 变时,晶体的精确度也会受到影响。此外,晶体的质量也会影响精确度,即, 某些状况下,晶体的振荡将较预期值稍快或稍慢,因此完成预设振荡数目的时 间将无法精确地等于一秒,从而导致时钟定时不够精确。上述情况中即需要执 行校准操作以校正定时误差。
若累积误差相对较大,校准点将出现显著突升,这种情况会给使用者造成 困扰。

发明内容
本发明克服了现有技术定时不够精确的不足,提供了一种校准实时时钟 (Real Time Clock,以下筒称为RTC)的系统及其方法,以达到比现有4支术出色 的精确度。
为解决上述的技术问题,依据本发明技术方案的一实施例提供一种RTC校 准系统。系统包含有定时计数器(timer counter);时钟发生器;校准参数刷新 单元(calibration parameter refresh unit);以及时钟校准单元。时钟校准单元耦 合于定时计数器、时钟发生器与校准参数刷新单元之间。校准参数刷新单元在 达到第一校准周期(calibration period)的最后一秒前,以第一校准参数作为输出 校准参数,而在达到第一校准周期的最后一秒时,以第二校准参数作为输出校 准参数,以替代第一校准参数。时钟校准单元依据时钟发生器所产生的多个时 钟周期(clock cycle)及校准参数刷新单元所提供的输出校准参数,使定时计数器进行递增(increment)。
本发明还提供另 一种RTC校准系统的实施例。RTC校准系统包含有定时 计数器;时钟发生器;以及时钟校准单元。时钟校准单元耦合于时钟发生器与 定时计数器之间,用于接收包含平均校准值、余数(remainder)校准值及校准 周期的校准参数;计数时钟发生器所产生的多个时钟周期;在校准周期期间依 据平均校准值和余数校准值来校准计数得到的时钟周期的数目;以及当达到时 钟周期的预i殳数目时^f吏得定时计数器递增一秒(incremented by one second)。
本发明也揭露一种RTC校准方法的实施例。此方法包含有在达到第一校 准周期的最后一秒前,提供第一校准参数作为输出校准参数;当达到第一校准 周期最后一秒时,提供第二校准参数作为输出校准参数,以替代第一校准参数; 以及依据时钟发生器所产生的多个时钟周期及所提供的输出校准参数,使定时 计数器进行递增。实用中定时计数器约为递增一秒。
本发明还揭露另一种RTC校准方法的实施例。此方法包含有接收包含平 均校准值、余数校准值及校准周期的校准参数;计数时钟发生器所产生的多个 时钟周期;在校准周期期间依据平均校准值和余数校准值来校准计数所得到的 时钟周期;以及当达到时钟周期的预设数目时使得定时计数器递增一秒。
本发明的RTC校准系统及方法与现有技术相比,其有益效果表现于利用 平均校准效应在一定时间期间内做持续校准,避免了校准点的显著跳变,提高 了时钟定时的精确度,从而可达到更好的校准效果。


图l显示对应于晶体振荡的时钟周期。
图2是依据本发明实施例的实时时钟校准系统的示意图。
图3是图2中所示的校准参数刷新单元实施例的示意图。
图4显示本发明的实时时钟校准方法的实施例的步骤流程图。
具体实施例方式
本发明旨在利用一种平均校准效应,而不是执行类似于现有技术的突发 (burst)式校准。通过在一定时间期间内做持续校正,而不是集中在一个阶段 执行全部校准,从而可获得更出色的校准效果。
阅读了下文对附图所示的优选实施例的详细描述之后,本发明的上述及其它目的对所属领域的技术人员而言将显而易见。
典型晶体的振荡频率为32.768KHz,当晶体内部出现不精确的状况时,此振 荡频率将提高或降低。实时时钟(Real Time Clock,以下简称为RTC)通过向预 设振荡数目增加或从中减少一定数目的振荡来进行校准。假设,举例来说,由 于晶体不精确而导致其每秒振荡额外的x次,则预设振荡数目必须同样增加X 次。由于不完整的振荡无法添加,系统必须等到误差/不精确累积为整数的振荡。 请参照图1,图l显示对应于晶体振荡的时钟周期(clock cycle),其中晶体内部 的不精确导致了 3/4周期(0.75t)的误差。由于仅可校准整数的振荡,因此系统 必须等待四秒钟,直到误差累积为整数,即3个周期(3t),然后可在四秒后的 时间点校准整体误差。上述情形即为熟知的突发式校准。
请参照图2,图2是依据本发明实施例的RTC校准系统200的示意图。RTC 校准系统200包含有时钟发生器220,用于产生对应于RTC晶体振荡的多个 时钟周期;时钟校准单元230,耦合于时钟发生器220,时钟校准单元230包含 有RTC计数器240,用于计数时钟周期的数目,并在达到时钟周期的预设数目 时产生一个信号,此信号被传送至定时计数器(timer counter) 250,用于指示定时 计数器250以一秒更新其所显示的时间。时钟校准单元230校准(或调整)RTC 计数器240所计数的时钟周期的数目,从而保证计数更加准确。
校准参数刷新单元(calibration parameter refresh unit) 210耦合于时钟校准 单元230及定时计数器250。本发明的实施例设定了校准周期(calibration period) 以执行校准操作,此校准周期设为几秒钟的时间。当校准周期完成时,校准参 数刷新单元210将更新输入至时钟校准单元230的校准值与校准周期。
下文将详述依据本发明实施例的RTC校准方法。本例中,需向时钟周期的 预设数目添加的时钟周期的数量为19个。传统方法是在一个突发脉冲群(burst) 中校准全部19个时钟周期,而依据本发明实施例的方法,利用需校准的时钟周 期的整体数目与确定的校准周期长度来计算出平均校准值与余数(remainder) 校准值,此平均校准值可用于在确定的校准周期的每一秒钟对RTC计数器240 进行校准,而此余数校准值可用于在确定的校准周期的最后一秒对RTC计数器 240进行校准,从而减少了对使用者影响明显的失真量。本例中,确定的校准周 期长度为8秒,请注意,校准周期的确定旨在得到最为精确的校准结果。由确 定的校准周期进行校准的时钟周期的数量在某些情况下可能并非整数,因此本 发明的实施例中设定了平均因子Q和余数因子R,其中RTC计数器240在校准周期的最后一秒由因子Q+R校准。本例中,Q = 2iR = 3, Q或R也可设定为 负整数,所属领域的技术人员当可理解。因此,在0秒至6秒的前七秒时间期 间内,RTC校准系统200通过校准RTC计数器240,每秒将添加Q个时钟周期 (2 )至时钟发生器220最初产生的时钟周期的数目。通过校准RTC计数器240, RTC校准系统200在校准周期的最后一秒将添加Q+R个时钟周期(2+3),即5 个时钟周期,至时钟发生器220最初产生的时钟周期的数目。请注意,添加的Q 与R的数值未由RTC计数器实际计数。所属领域的技术人员应可领悟到若一 秒内时钟周期达到一个特定值,如100t, 200t, 300t等,此时执行上述添加的操 作也是可行的。
如同利用校准周期的最后一秒由Q+R来校准RTC计数器240 —样,校准周 期的最后一秒也可用于更新平均校准值与余数校准值。请参照图3,图3是图2 中所示的校准参数刷新单元210的实施例的示意图。校准参数刷新单元210包 含凄t值存卞者单元(value storage unit) 2121 与周期存々者单元(period storage unit) 2125,数值存储单元2121用于存储校准值Q和R,以及周期存储单元2125 用于存储校准周期Max。所存储的Q、 R以及Max称为校准参数,其可视为第 一校准参数,输入至时钟校准单元230以作校准之用,如图2中所示。新的校 准值Q,、 R,以及新的校准周期Max,可视为第二校准参数,输入至新数值存储单 元2101与新周期存储单元2105。新数值存储单元2101耦合于第一多路复用器 2111,第一多路复用器2111的输出端耦合于数值存储单元2121,其中数值存储 单元2121的输出也是第一多路复用器2111的输入。类似地,新周期存储单元 2105耦合于第二多路复用器2115,第二多路复用器2115的输出端耦合于周期 存储单元2125,其中周期存储单元2125的输出也作为第二多路复用器2115的 输入。周期存储单元2125的输出也输入至决策单元2130,其中决策单元2130 的输出作为与门(ANDgate)2107的输入。与门2107的另一输入是更新标记存储 单元(update flag storage unit) 2103的输出,当确定了新的校准值与校准周期时, 此输入端会接收一个正信号(positive signal )。与门2107的输出作为第一多路复 用器2111与第二多路复用器2115的选择信号。因此,当从更新标记存储单元 2103接收到正信号,并且决策单元2130的输出也为正信号时,与门2107将输 出一个正选择信号,指示第一多路复用器2111与第二多路复用器2115分别输出 新的校准值Q,、 R,以及新的校准周期Max,。新的校准值Q,、 R,以及新的冲交准 周期Max,更新后输入至时钟校准单元230,如图2中所示。输入的信号还包括相应的计数值ctr。所属领域的技术人员当可理解, 一次仅更新参数Q,、 R,与 Max,中的一个或两个也是允许的。若当前校准周期尚未达到最大值,第一多路 复用器2111与第二多路复用器2115将继续输出初始校准值Q、 R以及初始校准 周期Max。 一个或多个的数值存储单元2121、周期存储单元2125、新数值存储 单元2101、新周期存储单元2105以及更新标记存储单元2103,实用时可通过 多个触发器(flip-flops)来实现。
决策单元2130包含比较单元2131,用于将秒数目与校准周期最大值减去一 所得到的数值相比较,其中若上述两数值相等,则与门2107将接收到一个正信 号,即表示达到了校准周期的最后一秒。比较单元2131耦合于计数存储单元 (counter storage unit) 2133,计数存储单元2133耦合于模数(modulus)单元 2135,计数值每增加一,模数单元2135即对此计数值执行模数计算操作。所属 领域的技术人员当可理解,此计数值是来自图2中所示的定时计数器250。
多路复用器2111与2115,与门2107,决策单元2130以及更新标记存储单 元2103可视为参数更新单元。参数更新单元用于在计数存储单元2133所存储 的计数值达到校准周期的最后一秒时,以新的Q,、R,及/或Max,更新所存储的Q、 R及/或Max,并且将新的Q,、 R,及/或Max,存储到新tt值存储单元2101和新周 期存储单元2105。
请再次参照图2。在时钟校准单元230或校准参数刷新单元210中,当校准 周期Max/Max,等于2An时,平均校准值Q/Q,及余数校准值R/R,可表示为长度 为8比特的数值X[bm-i:bo],其中表示最高位以及b。表示最低位。因此,可 确定平均值Q/Q,为X[bm-1: bn],所属领域的技术人员应可理解,当Q/Q,表示一 个负整数时,X[tw!: bj是一个以2的补码表示的数值(2,s complement value )。 余数值R/R,等于X[bn.1: bQ]。举例来说,当校准周期等于8秒钟(即2A3秒)时, 此长度为8比特的数值是由平均校准值X[b7: b3]与余数校准值X[b2: bo]组成。因 此,在上述校准周期前七秒钟的任一秒,RTC计数器的计数值等于RTC一ctr + X[b^: bn],而在校准周期的最后一秒,RTC计数器的默认值等于RTC—ctr + X[bm.1: bn] + X[bn-r. bo],其中RTC—ctr表示在特定一秒时间内时钟发生器220所 产生的实际振荡数目。
请参照图4,图4是图2所示的时钟校准单元230所应用的依据本发明实施 例的校准方法的步骤流程图。此方法包含下列步骤
步骤402: ctr = 0;步骤404: RTC—ctr = RTC—ctr + Q; 步骤406: ctr++;
步骤408: ctr = max-1 若相等,执行步骤410;若不等,返回步骤404; 步骤410: RTC—ctr = RTC—ctr + Q + R; ctr = 0 。
计数器初始值为0(步骤402),当接收到新的校准值时,在校准周期的第 一秒由Q来更新RTC计数器(步骤404 )。然后计数器由1更新(步骤406 ), 并且执行一次比较操作以判定当前秒是否为校准周期的最后一秒(步骤408)。 若当前秒并非校准周期的最后一秒,则流程返回至步骤404,再次由Q更新RTC 计数器,并且计数器在步骤406中由1更新。若比较结果确定了当前秒即为校 准周期的最后一秒,则将执行步骤410,此时RTC计数器由Q+R进行更新,且计 数器的计数值恢复为0。
下文进一步描述了上述流程图执行细节的实施例。 一旦校准参数发生改变, 步骤402与步骤404在校准周期的第一秒内轮流执行,以Q更新RTC计数器。 在非校准周期第一秒与最后一秒的一秒内,步骤406、 408与404持续执行,以 Q更新RTC计数器。在校准周期最后一秒,步骤406、 408与410持续执行,以 Q+R更新RTC计数器。校准周期最后一秒过后,将开始下一校准周期。当校准 参数未发生改变时,在下一校准周期的第一秒执行步骤404,以Q更新RTC计 数器,后续几秒的校准操作可类推得到。
由于校准可连续执行而不是突发式,因此可达到不精确时间与精确时间的 平滑过渡。当前校准周期也可作为一种标志,用来确定何时更新新的校准值至 时钟校准单元230。
所属领域的技术人员在不脱离本发明的精神和范围内,当可对本发明的装 置与方法做些许更动与润饰,因此本发明的保护范围应以权利要求书所界定的 范围为准。
权利要求
1. 一种实时时钟校准系统,包含有定时计数器;时钟发生器;校准参数刷新单元,在达到第一校准周期的最后一秒前,以第一校准参数作为输出校准参数,而在达到该第一校准周期的最后一秒时,以第二校准参数作为输出校准参数,以替代该第一校准参数;以及时钟校准单元,耦合于该定时计数器、该时钟发生器与该校准参数刷新单元之间,依据该时钟发生器所产生的多个时钟周期及该校准参数刷新单元所提供的该输出校准参数,使该定时计数器进行递增。
2. 如权利要求1所述的实时时钟校准系统,其特征在于,该校准参数刷新 单元更包含第一周期存储单元,用于接收、存储与输出该第一校准周期; 第一数值存储单元,用于接收、存储与输出该第一校准参数的第一平均校 准值,或该第一校准参数的第一余数校准值;以及参数更新单元,耦合于该第一周期存储单元与该第一数值存储单元的输入 端,该参数更新单元分别利用该第二校准参数的第二平均校准值及第二余数校 准值,来更新存储在该第 一数值存储单元的该第 一平均校准值与该第 一余数校 准值,并且该参数更新单元是在该定时计数器的计数值达到该第一校准周期的 最后一秒,并侦测到所提供的该第二平均校准值与该第二余数校准值时,执行 该更新操作,其中该计数值对应于该定时计数器更新后的当前值。
3. 如权利要求2所述的实时时钟校准系统,其特征在于,该参数更新单元 更包含第一多路复用器,耦合于该第二平均校准值与该第二余数校准值的输出端、 该第一数值存储单元的输入端与该第一数值存储单元的输出端之间,用于依据 选择信号,选择性地输出伴随有该第一余数校准值的该第一平均校准值与伴随 有该第二余数校准值的该第二平均校准值至该第一数值存储单元;以及第二多路复用器,耦合于第二校准周期的输出端、该第一周期存储单元的 输入端与该第一周期存储单元的输出端之间,用于依据该选择信号,选择性地输出该第 一校准周期与该第二校准周期至该第 一周期存储单元。
4. 如权利要求3所述的实时时钟校准系统,其特征在于,该第二平均校准 值与该第二余数校准值来自第二数值存储单元,以及该第二校准周期来自第二 周期存储单元。
5. 如权利要求3所述的实时时钟校准系统,其特征在于,该参数更新单元 更包含决策单元,耦合于该第一周期存储单元的输出端与该定时计数器的输出端 之间,用于在该计数值达到该第一校准周期的最后一秒时,依据该第一周期存 储单元的输出与该定时计数器的输出,输出正信号;更新标记存储单元,在侦测到所提供的该第二平均校准值和该第二余数校 准值时,输出正信号;以及与门,耦合于该更新标记存储单元的输出端与该决策单元的输出端之间, 用于在侦测到来自该更新标记存储单元的该正信号与来自该决策单元的该正信 号时,输出该选择信号,以指示该第一多路复用器输出伴随有该第二余数校准 值的该第二平均校准值至该第 一数值存储单元,并指示该第二多路复用器输出 该第二校准周期至该第一周期存储单元。
6. 如权利要求5所述的实时时钟校准系统,其特征在于,该决策单元包含 计算单元,用于确定更新后的该计数值的模数;计数存储单元,用于存储更新后的该计数值的模数;以及 比较单元,耦合于该计数存储单元、该第一周期存储单元的输出端与该与 门的输入端,用于比较更新后的该计数值的模数与该第一周期存储单元所输出 的该第 一校准周期,以及当更新后的该计数值的模数等于该第一校准周期减一 时,该比较单元输出该正信号至该与门。
7. 如权利要求1所述的实时时钟校准系统,其特征在于,该时钟校准单元 依据该第一平均校准值来校准由该时钟发生器在一秒时间内所产生的该多个时 钟周期的计数,该一秒不是该第一校准周期的最后一秒;该时钟校准单元还依 据该第 一平均校准值和该第 一余数校准值来校准由该时钟发生器在该第 一校准 周期的最后 一秒内所产生的该多个时钟周期的计数。
8. —种实时时钟校准方法,包含有在达到第 一校准周期的最后一秒前,提供第 一校准参数作为输出校准参数; 当达到该第一校准周期的最后一秒时,提供第二校准参数作为输出校准参数,以替代该第一校准参数;以及依据时钟发生器所产生的多个时钟周期与所提供的该输出校准参数,使定 时计数器进行递增,其中,该定时计数器约为递增一秒。
9. 如权利要求8所述的实时时钟校准方法,其特征在于,该提供该第二校 准参数的步骤更包含当侦测到计数值达到该第一校准周期的最后一秒时,以该第二校准参数的 第二平均校准值与第二余数校准值来更新该第一校准参数的第一平均校准值与第一余数校准值,其中该计数值对应于该定时计数器更新后的当前值。
10. 如权利要求9所述的实时时钟校准方法,其特征在于,该提供该第二校 准参数的步骤更包含确定更新后的该计数值的模数;比较更新后的该计数值的模数与该第 一校准周期;以及 当更新后的该计数值的模数等于该第 一校准周期减 一 时,确定该计数值达 到该第一^f交准周期的最后 一秒。
11. 一种实时时钟^^准系统,包含有 定时计数器;时钟发生器;以及时钟校准单元,耦合于该时钟发生器与该定时计数器之间,用于接收包含 平均校准值、余数校准值及校准周期的多个校准参数,计数该时钟发生器所产 生的多个时钟周期,在该校准周期期间依据该平均校准值和该余数校准值校准 计数得到的该多个时钟周期的数目,以及当达到时钟周期的预设数目时使得该 定时计数器递增一秒。
12. 如权利要求11所述的实时时钟校准系统,其特征在于,该时钟校准单 元包含有实时时钟计数器,用于计数该时钟发生器所产生的该多个时钟周期,以及 当计数达到时钟周期的该预设数目时,输出信号至该定时计数器以使该定时计 it器递增一秒。
13. 如权利要求12所述的实时时钟校准系统,其特征在于,该时钟校准单 元更校准该实时时钟计数器,依据该平均校准值另外增加或减少一秒时间内计数的该多个时钟周期的数目,该一秒不是该校准周期的最后一秒;以及依据该 平均校准值和该余数校准值另外增加或减少在该校准周期的最后一秒内计数的 该多个时钟周期的数目。
14. 如权利要求11所述的实时时钟校准系统,其特征在于,该平均校准值 与该余数校准值以长度为m比特的数值表示,该校准周期等于2An,其中m>0 且n〉0。
15. 如权利要求14所述的实时时钟校准系统,其特征在于,X表示该长度 为m比特的数值,b^表示该数值的最高位,bo表示该数值的最低位,X[bm—i:bn] 表示平均值,以及X[bn: b。]表示余数。
16. —种实时时钟校准方法,包含有接收包含平均校准值、余数校准值及校准周期的多个校准参数; 计数时钟发生器所产生的多个时钟周期;在该校准周期期间依据该平均校准值和该余数校准值来校准计数所得到的 该多个时钟周期;以及当达到时钟周期的预设数目时使得定时计数器递增一秒。
17. 如权利要求16所述的实时时钟校准方法,其特征在于,该校准步骤更 包含依据该平均校准值另外增加或减少一秒时间内计数的该多个时钟周期的数 目,该一秒不是该校准周期的最后一秒;以及依据该平均校准值和该余数校准值另外增加或减少在该校准周期的最后一 秒内计数的该多个时钟周期的数目。
18. 如权利要求16所述的实时时钟校准方法,其特征在于,该平均校准值 与该余数校准值以长度为m比特的数值表示,该校准周期等于2An,其中m>0 且nX)。
19. 如权利要求18所述的实时时钟校准方法,其特征在于,X表示该长度 为m比特的数值,b^表示该数值的最高位,bo表示该数值的最低位,X[bm.1:bn] 表示平均值,以及X[bn4:b()]表示余数。
全文摘要
本发明提供一种实时时钟校准系统,包含有定时计数器;时钟发生器;以及时钟校准单元。时钟校准单元耦合于时钟发生器与定时计数器之间,用于接收包含平均校准值、余数校准值及校准周期的校准参数;计数时钟发生器所产生的多个时钟周期;在校准周期期间依据平均校准值和余数校准值来校准计数得到的时钟周期的数目;以及当达到时钟周期的预设数目时使得定时计数器递增一秒。本发明所揭露的实时时钟校准系统,利用平均校准效应在一定时间期间内做持续校准,避免了校准点的显著跳变,提高了时钟定时的精确度,从而达到了更好的校准效果。
文档编号G06F1/14GK101452307SQ20081008432
公开日2009年6月10日 申请日期2008年3月18日 优先权日2007年12月7日
发明者杨宗宪, 柯智伟 申请人:联发科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1