CN101008861A - 确定时基值的电路和方法 - Google Patents

确定时基值的电路和方法 Download PDF

Info

Publication number
CN101008861A
CN101008861A CNA2007100014470A CN200710001447A CN101008861A CN 101008861 A CN101008861 A CN 101008861A CN A2007100014470 A CNA2007100014470 A CN A2007100014470A CN 200710001447 A CN200710001447 A CN 200710001447A CN 101008861 A CN101008861 A CN 101008861A
Authority
CN
China
Prior art keywords
circuit
ticktock
clock signal
signal
time base
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.)
Granted
Application number
CNA2007100014470A
Other languages
English (en)
Other versions
CN100585537C (zh
Inventor
策德里克·利希特瑙
托马斯·普夫吕格尔
马丁·雷克滕瓦尔德
延斯·金策尔
安德里亚斯·施密特
罗尔夫·B.·希尔根多夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101008861A publication Critical patent/CN101008861A/zh
Application granted granted Critical
Publication of CN100585537C publication Critical patent/CN100585537C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/14Time supervision arrangements, e.g. real time clock
    • GPHYSICS
    • G04HOROLOGY
    • G04FTIME-INTERVAL MEASURING
    • G04F10/00Apparatus for measuring unknown time intervals by electric means
    • G04F10/04Apparatus for measuring unknown time intervals by electric means by counting pulses or half-cycles of an ac
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03LAUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
    • H03L7/00Automatic control of frequency or phase; Synchronisation
    • H03L7/06Automatic 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,指令队列单元322,解码、分解和组合单元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 (20)

1.一种电路,包括:
由固定频率时钟信号驱动的第一电路部分;以及
连接到第一电路部分、由可伸缩频率核心时钟信号驱动的第二电路部分,其中第一电路部分基于固定频率时钟信号累积内部时基计数器或采样外部时基信号之一的滴答的和,并且基于可伸缩频率核心时钟信号向第二电路部分提供所累积的滴答的和。
2.如权利要求1所述的电路,其中第一电路部分包含由固定频率时钟信号驱动并且累积滴答的和的时基累加器。
3.如权利要求2所述的电路,其中时基累加器包括边沿检测电路元件,该元件基于可伸缩频率核心时钟信号检测从第二电路部分发送的复位信号的边沿,并且其中响应检测到复位信号的边沿向第二电路部分提供所累积的滴答的和。
4.如权利要求1所述的电路,其中第一电路部分包含由固定频率时钟信号驱动的内部时基计数器,并且其中内部时基计数器每预定数量的固定频率时钟信号周期生成一个滴答。
5.如权利要求1所述的电路,其中第一电路部分包括外部时基电路,其包括时基信号输入引脚,和检测通过时基信号输入引脚接收的时基输入信号的边沿的边沿检测电路元件。
6.如权利要求5所述的电路,其中边沿检测电路元件响应检测到时基输入信号的上升沿而生成滴答。
7.如权利要求1所述的电路,其中第二电路部分包含加法器,该加法器从第一电路部分接收所累积的滴答的和以作为第一输入,以及存储在第二电路部分中的时基值的当前值以作为第二输入,并且其中加法器输出更新的时基值。
8.如权利要求7所述的电路,其中所更新的时基值由第二电路部分输出以便被微处理器用于执行时基操作。
9.如权利要求1所述的电路,其中该电路是微处理器的一部分。
10.如权利要求9所述的电路,其中微处理器是玩具、游戏机、游戏控制台、手持计算设备、个人数字助理、通信设备、无线电话、膝上型计算设备、台式计算设备或服务器计算设备之一的一部分。
11.一种在数据处理设备中确定用于执行时基操作的时基值的方法,包括:
生成固定频率时钟信号;
生成可伸缩频率核心时钟信号;
基于固定频率时钟信号累积内部时基计数器或采样外部时基信号之一的滴答的和;
基于可伸缩频率核心时钟信号把所累积的滴答的和加到预先存储的时基值上以生成更新的时基值;以及
输出更新的时基值以便被微处理器用于执行时基操作。
12.如权利要求11所述的方法,其中累积滴答的和包括使用由固定频率时钟信号驱动并且累积滴答的和的时基累加器。
13.如权利要求12所述的方法,其中时基累加器包括边沿检测电路元件,该元件基于可伸缩频率核心时钟信号检测从第二电路部分发送的复位信号的边沿,并且其中响应检测到复位信号的边沿把所累积的滴答的和加到所存储的时基值上。
14.如权利要求11所述的方法,其中第一电路部分包含由固定频率时钟信号驱动的内部时基计数器,并且其中内部时基计数器每预定数量的固定频率时钟信号周期生成一个滴答。
15.如权利要求11所述的方法,其中内部时基计数器是第一电路部分的一部分,第一电路部分包括时基信号输入引脚和检测通过时基信号输入引脚接收的时基输入信号的边沿的边沿检测电路元件。
16.如权利要求15所述的方法,其中边沿检测电路元件响应检测到时基输入信号的上升沿而生成滴答。
17.如权利要求11所述的方法,其中累积和的相加包括使用接收所累积的滴答的和作为第一输入以及时基值的当前值作为第二输入的加法器,并且其中加法器输出更新的时基值。
18.如权利要求11所述的方法,其中数据处理设备是微处理器的一部分。
19.如权利要求18所述的方法,其中微处理器是玩具、游戏机、游戏控制台、手持计算设备、个人数字助理、通信设备、无线电话、膝上型计算设备、台式计算设备或服务器计算设备之一的一部分。
20.一种提供电路的方法,包括:
提供由固定频率时钟信号驱动的第一电路部分;
提供连接到第一电路部分、由可伸缩频率核心时钟信号驱动的第二电路部分,其中第一电路部分基于固定频率时钟信号累积内部时基计数器或采样外部时基信号之一的滴答的和,并且基于可伸缩频率核心时钟信号向第二电路部分提供所累积的滴答的和。
CN200710001447A 2006-01-26 2007-01-08 确定时基值的电路和方法 Expired - Fee Related CN100585537C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/340,449 2006-01-26
US11/340,449 US7602874B2 (en) 2006-01-26 2006-01-26 Providing accurate time-based counters for scaling operating frequencies of microprocessors

Publications (2)

Publication Number Publication Date
CN101008861A true CN101008861A (zh) 2007-08-01
CN100585537C 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)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112578847A (zh) * 2020-12-21 2021-03-30 青岛鼎信通讯股份有限公司 一种基于Linux系统的多MCU时钟同步方案
CN112817370A (zh) * 2015-12-10 2021-05-18 苹果公司 时基同步

