在处理器中控制不同锁相环输出时钟的控制系统和方法

文档序号:7522768阅读:291来源:国知局
专利名称:在处理器中控制不同锁相环输出时钟的控制系统和方法
技术领域
本发明涉及一种处理器芯片控制技术领域,特别地,涉及在处理器中通过动态变频来控制不同锁相环(PLL)输出时钟对应关系的一种在处理器中控制不同锁相环输出时钟的控制系统和方法。
背景技术
时钟信号是处理器中最关键的信号之一。一般来说,处理器中会存在很多的不同频率的时钟信号,如处理器核内时钟信号、内存(DDR)时钟信号、外部输入输出(I/O)时钟信号等等。在大多数情况下,这些时钟是由同一个锁相环(Phase-Locked Loop, PLL)分频得到的。然而,随着处理器的高速发展,各种低功耗技术、高速接口的应用,使得在处理器中会存在由不同的锁相环分频出的不同频率的时钟信号,由于这些不同频率的时钟信号来自不同的锁相环,对于它们时钟之间的对应关系进行控制与判断很难。虽然现有的锁相环技术已经可以产生非常稳定的时钟,但是在真实的处理器中, 外部环境,如温度、湿度、压力,对处理器的影响都会使得锁相环输出的时钟不会完全稳定, 即,时钟信号不可避免的会有时钟漂移(clock skew)、以及抖动(clock jitter)。在处理器中,完全消除时钟的漂移以及抖动是几乎不可能的,而时钟漂移以及抖动会使得不同时钟域的信号之间的相互关系变得难以确定。虽然,已有的单个时钟域内的锁相环技术可以将时钟漂移以及抖动控制在一个很小的范围以内。但是,多个时钟域之间独立的抖动使得它们的信号相互关系难以确定,无法精确控制。因此,如何有效的稳定控制不同时钟域之间的信号相互关系,已经成为一个成熟稳定的通用处理器中不可缺少的功能。而且,对于由同一个锁相环出来的两个时钟,由于只是分频的系数不同,相对而言比较容易控制彼此的对应关系。但是,对于由不同锁相环输出的时钟,两个时钟信号之间没有任何联系,如何去控制这两个时钟信号的对应关系未见相应的解决办法。

