一种时钟频率校准方法及装置与流程

文档序号:23987400发布日期:2021-02-20 12:27阅读:250来源:国知局
一种时钟频率校准方法及装置与流程

[0001]
本发明涉及嵌入式系统技术领域,尤其涉及一种时钟频率校准方法及装置。


背景技术:

[0002]
时钟信号是数字电路工作的基础。在芯片中,时钟电路是否稳定,往往是芯片中数字电路可靠工作的首要条件。时钟信号是否精准,通常也决定着芯片是否可以正常工作。芯片中,时钟信号来自于时钟源,而时钟源通常是芯片内部的一块模拟电路。由于生产工艺的偏差,模拟时钟源产生的时钟信号的频率与设计目标会有少量的偏差,这就需要对模拟时钟源进行修调,以得到一个精准频率的时钟信号供数字电路使用。
[0003]
芯片中,时钟源的修调通常是在量产测试中进行的。常见的做法是,芯片在量产测试时进入特定的测试模式,在这种模式下,时钟信号通过io接口引出。测试中,改变模拟电路的修调值,并且监控io输出的时钟源的频率,将时钟源的输出频率修调到目标值。由于每片芯片在生产过程中往往引入的工艺偏差不同,修调值需要更改的幅度也不同,这种模式下的芯片测试有一致性不好的缺点。


技术实现要素:

