CN100585537C - 确定时基值的电路和方法 - Google Patents
确定时基值的电路和方法 Download PDFInfo
- Publication number
- CN100585537C CN100585537C CN200710001447A CN200710001447A CN100585537C CN 100585537 C CN100585537 C CN 100585537C CN 200710001447 A CN200710001447 A CN 200710001447A CN 200710001447 A CN200710001447 A CN 200710001447A CN 100585537 C CN100585537 C CN 100585537C
- Authority
- CN
- China
- Prior art keywords
- circuit
- ticktock
- value
- clock signal
- signal
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000009825 accumulation Methods 0.000 claims description 25
- 230000000630 rising effect Effects 0.000 claims description 12
- 238000005070 sampling Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 5
- 210000003127 knee Anatomy 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 4
- 241000238876 Acari Species 0.000 abstract 2
- 230000035508 accumulation Effects 0.000 description 16
- 238000013461 design Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000007246 mechanism Effects 0.000 description 8
- 239000000047 product Substances 0.000 description 5
- 230000009467 reduction Effects 0.000 description 5
- 235000012431 wafers Nutrition 0.000 description 4
- 230000015556 catabolic process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000006731 degradation reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 206010044565 Tremor Diseases 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000009365 direct transmission Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000005530 etching Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000009349 indirect transmission Effects 0.000 description 1
- 239000013067 intermediate product Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 238000001259 photo etching Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/14—Time supervision arrangements, e.g. real time clock
-
- G—PHYSICS
- G04—HOROLOGY
- G04F—TIME-INTERVAL MEASURING
- G04F10/00—Apparatus for measuring unknown time intervals by electric means
- G04F10/04—Apparatus for measuring unknown time intervals by electric means by counting pulses or half-cycles of an ac
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Microcomputers (AREA)
Abstract
图解实施例提供了用于提供准确的时基计数器的系统、设备和方法,该时基计数器用于伸缩微处理器的工作频率。该系统,设备和方法使用时基计数器电路结构,其中固定频率时钟从微处理器的时钟生成电路的PLL中导出,并且用于馈送外部和内部时基逻辑以及时基累加器计数器。时基累加器计数器累积来自两个核心时钟之间的时基逻辑的滴答事件。累积值在可伸缩时钟的每个时钟边沿被传送到核心时钟域,并且累加器被接着复位。由于所累积的滴答在累加器被复位之前被传送到核心时钟域,所以使用图解实施例的电路不会丢失滴答。
Description
技术领域
本专利申请涉及微处理器。更具体地,本发明涉及提供准确的时基计数器的系统、设备和方法,该计数器用于伸缩(scale)微处理器的工作频率。
背景技术
随着晶体管密度和速度的快速提高,芯片可消耗的能量越来越成为芯片设计中的关键条件。尤其是,技术上的每次成功缩减使密度增加,允许芯片占用面积降低。这允许芯片以更高频率进行操作。由于芯片占用面积越来越降低,所以芯片自身消耗更少的能量。因此,可以用于降低芯片消耗的能量的任何方法可以转换为性能的提高。
可以用于降低芯片功耗的一种方法是频率伸缩(frequencyscaling)。频率伸缩允许芯片在需要高性能时在短时间范围内以全频进行操作,并且在其它时间以较低频率进行操作。具体地,芯片的功耗可以用下列等式表示:
power=KαC(V2)F+QV2
其中V是芯片的核心电压,F是芯片的工作频率,α是芯片的活动系数,C是芯片的有效电容,以及K和Q是除其它因素外取决于制造工艺的常数。从这个等式可以看出,芯片的工作频率直接与其功耗成比例。因而,频率的降低将相应导致功耗的降低。
为了确定芯片的工作频率是要升级还是降级,需要计算在经过的时间内芯片中发生的平均活动。如果在经过的时间内芯片中的活动较高,则芯片可以以较高的频率进行操作。另一方面,如果芯片中的活动较低,则芯片可以以较低的频率进行操作。
在计算机系统中,时基计数器(time-base counter)被用于测量经过的时间。显然,计数器应当以固定速度递增。该速度通常由频率时钟导出。更具体地,计数器递增的速度可以是核心频率时钟的1/n,其中n是整数(内部时基计数器),或通过由例如在PowerPCArchitecture Book III中描述的系统(外部时基计数器)提供的外部时钟信号的上升沿确定。
图1是基于已知电路结构的时基计数器的示例图。如图1所示,电路结构包含外部时基部分110,内部时基部分120以及时基值生成部分130。外部时基部分110包含时基(tbase)输入引脚112以及边沿检测逻辑114。在图1示出的电路中使用的所有电路元件由内部或核心时钟信号提供时钟,即处于核心频率时钟域180中。
外部时基部分110允许外部设备通过时基输入引脚112向时基计数器提供时钟信号。每当检测到外部时基信号的上升沿时,外部时基部分110的边沿检测逻辑114由外部时基信号生成″滴答(tick)″,即为1的时基值增量。内部时基部分120是在每8个内部或核心时钟周期生成一个滴答的模8(或任何其它任意周期数)计数器。内部时基部分120包含增量器(incrementer)122,锁存器124以及比较器126。
来自外部和内部时基部分110和120的输出被提供给多路复用器140。在PowerPC体系结构中,提供经过结构设计的寄存器以选择系统是否将使用内部或外部时基。基于这个选择,通过多路复用器140选择对应部分110或120以生成滴答。
时基值生成部分130包含增量器132和锁存器134。增量器132响应来自多路复用器140的输入递增输出时基值。时基值生成部分130的增量器132针对每个所接收的滴答将时基值递增1。所得到的时基值被输出以便被微处理器用于测量经过的时间,例如用于测量在频率无关时间段中的工作量,该量可以被用于确定是升级还是降级微处理器的工作频率。
使用外部时基或内部时基测量频率伸缩期间经过的时间可能导致不准确的结果。例如,如果使用内部时基计数器,则计数器将以较低核心时钟频率较慢速计数,以及以较高核心时钟频率较快速计数。因而,时基计数器电路100不会以固定速度递增。
此外,核心频率可能被伸缩为非常低的值以获得最大功率降低。这个频率值可能小于系统中进行准确时间测量所需要的时基增加频率。在这种情况下,由于在选择内部时基的情况下,因核心时钟过慢而使得内部时基部分120不能精确地生成滴答,所以时基值生成部分130会变得不准确。可选地,如果选择外部时基,则由于用于检测外部时基信号112的边沿的核心频率比外部时基信号112本身更慢,所以外部时基部分110将不能检测外部时基信号112的一些上升沿。这再次导致时基值生成部分130的不准确。
一个明显的解决方案是使用固定频率时钟。图2是基于已知电路结构的、使用固定的频率时钟的时基计数器的框图。如图2所示,固定频率时钟可直接从时钟生成部分210中的锁相环(PLL)212中导出。PLL是控制振荡器,使得振荡器在基准信号的频率上保持恒定相位角(即,锁定)的电子电路。
在图2示出的电路中,时钟生成部分210包含PLL 212,分频器(divider)214以及多路复用器216,该多路复用器用于在PLL 212的固定频率时钟信号输出或由分频器214输出的PLL 212的分频或降级输出之间进行选择。频率选择信号(freq_sel)被用于在作为可伸缩核心频率时钟220提供的这2个输出之间进行选择。
频率选择信号也被提供给内部时基部分中的多路复用器230以在8周期输入信号和降级的8周期输入信号(即8/n)之间进行选择。通过这种方式,如果可伸缩核心频率时钟被降级,则周期数被降级相同的量以生成内部时基值。换言之,当时钟频率经由freq_sel信号被例如降级一半时,内部时基计数器的最大值也被减半以反映该变化。
在所描述的例子中,外部时基部分110的边沿检测电路114以PLL212生成的固定频率运行,该频率是比通过时基输入引脚112接收的外部时基时钟信号更高的频率。因此,外部时基时钟信号的上升沿可以被正确地采样。然而问题在于,如果核心时钟频率变得低于外部时基部分110的滴答频率,则由边沿检测电路114产生的一些滴答将在核心频率时钟域180中被错过并且未象它们应当的那样被加到时基值上。
如果如上所述使用内部时基方法,则可以把模数计数器转变为只对最大值的一部分,例如一半进行计数,例如当减半核心时钟频率时,用4而不是在所描述的例子中的8。这将导致以恒定频率生成滴答。然而,这个选择具有两个主要限制。第一,不能用比模数计数器的最大值(例如8)更大的系数伸缩频率。第二,由于可以例如根据核心时钟频率和芯片制造商参数在0和3个核心时钟周期之间变化的时钟网格(clock mesh)的模拟延迟,所以不能在与内部时基多路复用器230完全相同的时间转变核心时钟频率。因此,如果微处理器如降低微处理器功耗所期望的那样在普通操作期间执行若干频率伸缩操作,则会最终随时间流逝丢失一或多个滴答。
换言之,如果处理器频率较低,使得模拟网格延迟小于一个周期并且频率伸缩在内部时基为0时发生,则不会丢失滴答。然而,如果处理器以非常高频率运行,则图2中示出为模拟网格延迟的时钟网格上的模拟延迟超出一或多个时钟周期。因而,当内部时基为0时切换freq_sel信号会导致网格上的时钟实际只减慢一或多个周期,并且因此时基计数器不能正确地计数。对于高频微处理器的主动电源管理,时钟网格频率也会被降低到低于外部时基更新速率。结果,核心不能足够快速地递增其时基值,并且像上述例子那样,电路可能遗漏″滴答″。
发明内容
图解实施例提供了一种用于提供时基计数器的系统、设备和方法,该时基计数器用于伸缩微处理器的工作频率。该系统,设备和方法使用时基计数器电路结构,其中固定频率时钟从微处理器的时钟生成电路的PLL中导出,并且用于馈送外部和内部时基逻辑以及时基累加器计数器。时基累加器计数器累积来自两个核心时钟之间的时基逻辑的滴答事件。累积值在可伸缩时钟的每个时钟边沿被传送到核心时钟域,并且累加器被接着复位。由于所累积的滴答在累加器被复位之前被传送到核心时钟域,所以使用图解实施例的电路不会丢失滴答。
对于电路的内部时基部分,每预定数量的周期,例如由时钟生成电路的锁相环(PLL)生成的固定频率时钟信号的每8个周期,把滴答发送到时基累加器。累加器响应从电路的内部时基部分接收滴答而递增。
在电路的时基值生成部分中,在可伸缩核心频率时钟的每个周期切换复位信号。当时基累加器中的边沿检测器检测到可伸缩核心频率时钟的切换(即上升或下降沿)时,当前累加器值被复制到可伸缩核心时钟域,并且在那里被加到当前时基值上。并行地,累加器值被复位并且准备好累积新的滴答。
图解实施例的机制解决了已知电路结构存在的遗漏滴答的问题。图解实施例的机制增加非常少的逻辑以提供解决方案,并且创建了广泛地与核心中、在固定时钟域中以及在时基输入引脚上的时钟频率相独立的时基逻辑的一般体系结构。
在一个图解实施例中,提供一个电路,该电路包括由固定频率时钟信号驱动的第一电路部分;以及连接到第一电路部分、由可伸缩频率核心时钟信号驱动的第二电路部分。第一电路部分基于固定频率时钟信号累积内部时基计数器或采样外部时基信号之一的滴答的和,并且基于可伸缩频率核心时钟信号向第二电路部分提供所累积的滴答的和。
第一电路部分可以包含由固定频率时钟信号驱动并且累积滴答的和的时基累加器。时基累加器可以包括边沿检测电路元件,该元件基于可伸缩频率核心时钟信号检测从第二电路部分发送的复位信号的边沿。可以响应检测到复位信号的边沿向第二电路部分提供所累积的滴答的和。
第一电路部分可以包含由固定频率时钟信号驱动的内部时基计数器。内部时基计数器可以每预定数量的固定频率时钟信号周期生成一个滴答。
第一电路部分可以外部时基电路,其包括时基信号输入引脚,和检测通过时基信号输入引脚接收的时基输入信号的边沿的边沿检测电路元件。边沿检测电路元件可以响应检测到时基输入信号的上升沿而生成滴答。
第二电路部分可以包含加法器,该加法器从第一电路部分接收所累积的滴答的和以作为第一输入,以及存储在第二电路部分中的时基值的当前值以作为第二输入。加法器可以输出更新的时基值。更新的时基值可以由第二电路部分输出以便被微处理器用于执行时基操作。
该电路可以是微处理器的一部分。微处理器可以是玩具、游戏机、游戏控制台、手持计算设备、个人数字助理、通信设备、无线电话、膝上型计算设备、台式计算设备或服务器计算设备之一的一部分。
在另一个图解实施例中,提供了用于确定在执行时基操作时使用的时基值的方法。该方法可以包括生成固定频率时钟信号;生成可伸缩频率核心时钟信号;基于固定频率时钟信号累积内部时基计数器或采样外部时基信号之一的滴答的和。该方法还可以包括基于可伸缩频率核心时钟信号把所累积的滴答的和加到预先存储的时基值上以生成更新的时基值;以及输出更新的时基值以便被微处理器用于执行时基操作。
累积滴答的和可以包括使用由固定频率时钟信号驱动并且累积滴答的和的时基累加器。时基累加器可以包括边沿检测电路元件,该元件基于可伸缩频率核心时钟信号检测从第二电路部分发送的复位信号的边沿。可以响应检测到复位信号的边沿把所累积的滴答的和加到所存储的时基值上。
第一电路部分可以包含由固定频率时钟信号驱动的内部时基计数器。内部时基计数器可以每预定数量的固定频率时钟信号周期生成一个滴答。
第一电路部分可以包括时基信号输入引脚和检测通过时基信号输入引脚接收的时基输入信号的边沿的边沿检测电路元件。边沿检测电路元件响应检测到时基输入信号的上升沿而生成滴答。
累积和的相加包括使用接收所累积的滴答的和作为第一输入以及时基值的当前值作为第二输入的加法器。加法器可以输出更新的时基值。
其中可以实现该方法的数据处理设备可以是微处理器的一部分。微处理器可以是玩具、游戏机、游戏控制台、手持计算设备、个人数字助理、通信设备、无线电话、膝上型计算设备、台式计算设备或服务器计算设备之一的一部分。
在另一个图解实施例中,提供了用于提供电路的方法。这个方法可以包括提供由固定频率时钟信号驱动的第一电路部分;提供连接到第一电路部分、由可伸缩频率核心时钟信号驱动的第二电路部分。第一电路部分可以基于固定频率时钟信号累积内部时基计数器或采样外部时基信号之一的滴答的和,并且可以基于可伸缩频率核心时钟信号向第二电路部分提供所累积的滴答的和。
在下列本发明的示例性实施例的详细描述中将说明,或本领域普通技术人员通过该描述将明白本发明的这些和其它特征和优点。
附图说明
在所附权利要求书中记载了被认为是本发明的特征的新颖特性。然而,参照下列结合附图对图解实施例进行的详细描述可以更好地理解本发明自身、最优使用模式、其它目标和优点,其中:
图1是基于已知电路结构的时基计数器的示例图;
图2是基于已知电路结构、使用固定频率时钟的时基计数器的框图;
图3是其中可以实现图解实施例的时基计数器电路结构的微处理器的示例性模块图;
图4是基于一个图解实施例的电路结构的示例性模块图;
图5是图解基于一个图解实施例的、图4示出的电路结构的操作的时序图;以及
图6是概括基于一个图解实施例的、时基计数器的示例性操作的流程图。
具体实施方式
如上所述,图解实施例提供了用于提供准确的时基计数器的机制,该时基计数器用于伸缩微处理器的工作频率。图解实施例的机制可以被集成到能够切换操作频率的任何微处理器中。这种微处理器的一个例子是可从位于纽约Armonk的国际商用机器公司得到的PowerPC970FX微处理器。图3是其中可以实现图解实施例的示例性方面的微处理器的示例性模块图。应当注意,图3只是示例性的,并且不被用来声明或暗示关于可以实现图解实施例的类型或微处理器体系结构的任何限制。
现在参考附图,图3是其中可以实现图解实施例的时基计数器电路结构的微处理器的示例性模块图。如图3所示,微处理器300包含执行核心310,具有指令获取单元322的前端320,指令队列单元323,解码、分解和组合单元324以及分支单元326。指令可以从L1指令高速缓存330获取并且基于由分支单元326提供的信息在指令队列中排队。指令可以接着被分配给执行核心310。
执行核心310包含向量处理单元340,浮点执行单元342,第一整数执行单元344,载入-存储执行单元346,第二整数单元348,条件寄存器单元350以及分支执行单元352。例如,向量处理单元340可以是SIMD执行单元。这些不同元件在执行从前端320分配的指令时的操作在本领域一般是已知的,并且因而这里不提供详细的说明。对于本发明的图解实施例,通过访问例如位于整数单元348中的特殊寄存器(例如,通过mfspr指令)读取图解实施例的用于测量时间的时基计数器的值。
图解实施例提供了用于提供准确时基计数器的机制,该时基计数器用于伸缩微处理器300的元件进行操作时的时钟频率。这种伸缩对于支持把时钟频率切换到较低频率以便在低或无利用的时间段内节约功耗的微处理器设计尤其有用。如上所述,在这种设计中,提供时基计数器的已知机制遇到由于时钟频率的切换而错过″滴答″或时基计数器的递增的问题。遗漏的滴答是应当增加时基计数器的时基值但由于这样或那样的原因而没有增加的滴答。图解实施例的机制通过提供即使在时钟频率被切换的情况下也不遗漏滴答的改进时基计数器来解决这个问题。
该系统,设备和方法使用时基计数器电路结构,其中固定频率时钟从微处理器的时钟生成电路的PLL中导出,并且用于馈送外部和内部时基逻辑以及时基累加器计数器。时基累加器计数器累积来自两个核心时钟之间的时基逻辑的滴答事件。累积值在可伸缩时钟的每个时钟边沿被传送到核心时钟域,并且累加器被接着复位。由于所累积的滴答在累加器被复位之前被传送到核心时钟域,所以使用图解实施例的电路不会丢失滴答。
图4是基于一个图解实施例的电路结构的示例性模块图。如图4所示,电路结构400类似于图2示出的电路结构,但在时基值生成器部分450中添加了时基累加器430和电路元件452,454,458和459。如图所示,时钟生成电路460中PLL 462生成的固定时钟频率被用于在时基输入引脚412处使用外部时基部分410的边沿检测器414采样外部时基信号的上升沿。这个相同的固定时钟频率被用于馈送内部时基计数器部分420。在所描述的例子中,固定时钟频率具有比在时基输入引脚412处采样的外部时基信号的频率更高的频率。
对于电路400的内部时基计数器部分420,每预定数量个由时钟生成电路460的PLL 462生成的固定频率时钟信号的周期,例如每8个周期,向时基累加器430发送滴答。内部时基累加器部分420响应从时钟生成电路460的PLL 462接收固定频率时钟而进行递增。可以独立于核心时钟频率地选择这个固定频率时钟,并且因而内部时基计数器部分420可以以独立于核心时钟频率并且足以正确采样外部时基信号的固定频率,生成在时基累加器部分430中累积的滴答。这保证时基准确并且不会由于时钟频率的切换而丢失滴答。
时基累加器部分430累积由内部时基计数器部分420生成的滴答。时基累加器部分430和内部时基计数器部分420都处于固定频率时钟域480,并且因而由于来自PLL 462的固定频率时钟以固定频率运行。时基累加器部分430基于根据多路复用器440处的设置来自内部时基计数器部分420或来自外部时基计数器部分410的TAinc信号,在锁存器434中累积滴答,直到累积值被安全地传送到核心时钟频域490中的时基值生成器部分450。当通过Taval信号把时基累加器部分430中的累积值从锁存器434传送到时基值生成器部分450的锁存器452时,时基值生成器部分450通过加法器454把累积值加到时基值生成器部分450的锁存器456中的先前存储值上。因而,由时基值生成器部分450生成和输出的时基值可以递增1或更多,这取决于由时基累加器部分430累积的滴答的数量。
当由时基累加器部分430的边沿检测器436检测所伸缩的核心频率时钟的转变(即上升或下降沿)时,存储在锁存器434中的当前累加器值被复制到可伸缩核心时钟域490的锁存器452中,并且使用加法器454加到锁存器456中的当前时基值上。并行地,在电路400的时基值生成部分450中,响应所检测的伸缩核心频率时钟的转变,通过锁存器458和反相器459切换复位信号(即TArst信号)。在锁存器458中生成复位信号,并且复位信号在边沿检测器436中被用来在相同周期中复位锁存器434。
由图4示出的电路提供的解决方案适用于任何任意选择的核心时钟频率。由于固定频率时钟可以被独立于核心时钟频率地选择和设置,使得外部时基信号可以在时基输入引脚412处被正确地采样,电路结构400确保时基准确并且不会丢失滴答。此外,由于由时基值生成器部分450生成的时基值可以基于伸缩核心时钟频率被更新,所以时基值可以由微处理器以快速方式按照由伸缩核心时钟频率确定的频率进行访问(如高性能微处理器通常所需的那样)。
图5是图解基于一个图解实施例的、图4示出的电路结构的操作的时序图。固定时钟频率510被用于使用内部时基计数器部分420生成滴答,或采样外部时基信号。如先前所提及的,在作为例子的PowerPC体系结构中,提供经过结构设计的寄存器,其在系统将使用内部或外部时基的情况下进行选择。这个设置将控制多路复用器440。然而,应当注意,本发明不局限于这种体系结构,根据特定的实现,在不偏离本发明的宗旨和范围的前提下,各种外部或内部时基生成模式可以用于本发明的机制。
每当例如由多路复用器440检测到滴答时,TAinc信号520就脉动一个周期。在每个TAinc脉冲上,累加器计数器信号值(即TAval 530)增加1。在可伸缩时钟频率540上运行的时基值生成器部分450中的时基逻辑将最终传送当前TAval值530,并且设置TArst信号550以通知在固定频率时钟510上运行的逻辑。例如边沿检测器436的固定频率时钟逻辑生成复位信号560以把累加器计数器值(例如存储在锁存器434中的值)复位为初值(例如0)。
通过时基输入引脚412输入的外部时基信号的最大频率由在固定频率时钟上运行的上升沿检测逻辑414确定。外部时基输入信号(是异步信号)通过包括2个锁存器并后跟3个锁存器的去抖逻辑(debouncingligic)(未示出),以检测逻辑″1″并且过滤假脉冲(glitch)。附加的锁存器被用于检测边沿变化。由此,可以说最小时基输入信号频率与固定频率时钟的比值具有如下关系:
最小时基(min Tbase)-固定频率时钟(FixedFrequencyClock)比:(3(逻辑″1″检测)*2(2个半周期)=1∶6
在一个图解实施例中,可以由加法器454的实现引入一个需求,即这个加法器只能在以全核心时钟频率的1/n运行时每8/n个周期进行相加。对于最坏的情况,即n=1,加法器需要8个周期,并且因此上述比值必须限于1∶8。由于外部时基信号通常具有大约133MHz的频率并且PLL 462通常传送1GHz以上的核心时钟频率,所以这能够被轻易地满足。
在图解实施例中,固定频率时钟和可伸缩核心频率时钟之间的最大比值可以由下列条件限制。第一,可能需要固定频率时钟至少像可伸缩核心频率时钟那些快,以便确保边沿检测器414的正确操作。第二,当与固定时钟频率比较时,核心时钟频率越慢,累加器必须更宽。
由于由PLL传送的核心时钟频率可以被用作固定频率时钟,所以第一个条件可以被轻易地满足。指定时基累加器增加和固定频率时钟之间的最大比值为8∶1,时基累加器的宽度可以用下列公式计算:
累加器宽度=ceil(ln 2(固定频率时钟-可伸缩频率时钟比*2+1))
例如,PowerPC970+微处理器支持最大时钟伸缩比64∶1。当实现图解实施例的电路结构时,PowerPC970+微处理器会需要用作时基累加器的8位计数器。
图6是概括基于一个图解实施例的、时基计数器的示例性操作的流程图。应当理解,虽然图6示出步骤的特定顺序,然而本发明不局限于执行图6的步骤的任何特定顺序。相反,在不偏离本发明的宗旨和范围的前提下,可以按不同顺序或甚至基本上同时执行图6中的许多步骤。
如图6所示,操作以时钟生成电路生成固定频率时钟信号为开始(步骤610)。由外部时基电路的边沿检测器采样外部时基信号,或基于固定频率时钟信号递增内部时基计数器(采取何种方式取决于具体实现)(步骤620)。基于外部时基信号的采样或内部时基计数器的递增来生成滴答,并且滴答被发送到时基累加器(步骤630)。
时基累加器把滴答加到先前存储的累积滴答值上(步骤640)。时基累加器确定所累积的滴答值是否将被传送到时基值生成器电路(步骤650)。如前所述,这个确定可以涉及检测可伸缩核心时钟信号的边沿转变(即上升或下降沿)。然而,这只是一个可能实现,并且本发明不局限于复位信号的切换。
如果所累积的滴答值将被传送到时基值生成器电路,则该值被复制到时基值生成器电路(步骤660)。接着在时基累加器中复位所累积的滴答值(步骤670)。
时基值生成器把所累积的滴答值加到先前存储的时基值上(步骤680)并且输出更新的时基值以便微处理器使用(步骤690)。操作接着结束。应当注意,在微处理器可工作时,这个操作可以被连续重复。
因而,图解实施例提供了解决已知电路结构存在的遗漏滴答的问题的电路结构。对于图解实施例的电路,电路的第一部分基于固定频率时钟进行操作并且被用于以固定频率累积滴答。在电路的第二部分中,基于可伸缩核心时钟频率生成时基值,并且以由可伸缩核心时钟频率确定的频率使用电路的第一部分的累积滴答来更新时基值。结果,滴答未被遗漏并且以可伸缩核心时钟频率操作的微处理器可以以微处理器期望的频率访问适当的时基值。
如上所述的电路可以是集成电路芯片的设计的一部分。以图形计算机编程语言创建芯片设计,并且把芯片设计存储在计算机存储介质(例如磁盘、磁带、物理硬盘驱动器或诸如存储接入网络中的虚拟硬盘驱动器)中。如果设计人员不制造芯片或光刻用于制造芯片的掩模,则设计人员通过物理手段(例如,通过提供存储设计的存储介质的拷贝)或以电子方式(例如,通过因特网)向这种实体直接或间接的发送设计结果。所存储的设计接着被转换成用于光刻掩模的制造的适当格式(例如,GDSII),其通常包含所涉及的要形成在晶片上的芯片设计的多个拷贝。光刻掩模被用来限定要蚀刻或要加工的晶片(和/或在其上的层)的区域。
结果集成电路芯片可以被制造者以原始晶片形式(即,作为具有多个未封装芯片的单个晶片)作为裸片或以封装形式分发。在后一种情况下,芯片被装配在单个芯片封装(例如塑料托架,具有附着到母板或其它更高层托架上的导线)或多片式封装(例如具有表面互连或埋植互连或两者的陶瓷托架)中。总之,该芯片接着与其它芯片、离散电路元件和/或其它信号处理设备集成为(a)中间产品,例如母板,或(b)最终产品的一部分。
最终产品可以是任何产品,其包含集成电路芯片,范围从玩具和其它低端应用到具有显示器、键盘或其它输入设备以及中央处理器的高级计算机产品。此外,其中可提供集成电路芯片的最终产品可以包含游戏机,游戏控制台,手持计算设备,个人数字助理,例如无线电话等等的通信设备,膝上型计算设备,台式计算设备,服务器计算设备或任何其它计算设备。
前面对本发明进行的描述只是为了图解和描述,不被用来以具有公开的形式对本发明进行详细定义和限制。本领域的普通技术人员显然可以进行许多修改和改变。选择和描述实施例是为了提供对本发明原理及其实际应用的最优说明,并且也是为了使本领域的普通技术人员参照可以根据所考虑的具体使用情况进行各种修改的各种实施例理解本发明。
Claims (16)
1.一种在数据处理设备中确认用于执行时基操作的时基值的电路,包括:
由固定频率时钟信号驱动的第一电路部分;以及
连接到第一电路部分、由可伸缩频率核心时钟信号驱动的第二电路部分,
其中第一电路部分通过基于固定频率时钟信号累计内部时基计数器或采样外部时基信号生成滴答,并且
其中所述第一电路部分包括时基累加器,用于对所生成的滴答进行累计,以得到累积滴答值,
所述时基累加器基于可伸缩频率核心时钟信号向所述第二电路部分提供所述累积滴答值,并把所述累积滴答值复位,
其中所述第二电路部分包含加法器,该加法器将从所述第一电路部分接收所述累积滴答值作为第一输入,将存储在第二电路部分中的时基值的当前值以作为第二输入,并输出更新的时基值,以便用于时基操作。
2.如权利要求1所述的电路,其中所述时基累加器包括边沿检测电路元件,该边沿检测电路元件基于可伸缩频率核心时钟信号检测从所述第二电路部分发送的复位信号的边沿,并且其中响应检测到复位信号的边沿向所述第二电路部分提供所述累积滴答值。
3.如权利要求1所述的电路,其中所述第一电路部分包含由固定频率时钟信号驱动的内部时基计数器,并且其中所述内部时基计数器每隔预定数量的固定频率时钟信号周期就生成一个滴答。
4.如权利要求1所述的电路,其中所述第一电路部分包括外部时基电路,所述外部时基电路包括时基信号输入引脚,和检测通过所述时基信号输入引脚接收的时基输入信号的边沿的边沿检测电路元件。
5.如权利要求4所述的电路,其中所述外部时基电路的边沿检测电路元件响应检测到时基输入信号的上升沿而生成滴答。
6.如权利要求1所述的电路,其中该电路是微处理器的一部分。
7.如权利要求6所述的电路,其中微处理器是玩具、游戏机、游戏控制台、手持计算设备、个人数字助理、通信设备、无线电话、膝上型计算设备、台式计算设备或服务器计算设备之一的一部分。
8.一种在数据处理设备中确定用于执行时基操作的时基值的方法,包括:
生成固定频率时钟信号,其中所述固定频率时钟信号驱动数据处理设备内的第一电路部分;
生成可伸缩频率核心时钟信号,其中所述可伸缩频率核心时钟信号驱动连接到第一电路部分的第二电路部分;
在所述第一电路部分中通过基于固定频率时钟信号累计内部时基计数器或采样外部时基信号生成滴答;
在所述第一电路部分中对所生成的滴答进行累计,以得到累积滴答值;
所述第一电路部分基于可伸缩频率核心时钟信号把累积滴答值传送给所述第二电路部分,并把累积滴答值复位;
所述第二电路部分把所述累积滴答值加到预先存储的时基值上以生成更新的时基值,并输出更新的时基值以便用于执行时基操作。
9.如权利要求8所述的方法,其中在所述第一电路部分中使用由固定频率时钟信号驱动的时基累加器对滴答进行累计,得到累积滴答值。
10.如权利要求9所述的方法,其中所述时基累加器中的边沿检测电路元件基于可伸缩频率核心时钟信号检测从所述第二电路部分发送的复位信号的边沿,当检测到复位信号的边沿时把累积滴答值传送给所述第二电路部分。
11.如权利要求8所述的方法,其中所述第一电路部分包含由固定频率时钟信号驱动的内部时基计数器,并且其中所述内部时基计数器每隔预定数量的固定频率时钟信号周期就生成一个滴答。
12.如权利要求8所述的方法,其中所述第一电路部分包含由固定频率时钟信号驱动的外部时基计数器,所述外部时基计数器具有时基信号输入引脚和检测通过时基信号输入引脚接收的时基输入信号的边沿的边沿检测电路元件。
13.如权利要求12所述的方法,其中所述外部时基计数器内的边沿检测电路元件响应检测到时基输入信号的上升沿而生成滴答。
14.如权利要求8所述的方法,其中所述第二电路部分包括加法器,其中所述累积滴答值作为所述加法器的第一输入,而时基值的当前值作为所述加法器的第二输入并且其中加法器输出更新的时基值。
15.如权利要求8所述的方法,其中数据处理设备是微处理器的一部分。
16.如权利要求15所述的方法,其中微处理器是玩具、游戏机、游戏控制台、手持计算设备、个人数字助理、通信设备、无线电话、膝上型计算设备、台式计算设备或服务器计算设备之一的一部分。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/340,449 US7602874B2 (en) | 2006-01-26 | 2006-01-26 | Providing accurate time-based counters for scaling operating frequencies of microprocessors |
US11/340,449 | 2006-01-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101008861A CN101008861A (zh) | 2007-08-01 |
CN100585537C true CN100585537C (zh) | 2010-01-27 |
Family
ID=38285556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710001447A Expired - Fee Related CN100585537C (zh) | 2006-01-26 | 2007-01-08 | 确定时基值的电路和方法 |
Country Status (4)
Country | Link |
---|---|
US (2) | US7602874B2 (zh) |
JP (1) | JP4843480B2 (zh) |
CN (1) | CN100585537C (zh) |
TW (1) | TWI406121B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7602874B2 (en) * | 2006-01-26 | 2009-10-13 | International Business Machines Corporation | Providing accurate time-based counters for scaling operating frequencies of microprocessors |
US8379838B2 (en) * | 2007-06-05 | 2013-02-19 | Skyworks Solutions, Inc. | Tone detector |
US8386829B2 (en) | 2009-06-17 | 2013-02-26 | Macronix International Co., Ltd. | Automatic internal trimming calibration method to compensate process variation |
US8806496B2 (en) * | 2009-09-30 | 2014-08-12 | Intel Corporation | Virtualizing a processor time counter during migration of virtual machine by determining a scaling factor at the destination platform |
US8897324B2 (en) * | 2012-02-01 | 2014-11-25 | Microchip Technology Incorporated | Timebase peripheral |
US8598910B1 (en) * | 2012-08-02 | 2013-12-03 | Lsi Corporation | Timestamping logic with auto-adjust for varying system frequencies |
US10101786B2 (en) | 2014-12-22 | 2018-10-16 | Intel Corporation | Holistic global performance and power management |
US10466754B2 (en) | 2014-12-26 | 2019-11-05 | Intel Corporation | Dynamic hierarchical performance balancing of computational resources |
CN112578847A (zh) * | 2020-12-21 | 2021-03-30 | 青岛鼎信通讯股份有限公司 | 一种基于Linux系统的多MCU时钟同步方案 |
US11366488B1 (en) | 2021-05-20 | 2022-06-21 | Nxp Usa, Inc. | Timer for use in an asymmetric mutli-core system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6348823B1 (en) * | 1999-06-29 | 2002-02-19 | Industrial Technology Research Institute | Digital controlled oscillating circuit of digital phase lock loops |
CN1501583A (zh) * | 2002-11-18 | 2004-06-02 | ��ʽ���������Ƽ� | 分别具备时钟生成电路和时钟延迟电路的信息处理装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5721888A (en) * | 1995-11-13 | 1998-02-24 | Motorola, Inc. | Performing flexible logical operations with timer channel outputs |
JPH11259329A (ja) * | 1998-03-12 | 1999-09-24 | Oki Micro Design:Kk | デュアルクロックを持つマイクロコントローラのインサーキットエミュレータ |
JP4297552B2 (ja) * | 1998-07-06 | 2009-07-15 | 富士通マイクロエレクトロニクス株式会社 | セルフ・タイミング制御回路 |
KR100708110B1 (ko) * | 2001-06-23 | 2007-04-16 | 삼성전자주식회사 | 워블 신호를 이용한 시스템 클록 생성 장치 및 그를이용한 데이터 재생 장치 |
JP2003067080A (ja) * | 2001-08-30 | 2003-03-07 | Matsushita Electric Ind Co Ltd | クロック切り換え装置及びマイクロコントローラ |
US7278080B2 (en) * | 2003-03-20 | 2007-10-02 | Arm Limited | Error detection and recovery within processing stages of an integrated circuit |
US6967510B2 (en) * | 2003-10-16 | 2005-11-22 | International Business Machines Corporation | Time-base implementation for correcting accumulative error with chip frequency scaling |
US7424076B2 (en) * | 2004-01-22 | 2008-09-09 | Nokia Corporation | System and method for providing synchronization information to a receiver |
US6980042B2 (en) * | 2004-04-05 | 2005-12-27 | Micron Technology, Inc. | Delay line synchronizer apparatus and method |
US7602874B2 (en) * | 2006-01-26 | 2009-10-13 | International Business Machines Corporation | Providing accurate time-based counters for scaling operating frequencies of microprocessors |
-
2006
- 2006-01-26 US US11/340,449 patent/US7602874B2/en not_active Expired - Fee Related
- 2006-12-27 JP JP2006351591A patent/JP4843480B2/ja not_active Expired - Fee Related
-
2007
- 2007-01-05 TW TW096100405A patent/TWI406121B/zh not_active IP Right Cessation
- 2007-01-08 CN CN200710001447A patent/CN100585537C/zh not_active Expired - Fee Related
-
2008
- 2008-05-30 US US12/130,229 patent/US7646838B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6348823B1 (en) * | 1999-06-29 | 2002-02-19 | Industrial Technology Research Institute | Digital controlled oscillating circuit of digital phase lock loops |
CN1501583A (zh) * | 2002-11-18 | 2004-06-02 | ��ʽ���������Ƽ� | 分别具备时钟生成电路和时钟延迟电路的信息处理装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101008861A (zh) | 2007-08-01 |
US20070172010A1 (en) | 2007-07-26 |
JP4843480B2 (ja) | 2011-12-21 |
JP2007200303A (ja) | 2007-08-09 |
US7602874B2 (en) | 2009-10-13 |
TW200809458A (en) | 2008-02-16 |
US7646838B2 (en) | 2010-01-12 |
US20080226008A1 (en) | 2008-09-18 |
TWI406121B (zh) | 2013-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100585537C (zh) | 确定时基值的电路和方法 | |
CN103163940B (zh) | 片上系统时钟控制方法、片上系统及包括其的半导体系统 | |
US9939839B2 (en) | Low power automatic calibration method for high frequency oscillators | |
US7594126B2 (en) | Processor system and method for reducing power consumption in idle mode | |
US7941684B2 (en) | Synchronization of processor time stamp counters to master counter | |
JP5734518B2 (ja) | マルチクロックリアルタイムカウンタ | |
Keller et al. | A RISC-V processor SoC with integrated power management at submicrosecond timescales in 28 nm FD-SOI | |
US8464089B2 (en) | Tracing apparatus and tracing system | |
US9134752B2 (en) | Time measurement device, micro-controller and method of measuring time | |
CN114424144B (zh) | 自适应片上数字功率估计器 | |
EP3586214B1 (en) | Clock divider device and methods thereof | |
EP0590607B1 (en) | Low-power baud rate generator | |
US10459478B1 (en) | Digital sensor with embedded reference clock | |
TW200903216A (en) | Method and apparatus for scalable and programmable delay compensation for real-time synchronization signals in a multiprocessor system with individual frequency control | |
CN107817871B (zh) | 实时时钟的频率偏移校正精确度 | |
WO2017197946A1 (zh) | 一种基于pvtm的宽电压时钟拉伸电路 | |
CN101889253B (zh) | 集成电路时钟管理技术 | |
US8020020B2 (en) | Fast, automatically scaled processor time stamp counter | |
KR102651866B1 (ko) | 전력 소비를 줄이는 장치 및 그것의 방법 | |
JP5037755B2 (ja) | 温度変化測定装置及びその方法 | |
Keller | Energy-efficient system design through adaptive voltage scaling | |
JP2020071604A (ja) | クロック生成回路、半導体集積回路、及び、同半導体集積回路を備えた装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100127 Termination date: 20190108 |
|
CF01 | Termination of patent right due to non-payment of annual fee |