发明内容
本发明的目的在于提供一种在处理器中控制不同锁相环输出时钟的控制系统和方法,其使得多个不同时钟域内的锁相环的输出时钟可控,保证锁相环的输出时钟之间的对应关系在可控范围内。为实现本发明目的而提供的一种在处理器中控制不同锁相环输出时钟的控制系统,包括相位模块以及微调模块,其中所述相位模块,用于通过周期性检测在处理器中的至少两个时钟模块的时钟相位,计算并监控根据检测的时钟相位计算得到的实际相位差和根据最优频率比值计算得到的最优相位差,并输出监控结果到微调模块;所述微调模块,用于根据相位模块检测相位的监控结果,判断并动态调节纠正其中一时钟模块的锁相环的时钟频率,使得所述至少两个时钟模块的频率比值的对应关系得以保证。较佳地,所述的在处理器中控制不同锁相环输出时钟的控制系统,还包括配置模块,用于配置在处理器中的至少两个时钟模块的频率比值,得到所述至少两个时钟模块的最优频率比值。较优地,所述时钟模块,记为第一时钟模块、第二时钟模块,其是处理器核内时钟模块、或者是内存时钟模块、或者是外部输入输出时钟模块,其分别产生处理器核内时钟信号、内存时钟信号、外部输入输出时钟信号;所述第一时钟模块包括第一时钟计数器;所述第二时钟模块包括第二时钟计数器;所述第一时钟模块与第二时钟模块产生的时钟信号是由不同锁相环输出的,即其由第一锁相环和第二锁相环输出的;所述第一时钟模块与第二时钟模块之间通过异步FIFO连接。为实现本发明目的还提供一种在处理器中控制不同锁相环输出时钟的控制方法, 包括如下步骤步骤A,相位模块通过周期性检测所述至少两个时钟模块的时钟相位,计算并监控根据检测的时钟相位计算得到的实际相位差和根据最优频率比值计算得到的最优相位差, 并输出监控结果到微调模块;步骤B,微调模块根据相位模块检测相位的监控结果,判断并动态调节纠正其中一时钟模块的时钟频率,使得所述至少两个时钟模块的频率比值的对应关系得以保证。较优地,所述步骤A之前,还包括如下步骤步骤A’,配置模块配置至少两个时钟模块的频率比值,得到所述至少两个时钟模块的最优频率比值。较优地,所述步骤A’包括如下步骤步骤A110’,配置模块接收外部发送来的配置开关信号,开始配置频率比值r ;步骤A120’,配置模块接收异步FIFO输送进来的FIFO满以及空的配置信号;步骤A130’,配置模块根据配置信号重新调整频率比值r,并返回步骤A120’重新进行配置,直至得到时钟模块时钟之间的最优频率比值,并将所述最优频率比值存储到一 η 位配置寄存器,其中,η为预设整数;步骤Α140’,将所述η位配置寄存器存储的所述最优频率比值输出给第一时钟模块、相位模块和微调模块。较优地,所述步骤A包括下列步骤步骤Α10,相位模块接收第一时钟模块的第一时钟计数器输出的时钟信号;同时接收第二时钟模块的第二时钟计数器输出的时钟信号,根据检测的时钟相位计算得到的实际相位差和根据最优频率比值计算得到的最优相位差;步骤Α20,相位模块监控所述实际相位差和最优相位差,比较最优相位差与真实相位差的值,将相位差大的值作为监控结果输出给微调模块。较优地,所述步骤B包括下列步骤步骤Β10,微调模块接收由相位模块输出的监控结果;步骤Β20,微调模块根据监控结果判断是否输出微调频率信号到时第一钟模块的第一锁相环中调节时钟的频率,根据实际相位差与最优相位差的大小关系,决定去升高或是降低第一锁相环的频率;步骤B30,如果判断结果为升高,则根据监控结果计算微调频率的大小,输出升高微调频率信号到第一时钟模块的第一锁相环中,由第一锁相环根据微调频率信号中的微调频率大小的值调节所述第一时钟模块的时钟的频率;如果判断结果为降低,同样,输出降低微调频率信号到第一时钟模块的第一锁相环中,由第一锁相环根据降低微调频率信号中的微调频率大小的值调节所述第一时钟模块的时钟的频率;步骤B40,第一时钟模块的第一锁相环收到由微调模块发来的时钟频率调节的大小,利用锁相环小数分频技术,来改变其时钟的频率。较优地,所述步骤B30包括如下步骤步骤B31,计算频率模块接收监控结果,并根据监控结果判断降低或是升高第一时钟模块的时钟频率;步骤B32,计算频率模块根据判断结果和监控结果计算出时钟频率调节的大小,并输出到第一时钟模块的第一锁相环。较优地,所述对第一时钟模块时钟频率的调节大小为最优频率比值的l/2n。本发明的有益效果本发明的在处理器中控制不同锁相环输出时钟的控制系统和方法,在处理器中通过动态变频来控制不同锁相环(PLL)输出时钟的对应关系,避免因时钟漂移(clock skew)、以及抖动(clock jitter)引起的不同时钟域之间的误差而导致的芯片信号处理错误,有效的稳定控制不同时钟域之间的信号相互关系,使得多个不同时钟域内的锁相环的输出时钟可控,保证锁相环的输出时钟之间的对应关系在可控范围内。说明书附1为本发明实施例的在处理器中控制不同锁相环输出时钟的控制系统结构示意图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明的在处理器中控制不同锁相环输出时钟的控制系统和方法进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。如