[0004]
本发明目的在于,提供一种时钟频率校准方法及装置,通过外部输入一个确定个数的精准频率的目标时钟,由内部的数字修调电路自动对芯片内部时钟源进行修调,以简化对芯片内部时钟源修调的操作。
[0005]
为实现上述目的,本发明实施例提供一种时钟频率校准方法,包括:获取目标时钟频率的标准时钟信号;将所述标准时钟信号进行n分频处理并同步至待校准时钟域,得到同步时钟信号;对所述同步时钟信号做上升沿检测,得到中间检测信号;将计数器的两路信号与所述中间检测信号进行逻辑操作,得到时钟源修调数值增减的总控制信号;根据所述总控制信号,对待校准时钟源进行时钟频率校准。
[0006]
具体地,所述对所述同步时钟信号做上升沿检测,得到中间检测信号,包括:所述同步时钟信号每检测到一个上升沿,产生一个脉冲的中间检测信号,所述中间检测信号维持一个待校准时钟周期。
[0007]
具体地,计数器在所述中间检测信号为1的下一个待校准时钟上升沿时被清零;所述中间检测信号为0时,计数器的数值随着每个待校准时钟上升沿加1。
[0008]
具体地,所述将计数器的两路信号与所述中间检测信号进行逻辑操作,得到时钟源修调数值增减的总控制信号,包括:其中,所述总控制信号包括第一控制信号和第二控制信号;当所述中间检测信号为1,所述计数器的数值为(n-1)时,所述总控制信号的第一控制信号和第二控制信号均为0;当所述中间检测信号为1,所述计数器的数值小于(n-1)时,所述总控制信号的第一控制信号为1,第二控制信号为0;当所述中间检测信号为1,所述计数器的数值大于(n-1)时,所述总控制信号的第一控制信号为0,第二控制信号为1。
[0009]
具体地,所述根据所述总控制信号,对待校准时钟源进行时钟频率校准,包括:当
所述第一控制信号和所述第二控制信号均为0时,保持所述待校准时钟源当前的修调值;当所述第一控制信号为1,所述第二控制信号为0时,判定此时待校准时钟源的时钟频率小于标准时钟信号的时钟频率,通过所述第一控制信号控制数据选择器选择时钟源修调寄存器加1的通路,使得时钟源的修调值变大,时钟源的频率加快;当所述第一控制信号为0,所述第二控制信号为1时,判定此时待校准时钟源的时钟频率大于标准时钟信号的时钟频率,通过所述第二控制信号控制数据选择器选择时钟源修调寄存器减1的通路,使得时钟源的修调值减小,时钟源的频率减慢。
[0010]
本发明实施例还提供一种时钟频率校准装置,包括:标准信号获取模块,用于获取标准时钟信号;分频同步模块,用于将所述标准时钟信号进行n分频处理并同步至待校准时钟域,得到同步时钟信号;检测模块,用于对所述同步时钟信号做上升沿检测,得到中间检测信号;控制信号获取模块,用于将计数器的两路信号与所述中间检测信号进行逻辑操作,得到时钟源修调数值增减的总控制信号;修调模块,用于根据所述总控制信号,对待校准时钟源进行时钟频率校准。
[0011]
具体地,所述检测模块具体用于检测所述同步时钟信号的上升沿,所述同步时钟信号每检测到一个上升沿,产生一个脉冲的中间检测信号,所述中间检测信号维持一个待校准时钟周期。
[0012]
具体地,所述控制信号获取模块用于将中间检测信号进行逻辑操作时,计数器在所述中间检测信号为1的下一个待校准时钟上升沿时被清零;所述中间检测信号为0时,计数器的数值随着每个待校准时钟上升沿加1。
[0013]
具体地,所述控制信号获取模块生成的总控制信号包括第一控制信号和第二控制信号;当所述中间检测信号为1,所述计数器的数值为(n-1)时,所述总控制信号的第一控制信号和第二控制信号均为0;当所述中间检测信号为1,所述计数器的数值小于(n-1)时,所述总控制信号的第一控制信号为1,第二控制信号为0;当所述中间检测信号为1,所述计数器的数值大于(n-1)时,所述总控制信号的第一控制信号为0,第二控制信号为1。
[0014]
具体地,所述修调模块具体用于:当所述第一控制信号和所述第二控制信号均为0时,保持所述待校准时钟源当前的修调值;当所述第一控制信号为1,所述第二控制信号为0时,判定此时待校准时钟源的时钟频率小于标准时钟信号的时钟频率,通过所述第一控制信号控制数据选择器选择时钟源修调寄存器加1的通路,使得时钟源的修调值变大,时钟源的频率加快;当所述第一控制信号为0,所述第二控制信号为1时,判定此时待校准时钟源的时钟频率大于标准时钟信号的时钟频率,通过所述第二控制信号控制数据选择器选择时钟源修调寄存器减1的通路,使得时钟源的修调值减小,时钟源的频率减慢。
[0015]
本发明的实施例,具有如下有益效果:
[0016]
本发明提供了一种时钟频率校准方法,包括:获取目标时钟频率的标准时钟信号;将所述标准时钟信号进行n分频处理并同步至待校准时钟域,得到同步时钟信号;对所述同步时钟信号做上升沿检测,得到中间检测信号;将计数器的两路信号与所述中间检测信号进行逻辑操作,得到时钟源修调数值增减的总控制信号;根据所述总控制信号,对待校准时钟源进行时钟频率校准。相较于现有技术,本发明通过外部输入一个确定个数的精准频率的目标时钟,由内部的数字修调电路自动对芯片内部时钟源进行修调,能够简化对芯片内部时钟源修调的操作,实现使用相同的操作流程对工艺偏差不同的芯片修调。
附图说明
[0017]
为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]
图1是本发明某一实施例提供的一种时钟频率校准方法的流程示意图;
[0019]
图2是本发明某一实施例提供的一种时钟频率校准方法中计数器产生的逻辑时序图;
[0020]
图3是本发明另一实施例提供的一种时钟频率校准方法的流程示意图;
[0021]
图4是本发明某一实施例提供的一种时钟频率校准装置的结构示意图。
具体实施方式
[0022]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0023]
应当理解,文中所使用的步骤编号仅是为了方便描述,不对作为对步骤执行先后顺序的限定。
[0024]
应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0025]
请参阅图1,图1是本发明某一实施例提供的一种时钟频率校准方法的流程示意图。本发明实施例提供一种时钟频率校准方法,包括:
[0026]
步骤s110,获取目标时钟频率的标准时钟信号。
[0027]
标准时钟信号可以通过芯片的外部io接口输入,标准时钟信号的时钟频率应该与芯片想要获得的目标时钟频率一致。通过芯片外部io接口输入一个标准的与目标时钟频率相同的,且固定周期个数的时钟信号,芯片内部的自校准数字电路实现自动对时钟源进行修调。
[0028]
步骤s120,将标准时钟信号进行n分频处理并同步至待校准时钟域,得到同步时钟信号。
[0029]
分频处理时通过分频器实现的,分频器能够使输出信号频率为输入信号频率整数分之一。
[0030]
例如,将标准时钟信号4分频,分频器能够使同步时钟信号频率为标准时钟信号频率的四分之一,其具体分频情况可以根据不同时钟源的修调效果做更改。相应的,与计数器的计数值相比较的数值也要随着分频比的更改而更改。计数器的比较值原理上应该等于同步时钟信号和标准时钟信号的分频值减1。
[0031]
步骤s130,对同步时钟信号做上升沿检测,得到中间检测信号。
[0032]
在上升沿检测中,只要将要检测的信号接到某个输入端口的某个位,在程序中反复读取该位的输入,一旦遇到“上次是0此次是1”的情况,就说明检测到了上升沿,遇到“上次是1此次是0”的情况,则说明检测到了下降沿。其具体的检测方法有很多。
[0033]
本实施例中,同步时钟信号每检测到一个上升沿,产生一个脉冲的中间检测信号,中间检测信号维持一个待校准时钟周期。
[0034]
芯片带有清零端的计数器与中间检测信号相关联,计数器在中间检测信号为1的下一个待校准时钟上升沿时被清零;中间检测信号为0时,计数器的数值随着每个待校准时钟上升沿加1。
[0035]
例如,请参阅图2,图2是本发明某一实施例提供的一种时钟频率校准方法中计数器产生的逻辑时序图,其中计数器counter在中间检测信号clk_div4_pos为1的下一个检测信号clk_test时钟上升沿时被清零,在中间检测信号clk_div4_pos为0的时,计数器counter的值随着每个测试信号clk_test时钟上升沿而加1。
[0036]
步骤s140,将计数器的两路信号与中间检测信号进行逻辑操作,得到时钟源修调数值增减的总控制信号。
[0037]
其中,总控制信号包括第一控制信号和第二控制信号;当中间检测信号为1,计数器的数值为(n-1)时,总控制信号的第一控制信号和第二控制信号均为0;当中间检测信号为1,计数器的数值小于(n-1)时,总控制信号的第一控制信号为1,第二控制信号为0;当第一控制信号和第二控制信号均为0时,保持待校准时钟源当前的修调值。
[0038]
当第一控制信号为1,第二控制信号为0时,判定此时待校准时钟源的时钟频率小于标准时钟信号的时钟频率,通过第一控制信号控制数据选择器选择时钟源修调寄存器加1的通路,使得时钟源的修调值变大,时钟源的频率加快;当第一控制信号为0,第二控制信号为1时,判定此时待校准时钟源的时钟频率大于标准时钟信号的时钟频率,通过第二控制信号控制数据选择器选择时钟源修调寄存器减1的通路,使得时钟源的修调值减小,时钟源的频率减慢。当中间检测信号为1,计数器的数值大于(n-1)时,总控制信号的第一控制信号为0,第二控制信号为1。
[0039]
例如,请参阅图2和图3,图3是本发明另一实施例提供的一种时钟频率校准方法的流程示意图。分频器对标准时钟信号4分频,计数器counter输出两路信号。两路信号与数值3做大于、小于比对,比对结果与中间检测信号(clk_div4_pos信号)做逻辑与操作,生成第一控制信号(trimadd信号)和第二控制信号(trimsub信号)。trimadd信号和trimsub信号组合为总控制信号(trimas_sel信号),作为时钟源修调数值增减的控制信号。
[0040]
步骤s150,根据所述总控制信号,对待校准时钟源进行时钟频率校准。
[0041]
当上述例子中的trimadd信号和trimsub信号都为0时,即在中间检测信号(clk_div4_pos)为1时,计数器counter的数值为3,时钟源的修调值不做更改,此时trimas_sel信号连接的选择器使得时钟源修调寄存器的d端输入和q端的值相同。当trimadd信号为1,且trimsub信号为0时,即在clk_div4_pos为1时counter的数值小于3。此时clk_test时钟频率小于clk_ref,则trimadd信号控制着数据选择器mux选择时钟源修调寄存器加1的通路,时钟源的修调值变大,时钟源的频率加快。当trimsub信号为1,且trimadd信号为0时,即在clk_div4_pos为1时counter的数值大于3。此时clk_test时钟频率大于clk_ref,则trimsub信号控制着mux选择时钟源修调寄存器减1的通路,时钟源的修调值减小,时钟源的频率减慢。由图1的逻辑可知,trimsub信号和trimadd信号不存在同时为1的情况。需要注意的是,时钟源修调值简单的使用加一、减一的方法进行更改,实际设计中可以使用二分法等更加快速的方法进行修调,这些与本发明所公开的方法不构成实质性的区别。
[0042]
请参阅图4,图4是本发明某一实施例提供的时钟频率校准装置的结构示意图。在本实施例中与上述实施例相同的部分,在此不再赘述。本发明实施例提供的一种时钟频率校准装置,包括:
[0043]
标准信号获取模块210,用于获取标准时钟信号。
[0044]
分频同步模块220,用于将标准时钟信号进行n分频处理并同步至待校准时钟域,得到同步时钟信号。
[0045]
检测模块230,用于对同步时钟信号做上升沿检测,得到中间检测信号;检测模块230具体用于检测同步时钟信号的上升沿,同步时钟信号每检测到一个上升沿,产生一个脉冲的中间检测信号,中间检测信号维持一个待校准时钟周期。
[0046]
控制信号获取模块240,用于将计数器的两路信号与中间检测信号进行逻辑操作,得到时钟源修调数值增减的总控制信号;控制信号获取模块240用于将中间检测信号进行逻辑操作时,中间检测信号为1时,下一个待校准时钟上升沿时被清零;中间检测信号为0时,计数器的数值随着每个待校准时钟上升沿加1。其中,控制信号获取模块240生成的总控制信号包括第一控制信号和第二控制信号;当中间检测信号为1,计数器的数值为(n-1)时,总控制信号的第一控制信号和第二控制信号均为0;当中间检测信号为1,计数器的数值小于(n-1)时,总控制信号的第一控制信号为1,第二控制信号为0;当中间检测信号为1,计数器的数值大于(n-1)时,总控制信号的第一控制信号为0,第二控制信号为1。
[0047]
修调模块250,用于根据总控制信号,对待校准时钟源进行时钟频率校准。修调模块250具体用于:当第一控制信号和第二控制信号均为0时,保持待校准时钟源当前的修调值;当第一控制信号为1,第二控制信号为0时,判定此时待校准时钟源的时钟频率小于标准时钟信号的时钟频率,通过第一控制信号控制数据选择器选择时钟源修调寄存器加1的通路,使得时钟源的修调值变大,时钟源的频率加快;当第一控制信号为0,第二控制信号为1时,判定此时待校准时钟源的时钟频率大于标准时钟信号的时钟频率,通过第二控制信号控制数据选择器选择时钟源修调寄存器减1的通路,使得时钟源的修调值减小,时钟源的频率减慢。
[0048]
本发明通过外部输入一个确定个数的精准频率的目标时钟,由内部的数字修调电路自动对芯片内部时钟源进行修调,能够简化对芯片内部时钟源修调的操作,实现使用相同的操作流程对工艺偏差不同的芯片修调。
[0049]
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1