Families Citing this family (9)

* Cited by examiner, † Cited by third party
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
US11366488B1 (en) 2021-05-20 2022-06-21 Nxp Usa, Inc. Timer for use in an asymmetric mutli-core system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
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 富士通マイクロエレクトロニクス株式会社 セルフ・タイミング制御回路
TW451558B (en) * 1999-06-29 2001-08-21 Ind Tech Res Inst Digitally controlled oscillator circuit of digital phase lock loop
KR100708110B1 (ko) * 2001-06-23 2007-04-16 삼성전자주식회사 워블 신호를 이용한 시스템 클록 생성 장치 및 그를이용한 데이터 재생 장치
JP2003067080A (ja) * 2001-08-30 2003-03-07 Matsushita Electric Ind Co Ltd クロック切り換え装置及びマイクロコントローラ
JP4071604B2 (ja) * 2002-11-18 2008-04-02 株式会社ルネサステクノロジ クロック生成回路を備えた情報処理装置およびクロック遅延回路を備えた情報処理装置
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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112817370A (zh) * 2015-12-10 2021-05-18 苹果公司 时基同步
CN112578847A (zh) * 2020-12-21 2021-03-30 青岛鼎信通讯股份有限公司 一种基于Linux系统的多MCU时钟同步方案

Also Published As

Publication number Publication date
TWI406121B (zh) 2013-08-21
CN100585537C (zh) 2010-01-27
US20070172010A1 (en) 2007-07-26
US7646838B2 (en) 2010-01-12
JP4843480B2 (ja) 2011-12-21
US7602874B2 (en) 2009-10-13
JP2007200303A (ja) 2007-08-09
US20080226008A1 (en) 2008-09-18
TW200809458A (en) 2008-02-16

Similar Documents

Publication Publication Date Title
CN100585537C (zh) 确定时基值的电路和方法
Bol et al. SleepWalker: A 25-MHz 0.4-V Sub-$\hbox {mm}^{2} $7-$\mu\hbox {W/MHz} $ Microcontroller in 65-nm LP/GP CMOS for Low-Carbon Wireless Sensor Nodes
CN103163940B (zh) 片上系统时钟控制方法、片上系统及包括其的半导体系统
US9939839B2 (en) Low power automatic calibration method for high frequency oscillators
AU2010208458B2 (en) Dynamic voltage and frequency management
US7941684B2 (en) Synchronization of processor time stamp counters to master counter
KR101709604B1 (ko) 멀티-클럭 실시간 카운터
US9134752B2 (en) Time measurement device, micro-controller and method of measuring time
US8464089B2 (en) Tracing apparatus and tracing system
Floyd et al. Adaptive energy-management features of the IBM POWER7 chip
EP0590607B1 (en) Low-power baud rate generator
TW200903216A (en) Method and apparatus for scalable and programmable delay compensation for real-time synchronization signals in a multiprocessor system with individual frequency control
US10459478B1 (en) Digital sensor with embedded reference clock
CN101889253B (zh) 集成电路时钟管理技术
CN114424144B (zh) 自适应片上数字功率估计器
CN107817871B (zh) 实时时钟的频率偏移校正精确度
KR100958966B1 (ko) 클럭 분배 도메인들로의 클럭 분배 순서 제어
US8020020B2 (en) Fast, automatically scaled processor time stamp counter
CN110226148B (zh) 时钟分频器装置及其方法
KR102651866B1 (ko) 전력 소비를 줄이는 장치 및 그것의 방법
US7589565B2 (en) Low-power multi-output local clock buffer
JP5037755B2 (ja) 温度変化測定装置及びその方法
JP2020071604A (ja) クロック生成回路、半導体集積回路、及び、同半導体集積回路を備えた装置
AU2011226847A1 (en) Dynamic voltage and frequency management

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100127

Termination date: 20190108