图1所示,为本发明实施例在处理器中控制不同锁相环(PPL)输出时钟的控制系统,首先说明处理器中相应结构。本发明实施例的处理器中包括至少两个产生时钟信号的时钟模块11,12,本发明实施例中记为第一时钟模块11,第二时钟模块12 ;其中的时钟模块11、12可以是处理器核内时钟模块,也可以是内存时钟模块,也可以是外部输入输出时钟模块等,其分别产生处理器核内时钟信号、内存时钟信号、外部输入输出(I/O)时钟信号等。所述第一时钟模块11包括第一时钟计数器(clock counter) 31 ;所述第二时钟模块12包括第二时钟计数器(clock counter) 32。所述第一时钟模块11与第二时钟模块12产生的时钟信号是由不同锁相环(PLL1和PLU)输出的,即其由第一锁相环21和第二锁相环22输出的。所述第一时钟模块11与第二时钟模块12之间通过异步FIFO (First InputFirst Output,先进先出数据线)41连接。当在两个时钟模块11、12的时钟域之间进行信息传输时,信号到达的时刻就是完全不确定的,想要获得一个稳定的时钟对应关系,就需要对这两个不同频率的时钟域信号之间的对应关系进行控制,因此,监测并控制不同频率时钟之间的对应关系,对于一个好的通用处理器芯片,有着至关重要的作用。时钟模块每一个时钟域都有一个时钟计数器(clock counter)来记录当前时钟走了多少个时钟周期,当处理器中的复位完成后,每个时钟模块的时钟计数器都会归零, 本发明实施例的在处理器中控制不同锁相环输出时钟的控制系统通过控制至少两个时钟模块的两个时钟域时钟信号的对应关系,即控制这至少两个时钟域的时钟计数器(clock counter),使这至少两个的时钟计数器(clockcounter)的值满足十分稳定的对应关系,从而使不同时钟域之间的对应关系可控。本发明实施例的在处理器中控制不同锁相环输出时钟的系统,包括配置模块5、相位模块6以及微调模块7。所述配置模块5,用于配置至少两个时钟模块11、12的频率比值,得到所述至少两个时钟模块11、12的最优频率比值;所述相位模块6,用于通过周期性检测所述至少两个时钟模块11、12的时钟相位, 计算并监控根据检测的时钟相位计算得到的实际相位差和根据所述最优频率比值计算得到的最优相位差,并输出监控结果到微调模块7 ;所述微调模块7,用于根据相位模块6检测相位的监控结果,判断并动态调节纠正其中一时钟模块的时钟频率,使得所述至少两个时钟模块11、12的频率比值的对应关系得以保证。较佳地,所述配置模块5包括一 η位配置寄存器51,用于存储所述最优频率比值的值。η的具体大小可以根据设计人员的具体需求而定,就是可以随意取值的整数,较佳地,η为处理器的位数。较佳地,所述相位模块6包括偏移测量模块61和计算相位模块62,其中所述偏移测量模块61用于周期性检测所述至少两个时钟模块11、12的相位;所述计算相位模块62,用于监控根据检测的时钟相位计算得到的实际相位差和根据所述最优频率比值计算得到的最优相位差。较佳地,所述微调模块7包括计算频率模块71,用于计算其中一时钟模块的时钟频率的调节大小。相应地,本发明实施例,还提供一种在处理器中控制不同锁相环(PPL)输出时钟的控制方法,包括如下步骤步骤S100,配置模块配置至少两个时钟模块的频率比值,得到所述至少两个时钟模块的最优频率比值;配置模块5配置至少两个时钟之间的频率比值,得到最优频率比值,作为一种可实施方式,包括如下步骤
步骤S110,配置模块接收外部发送来的配置开关信号,开始配置频率比值r ;作为一种可实施方式,设第一时钟模块11的时钟比第二时钟模块12的时钟快,当配置模块5收到配置开关信号为1时,开始配置频率的比值,其随机配置一个频率比值r,并将所述频率比值r输出给第一时钟模块11。应当说明的是,本发明实施例中以时钟快的时钟模块作为第一时钟模块11,但也可以以时钟快的时钟模块作为第二时钟模块12,则下述实施例的涉及第一时钟模块11的实施方式替换为第二时钟模块即可。当第一时钟模块11的第一时钟计数器(clock counter) 31的时钟值Ca除以频率比值r后的值大于1时,第一时钟模块11发出一个判断时钟值Ca除以频率比值r的值大于1的数据信号到第二时钟模块12,即当第一时钟计数器31满足如下等式时,[CA/r]-[ (Ca-I)/r]彡1 (中括弧表示向下取整)发送一个判断时钟值Ca除以频率比值r的值大于1的数据信号到第二时钟模块 12 ;第二时钟模块12不断的去收由第一时钟模块11发出来的判断时钟值Ca除以频率比值 r的值大于1的数据信号。步骤S120,配置模块接收异步FIFO输送进来的FIFO满以及空的配置信号;如果所述频率比值r比第一时钟模块11与第二时钟模块12之间的实际频率比值大,那么第二时钟模块12就会经常收不到由时钟模块11发出来的数据信号,即,连接时钟模块11与时钟模块12之间的异步FIFO为空,则第二时钟模块12发送异步FIFO为空的配置信号给配置模块5。反之,如果所述频率比值!·比第一时钟模块11与第二时钟模块12之间的实际频率比值小,第二时钟模块12即使一直收也收不完由第一时钟模块11发出来的数据信号,这些数据信号就会堵在连接第一时钟模块11与第二时钟模块12之间的异步FIFO里面,使得异步FIFO为满,则第二时钟模块12发送异步FIFO为满的配置信号给配置模块5。步骤S130,配置模块根据配置信号重新调整频率比值r,并返回步骤S120重新进行配置,直至得到时钟模块时钟之间的最优频率比值,并将所述最优频率比值存储到一 η 位配置寄存器。作为一种可实施方式,本发明实施例中,通过牛顿二分法调整频率比值的大小。在配置开始时,设定最优频率比值的一个范围,每次配置时,用两个范围的中间值作为配置的频率比值,当配置模块5收到FIFO为空的配置信号时,得到最优频率比值的一个新的范围,并将频率比值r的值调小到等于新的已知频率范围的中间值,并返回步骤 S120重新开始配置。当配置模块5收到FIFO为满的配置信号时,得到最优频率比值的一个新的范围, 并将频率比值r的值调大到等于新的已知频率范围的中间值,并返回步骤S120重新开始配置。通过在配置过程中不断去监测异步FIFO空或者满的状态,并根据之前配置的频率比值来重新配置频率比值,当最优频率比值的范围到了 η位表示的上限,即范围的上界与下界仅仅只有最低位不一样时,将此时的配置频率作为这两个时钟之间的最优频率比值。实验证明,通过牛顿二分法,配置一个η位处理器的最优频率比值,只需要0 (η)的时间。两个时钟模块的时钟频率比值不一定是一个有理数,而本发明实施例中,只有有限位数的寄存器(η位)存储所述最优频率比值,因此,测得的频率比值与真实的比值会有一定的偏差,具体而言,对于一个η位的频率比值,其偏差不会超过真实频率比值的1/2η。步骤S140,将所述η位配置寄存器存储的所述最优频率比值输出给第一时钟模块、相位模块和微调模块。步骤S200,相位模块通过周期性检测所述至少两个时钟模块的时钟相位,计算并监控根据检测的时钟相位计算得到的实际相位差和根据最优频率比值计算得到的最优相位差,并输出监控结果到微调模块;作为一种可实施方式,相位模块6周期性测量并监控第一时钟模块11与第二时钟模块12的时钟信号的相位差,得到监控结果并输出,包括如下步骤步骤S210,相位模块接收第一时钟模块11的第一时钟计数器(clockcounter) 31 输出的时钟信号;同时接收第二时钟模块12的第二时钟计数器(clock counter) 32输出的时钟信号,根据检测的时钟相位计算得到的实际相位差和根据最优频率比值计算得到的最优相位差;所述步骤S210中,根据检测的时钟相位计算得到的实际相位差所述包括如下步骤相位模块6中的偏移测量模块61通过接收两个时钟的时钟计数器 (clockcounter)的值,据检测的时钟相位计算得到的实际相位差,从而完成测量所述实际
相位差。偏移测量的技术(Skew Measure)是一种现有技术,目前已有的偏移测量的技术 (Skew Measure)已经可以测量不同时钟的相位差。例如,当时钟模块11的时钟计数器 (clock counter)为a时,时钟模块12的时钟计数器(clock counter)为b时,要测量他们之间相位差,则将时钟模块11的时钟计数器(clock counter)为a、以及时钟模块B的时钟计数器(clock counter)为b当作两个事件。当任何一个事件发生时,开始计时;当另外一个事件发生时,停止计时。这样,通过计得的时间,得到第一时钟模块11的时钟计数器 (clock counter)为a时,与第二时钟模块12的时钟计数器(clock counter)为b时的相位差。现有的偏移测量的技术(Skew Measure)已经可以精确到IOps的数量级,使得测出来的相位差有着非常小的误差。所述步骤S210中,根据最优频率比值计算得到的最优相位差,包括如下步骤相位模块6的计算相位模块62接收两个时钟模块的时钟计数器(clockcounter) 的相位后,根据最优频率比值,计算并得到在最优频率比值下,两个时钟模块的时钟的最优相位差,然后输出它们之间的最优相位差。作为一种可实施方式,如要测量第一时钟模块11的第一时钟计数器 (clockcounter) 31为a时,与第二时钟模块12的第二时钟计数器(clock counter) 32为b 时的相位差,在最优频率比值r下,它们的相位差为(a/r-b)TB,其中Tb为第二时钟模块12 的时钟周期。如果相位差为负时,表示第二时钟模块12的第二时钟计数器(clock counter) 32为b这个事件早于第一时钟模块11的第一时钟计数器(clock counter) 31为a这个时间。步骤S220,相位模块监控所述实际相位差和最优相位差,比较最优相位差与真实相位差的值,将相位差大的值作为监控结果输出给微调模块。由于最优频率比值与真实频率比值会有一定误差,测量出来的最优相位差与实际相位差也会有一定的误差。并且,这个误差会随着运行时间的变长而越来越大,最终导致两个时钟之间的对应关系完全无法控制。所以,本发明实施例的在处理器中控制不同锁相环输出时钟的控制系统,通过微调模块动态调节来改变时钟频率来控制最优相位差与实际相位差之间的误差,使得两个时钟之间有着稳定的对应关系,本发明实施例通过比较最优相位差与真实相位差的值,将相位差大的结果输出给微调模块7。步骤S300,微调模块根据相位模块检测相位的监控结果,判断并动态调节纠正其中一时钟模块的时钟频率,使得所述至少两个时钟模块的频率比值的对应关系得以保证。所述的微调模块7根据相位模块输出的比较结果来判断并动态调节第一时钟模块11时钟的频率,包括如下步骤步骤S310,微调模块接收由相位模块输出的监控结果;步骤S320,微调模块根据监控结果判断是否输出微调频率信号到时第一钟模块 11的第一锁相环(PLL1)21中调节时钟的频率,根据实际相位差与最优相位差的大小关系, 决定去升高或是降低第一锁相环的频率;步骤S330,如果判断结果为升高,则根据监控结果(即实际相位差)计算微调频率的大小,输出升高微调频率信号到第一时钟模块11的第一锁相环(PLL1)21中,由第一锁相环21根据微调频率信号中的微调频率大小的值调节所述第一时钟模块11的时钟的频率;如果判断结果为降低,同样,输出降低微调频率信号到第一时钟模块11的第一锁相环(PLL1)21中,由第一锁相环21根据降低微调频率信号中的微调频率大小的值调节所述第一时钟模块11的时钟的频率。所述根据监控结果微调频率的大小,包括如下步骤步骤S331,计算频率模块接收监控结果(即实际相位差),并根据监控结果判断降低或是升高第一时钟模块11的时钟频率;所述的降低或是升高时钟模块11的时钟频率,是通过比较监测结果(即实际相位差)与最优相位差的大小关系得到的。如果监测结果(即实际相位差)大于最优相位差,表示第一时钟模块11的时钟周期相对比期望小了一点,需要降低第一时钟模块11时钟的频率,使得实际中第一时钟模块 11的周期变大回到期望水平(最优频率比值)。如果监测结果(即实际相位差)小于最优相位差,表示第一时钟模块11的周期相对比期望大了一点,需要提高第一时钟模块11时钟的频率,使得第一时钟模块11的周期变小回到期望水平(最优频率比值)。步骤S332,计算频率模块根据判断结果和监控结果计算出时钟频率调节的大小, 并输出到第一时钟模块11的第一锁相环(PLL1)21。计算频率模块71计算具体降低或升高多少第一时钟模块11时钟的频率,如果降低/升高得太多,第一时钟模块11的时钟一下子快/慢了很多,导致两个时钟信号之间的对应关系变得十分不确定;但是降低/升高太少,又会使得第一时钟模块11时钟的周期仍然比期望大/小了一些。较佳地,由于对于一个η位处理器的频率比值,其偏差不会超过真实频率比值的 1/2η,所以,本发明实施例中,每次对第一时钟模块11时钟频率的调节大小也为最优频率比值的1/2η。步骤S340,第一时钟模块11的第一锁相环(PLL) 21收到由微调模块发来的时钟频率调节的大小,利用锁相环小数分频技术,来改变其时钟的频率。锁相环小数分频技术为现有技术,锁相环小数分频技术支持几十赫兹甚至于几赫兹的时钟微调,本发明实施例中不再一一详细描述。通过相位模块6周期性地检测相位差并将监控结果反馈给微调模块7,对时钟模块的时钟频率进行调节,本发明实施例实验表示,通过控制可以保证实际相位差与期望相位差之间的误差在一个时钟的时钟周期以内。本发明实施例的在处理器中控制不同锁相环(PPL)输出时钟的控制系统和方法, 通过周期性检测不同锁相环输出的时钟之间的相位,并根据测量的相位差与最优相位差之间的大小关系,调节一个时钟频率,使得实际的相位差永远不会偏离期望相位差太多,即保证了两个不同PLL出来的时钟有一个可以控制的对应关系。最后应当说明的是,很显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型。
权利要求
1.一种在处理器中控制不同锁相环输出时钟的控制系统,其特征在于,包括相位模块 (6)以及微调模块(7),其中所述相位模块(6),用于通过周期性检测在处理器中的至少两个时钟模块(11、12)的时钟相位,计算并监控根据检测的时钟相位计算得到的实际相位差和根据最优频率比值计算得到的最优相位差,并输出监控结果到微调模块(7);所述微调模块(7),用于根据相位模块(6)检测相位的监控结果,判断并动态调节纠正其中一时钟模块的锁相环的时钟频率,使得所述至少两个时钟模块(11、1幻的频率比值的对应关系得以保证。
2.根据权利要求1所述的在处理器中控制不同锁相环输出时钟的控制系统,其特征在于,还包括配置模块(5),用于配置在处理器中的至少两个时钟模块(11、12)的频率比值, 得到所述至少两个时钟模块(11、12)的最优频率比值。
3.根据权利要求2所述的在处理器中控制不同锁相环输出时钟的控制系统,其特征在于,所述配置模块( 包括一η位配置寄存器(51),用于存储所述最优频率比值的值,其中, η为预设整数。
4.根据权利要求1或2所述的在处理器中控制不同锁相环输出时钟的控制系统,其特征在于,所述相位模块(6)包括偏移测量模块(61)和计算相位模块(62),其中所述偏移测量模块(61)用于周期性检测所述至少两个时钟模块(11、1幻的相位;所述计算相位模块(62),用于监控根据检测的时钟相位计算得到的实际相位差和根据所述最优频率比值计算得到的最优相位差。
5.根据权利要求1或2所述的在处理器中控制不同锁相环输出时钟的控制系统,其特征在于,所述微调模块(7)包括计算频率模块(71),用于计算其中一时钟模块的时钟频率的调节大小。
6.根据权利要求1或2所述的在处理器中控制不同锁相环输出时钟的控制系统,其特征在于,所述时钟模块(11、12),记为第一时钟模块(11)、第二时钟模块(12),其是处理器核内时钟模块、或者是内存时钟模块、或者是外部输入输出时钟模块,其分别产生处理器核内时钟信号、内存时钟信号、外部输入输出时钟信号;所述第一时钟模块(11)包括第一时钟计数器(31);所述第二时钟模块(1 包括第二时钟计数器(32);所述第一时钟模块(11)与第二时钟模块(1 产生的时钟信号是由不同锁相环输出的,即其由第一锁相环和第二锁相环0 输出的;所述第一时钟模块(11)与第二时钟模块(12)之间通过异步FIFCK41)连接。
7.—种在处理器中控制不同锁相环输出时钟的控制方法,其特征在于,包括如下步骤步骤A,相位模块通过周期性检测所述至少两个时钟模块的时钟相位,计算并监控根据检测的时钟相位计算得到的实际相位差和根据最优频率比值计算得到的最优相位差,并输出监控结果到微调模块;步骤B,微调模块根据相位模块检测相位的监控结果,判断并动态调节纠正其中一时钟模块的时钟频率,使得所述至少两个时钟模块的频率比值的对应关系得以保证。
8.根据权利要求7所述的在处理器中控制不同锁相环输出时钟的控制方法,其特征在于,所述步骤A之前,还包括如下步骤步骤A’,配置模块配置至少两个时钟模块的频率比值,得到所述至少两个时钟模块的最优频率比值。
9.根据权利要求8所述的在处理器中控制不同锁相环输出时钟的控制方法,其特征在于,所述步骤A’包括如下步骤步骤A110’,配置模块接收外部发送来的配置开关信号,开始配置频率比值r ; 步骤A120’,配置模块接收异步FIFO输送进来的FIFO满以及空的配置信号; 步骤A130’,配置模块根据配置信号重新调整频率比值r,并返回步骤A120’重新进行配置,直至得到时钟模块时钟之间的最优频率比值,并将所述最优频率比值存储到一 η位配置寄存器,其中,η为预设整数;步骤Α140’,将所述η位配置寄存器存储的所述最优频率比值输出给第一时钟模块、相位模块和微调模块。
10.根据权利要求7或8所述的在处理器中控制不同锁相环输出时钟的控制方法,其特征在于,所述步骤A包括下列步骤步骤Α10,相位模块接收第一时钟模块的第一时钟计数器输出的时钟信号;同时接收第二时钟模块的第二时钟计数器输出的时钟信号,根据检测的时钟相位计算得到的实际相位差和根据最优频率比值计算得到的最优相位差;步骤Α20,相位模块监控所述实际相位差和最优相位差,比较最优相位差与真实相位差的值,将相位差大的值作为监控结果输出给微调模块。
11.根据权利要求7或8所述的在处理器中控制不同锁相环输出时钟的控制方法,其特征在于,所述步骤B包括下列步骤步骤Β10,微调模块接收由相位模块输出的监控结果;步骤Β20,微调模块根据监控结果判断是否输出微调频率信号到时第一钟模块的第一锁相环中调节时钟的频率,根据实际相位差与最优相位差的大小关系,决定去升高或是降低第一锁相环的频率;步骤Β30,如果判断结果为升高,则根据监控结果计算微调频率的大小,输出升高微调频率信号到第一时钟模块的第一锁相环中,由第一锁相环根据微调频率信号中的微调频率大小的值调节所述第一时钟模块的时钟的频率;如果判断结果为降低,同样,输出降低微调频率信号到第一时钟模块的第一锁相环中, 由第一锁相环根据降低微调频率信号中的微调频率大小的值调节所述第一时钟模块的时钟的频率;步骤Β40,第一时钟模块的第一锁相环收到由微调模块发来的时钟频率调节的大小,利用锁相环小数分频技术,来改变其时钟的频率。
12.根据权利要求11所述的在处理器中控制不同锁相环输出时钟的控制方法,其特征在于,所述步骤Β30包括如下步骤步骤Β31,计算频率模块接收监控结果,并根据监控结果判断降低或是升高第一时钟模块的时钟频率;步骤Β32,计算频率模块根据判断结果和监控结果计算出时钟频率调节的大小,并输出到第一时钟模块的第一锁相环。
13.根据权利要求12所述的在处理器中控制不同锁相环输出时钟的控制方法,其特征在于,所述对第一时钟模块时钟频率的调节大小为最优频率比值的l/2n。
14.根据权利要求9所述的在处理器中控制不同锁相环输出时钟的控制方法,其特征在于,所述调整频率为通过牛顿二分法调整频率比值的大小;所述步骤A130’中,根据配置信号重新调整频率比值r,重新进行配置,直至得到时钟模块时钟之间的最优频率比值,包括如下步骤在配置开始时,设定最优频率比值的一个范围,每次配置时,用两个范围的中间值作为配置的频率比值,当配置模块收到FIFO为空的配置信号时,得到最优频率比值的一个新的范围,并将频率比值r的值调小到等于新的已知频率范围的中间值,并返回步骤A120’重新开始配置;当配置模块收到FIFO为满的配置信号时,得到最优频率比值的一个新的范围,并将频率比值r的值调大到等于新的已知频率范围的中间值,并返回步骤A120’重新开始配置;通过在配置过程中不断去监测异步FIFO空或者满的状态,并根据之前配置的频率比值来重新配置频率比值,当最优频率比值的范围到了 η位表示的上限,即范围的上界与下界仅仅只有最低位不一样时,将此时的配置频率作为这两个时钟之间的最优频率比值。
全文摘要
本发明提供一种在处理器中控制不同锁相环输出时钟的控制系统和方法。其系统包括配置模块(5),用于配置在处理器中的至少两个时钟模块(11、12)的频率比值,得到所述至少两个时钟模块(11、12)的最优频率比值;相位模块(6),用于通过周期性检测至少两个时钟模块(11、12)的时钟相位,计算并监控实际相位差和最优相位差;微调模块(7),用于判断并动态调节纠正其中一时钟模块的锁相环的时钟频率,使得所述至少两个时钟模块(11、12)的频率比值的对应关系得以保证。其使得多个不同时钟域内的锁相环的输出时钟可控,保证锁相环的输出时钟之间的对应关系在可控范围内。
文档编号H03L7/18GK102394641SQ20111034520
公开日2012年3月28日 申请日期2011年11月4日 优先权日2011年11月4日
发明者李磊, 苏孟豪, 陈云霁 申请人:龙芯中科技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1