发明内容
有鉴于此,本发明提供一种振荡器装置及振荡器频率校准方法,能够解决现有技术中振荡器容易受外部环境变化的影响,继而导致输出的时钟信号频率产生较大误差的问题。
为解决上述技术问题,本发明采用以下技术方案:
第一方面,本发明实施例提供了一种振荡器装置,该振荡器装置包括:
参考振荡器,用于输出参考振荡器信号;
目标振荡器,用于输出目标振荡器信号;
计数模块,用于在对所述参考振荡器信号的周期计数至预设计数值的时长内,对所述目标振荡器信号的周期进行计数,得到第一计数值;
比较模块,用于将所述第一计数值与目标计数值进行比较,得到比较结果;
修正模块,用于根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率;
其中,所述参考振荡器信号的频率低于所述目标振荡器信号的频率。
可选的,所述目标计数值等于所述目标振荡器的目标输出频率乘以所述预设计数值再除以所述参考振荡器信号的频率。
可选的,所述比较模块包括:
计算单元,用于计算所述第一计数值和目标计数值的差值;
所述振荡器装置还包括:
误差控制模块,用于在所述差值超出预设误差范围的情况下,控制所述修正模块对所述目标振荡器输出的目标振荡器信号的频率进行修正,在所述差值未超出预设误差范围的情况下,控制所述修正模块停止对所述目标振荡器输出的目标振荡器信号的频率进行修正。
可选的,所述修正模块包括:
第一修正单元,用于在所述第一计数值小于所述目标计数值的情况下,提高所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值;
第二修正单元,用于在所述第一计数值大于所述目标计数值的情况下,降低所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值。
可选的,还包括:
跟踪步长设置模块,用于根据所述比较结果,设置跟踪步长,所述跟踪步长用于确定所述修正模块在修正所述目标振荡器输出的目标振荡器信号的频率时的修正幅度。
可选的,所述跟踪步长:
ERVAL=A*|(N-K)|,
其中,ERVAL为所述跟踪步长,A为预设系数,N为所述目标计数值,K为所述第一计数值。
本发明另一方面实施例提供了一种振荡器频率校准方法,该振荡器频率校准方法包括:
在对参考振荡器输出的参考振荡器信号的周期计数至预设计数值的时长内,对目标振荡器输出的目标振荡器信号的周期进行计数,得到第一计数值;
将所述第一计数值与目标计数值进行比较,得到比较结果;
将所述第一计数值与目标计数值进行比较,得到比较结果;
根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率;
其中,所述参考振荡器信号的频率低于所述目标振荡器信号的频率。
可选的,所述目标计数值等于所述目标振荡器的目标输出频率乘以所述预设计数值再除以所述参考振荡器信号的频率。
可选的,所述将所述第一计数值与目标计数值进行比较,得到比较结果,包括:
计算所述第一计数值和目标计数值的差值;
所述根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率,包括:
在所述差值超出预设误差范围的情况下,对所述目标振荡器输出的目标振荡器信号的频率进行修正。
可选的,所述根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率,包括:
在所述第一计数值小于所述目标计数值的情况下,提高所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值;
在所述第一计数值大于所述目标计数值的情况下,降低所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值。
可选的,还包括:
根据所述比较结果,设置跟踪步长,所述跟踪步长用于确定在修正所述目标振荡器输出的目标振荡器信号的频率时的修正幅度。
可选的,所述跟踪步长:
ERVAL=A*|(N-K)|,
其中,ERVAL为所述跟踪步长,A为预设系数,N为所述目标计数值,K为所述第一计数值。
本发明上述技术方案的有益效果如下:
根据本发明实施例的振荡器装置,通过使目标振荡器信号跟踪参考振荡器信号,可以降低目标振荡器信号的频率波动,并且目标振荡器不需要使用接口时钟,因此负载较低、功耗也较小。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,为现有技术中的一种RC振荡器的结构示意图。如图1所示,通用的RC振荡器原理较简单,具有体积较小、功耗较低的优点,但是在输出较高频率的时钟的情况下,由温度引起的频率变化较大。
请参考图2,为现有技术中的一种采用锁相环的高速振荡器的结构示意图。如图2所示,常见的采用锁相环(Phase Locked Loop,PLL)的高速振荡器包括相位检测器、充电泵、环路滤波器、压控振荡器、分频器等,其原理较复杂,具有输出的时钟信号的频率变化小、输出频率可实时跟踪的优点,但是这类振荡器尺寸很大、功耗也很高,并且,在显示***中,采用锁相环属于过度设计,会造成成本的增加。
由此,请参考图3,为本发明实施例提供的一种振荡器装置的结构示意图。如图3所示,本发明实施例提供的振荡器装置可以包括:
参考振荡器31,用于输出参考振荡器信号;
目标振荡器32,用于输出目标振荡器信号;
计数模块33,用于在对所述参考振荡器信号的周期计数至预设计数值的时长内,对所述目标振荡器信号的周期进行计数,得到第一计数值;
比较模块34,用于将所述第一计数值与目标计数值进行比较,得到比较结果;
修正模块35,用于根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率;
其中,所述参考振荡器信号的频率低于所述目标振荡器信号的频率。
本发明实施例中,参考振荡器31输出的参考振荡器信号的频率较低,受所处的环境条件(例如温度等因素)的影响几乎可以忽略,在设置参考振荡器31输出频率为一给定值的参考振荡器信号之后,可以认为参考振荡器31输出的参考振荡器信号的频率将一直保持不变。而目标振荡器的频率较高,较容易受所处的环境条件(例如温度等因素)的影响,即在设置目标振荡器32输出频率为一给定值的目标振荡器信号之后,若所处位置的温度升高或降低将导致其频率发生波动,因此在目标振荡器输出的目标振荡器信号的频率发生波动时,需要对其进行修正,以使目标振荡器信号的频率修正为目标输出频率。
本发明的一些实施例中,一定频率范围内,参考振荡器信号的频率越低,参考的可信度越高。其中,可以使参考振荡器信号为低速时钟信号,目标振荡器信号为高速时钟信号。
在本发明实施例中,参考振荡器31输出的参考振荡器信号送至计数模块33中进行计数,同时,目标振荡器32输出的目标振荡器信号也被送至计数模块33中进行计数,所述计数是指计数模块33对输入的信号的周期进行计数。其中,可以预设对参考振荡器信号的计数值,从而在对参考振荡器信号的周期计数至预设计数值的时长内,也同步对目标振荡器信号的周期进行计数,得到第一计数值,也即,在对参考振荡器信号开始计数的同时,也对目标振荡器信号开始计数,在对参考振荡器信号的周期计数值预设计数值时,停止对参考振荡器信号和目标振荡器信号的计数,从而获得在该段时间内对目标振荡器信号的周期的第一计数值。
本发明实施例中,比较模块34则用于将所述第一计数值与目标计数值进行比较,得到两者的比较结果;其中,由于参考振荡器信号为一给定值,而目标振荡器所要输出的目标输出频率也是一确定值,因此,对所述参考振荡器信号的周期的计数值确定时,目标计数值也被唯一确定。具体的,目标计数值可以等于所述目标振荡器的目标输出频率乘以所述预设计数值再除以所述参考振荡器信号的频率。也就是说,由于参考振荡器信号为一给定值,而目标振荡器的目标输出频率也是一确定值,因此两者的比值确定,对所述参考振荡器信号的周期的计数值确定时,目标计数值也可以被唯一确定;例如,参考振荡器信号的频率为1MHz,目标输出频率为100MHz,则参考振荡器信号的预设计数值为1时,也即参考振荡器信号的周期数为1时,目标计数值应等于目标输出频率100MHz乘以参考振荡器信号的周期数1,再除以参考振荡器信号的频率1MHz,最终得到目标计数值为100;又如,参考振荡器信号的预设计数值为10时,也即参考振荡器信号的周期数为10时,目标计数值应等于1000。
最终,修正模块35用于根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率。由此,通过将第一计数值与目标计数值进行比较,两者之间的差异即可用来指导修正目标振荡器输出的目标振荡器信号,以使目标振荡器信号的频率趋向于目标输出频率。
根据本发明实施例的振荡器装置,目标振荡器输出的目标振荡器信号跟踪参考振荡器输出的参考振荡器信号,可以降低目标振荡器输出的目标振荡器信号的频率波动,并且由于采用参考振荡器,因此不需要使用接口时钟,因此负载较低、功耗也较小。
在本申请的一些实施例中,所述比较模块包括:
计算单元,用于计算所述第一计数值和目标计数值的差值;
所述振荡器装置还包括:
误差控制模块36,用于在所述差值超出预设误差范围的情况下,控制所述修正模块35对所述目标振荡器32输出的目标振荡器信号的频率进行修正,在所述差值未超出预设误差范围的情况下,控制所述修正模块停止对所述目标振荡器32输出的目标振荡器信号的频率进行修正。
也就是说,本发明实施例中的振荡器装置还包括误差控制模块36,比较模块34中的计算单元用于计算所述第一计数值和目标计数值的差值,而误差控制模块36则用于根据计算单元计算得到的差值来判断是否控制修正模块35对目标振荡器32输出的目标振荡器信号的频率进行修正。具体的,在所述差值超出预设误差范围的情况下,控制修正模块35对目标振荡器32输出的目标振荡器信号的频率进行修正,在所述差值未超出预设误差范围的情况下,控制修正模块停止对目标振荡器32输出的目标振荡器信号的频率进行修正。从而,通过设定误差控制模块中的预设误差范围,使得振荡器装置只在所述差值超出预设误差范围的情况下才对目标振荡器信号的频率进行修正,从而避免了一直保持修正模式而导致的功耗上升问题。
请参考图4,为本发明实施例提供的目标振荡器的预设误差范围的示意图。如图4所示,可以根据目标振荡器32所处的工作环境来设定所述预设误差范围。示例性的,在精度要求较高的场景下,所述预设误差范围可以为±1MHz,而在精度要求相对较低的场景下,所述预设允许误差范围可以为±2MHz,甚至为±4MHz。
在本申请实施例中,可选的,所述修正模块35包括:
第一修正单元,用于在所述第一计数值小于所述目标计数值的情况下,提高所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值;
第二修正单元,用于在所述第一计数值大于所述目标计数值的情况下,降低所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值。
由于第一计数值与目标计数值之间的差异表征目标振荡器当前输出的目标振荡器信号的频率与目标输出频率之间的差异,因此,在所述第一计数值小于所述目标计数值的情况下,意味着目标振荡器当前输出的目标振荡器信号的频率低于目标输出频率,则此时应该提高所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值,即目标振荡器当前输出的目标振荡器信号的频率等于目标输出频率;而在所述第一计数值大于所述目标计数值的情况下,意味着目标振荡器当前输出的目标振荡器信号的频率高于目标输出频率,则此时应该降低所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值,即目标振荡器当前输出的目标振荡器信号的频率等于目标输出频率。
请参考图5,为本发明实施例提供的第一计数值的示意图。如图5所示,示例性的,参考振荡器信号的周期数为1,对应的目标计数值为N,则如果第一计数值为N+1或N+2,则意味着目标振荡器当前输出的频率信号的频率高于目标输出频率,则此时应该降低所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于N;而如果第一计数值为N-1或N-2,则意味着目标振荡器当前输出的频率信号的频率低于目标输出频率,则此时应该提高所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于N。
本发明的另一些实施例中,若利用误差控制模块设置了一定的预设误差范围,则只需要通过调整所述目标振荡器输出的目标振荡器信号的频率,直至第一计数值与目标计数值之间的差值落在所述预设误差范围内即可。例如,预设误差范围是±10,即目标计数值与第一计数值之间的差值的绝对值为10,则只需要通过调整所述目标振荡器输出的目标振荡器信号的频率,直至第一计数值与目标计数值之间的差值小于10即可。
本发明实施例中,可选的,所述振荡器装置还包括:
跟踪步长设置模块37,用于根据所述比较结果,设置跟踪步长,所述跟踪步长用于确定所述修正模块在修正所述目标振荡器输出的目标振荡器信号的频率时的修正幅度。
也就是说,本发明实施例中,由于第一计数值和目标计数值之间的差值可能会发生一定的变化,因此,本发明实施例还可以根据第一计数值和目标计数值的差值来设置跟踪步长,也即使跟踪步长随差值的变化而变化,从而使目标振荡器输出的目标振荡器信号更好地跟踪参考振荡器信号,同时也可以降低功耗。
可选的,所述跟踪步长:
ERVAL=A*|(N-K)|,
其中,ERVAL为所述跟踪步长,A为预设系数,N为所述目标计数值,K为所述第一计数值。A的值可以根据|(N-K)|的值的大小进行设定,若|(N-K)|的值减小,A的值可以相应设置减小,使得跟踪步长减小,反之亦然。
换言之,跟踪步长随差值|(N-K)|的变化规律可以为:差值|(N-K)|越大,跟踪步长越大,差值|(N-K)|越小,跟踪步长越小;也就是说,差值|(N-K)|越大,则表明目标振荡器输出的目标振荡器信号的频率和目标输出频率相差较大,此时应增大跟踪步长,即加大修正幅度,以快速地将误差缩小,而差值|(N-K)|越小,则表明目标振荡器输出的目标振荡器信号的频率和目标输出频率相差较小,输出的频率较为准确,此时可以减小跟踪步长,即缩小修正幅度,以更精确、更快速地将目标振荡器输出的目标振荡器信号的频率修正至和目标输出频率一致。
请参考图6,为本发明实施例提供的跟踪步长的示意图。如图6所示,本发明实施例中,跟踪步长的大小随差值的变化而变化,从而使目标振荡器输出的目标振荡器信号更好地跟踪参考振荡器信号,同时也可以降低功耗。
根据本发明实施例的振荡器装置,通过使目标振荡器信号跟踪参考振荡器信号,可以降低目标振荡器信号的频率波动,并且目标振荡器不需要使用接口时钟,因此负载较低、功耗也较小。
请参考图7,为本发明实施例提供的一种振荡器频率校准方法的流程示意图。如图7所示,本发明另一方面实施例还提供了一种振荡器频率校准方法,该方法为与上述振荡器装置对应的方法实施例,该方法可以包括以下步骤:
步骤71:在对参考振荡器输出的参考振荡器信号的周期计数至预设计数值的时长内,对目标振荡器输出的目标振荡器信号的周期进行计数,得到第一计数值。
本发明实施例中,具体的,可以通过参考振荡器输出参考振荡器信号,参考振荡器信号为一给定值;然后预设参考振荡器信号的计数值,也即利用计数器对参考振荡器信号的周期进行计数并预设计数值,例如预设计数值为1,即参考振荡器信号的预设周期数为1,预设计数值为100,则参考振荡器信号的预设周期数为100;在对所述参考振荡器信号的周期计数至预设计数值的时长内,即在计数器由0计数至参考振荡器信号的预设计数值的这段时间内,对目标振荡器输出的目标振荡器信号的周期进行计数,得到第一计数值。
本发明实施例中,参考振荡器信号的频率低于目标振荡器输出的目标振荡器信号的频率,频率较低的参考振荡器信号具有较好的稳定性,并且受外界环境变化的影响小,可以保证频率参考的准确性,降低由于温度等引起的频率变化,一般来说,一定频率范围内,参考振荡器信号的频率越低,参考的可信度越高。其中,目标振荡器输出的目标振荡器信号可以为高速时钟信号。
步骤72:将所述第一计数值与目标计数值进行比较,得到比较结果。
本发明实施例中,通过将所述第一计数值与目标计数值进行比较,得到两者的比较结果;其中,由于参考振荡器信号为一给定值,而目标振荡器所要输出的目标输出频率也是一确定值,因此,对所述参考振荡器信号的周期的计数值确定时,目标计数值也被唯一确定。
在本发明实施例中,目标计数值可以等于所述目标振荡器的目标输出频率乘以所述预设计数值再除以所述参考振荡器信号的频率。也就是说,由于参考振荡器信号为一给定值,而目标振荡器的目标输出频率也是一确定值,因此两者的比值确定,对所述参考振荡器信号的周期的计数值确定时,目标计数值也可以被唯一确定;例如,参考振荡器信号的频率为1MHz,目标输出频率为100MHz,则参考振荡器信号的预设计数值为1时,也即参考振荡器信号的周期数为1时,目标计数值应等于目标输出频率100MHz乘以参考振荡器信号的周期数1,再除以参考振荡器信号的频率1MHz,最终得到目标计数值为100;又如,参考振荡器信号的预设计数值为10时,也即参考振荡器信号的周期数为10时,目标计数值应等于1000。
步骤73:根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率。
最终,通过将第一计数值与目标计数值进行比较,两者之间的差异即可用来指导修正目标振荡器输出的目标振荡器信号,以使目标振荡器信号的频率趋向于目标输出频率。
根据本发明实施例的振荡器频率校准方法,目标振荡器输出的目标振荡器信号跟踪参考振荡器输出的参考振荡器信号,可以降低目标振荡器输出的目标振荡器信号的频率波动,并且由于采用参考振荡器,因此不需要使用接口时钟,因此负载较低、功耗也较小。
本发明实施例中,可选的,所述将所述第一计数值与目标计数值进行比较,得到比较结果,包括:
计算所述第一计数值和目标计数值的差值;
所述根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率,包括:
在所述差值超出预设误差范围的情况下,对所述目标振荡器输出的目标振荡器信号的频率进行修正。
也就是说,本发明实施例中还可以进一步计算所述第一计数值和目标计数值的差值,并根据计算得到的差值来判断是否对目标振荡器输出的目标振荡器信号的频率进行修正。具体的,在所述差值超出预设误差范围的情况下,对目标振荡器输出的目标振荡器信号的频率进行修正,在所述差值未超出预设误差范围的情况下,停止对目标振荡器输出的目标振荡器信号的频率进行修正。从而,通过设定误差控制模块中的预设误差范围,使得振荡器装置只在所述差值超出预设误差范围的情况下才对目标振荡器信号的频率进行修正,从而避免了一直保持修正模式而导致的功耗上升问题。
所述根据所述比较结果,修正所述目标振荡器输出的目标振荡器信号的频率,包括:
在所述第一计数值小于所述目标计数值的情况下,提高所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值;
在所述第一计数值大于所述目标计数值的情况下,降低所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值。
由于第一计数值与目标计数值之间的差异表征目标振荡器当前输出的目标振荡器信号的频率与目标输出频率之间的差异,因此,在所述第一计数值小于所述目标计数值的情况下,意味着目标振荡器当前输出的目标振荡器信号的频率低于目标输出频率,则此时应该提高所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值,即目标振荡器当前输出的目标振荡器信号的频率等于目标输出频率;而在所述第一计数值大于所述目标计数值的情况下,意味着目标振荡器当前输出的目标振荡器信号的频率高于目标输出频率,则此时应该降低所述目标振荡器输出的目标振荡器信号的频率,直至所述第一计数值等于所述目标计数值,即目标振荡器当前输出的目标振荡器信号的频率等于目标输出频率。
在本发明的一些实施例中,可选的,所述频率校准方法还包括:
根据所述比较结果,设置跟踪步长,所述跟踪步长用于确定在修正所述目标振荡器输出的目标振荡器信号的频率时的修正幅度。
也就是说,本发明实施例中,由于第一计数值和目标计数值之间的差值可能会发生一定的变化,因此,本发明实施例还可以根据第一计数值和目标计数值的差值来设置跟踪步长,也即使跟踪步长随差值的变化而变化,从而使目标振荡器输出的目标振荡器信号更好地跟踪参考振荡器信号,同时也可以降低功耗。
可选的,所述跟踪步长:
ERVAL=A*|(N-K)|,
其中,ERVAL为所述跟踪步长,A为预设系数,N为所述目标计数值,K为所述第一计数值。A的值可以根据|(N-K)|的值的大小进行设定,若|(N-K)|的值减小,A的值可以相应设置减小,使得跟踪步长减小,反之亦然。
换言之,跟踪步长随差值|(N-K)|的变化规律可以为:差值|(N-K)|越大,跟踪步长越大,差值|(N-K)|越小,跟踪步长越小;也就是说,差值|(N-K)|越大,则表明目标振荡器输出的目标振荡器信号的频率和目标输出频率相差较大,此时应增大跟踪步长,即加大修正幅度,以快速地将误差缩小,而差值|(N-K)|越小,则表明目标振荡器输出的目标振荡器信号的频率和目标输出频率相差较小,输出的频率较为准确,此时可以减小跟踪步长,即缩小修正幅度,以更精确、更快速地将目标振荡器输出的目标振荡器信号的频率修正至和目标输出频率一致。
根据本发明实施例的频率校准方法,振荡器输出的频率信号跟踪参考振荡器信号,因此可以降低振荡器输出的频率信号的频率波动,并且振荡器不需要使用接口时钟,因此负载较低、功耗也较小。
以上所述是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。