CN1303490C - 用于在低工作量期间减少时钟频率的方法和装置 - Google Patents
用于在低工作量期间减少时钟频率的方法和装置 Download PDFInfo
- Publication number
- CN1303490C CN1303490C CNB031271987A CN03127198A CN1303490C CN 1303490 C CN1303490 C CN 1303490C CN B031271987 A CNB031271987 A CN B031271987A CN 03127198 A CN03127198 A CN 03127198A CN 1303490 C CN1303490 C CN 1303490C
- Authority
- CN
- China
- Prior art keywords
- clock
- signal
- integrated circuit
- input end
- frequency
- 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
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/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
用于集成电路(IC)的时钟频率控制单元,包括时钟发生器、有限状态机(FSM)和选通电路(GC)。FSM至少具有分别对应于非低工作量和低工作量状态的第一和第二状态。在第一状态中,GC向IC的功能单元提供频率与时钟发生器输出相同的时钟信号。在第二状态中,GC减少时钟信号的频率。在一个实施例中,GC屏蔽出时钟发生器输出的所选周期以减少时钟信号频率,FSM监视IC的操作以便当所选“低工作量”条件被检测到时(例如长时间等待的高速缓存未命中),从第一状态向第二状态转换。同样,当所选“非低工作量”条件被检测到时,FSM从第二状态向第一状态转换。
Description
技术领域
本发明涉及处理器,更具体但是不排他地说,涉及用于处理器中的时钟电路。
背景技术
半导体集成电路(IC)装置,例如处理器,可包括多种类型离散电路元件的电路,包括晶体管、电阻器和电容器,以及其他元件。半导体IC制造商承受着不断增长的压力,要在减少包装尺寸和维持可靠性的同时提高这种IC装置的速度(例如时钟速度)和性能。因此,举例来说,现代处理器(例如,通用微处理器、数字信号处理器,微控制器等)可在管芯中实现,包括大约数百万紧密的晶体管和其他离散次微米元件并在GHz(千兆赫)范围的时钟速度上操作。众所周知,处理器(以及其他IC装置)的功率消耗通常随操作频率的增加而增加。结果,这些现代处理器显示出较高的功率消耗。高功率消耗通常是不合需要的并且在电池驱动的应用中特别成问题。
一个减少功率消耗的常规技术是“时钟节流”。典型的时钟节流技术包括减少提供给所选处理器单元或子单元的时钟信号频率。因为即使当处理器正试图执行有用的工作时,时钟频率也被减少,所以时钟节流会降低处理器的性能。此外,当前的时钟节流解决方案是相对粗糙的(例如,花费相对大量的时钟周期来进入减少的时钟频率模式和返回正常时钟频率模式)。
另一个常规技术试图减少提供给处理器的电源电压。较低的电源电压会减慢处理器中晶体管的开关速度,这样会相应降低处理器的性能。此外,较低的电源电压会不合要求地增加处理器的噪音敏感度。此外,正如时钟节流,改变电源电压是相对粗糙的功率保存技术。因为功率与电压的三次方相关,该技术被广泛地用作减少功率消耗的有效方法。例如,电压降低20%将使功率降低49%,而仅损害20%的性能(时钟速度)。其局限性是它花费几百万的时钟周期来稳定IC上的新电压。
这些时钟节流和电压减少技术一般用于控制处理器的温度,因此,为防止对处理器造成的损害,上述缺点是可接受的。然而,对于纯粹的功率保存应用,这些缺点可能是不可接受的。
发明内容
本发明的一个方面是一种方法,包括:
当集成电路(IC)在第一状态操作时,为第一组所选条件监视所述IC的操作,所述IC具有多个功能单元,当所述IC在所述第一状态操作时所述多个功能单元接收具有第一频率的时钟信号,所述第一组所选条件表示所述IC中的低工作量时期;
在检测到满足所述第一组所选条件之后,等待多个可编程宽限期之一的终止;和
在所述多个可编程宽限期之一终止之后,使所述IC在第二状态操作,其中在所述第二状态中所述时钟信号具有小于所述第一频率的第二频率,其中选择所述多个可编程宽限期之一,以允许所述IC在所述第二状态操作之前处理一个或多个未决存储操作。
所述的方法,还包括:
当所述IC在所述第二状态中操作时,为第二组所选条件监视所述IC的操作,所述第二组所选条件表示所述低工作量时期的终止;以及当满足所述第二组所选条件时,使所述IC在所述第一状态操作。
所述的方法中,所述IC包括处理器。
所述的方法中,所述第一组所选条件包括:由二级高速缓存所确认的高速缓存未命中信号。
所述的方法中,所述第一组所选条件还包括:宽限期的终止,以允许处理一个或多个挂起的存储操作。
所述的方法中,所述第一组所选条件还包括:宽限期的终止,以允许执行在一个或多个暂存站中等待的所述操作。
所述的方法中,所述第一组所选条件包括多个可编程的宽限期。
所述的方法中,所述第二组所选条件包括指出所述二级高速缓存已经为存储处理作好准备的信号。
所述的方法中,所述第一组所选条件还包括:宽限期的终止,以允许所述处理器完成算术操作。
所述的方法中,所述算术操作是乘法或除法操作。
所述的方法中,所述第二组所选条件包括调查请求的接收。
所述的方法中,所述第二组所选条件包括中断信号的确认。
所述的方法中,所述第二组所选条件包括重置信号的确认。
所述的方法中,所述第二组所选条件包括停止时钟信号的确认。
本发明的另一个方面是一种集成电路(IC),包括:
监视装置,当集成电路(IC)在第一状态操作时,用于为第一组所选条件监视所述IC的操作的部件,其中所述IC具有多个功能单元,当所述IC在所述第一状态操作时,所述多个功能单元接收带有第一频率的时钟信号,所述第一组所选条件表示所述IC中的低工作量时期;以及
等待装置,在检测到满足所述第一组所选条件之后,用于等待多个可编程宽限期之一的终止;
在所述多个可编程宽限期之一终止之后,使所述IC在第二状态操作的装置,其中在所述第二状态中所述时钟信号具有小于所述第一频率的第二频率。。
所述的集成电路(IC)中,所述IC包括处理器,所述装置被嵌入所述处理器中。
所述的集成电路(IC)中,所述第一组所选条件包括:由二级高速缓存确认的高速缓存未命中信号。
所述的集成电路(IC)中,所述第一组所选条件还包括:宽限期的终止,以允许处理一个或多个挂起的存储操作。
所述的集成电路(IC)中,所述第一组所选条件还包括:宽限期的终止,以允许执行在一个或多个暂存站中等待的所述操作。
所述的集成电路(IC)中,所述第一组所选条件还包括:
宽限期的终止,以允许所述处理器完成算术操作。
所述的集成电路(IC),还包括用于定义一个或多个宽限期的一个或多个计数器。
所述的集成电路(IC)中,所述一个或多个计数器中的至少一个是可编程的。
本发明的另一个方面是一种集成电路(IC),包括:
具有第一状态和第二状态的有限状态机(FSM),当在集成电路(IC)中满足第一组所选条件时,所述FSM在所述第二状态操作,而当在所述IC中满足第二组所选条件时,所述FSM在所述第一状态操作,所述第一组所选条件表示所述IC中的低工作量时期;
产生具有第一频率的第一时钟信号的时钟信号发生器;以及连接到所述FSM和所述时钟信号发生器的选通电路,当所述FSM在所述第一状态中时,所述选通电路输出具有所述第一频率的第二时钟信号,而当所述FSM在所述第二状态时,所述选通电路输出具有小于所述第一频率的第二频率的所述第二时钟信号,所述选通电路包括屏蔽发生器,它连接到所述FSM和所述时钟信号发生器,以产生用于屏蔽所述第一时钟信号的所选时钟周期的屏蔽信号,所述屏蔽发生器包括:
多路复用器,具有一个输出端,输入端,以及一个控制引线,其中所述多路复用器的所述输入端的两端被连接用以接收第一和第二参考信号;
第一比较器,具有一个连接到所述多路复用器的所述控制引线的输出引线,连接用来接收第三参考信号的第一输入端,和第二输入端;
第一寄存器,具有一个输入端、一个输出端和一个时钟终端,所述第一寄存器的所述输入端连接到所述多路复用器的所述输出端,所述时钟终端连接到所述时钟信号发生器;
第二比较器,具有一个输出引线、第一输入端和第二输入端,所述第二比较器的所述第一输入端用以接收第四参考信号,第二输入端连接到所述第一寄存器的所述输出端;
增量电路,具有一个输入端和一个输出端,所述增量电路的所述输入端被连接到所述第一寄存器的所述输出端,而所述增量电路的所述输出端被连接到所述多路复用器的所述第二输入端和所述第一比较器的所述第二输入端;和
第二寄存器,具有一个时钟终端、一个输入引线和一个输出引线,所述第二寄存器的所述时钟终端和所述输入引线被分别连接倒所述时钟信号发生器和所述第二比较器的所述输出引线。
所述的电路中,所述时钟信号发生器包括锁相回路(PLL)。
所述的电路中,所述IC包括处理器,所述电路被嵌入所述处理器中。
所述的电路中,所述选通电路包括:屏蔽发生器,它连接到所述FSM和所述时钟信号发生器,以产生用于屏蔽所述第一时钟信号的所选时钟周期的屏蔽信号。
逻辑电路,它连接到所述屏蔽发生器和所述时钟信号发生器,以将所述第二时钟信号作为所述屏蔽信号和所述第一时钟信号的函数输出。
所述的电路中,所述逻辑电路包括:第一逻辑门,它连接到所述屏蔽发生器和所述时钟信号发生器;以及第二逻辑门,它连接到所述第一逻辑门并接收禁止信号,所述禁止信号使所述第二逻辑门输出具有独立于所述第一时钟信号的所述逻辑电平的预选逻辑电平的所述第二时钟信号。
所述的电路中,所述选通电路包括:具有一个输出端,第一、第二和第三输入端,以及第一和第二控制引线的多路复用器,其中所述多路复用器的所述第一和第三输入端用以分别接收第一和第二参考信号,所述多路复用器的所述第一控制引线用以接收重置信号;具有一个输出引线以及第一和第二输入端的第一比较器,所述第一比较器的所述输出引线连接到所述多路复用器的所述第二控制引线,所述第一输入端用以接收第三参考信号;具有一个输入端、一个输出端和一个时钟终端的第一寄存器,所述第一寄存器的所述输入端和时钟终端被分别连接到所述多路复用器的所述输出端和所述时钟信号发生器;具有一个输出引线以及第一和第二输入端的第二比较器,所述第二比较器的所述第一输入端用以接收第四参考信号,第二输入端连接到所述第一寄存器的所述输出端;具有一个输入端和一个输出端的增量电路,所述增量电路的所述输入端被连接到所述第一寄存器的所述输出端,而所述增量电路的所述输出端被连接到所述多路复用器的所述第二输入端和所述第一比较器的所述第二输入端;以及具有一个倒相时钟终端、一个输入引线和一个输出引线的第二寄存器,所述第二寄存器的所述倒相时钟终端和所述输入引线被分别连接倒所述时钟信号发生器和所述第二比较器的所述输出引线。
所述的电路中,所述处理器被连接到源同步总线。
本发明的另一个方面是一种系统,包括:
主存储器;
只读存储器(ROM);
连接到所述主存储器和所述ROM的总线,所述总线以总线频率操作;和
连接到所述总线的处理器,所述处理器具有时钟频率控制单元(CFC)以及多个其他功能单元,当所述CFC在第一和第二状态时,所述CFC向所述多个其他功能单元分别提供第一和第二时钟信号,所述第一时钟信号具有第一频率,所述第二时钟信号有选择地在所述第一状态期间具有所述第一频率而在所述第二状态期间具有小于所述第一频率的第二频率,所述第二状态对应所述处理器操作期间的低工作量时期,其中CFC电路包括屏蔽发生器,以产生用于屏蔽所述第一时钟信号的所选时钟周期的屏蔽信号,所述屏蔽发生器包括:
多路复用器,具有一个输出端,输入端,以及一个控制引线,其中所述多路复用器的所述输入端的两端被连接用以接收第一和第二参考信号;
第一比较器,具有一个连接到所述多路复用器的所述控制引线的输出引线,连接用来接收第三参考信号的第一输入端,和第二输入端;
第一寄存器,具有一个输入端、一个输出端和一个时钟终端,所述第一寄存器的所述输入端连接到所述多路复用器的所述输出端,所述时钟终端连接到所述时钟信号发生器;
第二比较器,具有一个输出引线、第一输入端和第二输入端,所述第二比较器的所述第一输入端用以接收第四参考信号,第二输入端连接到所述第一寄存器的所述输出端;
增量电路,具有一个输入端和一个输出端,所述增量电路的所述输入端被连接到所述第一寄存器的所述输出端,而所述增量电路的所述输出端被连接到所述多路复用器的所述第二输入端和所述第一比较器的所述第二输入端;和
第二寄存器,具有一个时钟终端、一个输入引线和一个输出引线,所述第二寄存器的所述时钟终端和所述输入引线被分别连接倒所述时钟信号发生器和所述第二比较器的所述输出引线。
所述的系统中,所述第二频率等于所述总线频率。
所述的系统中,所述CFC单元包括:具有所述第一和第二状态的有限状态机(FSM),在所述处理器操作期间当满足第一组所选条件时,所述FSM在所述第二状态操作,在所述处理器的所述操作期间当满足第二组所选条件时,在所述第一状态操作,所述第一组所选条件表示所述低工作量时期;产生所述第一时钟信号的时钟信号发生器;以及与所述FSM和所述时钟信号发生器连接的选通电路,当所述FSM在所述第一状态时,所述选通电路输出具有所述第一频率的所述第二时钟信号,当所述FSM在所述第二状态时,输出具有小于所述第一频率的第二频率的所述第二时钟信号。
所述的系统中,所述选通电路包括:屏蔽发生器,它连接到所述FSM和所述时钟信号发生器,以产生用于屏蔽所述第一时钟信号的所选时钟周期的屏蔽信号;逻辑电路,它连接到所述屏蔽发生器和所述时钟信号发生器,以将所述第二时钟信号作为所述屏蔽信号和所述第一时钟信号的函数输出。
所述的系统中,所述总线是源同步总线。
附图说明
参照下图说明了本发明的非限制的和非详尽的实施例,除非特别说明,其中相同参考数字指不同图中的相同部件。
根据本发明的一个实施例,图1是说明具有时钟频率控制单元的计算机系统的方框图。
根据本发明的一个实施例,图2是说明图1的系统操作流程的流程图。
根据本发明的一个实施例,图3是说明图1的时钟频率控制单元的实现的方框图。
根据本发明的一个实施例,图4是说明图3的选通电路的实现的图。
根据本发明的一个实施例,图5是说明图4的选通电路的定时的时序图。
根据本发明的一个实施例,图6是说明图4的屏蔽发生器的实现的示意图。
根据本发明的一个实施例,图7是说明与源同步总线一起使用的图3的选通电路的实现的图。
具体实施方式
本发明的实施例结合处理器的功率管理进行了如下说明;然而,根据本发明,本领域的普通技术人员将理解,此处的说明通常适用于所有类型的IC装置。
根据本发明的一个实施例,图1说明了具有处理器11的计算机系统10,处理器11带有时钟频率控制单元14。计算机系统10的本实施例还包括主存储器12、只读存储器(ROM)13、核心时钟总线15、第一级或内部高速缓存16(嵌入处理器11中)以及第二级或外部高速缓存17。在有些实施例中,第二级高速缓存与处理器和/或有其他级别的内部或外部高速缓存进行集成。下文结合图3-8对时钟频率控制单元14的实施例进行了详述。
处理器11通过总线15连接到主存储器12,主存储器12可包含一个或多个用于存储由处理器11执行的信息和指令的动态随机存取存储器(DRAM)装置。主存储器12还可用于存储临时变量或其他处理器11执行指令期间的中间信息。ROM13用于为存储器11存储静态信息和指令,通过总线15被连接到处理器11。
虽然图1中未示出,处理器11通常包括指令解码器单元、执行单元、内部时钟电路、寄存器文件单元、地址转换单元以及总线接口单元,全部在半导体管芯中实现。总线接口单元被连接到总线15,以及主存储器12和ROM13。总线接口单元便于数据在主存储器12和处理器11之间的传输,并执行从ROM13取指令和其他数据。地址转换单元为处理器11执行存储器管理。例如,地址转换单元存储处理器11在操作中使用的数据的存储器地址(无论在主存储器12、内部高速缓存16或其他存储器中)。指令解码器单元对由处理器11接收的指令和其他控制信号解码。
执行单元将提供种类广泛的微处理器功能单元,该功能单元提供范围广泛的功能。举例来说,执行单元可包括用于执行算术操作的算术和逻辑单元,包括移位、加法、减法、乘法、除法。寄存器文件单元可包括一个或多个类型的用于存储正被处理器11使用的数据的寄存器。例如,寄存器文件单元可包括整数寄存器、状态寄存器、指令指示寄存器、浮点寄存器以及其他寄存器。如果存在,内部高速缓存可以用于例如存储数据和来自主存储器12的控制信号。
内部时钟电路可包括锁相回路(PLL)电路,用于调节外部时钟频率(增加或减少该频率)以便为处理器11达到期望的操作频率。在有些实施例中,内部时钟电路输出一个处理器核心时钟信号(或多个)。在一个实施例中,核心时钟频率控制(CCFC)单元14是内部时钟电路的一部分。
此外,计算机系统10可包括连接到处理器11(通常通过总线12)的其他装置(未示出)。例如,输入装置,比如键盘或鼠标,被连接到处理器11。输出装置也被连接到处理器11。典型的输出装置包括打印机和显示器。数据存储装置也被连接到处理器11。普通的存储装置包括硬盘驱动器、软盘驱动器和光盘驱动器。在一个实施例中,处理器11也被连接到电源电压源(未示出)和外部时钟源(未示出)。
根据本发明,本领域的普通技术人员将理解除了图1中所显示和说明的,计算机系统10不可包括其他元件和子系统。举例来说,计算机系统10可包括视频存储器和其他专用存储器以及附加的信号线和总线。
图1中所示的处理器11的实施例是说明性的。根据本发明,本领域的普通技术人员将理解,实际上,现代存储器通常更复杂并且可包括附加元件。为了更清晰,图1未示出内部总线和其他与处理器11的各功能单元(例如,上述的总线接口单元、地址转换单元、指令解码器单元、执行单元和寄存器文件单元)电力互连的通讯路径。因此,所示处理器11不受限制,而且本发明通常适用于所有类型的处理器(例如,微处理器、微控制器、数字信号处理器等),不论采用怎样的特定结构。
核心时钟频率控制
在一个实施例中,CCFC单元14被配置为与一个或多个处理器11上的功能单元以及内部时钟电路连接。CCFC单元14被配置为检测处理器11中指出或先行于低处理器工作量时期的事件。例如,在有些处理器中,外部高速缓存未命中会导致处理器执行几百个核心时钟周期的空闲操作。在这种低工作量期间,核心时钟频率可被减少而对性能有轻微或没有影响。在一个实施例中,在低工作量时期,核心时钟频率被减少到总线15的操作频率。在其他实施例中,核心时钟频率的频率可被减少到其他速度。在其他实施例中,核心时钟甚至可以被完全停止,但是应该维持一些处理器功能(例如总线15的总线接口,以检测低工作量状况何时结束,接受调查请求或其他重要事件)。
根据本发明的一实施例,图2说明了系统10(图1)在低工作量期间减少核心时钟频率的操作流程。参照图1和2,系统10的这个
实施例如下操作。
对指出或先行于的如方框21所示的低工作量时期的所选条件,监视处理器11的操作。在一个实施例中,CCFC单元14为所选条件监视处理器11的操作。例如,CCFC单元14可监视由外部高速缓存17提供的高速缓存未命中信号。当高速缓存未命中发生时(例如,数据未命中),外部高速缓存17确认该信号。通常,外部高速缓存17还将从主存储器12请求一组数据。当数据正被检索时(通常需要几百个“快”核心时钟周期),处理器11基本是空闲的。
低工作量时期的另一个例示可发生在具有无序调度程序和有序指令队列的处理器结构中。在这种结构中,主要的低工作量时期可发生在代码未命中或指令高速缓存未命中发生时以及处理器的乱序调度程序和有序指令队列为空时。根据处理器的结构和/或配置,其他事件也能导致处理器11在很多“快”核心时钟周期“空闲”。
此外,对于有些事件,应监视附加条件以确定是否该事件会导致低工作量时期。例如,外部高速缓存中的数据未命中通常导致低工作量时期,但是在有些处理器结构中(例如,流水线、乱序等),处理器可在高速缓存未命中后的较短时间中继续进行有用的工作。因此,在有些实施例中,可包括附加条件。例如,在高速缓存未命中信号被确定以允许完成流水线操作后可增加宽限期。
如不满足所选条件,如方框22所示,操作流返回方框21继续监视。然而,如满足条件,核心时钟频率被减少,如方框23所示。在一个实施例中,CCFC单元14将核心时钟信号的频率减少到总线15的操作频率。此外,在一个实施例中,CCFC单元14通过屏蔽一些“快”核心时钟信号的时钟周期,而不是通过调节振荡器、PLL或延时锁定回路的输出频率来减少核心时钟频率(如处理器11的功能单元所接收的)。
然后,为指出低工作量时期已经结束的所选条件监视处理器11的操作,如方框25所示。在一个实施例中,CCFC单元14为所选条件监视处理器11的操作。例如,在高速缓存未命中之后,CCFC单元14会接收“存储器就绪”的信号,指出处理器现在可以结束空闲并执行有用的工作。在其他实施例中,这些条件可包括通过总线15、干扰信号、重置信号、初始信号或停止时钟信号或其他需要处理器快速响应的信号接收调查请求。如不满足条件,操作流返回到方框25。然而,如满足条件,核心时钟频率被增加。在一个实施例中,终止核心时钟信号周期的屏蔽增加核心时钟频率。在核心时钟频率增加后,操作流返回方框21。
根据本发明的一个实施例,图3说明了CCFC单元14(图1)的实现。在本实施例中,CCFC单元14包括有限状态机31、锁相回路32以及选通电路33。
在一个实施例中,在使用组合逻辑并具有两个状态的硬件中实现有限状态机31。一个状态是“快”核心时钟状态31A,另一个是“慢”核心时钟状态31B。可以从RESET操作(例如当处理器第一次被启动时)进入“快”核心时钟状态31A或当所选的“加速”条件被检测时从“慢”核心时钟状态31B进入“快”核心时钟状态31A。当所选的“减慢”条件被检测时可从“快”核心时钟状态31A进入“慢”核心时钟状态31B。当CCFC单元14在“慢”核心时钟状态31B时,有限状态机31确认SLOW_SELECT信号并当在“快”核心时钟状态中时,不确认SLOW_SELECT信号。其他实施例可具有两个以上的状态,以用于分级功率减少方案。例如,可以有一个状态用于中间时钟速度或停止时钟状态。
此外,一些有限状态机31的实施例可包括例如计数器K、M和N,用于追踪能构成状态转换的条件的一部分的宽限期。例如,在一个用于乱序结构中的实施例中,K计数器可用于提供宽限期以允许在L2高速缓存未命中后,在转换到“慢”核心时钟状态31B之前,完成到存储缓冲区(未示出)的无阻塞存储器存储操作。M计数器可用于提供宽限期以允许L2高速缓存未命中后,内部(L1)高速缓存未命中在转换到“慢”核心时钟状态31B之前被处理。N计数器可用于提供宽限期以允许L2高速缓存未命中后,在转换到“慢”核心时钟状态31B之前完成挂起的长期等待指令,例如乘法或除法。在有些实施例中,这些计数器是可编程的,允许由软件动态调节。
CCFC元件14的本实施例的元件如下互连。有限状态机31通过线34连接到选通电路33,传送SLOW_SELECT信号。选通电路33连接成通过线35从锁相回路32接收振荡输出信号。此外,选通电路33通过输出线37输出门控核心时钟信号。
操作中,根据其状态,有限状态机31为指出该状态应被改变的所选条件监视处理器11(图1)的操作。例如,若有限状态机31在“快”核心时钟状态31A,则有限状态机31为所选条件监视处理器11的操作以进入“慢”核心时钟状态31B。同样,若有限状态机31在“慢”核心时钟状态31B,则有限状态机31为所选条件监视处理器11的操作,以进入“快”核心时钟状态31A。如上所述,在RESET操作后,有限状态机31进入“快”核心时钟状态31A。
本实施例中,锁相回路32以通常在GHz或接近GHz范围的频率输出较“快”核心时钟信号(例如CORE_CLK信号)。在有些实施例中,可控制锁相回路32以改变其输出信号频率,但是这种频率控制特性与CCFC单元14的操作是分离的。在其他实施例中,可使用不同电路输出CORE_CLK信号(例如,振荡器、延时锁定回路(DLL);分频器、外部时钟回路等等)。
选通电路33通过线35接收来自锁相回路32的CORE_CLK信号并通过线34接收来自有限状态机31的SLOW_SELECT信号。本实施例中,当不确认SLOW_SELECT时(例如当有限状态机31在“快”核心时钟状态31A时),选通电路33在输出线37输出和CORE_CLK信号频率相同的GATED_CORE_CLK信号。GATED_CORE_CLK信号被作为“核心时钟”信号分发到处理器11的功能单元(如上结合图1所述)。
然而,当SLOW_SELECT信号被确认时(例如,当有限状态机在“慢”核心时钟状态31B时),选通电路33在输出线37输出频率小于CORE_CLK信号频率的GATED_CORE_CLK信号。在本实施例中,选通电路33导致频率实质上与总线15(图1)的频率相等,该频率通常远小于CORE_CLK信号频率。例如,CORE_CLK信号可以在GHz或接近GHz范围中而总线15的操作频率为400MHz。
在一个实施例中,选通电路33屏蔽CORE_CLK的所选时钟周期而不是改变该周期。当有限状态机31在“慢”和“快”核心时钟状态31A和31B之间转换时,这种屏蔽技术能减少GATED_CORE_CLK信号中的小故障(例如,丢失时钟边沿)。此外,在有些实施例中,选通电路33可被配置为帮助保持GATED_CORE_CLK信号的转换与总线15的操作频率的时钟信号转换一致。然而,这些实施例将更为复杂,这在有些应用中是不合需要的。
根据本发明的一个实施例,图4说明了选通电路33(图3)的实现。在本实施例中,选通电路33包括屏蔽发生器41和双输入与门43与45。在本实施例中,屏蔽发生器41产生一个用于从锁相回路32(图3)选通CORE_CLK信号的MASK信号。如上所述,在一个实施例中,选通电路33屏蔽出CORE_CLK信号的所选时钟周期,它用来有效减少结果屏蔽信号(例如,GATED_CORE_CLK信号)的频率。
选通电路33的本实施例的元件如下互连。屏蔽发生器41有两个输入引线,一个连接到线34以接收SLOW_SELECT信号,一个输入引线46连接到线35以接收CORE_CLK信号。屏蔽发生器41还具有通过线47连接到与门43的倒相输入引线的输出引线。与门43有连接到线35的另一个输入引线(非倒相)以及通过线48连接到与门45的一个输入引线(非倒相)的输出引线。与门45的另一个输入引线(倒相)连接到线49以接收CLOCK_DISABLE(或STOP CLOCK)信号。与门45通过线37输出GATED_CORE_CLK信号。
操作中,当线49上的CLOCK_DISABLE信号为逻辑高电平时,无论SLOW_SELECT、MASK和CORE_CLK信号的逻辑状态如何,与门45的倒相输入引线将使与门45输出逻辑低电平的GATED_CORE_CLK信号。
当CLOCK_DISABLE信号在逻辑低电平时,与门45的作用实际上就象非倒相缓冲区。在这种情况下,与门45将输出正在线48上的无论什么信号作为GATED_CORE_CLK信号。正在线48上的信号如下产生。
基于通过线47接收的MASK信号的逻辑电平,与门43将CORE_CLK信号选通到线48上。当MASK信号在逻辑低电平时,与门43的倒相输入引线将使与门的作用就象非倒相缓冲区,因此将CORE_CLK信号输出到线48上。这样,CORE_CLK信号不被屏蔽(例如,通过与门43和45作为GATED_CORE_CLK传送)。
然而,当MASK信号在逻辑高电平时,无论CORE_CLK信号的逻辑电平如何,与门43的倒相输入引线使与门将逻辑低电平信号输出到线48上。如上所述,线48上的逻辑低电平使与门45输出逻辑低电平的GATED_CORE_CLK信号。这样,CORE_CLK信号被屏蔽。
当SLOW_SELECT信号被确认后,屏蔽发生器41产生MASK信号。如上所述,MASK信号用于屏蔽出CORE_CLK信号的所选时钟周期(如下所述通过与门43和45)。在本实施例中,屏蔽发生器41导致在将被屏蔽的时钟周期期间,MASK信号在逻辑高电平。另一方面,当不确认SLOW_SELECT信号时,屏蔽发生器41使MASK信号保持在逻辑低电平,因此不屏蔽CORE_CLK信号的任何时钟周期。屏蔽的一个例示在图5中说明。
根据本发明的一个实施例,图5说明了选通电路33(图4)的定时。在此例示实施例中,CORE_CLK信号具有900MHz的频率而期望的GATED_CORE_CLK信号具有400MHz的频率。具体地说,在本实施例中,对于CORE_CLK信号的每9个周期,CORE_CLK信号的5个邻接时钟周期被屏蔽,因此允许4个时钟周期在GATED_CORE_CLK中传送。这样,产生一个400MHz的信号。在其他实施例中,CORE_CLK信号的屏蔽周期不必是邻接的。
根据本发明的一个实施例,图6说明了屏蔽发生器41(图4)的实现。在本实施例中,屏蔽发生器41包括3项输入的多路复用器60(每个输入端是一个5位输入端)、并行负载寄存器61、比较器62(每个输入端是一个5位输入端)、单位寄存器63、双输入与门64、增量电路65以及另一个比较器66(每个输入端是一个5位输入端)。
在本实施例中,比较器62和66分别比较在“正”输入端和“负”输入端的两个5位输入信号并输出指出“正”信号是否大于“负”信号的单位信号。在本实施例中,增量电路65接收一个5位信号并输出增加了1的该5位信号。例如,增量电路65可作为将5位信号解码为增加的5位信号的解码器电路来实现。
屏蔽发生器41的本实施例的元件如下互连。连接多路复用器60以在其两个输入端接收5位输入信号“00001”和“00000”。在典型的实施例中,这些值是固定的但是在其他实施例中这些值可以是可编程的。例如,这些信号可被固化到供电轨上,或者由寄存器或其他存储装置(例如,诸如熔丝或反熔丝的非挥发性装置)提供。多路复用器60的第三个输入端被连接到增量电路65的输出端。多路复用器60的输出端被连接到寄存器61的并行负载输入端。多路复用器60有两个控制端,一个控制端被连接到线67以接收RESET_SYNC信号,而另一个控制端被连接到比较器66的输出引线68。
在本实施例中,比较器66将其“负”输入端连接以接收5位信号“01001”(对应900MHz的CORE_CLK信号),而它的“正”输入端连接到增量电路65的输出端。在有些实施例中,该5位信号可被编程以便以“快”时钟的可变速度操作(例如,通过寄存器或其他存储装置)。
在本实施例中,寄存器61有一个连接到线35以接收CORE_CLK信号的时钟输入终端以及一个连接到增量电路65的输入端的5位输出端。
比较器62将其“正”输入端连接到寄存器61的输出端,连接其“负”输入端以接收5位信号“00100”(对应400MHz的GATED_CORE_CLK信号),而其输出端通过线69连接到寄存器63的输入终端。在有些实施例中,5位输入信号可以是可编程的以便以“慢”时钟的可变速度操作(例如,通过寄存器或其他存储装置)。寄存器63有一个连接到线35的倒相时钟输入终端(实际上,导致寄存器63被延迟了相对寄存器61半个时钟周期)和一个连接到与门64的一个输入引线的输出引线。与门64的另一个输入引线被连接到线34以接收SLOW_SELECT信号。与门64的输出引线被连接到线4(以传送MASK信号)。
在操作中,当SLOW_SELECT信号在逻辑低电平时(例如,图3中“快”核心时钟状态31A期间),无论寄存器63的输出信号的逻辑电平如何,与门64输出逻辑低信号。结果,线47的MASK信号为逻辑低电平,因此没有如上结合图4的实施例所述地屏蔽CORE_CLK信号。
相反,当SOLW_SELECT信号在逻辑高电平时(例如,图3中“慢”核心时钟状态31B期间),与门64起非倒相缓冲区的作用,用于寄存器63的输出信号。因此,当寄存器63的输出信号在逻辑高电平时,线47的MASK信号为逻辑高电平,因此如上结合图4的实施例所述,屏蔽CORE_CLK信号。
对于“慢”核心时钟状态31B(图4)期间的操作的讨论,与门64的输出信号、寄存器61和63及比较器62和66的输出信号以及RESET_SYNC和CORE_CLK信号“最初”为逻辑低电平。寄存器63所输出的当前逻辑低电平导致与门64输出逻辑低电平的MASK信号。如上所述,MASK信号的逻辑低电平允许选通电路33(图4)将CORE_CLK信号作为GATED_CORE_CLK信号传送。
根据线67和68上的逻辑电平,多路复用器60被配置为在其3个输入端选择一个5位信号。在本实施例中,当线67和68都在逻辑低电平时,多路复用器60选择增量电路65的输出信号。当线67和68分别在逻辑低和逻辑高电平时,多路复用器60选择“00000”信号。当线67在逻辑高电平时,多路复用器60选择“00001”信号。因此,因为线67和68都在逻辑低电平并且寄存器61输出“00000”(这导致增量电路65输出“00001”信号),所以多路复用器60向寄存器61的输入端输出“00001”信号(从增量单元65接收)。
在CORE_CLK信号的上升沿(例如,周期1),寄存器61从多路复用器60加载“00001”,寄存器63从比较器62加载“0”。然后来自寄存器63的“00001”信号被输出到比较器62和增量电路54。因为“00001”小于“00100”,比较器62通过线69向寄存器63输出一个逻辑低电平。
然后,增量电路65输出一个比寄存器61输出的5位信号大1的二进制值的5位信号。因此,这时,增量电路65向比较器66输出“00010”信号。该值小于从负输入端所接收的“01001”信号,于是比较器66继续在线68上输出逻辑低电平。因此,多路复用器60继续选择增量电路65的输出信号(例如这时是“00010”)。
在CORE_CLK信号的下降沿,寄存器63在线69上加载逻辑低电平信号。因此,寄存器63向与门64输出一个逻辑低电平,这导致与门64输出逻辑低电平的MASK信号。
在CORE_CLK信号的下一个上升沿(例如,周期2),寄存器61从多路复用器60加载“00010”信号。现在寄存器61向比较器62和增量电路65输出“00010”。因为“00010”小于“00100”,比较器62继续在线69上输出逻辑低电平。来自寄存器61的“00010”信号还导致增量电路65向比较器66和多路复用器60输出“00011”。因为“00011”不大于“01001”,比较器66继续在线68上输出逻辑低电平信号。因此,多路复用器60继续从增量电路65选择输出信号,该信号已转换为“00011”。
在CORE_CLK信号的下降沿,寄存器63在线69上从比较器62加载逻辑低电平。因此,寄存器63继续输出逻辑低电平,这导致与门64继续输出逻辑低电平的MASK信号。
同样,在CORE_CLK信号的下一个上升沿(例如周期3),寄存器61从多路复用器60加载“00011”信号。现在寄存器61向比较器62和增量电路65输出“00011”。因为“00011”小于“00100”,比较器继续在线69上输出逻辑低电平。来自寄存器61的“00011”信号还导致增量电路65向比较器66和多路复用器60输出“00100”。因为“00100”小于“01001”,比较器66继续在线68上输出逻辑低电平信号。因此,多路复用器60继续从增量电路65选择输出信号,该信号已转换为“00100”。
在CORE_CLK信号的下降沿,寄存器63在线69上从比较器62加载逻辑低电平。因此,寄存器63继续输出逻辑低电平,这导致与门64继续输出逻辑低电平的MASK信号。
然而,在CORE_CLK信号的下一个上升沿(例如周期4),寄存器61从多路复用器60加载“00100”信号。现在寄存器61向比较器62和增量电路65输出“00100”。来自寄存器61的“00100”信号导致增量电路65向比较器66和多路复用器60输出“00101”。因为“00101”小于“01001”,比较器66继续在线68上输出逻辑低电平信号。因此,多路复用器60继续从增量电路65选择输出信号,该信号已转换为“00101”。然而,因为来自寄存器61的“00100”不小于在其负输入端接收的“00100”,现在比较器62通过线69向寄存器63输出逻辑高电平。
在CORE_CLK信号的下降沿,寄存器63在线69上从比较器62加载逻辑高电平。因此,现在寄存器63输出逻辑高电平,这导致与门64输出逻辑高电平的MASK信号,因此导致与门33如上所述地屏蔽CORE_CLK信号。结果,CORE_CLK信号的前4个时钟周期没有被屏蔽,而第5个时钟周期将被屏蔽。
在CORE_CLK信号的下一个上升沿(例如周期5),寄存器61从多路复用器60加载“00101”信号。现在寄存器61向比较器62和增量电路65输出“00101”。因为“00101”不小于“00100”,比较器62继续在线69上输出逻辑高电平。而且,来自寄存器61的“00101”信号还导致增量电路65向比较器66和多路复用器60输出“00110”。因为“00110”小于“01001”,比较器66继续在线68上输出逻辑低电平信号。因此,多路复用器60继续从增量电路65选择输出信号,该信号已经转换为“00110”。
在CORE_CLK信号的下降沿,寄存器63在线69上从比较器62加载逻辑高电平。因此,寄存器63继续输出逻辑高电平,这导致与门64继续输出逻辑高电平的MASK信号。
通过寄存器61存储的值随着CORE_CLK信号的每个时钟周期增加,对于时钟周期6和7,屏蔽发生器41以相同的模式(例如,与周期5相同)操作。然而,在周期8上,寄存器61从多路复用器60加载“01000”信号。现在寄存器61向比较器62和增量电路65输出“01000”。因为“01000”大于“00100”,比较器62继续在线69上输出逻辑高电平。来自寄存器61的“01000”信号还导致增量电路65向比较器66和多路复用器60输出“01001”。因为来自增量电路65的“01001”信号不小于在其“负”输入端接收的“01001”信号,比较器66在线68上输出逻辑高电平信号。因此,多路复用器60选择“00000”信号。
在CORE_CLK信号的下降沿,寄存器63在线69上从比较器62加载逻辑高电平。因此,寄存器63继续输出逻辑高电平,这导致与门64继续输出逻辑高电平的MASK信号。因此,CORE_CLK信号的周期5-9将被屏蔽。
在周期9的上升沿,寄存器61从多路复用器60加载“00000”信号。现在寄存器61向比较器62和增量电路65输出“00000”。因为“00000”小于“00100”,现在比较器62在线69上输出逻辑低电平。而且,来自寄存器61的“00000”信号还导致增量电路65向比较器66和多路复用器60输出“00001”。因为“00001”小于“01001”,现在比较器66在线68上输出逻辑低电平信号。因此,现在多路复用器60从增量电路65选择输出信号,该信号已经转换为“00001”。
在CORE_CLK信号的下降沿,寄存器63在线69上从比较器62加载逻辑低电平。因此,现在寄存器63输出逻辑低电平,这导致与门64输出逻辑低电平的MASK信号。结果,在周期10期间,CORE_CLK信号不会被屏蔽。然后该过程重新开始,只要SLOW_SELECT信号被确认,周期10就如上对周期1所述地被执行。
当SLOW_SELECT信号被确认,重置操作被执行时,多路复用器60将选择“00001”信号,以便屏蔽信号随总线15(图1)的时钟信号的上升沿被正确地校准。
在可选实施例中,可用不同电路实现屏蔽发生器41。
根据本发明的另一个实施例,图7说明了与源同步总线一起使用的选通电路33(图3)的实现。如本领域中所知,通过使用多个数据选通信号,源同步总线实际上将总线时钟周期划分为多个时段(例如4个)。每个数据选通信号被采样,需要四个准确的计时采样边沿。该单元产生采样边沿,因此不能接收GATED_CORE_CLK信号并且还允许处理器监视总线15(图1)。此外,为了保持“慢”和“快”核心时钟状态31A和31B(图3)之间的无缝转换,GATED_CORE_CLK信号应被校准和配置,以便源同步采样边沿可被正确地计时。例如,在一个实施例中,产生GATED_CORE_CLK信号以便在每个外部总线时钟边沿之后或与其一起有边沿。否则,如果有两个连续的总线时钟转换而没有一个在GATED_CORE_CLK信号中,那么将丢失一个输入数据(未采样)。GATED_CORE_CLK信号的波形可以按各种方式被裁剪,以便与目标总线时钟一起正确地工作。例如,选通电路33可被配置为产生一个更对称的波形(例如在工作周期中),这将易于在外部总线上与对称的400MHz匹配。
在本实施例中,选通电路33包括源同步边沿发生器(SSEG)单元71和屏蔽发生器单元72。屏蔽发生器单元72在功能上与屏蔽发生器41以及与门43和45(图4)相似,其中屏蔽发生器单元72产生GATED_CORE_CLK信号。在一个实施例中,SSEG单元71接收CORE_CLK信号并且作为响应产生SOURCE_SYNC_CORE_CLK信号,该信号符合源同步总线的定时需要。然后屏蔽发生器单元72采用SOURCE_SYNC_CORE_CLK信号以便在每个外部总线时钟边沿之后或与其一起有一个边沿。本实施例有利于允许处理器11(图1)在“慢”核心时钟状态31B(图3)期间监视源同步总线。
在这里描述了用于时钟频率控制单元的方法和装置的实施例。在上述说明中,阐明了许多特定的细节(选通电路33、屏蔽发生器41的实现等)以提供一个对本发明的实施例的全面的理解。然而,相关领域的技术人员将认识到,可实行本发明的那些实施例而无需一个或多个特定细节,或用其他方法、元件、材料等。在其他例示中,未示出或详细说明知名的结构、材料或操作以避免使说明不清楚。
参照本说明书,其中“一个实施例”的意思是结合本实施例所述的特别的特征、结构或特性被包括在至少一个本发明的实施例中。因此,在本说明书中各处出现的短语“在一个实施例中”不必要全部指相同的实施例。此外,在一个或多个实施例中,特别的特征、结构或特性可以以适当的方式结合。
另外,本发明的实施例不仅可在半导体芯片中被实现也可在机器可读的媒体中被实现。例如,上述设计可以结合用于设计半导体装置的设计工具,被存储和/或嵌入到机器可读的媒体中。例示包括VHSIC硬件描述语言(VHDL)、Verilog语言或SPICE语言格式的网表。一些网表的例示包括:行为级网表、寄存器转换级(RTL)网表、门级网表以及晶体管级网表。机器可读的媒体还包括具有诸如GDS-II文件的规划信息的媒体。此外,网表文件或用于半导体芯片设计的其他机器可读的媒体可被用在仿真环境中以执行上述讲授的方法。
因此,本发明的实施例可被用作或用于支持在一些形式的处理核心(例如计算机的CPU)上执行或要么在机器可读的媒体上或其中实行或实现的软件程序。机器可读的媒体包括用于以机器(例如,计算机)可读的形式存储或发送信息的任何机制。例如,机器可读的媒体可包括诸如只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质以及闪存装置等。此外,机器可读的媒体可包括传输信号,例如电子、光、声或其他形式的传输信号(例如,载波、红外线信号、数字信号等)。
以上对本发明的说明实施例的描述,包括在说明书摘要中的描述,并无意穷举或限制于所公开的精确形式。而本发明的特定实施例和例示在这里为了说明的用途而被描述,如相关领域的技术人员将认识到的,各种等效修改是可能的。
可以根据以上详述对本发明的实施例作出这些修改。以下权利要求书所用的术语不应被解释为将本发明限制于说明书和权利要求书中所公开的特定实施例。相反,范围将完全由以下权利要求书定义,将根据权利要求书解释的所设立原则进行解释。
Claims (33)
1.一种方法,包括:
当集成电路在第一状态操作时,为第一组所选条件监视所述集成电路的操作,所述集成电路具有多个功能单元,当所述集成电路在所述第一状态操作时所述多个功能单元接收具有第一频率的时钟信号,所述第一组所选条件表示所述集成电路中的低工作量时期;
在检测到满足所述第一组所选条件之后,等待多个可编程宽限期之一的终止;和
在所述多个可编程宽限期之一终止之后,使所述集成电路在第二状态操作,其中在所述第二状态中所述时钟信号具有小于所述第一频率的第二频率,其中选择所述多个可编程宽限期之一,以允许所述集成电路在所述第二状态操作之前处理一个或多个未决存储操作。
2.如权利要求1所述的方法,还包括:
当所述集成电路在所述第二状态中操作时,为第二组所选条件监视所述集成电路的操作,所述第二组所选条件表示所述低工作量时期的终止;以及
当满足所述第二组所选条件时,使所述集成电路在所述第一状态操作。
3.如权利要求1所述的方法,其特征在于所述集成电路包括处理器。
4.如权利要求2所述的方法,其特征在于所述第一组所选条件包括:由二级高速缓存所确认的高速缓存未命中信号。
5.如权利要求1所述的方法,其特征在于进一步选择多个可编程宽限期之一,以允许执行在一个或多个暂存站中等待的操作。
6.如权利要求2所述的方法,其特征在于所述第二组所选条件包括指出所述二级高速缓存已经为存储处理作好准备的信号。
7.如权利要求2所述的方法,其特征在于进一步选择多个可编程宽限期之一,以允许所述处理器完成算术操作。
8.如权利要求7所述的方法,其特征在于所述算术操作是乘法或除法操作。
9.如权利要求2所述的方法,其特征在于所述第二组所选条件包括调查请求的接收。
10.如权利要求2所述的方法,其特征在于所述第二组所选条件包括中断信号的确认。
11.如权利要求2所述的方法,其特征在于所述第二组所选条件包括重置信号的确认。
12.如权利要求2所述的方法,其特征在于所述第二组所选条件包括停止时钟信号的确认。
13.一种集成电路,包括:
监视装置,当集成电路在第一状态操作时,用于为第一组所选条件监视所述集成电路的操作的部件,其中所述集成电路具有多个功能单元,当所述集成电路在所述第一状态操作时,所述多个功能单元接收带有第一频率的时钟信号,所述第一组所选条件表示所述集成电路中的低工作量时期;以及
等待装置,在检测到满足所述第一组所选条件之后,用于等待多个可编程宽限期之一的终止;
在所述多个可编程宽限期之一终止之后,使所述集成电路在第二状态操作的装置,其中在所述第二状态中所述时钟信号具有小于所述第一频率的第二频率。
14.如权利要求13所述的集成电路,其特征在于所述集成电路包括处理器。
15.如权利要求14所述的集成电路,其特征在于所述第一组所选条件包括:
由二级高速缓存确认的高速缓存未命中信号。
16.如权利要求14所述的集成电路,其特征在于用于等待多个可编程宽限期之一的终止的等待装置包括允许在第二状态中操作所述集成电路之前、处理一个或者更多个未决存储操作的装置。
17.如权利要求14所述的集成电路,其特征在于用于等待多个可编程宽限期之一的终止的等待装置包括允许执行在一个或多个暂存站中等待的所述操作的装置。
18.如权利要求14所述的集成电路,其特征在于用于等待多个可编程宽限期之一的终止的等待装置包括允许所述处理器完成算术操作的装置。
19.如权利要求13所述的集成电路,其特征在于用于等待多个可编程宽限期之一终止的装置包括一个或多个计数器。
20.如权利要求19所述的集成电路,其特征在于所述一个或多个计数器中的至少一个是可编程的。
21.一种集成电路,包括:
具有第一状态和第二状态的有限状态机,当在集成电路中满足第一组所选条件时,所述有限状态机在所述第二状态操作,而当在所述集成电路中满足第二组所选条件时,所述有限状态机在所述第一状态操作,所述第一组所选条件表示所述集成电路中的低工作量时期;
产生具有第一频率的第一时钟信号的时钟信号发生器;以及连接到所述有限状态机和所述时钟信号发生器的选通电路,当所述有限状态机在所述第一状态中时,所述选通电路输出具有所述第一频率的第二时钟信号,而当所述有限状态机在所述第二状态时,所述选通电路输出具有小于所述第一频率的第二频率的所述第二时钟信号,所述选通电路包括屏蔽发生器,它连接到所述有限状态机和所述时钟信号发生器,以产生用于有选择地屏蔽所述第一时钟信号的时钟周期的屏蔽信号,所述屏蔽发生器包括:
多路复用器,具有一个输出端,输入端,以及一个控制引线,其中所述多路复用器的所述输入端的两端被连接用以接收第一和第二参考信号;
第一比较器,具有一个连接到所述多路复用器的所述控制引线的输出引线,连接用来接收第三参考信号的第一输入端,和第二输入端;
第一寄存器,具有一个输入端、一个输出端和一个时钟终端,所述第一寄存器的所述输入端连接到所述多路复用器的所述输出端,所述时钟终端连接到所述时钟信号发生器;
第二比较器,具有一个输出引线、第一输入端和第二输入端,所述第二比较器的所述第一输入端用以接收第四参考信号,第二输入端连接到所述第一寄存器的所述输出端;
增量电路,具有一个输入端和一个输出端,所述增量电路的所述输入端被连接到所述第一寄存器的所述输出端,而所述增量电路的所述输出端被连接到所述多路复用器的所述第二输入端和所述第一比较器的所述第二输入端;和
第二寄存器,具有一个时钟终端、一个输入引线和一个输出引线,所述第二寄存器的所述时钟终端和所述输入引线被分别连接到所述时钟信号发生器和所述第二比较器的所述输出引线。
22.如权利要求21所述的集成电路,其特征在于所述时钟信号发生器包括锁相回路。
23.如权利要求21所述的集成电路,其特征在于所述集成电路被嵌入所述处理器中。
24.如权利要求21所述的集成电路,其特征在于所述选通电路包括一个
逻辑电路,它连接到所述屏蔽发生器和所述时钟信号发生器,以将所述第二时钟信号作为所述屏蔽信号和所述第一时钟信号的函数输出。
25.如权利要求24所述的集成电路,其特征在于所述逻辑电路包括:
第一逻辑门,它连接到所述屏蔽发生器和所述时钟信号发生器;以及
第二逻辑门,它连接到所述第一逻辑门并接收禁止信号,所述禁止信号使所述第二逻辑门输出具有独立于所述第一时钟信号的所述逻辑电平的预选逻辑电平的所述第二时钟信号。
26.如权利要求23所述的集成电路,其特征在于所述处理器被连接到源同步总线。
27.一种系统,包括:
主存储器;
只读存储器;
连接到所述主存储器和所述只读存储器的总线,所述总线以总线频率操作;和
连接到所述总线的处理器,所述处理器具有时钟频率控制单元以及多个其他功能单元,当所述时钟频率控制单元在第一和第二状态时,所述时钟频率控制单元向所述多个其他功能单元分别提供第一和第二时钟信号,所述第一时钟信号具有第一频率,所述第二时钟信号有选择地在所述第一状态期间具有所述第一频率而在所述第二状态期间具有小于所述第一频率的第二频率,所述第二状态对应所述处理器操作期间的低工作量时期,其中时钟频率控制单元电路包括屏蔽发生器,以产生用于有选择地屏蔽所述第一时钟信号的时钟周期的屏蔽信号,所述屏蔽发生器包括:
多路复用器,具有一个输出端,输入端,以及一个控制引线,其中所述多路复用器的所述输入端的两端被连接用以接收第一和第二参考信号;
第一比较器,具有一个连接到所述多路复用器的所述控制引线的输出引线,连接用来接收第三参考信号的第一输入端,和第二输入端;
第一寄存器,具有一个输入端、一个输出端和一个时钟终端,所述第一寄存器的所述输入端连接到所述多路复用器的所述输出端,所述时钟终端连接到所述时钟信号发生器;
第二比较器,具有一个输出引线、第一输入端和第二输入端,所述第二比较器的所述第一输入端用以接收第四参考信号,第二输入端连接到所述第一寄存器的所述输出端;
增量电路,具有一个输入端和一个输出端,所述增量电路的所述输入端被连接到所述第一寄存器的所述输出端,而所述增量电路的所述输出端被连接到所述多路复用器的所述第二输入端和所述第一比较器的所述第二输入端;和
第二寄存器,具有一个时钟终端、一个输入引线和一个输出引线,所述第二寄存器的所述时钟终端和所述输入引线被分别连接到所述时钟信号发生器和所述第二比较器的所述输出引线。
28.如权利要求27所述的系统,其特征在于所述第二频率等于所述总线频率。
29.如权利要求27所述的系统,其特征在于所述时钟频率控制单元单元还包括:
具有所述第一和第二状态的有限状态机,在所述处理器操作期间当满足第一组所选条件时,所述有限状态机在所述第二状态操作,在所述处理器的所述操作期间当满足第二组所选条件时,在所述第一状态操作,所述第一组所选条件表示所述低工作量时期,其中由所述可编程计数器跟踪的宽限期的终止包括有第一组或者第二组所选择条件之一;
产生所述第一时钟信号的时钟信号发生器;以及
包括所述屏蔽发生器的、与所述有限状态机和所述时钟信号发生器连接的选通电路,当所述有限状态机在所述第一状态时,所述选通电路输出具有所述第一频率的所述第二时钟信号,当所述有限状态机在所述第二状态时,输出具有小于所述第一频率的第二频率的所述第二时钟信号。
30.如权利要求29所述的系统,其特征在于所述选通电路还包括一个逻辑电路,它连接到所述屏蔽发生器和所述时钟信号发生器,以将所述第二时钟信号作为所述屏蔽信号和所述第一时钟信号的函数输出。
31.如权利要求29所述的系统,其特征在于所述总线是源同步总线。
32.如权利要求21所述的集成电路,还包括连接于所述有限状态机的可编程计数器以跟踪宽限期来触发在所述第一和第二状态之间的转换,其中所述宽限期的终止包括有第一组或者第二组所选择条件之一。
33.如权利要求21所述的集成电路,其特征在于所述第二寄存器的时钟终端包括一个倒相时钟终端。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/260,995 US7051227B2 (en) | 2002-09-30 | 2002-09-30 | Method and apparatus for reducing clock frequency during low workload periods |
US10/260995 | 2002-09-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1497407A CN1497407A (zh) | 2004-05-19 |
CN1303490C true CN1303490C (zh) | 2007-03-07 |
Family
ID=32029845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031271987A Expired - Fee Related CN1303490C (zh) | 2002-09-30 | 2003-09-27 | 用于在低工作量期间减少时钟频率的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (2) | US7051227B2 (zh) |
CN (1) | CN1303490C (zh) |
TW (1) | TWI243979B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102253708A (zh) * | 2011-08-01 | 2011-11-23 | 北京科技大学 | 一种微处理器硬件多线程动态变频控制装置及其应用方法 |
Families Citing this family (146)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7596709B2 (en) * | 2000-12-30 | 2009-09-29 | Intel Corporation | CPU power management based on utilization with lowest performance mode at the mid-utilization range |
US6948139B2 (en) * | 2002-12-19 | 2005-09-20 | Lsi Logic Corporation | Method for combining states |
US7711966B2 (en) * | 2004-08-31 | 2010-05-04 | Qualcomm Incorporated | Dynamic clock frequency adjustment based on processor load |
US20060206743A1 (en) * | 2005-03-08 | 2006-09-14 | Hui-Huang Chang | Computer system having a clock controller for controlling an operating clock inputted into a no-wait-state microprocessor and method thereof |
US7158443B2 (en) * | 2005-06-01 | 2007-01-02 | Micron Technology, Inc. | Delay-lock loop and method adapting itself to operate over a wide frequency range |
US8799687B2 (en) | 2005-12-30 | 2014-08-05 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including optimizing C-state selection under variable wakeup rates |
US7583117B2 (en) * | 2006-04-20 | 2009-09-01 | Realtek Semiconductor Corp. | Delay lock clock synthesizer and method thereof |
US7752476B2 (en) * | 2006-05-17 | 2010-07-06 | Advanced Micro Devices, Inc. | Fast transition from low-speed mode to high-speed mode in high-speed interfaces |
CN100442204C (zh) * | 2006-07-19 | 2008-12-10 | 北京天碁科技有限公司 | 片上系统芯片及其功耗控制方法 |
TWI324298B (en) * | 2006-10-04 | 2010-05-01 | Via Tech Inc | Power management methods and systems |
CN100442201C (zh) * | 2006-11-09 | 2008-12-10 | 威盛电子股份有限公司 | 电源管理方法及系统 |
GB2450564B (en) * | 2007-06-29 | 2011-03-02 | Imagination Tech Ltd | Clock frequency adjustment for semi-conductor devices |
KR100894486B1 (ko) * | 2007-11-02 | 2009-04-22 | 주식회사 하이닉스반도체 | 디지털 필터, 클록 데이터 복구 회로 및 그 동작방법, 반도체 메모리 장치 및 그의 동작방법 |
US20090150696A1 (en) * | 2007-12-10 | 2009-06-11 | Justin Song | Transitioning a processor package to a low power state |
US8024590B2 (en) * | 2007-12-10 | 2011-09-20 | Intel Corporation | Predicting future power level states for processor cores |
JP4900289B2 (ja) * | 2008-03-06 | 2012-03-21 | 富士通株式会社 | 電子装置およびシステム起動方法 |
JP2010072897A (ja) * | 2008-09-18 | 2010-04-02 | Nec Electronics Corp | クロック供給装置 |
US20100325451A1 (en) * | 2009-06-22 | 2010-12-23 | Chung-Hsing Chang | Power-saving trigger-type control device for dynamically and instantly varying frequency and method thereof |
TWI401559B (zh) * | 2009-07-27 | 2013-07-11 | Asustek Comp Inc | 資料處理系統及其調節方法 |
US8713338B2 (en) * | 2010-05-28 | 2014-04-29 | Lsi Corporation | Methods and apparatus for low power out-of-band communications |
US8943334B2 (en) | 2010-09-23 | 2015-01-27 | Intel Corporation | Providing per core voltage and frequency control |
CN102082506B (zh) * | 2010-12-22 | 2012-12-12 | 复旦大学 | 适用于开关电源转换器的时钟频率选择电路 |
US8578219B2 (en) * | 2011-03-14 | 2013-11-05 | International Business Machines Corporation | Monitoring and verifying a clock state of a chip |
US9069555B2 (en) | 2011-03-21 | 2015-06-30 | Intel Corporation | Managing power consumption in a multi-core processor |
WO2012158392A2 (en) | 2011-05-17 | 2012-11-22 | Rambus Inc. | Memory system using asymmetric source-synchronous clocking |
US8793515B2 (en) | 2011-06-27 | 2014-07-29 | Intel Corporation | Increasing power efficiency of turbo mode operation in a processor |
US8769316B2 (en) | 2011-09-06 | 2014-07-01 | Intel Corporation | Dynamically allocating a power budget over multiple domains of a processor |
US8688883B2 (en) | 2011-09-08 | 2014-04-01 | Intel Corporation | Increasing turbo mode residency of a processor |
CN103270470B (zh) * | 2011-09-21 | 2016-02-17 | 英派尔科技开发有限公司 | 多核系统能耗优化 |
US8954770B2 (en) | 2011-09-28 | 2015-02-10 | Intel Corporation | Controlling temperature of multiple domains of a multi-domain processor using a cross domain margin |
US8914650B2 (en) | 2011-09-28 | 2014-12-16 | Intel Corporation | Dynamically adjusting power of non-core processor circuitry including buffer circuitry |
US9074947B2 (en) | 2011-09-28 | 2015-07-07 | Intel Corporation | Estimating temperature of a processor core in a low power state without thermal sensor information |
US8832478B2 (en) | 2011-10-27 | 2014-09-09 | Intel Corporation | Enabling a non-core domain to control memory bandwidth in a processor |
US9026815B2 (en) | 2011-10-27 | 2015-05-05 | Intel Corporation | Controlling operating frequency of a core domain via a non-core domain of a multi-domain processor |
US9158693B2 (en) | 2011-10-31 | 2015-10-13 | Intel Corporation | Dynamically controlling cache size to maximize energy efficiency |
US8943340B2 (en) | 2011-10-31 | 2015-01-27 | Intel Corporation | Controlling a turbo mode frequency of a processor |
US8972763B2 (en) | 2011-12-05 | 2015-03-03 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including determining an optimal power state of the apparatus based on residency time of non-core domains in a power saving state |
US9239611B2 (en) | 2011-12-05 | 2016-01-19 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including balancing power among multi-frequency domains of a processor based on efficiency rating scheme |
US9052901B2 (en) | 2011-12-14 | 2015-06-09 | Intel Corporation | Method, apparatus, and system for energy efficiency and energy conservation including configurable maximum processor current |
US9098261B2 (en) | 2011-12-15 | 2015-08-04 | Intel Corporation | User level control of power management policies |
US9372524B2 (en) | 2011-12-15 | 2016-06-21 | Intel Corporation | Dynamically modifying a power/performance tradeoff based on processor utilization |
JP5834936B2 (ja) * | 2012-01-17 | 2015-12-24 | ソニー株式会社 | 情報処理装置および情報処理装置の制御方法 |
EP2632053B1 (en) * | 2012-02-21 | 2014-08-27 | ST-Ericsson SA | PLL frequency selection |
US9436245B2 (en) | 2012-03-13 | 2016-09-06 | Intel Corporation | Dynamically computing an electrical design point (EDP) for a multicore processor |
WO2013137859A1 (en) | 2012-03-13 | 2013-09-19 | Intel Corporation | Providing energy efficient turbo operation of a processor |
US9323316B2 (en) | 2012-03-13 | 2016-04-26 | Intel Corporation | Dynamically controlling interconnect frequency in a processor |
CN104204825B (zh) | 2012-03-30 | 2017-06-27 | 英特尔公司 | 动态测量处理器中的功耗 |
WO2013162589A1 (en) | 2012-04-27 | 2013-10-31 | Intel Corporation | Migrating tasks between asymmetric computing elements of a multi-core processor |
GB2503743B (en) * | 2012-07-06 | 2015-08-19 | Samsung Electronics Co Ltd | Processing unit power management |
US8984313B2 (en) | 2012-08-31 | 2015-03-17 | Intel Corporation | Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator |
US9063727B2 (en) | 2012-08-31 | 2015-06-23 | Intel Corporation | Performing cross-domain thermal control in a processor |
US9342122B2 (en) | 2012-09-17 | 2016-05-17 | Intel Corporation | Distributing power to heterogeneous compute elements of a processor |
US9423858B2 (en) | 2012-09-27 | 2016-08-23 | Intel Corporation | Sharing power between domains in a processor package using encoded power consumption information from a second domain to calculate an available power budget for a first domain |
US9575543B2 (en) | 2012-11-27 | 2017-02-21 | Intel Corporation | Providing an inter-arrival access timer in a processor |
US9183144B2 (en) | 2012-12-14 | 2015-11-10 | Intel Corporation | Power gating a portion of a cache memory |
US9292468B2 (en) | 2012-12-17 | 2016-03-22 | Intel Corporation | Performing frequency coordination in a multiprocessor system based on response timing optimization |
US9405351B2 (en) | 2012-12-17 | 2016-08-02 | Intel Corporation | Performing frequency coordination in a multiprocessor system |
US9075556B2 (en) | 2012-12-21 | 2015-07-07 | Intel Corporation | Controlling configurable peak performance limits of a processor |
US9235252B2 (en) | 2012-12-21 | 2016-01-12 | Intel Corporation | Dynamic balancing of power across a plurality of processor domains according to power policy control bias |
US9164565B2 (en) | 2012-12-28 | 2015-10-20 | Intel Corporation | Apparatus and method to manage energy usage of a processor |
US9081577B2 (en) | 2012-12-28 | 2015-07-14 | Intel Corporation | Independent control of processor core retention states |
US9335803B2 (en) | 2013-02-15 | 2016-05-10 | Intel Corporation | Calculating a dynamically changeable maximum operating voltage value for a processor based on a different polynomial equation using a set of coefficient values and a number of current active cores |
US9367114B2 (en) | 2013-03-11 | 2016-06-14 | Intel Corporation | Controlling operating voltage of a processor |
US9395784B2 (en) | 2013-04-25 | 2016-07-19 | Intel Corporation | Independently controlling frequency of plurality of power domains in a processor system |
US9377841B2 (en) | 2013-05-08 | 2016-06-28 | Intel Corporation | Adaptively limiting a maximum operating frequency in a multicore processor |
US9823719B2 (en) | 2013-05-31 | 2017-11-21 | Intel Corporation | Controlling power delivery to a processor via a bypass |
US9348401B2 (en) | 2013-06-25 | 2016-05-24 | Intel Corporation | Mapping a performance request to an operating frequency in a processor |
US9471088B2 (en) | 2013-06-25 | 2016-10-18 | Intel Corporation | Restricting clock signal delivery in a processor |
US9348407B2 (en) | 2013-06-27 | 2016-05-24 | Intel Corporation | Method and apparatus for atomic frequency and voltage changes |
US9377836B2 (en) * | 2013-07-26 | 2016-06-28 | Intel Corporation | Restricting clock signal delivery based on activity in a processor |
US9495001B2 (en) | 2013-08-21 | 2016-11-15 | Intel Corporation | Forcing core low power states in a processor |
US10386900B2 (en) | 2013-09-24 | 2019-08-20 | Intel Corporation | Thread aware power management |
US9594560B2 (en) | 2013-09-27 | 2017-03-14 | Intel Corporation | Estimating scalability value for a specific domain of a multicore processor based on active state residency of the domain, stall duration of the domain, memory bandwidth of the domain, and a plurality of coefficients based on a workload to execute on the domain |
US9405345B2 (en) | 2013-09-27 | 2016-08-02 | Intel Corporation | Constraining processor operation based on power envelope information |
US9494998B2 (en) | 2013-12-17 | 2016-11-15 | Intel Corporation | Rescheduling workloads to enforce and maintain a duty cycle |
US9459689B2 (en) | 2013-12-23 | 2016-10-04 | Intel Corporation | Dyanamically adapting a voltage of a clock generation circuit |
US9323525B2 (en) | 2014-02-26 | 2016-04-26 | Intel Corporation | Monitoring vector lane duty cycle for dynamic optimization |
US9665153B2 (en) | 2014-03-21 | 2017-05-30 | Intel Corporation | Selecting a low power state based on cache flush latency determination |
US10108454B2 (en) | 2014-03-21 | 2018-10-23 | Intel Corporation | Managing dynamic capacitance using code scheduling |
US10007441B2 (en) | 2014-04-30 | 2018-06-26 | Hewlett Packard Enterprise Development Lp | Storage system bandwidth adjustment |
US9760158B2 (en) | 2014-06-06 | 2017-09-12 | Intel Corporation | Forcing a processor into a low power state |
US10417149B2 (en) | 2014-06-06 | 2019-09-17 | Intel Corporation | Self-aligning a processor duty cycle with interrupts |
US9582027B2 (en) * | 2014-06-09 | 2017-02-28 | Qualcomm Incorporated | Clock swallowing device for reducing voltage noise |
US9606602B2 (en) | 2014-06-30 | 2017-03-28 | Intel Corporation | Method and apparatus to prevent voltage droop in a computer |
US9513689B2 (en) | 2014-06-30 | 2016-12-06 | Intel Corporation | Controlling processor performance scaling based on context |
US9575537B2 (en) | 2014-07-25 | 2017-02-21 | Intel Corporation | Adaptive algorithm for thermal throttling of multi-core processors with non-homogeneous performance states |
US9760136B2 (en) | 2014-08-15 | 2017-09-12 | Intel Corporation | Controlling temperature of a system memory |
US10254814B2 (en) | 2014-09-04 | 2019-04-09 | Hewlett Packard Enterprise Development Lp | Storage system bandwidth determination |
US9671853B2 (en) | 2014-09-12 | 2017-06-06 | Intel Corporation | Processor operating by selecting smaller of requested frequency and an energy performance gain (EPG) frequency |
US10339023B2 (en) | 2014-09-25 | 2019-07-02 | Intel Corporation | Cache-aware adaptive thread scheduling and migration |
US9977477B2 (en) | 2014-09-26 | 2018-05-22 | Intel Corporation | Adapting operating parameters of an input/output (IO) interface circuit of a processor |
US9684360B2 (en) | 2014-10-30 | 2017-06-20 | Intel Corporation | Dynamically controlling power management of an on-die memory of a processor |
US9703358B2 (en) | 2014-11-24 | 2017-07-11 | Intel Corporation | Controlling turbo mode frequency operation in a processor |
US10048744B2 (en) | 2014-11-26 | 2018-08-14 | Intel Corporation | Apparatus and method for thermal management in a multi-chip package |
US20160147280A1 (en) | 2014-11-26 | 2016-05-26 | Tessil Thomas | Controlling average power limits of a processor |
US9710043B2 (en) | 2014-11-26 | 2017-07-18 | Intel Corporation | Controlling a guaranteed frequency of a processor |
US10877530B2 (en) | 2014-12-23 | 2020-12-29 | Intel Corporation | Apparatus and method to provide a thermal parameter report for a multi-chip package |
US20160224098A1 (en) | 2015-01-30 | 2016-08-04 | Alexander Gendler | Communicating via a mailbox interface of a processor |
US9639134B2 (en) | 2015-02-05 | 2017-05-02 | Intel Corporation | Method and apparatus to provide telemetry data to a power controller of a processor |
US10234930B2 (en) | 2015-02-13 | 2019-03-19 | Intel Corporation | Performing power management in a multicore processor |
US9910481B2 (en) | 2015-02-13 | 2018-03-06 | Intel Corporation | Performing power management in a multicore processor |
US9874922B2 (en) | 2015-02-17 | 2018-01-23 | Intel Corporation | Performing dynamic power control of platform devices |
US9842082B2 (en) | 2015-02-27 | 2017-12-12 | Intel Corporation | Dynamically updating logical identifiers of cores of a processor |
US9710054B2 (en) | 2015-02-28 | 2017-07-18 | Intel Corporation | Programmable power management agent |
WO2016144368A1 (en) * | 2015-03-12 | 2016-09-15 | Hewlett Packard Enterprise Development Lp | Frequency of a clock signal |
US9760160B2 (en) | 2015-05-27 | 2017-09-12 | Intel Corporation | Controlling performance states of processing engines of a processor |
US9710041B2 (en) | 2015-07-29 | 2017-07-18 | Intel Corporation | Masking a power state of a core of a processor |
US9778676B2 (en) | 2015-08-03 | 2017-10-03 | Qualcomm Incorporated | Power distribution network (PDN) droop/overshoot mitigation in dynamic frequency scaling |
US9996138B2 (en) * | 2015-09-04 | 2018-06-12 | Mediatek Inc. | Electronic system and related clock managing method |
US10001822B2 (en) | 2015-09-22 | 2018-06-19 | Intel Corporation | Integrating a power arbiter in a processor |
US20170090508A1 (en) * | 2015-09-25 | 2017-03-30 | Qualcomm Incorporated | Method and apparatus for effective clock scaling at exposed cache stalls |
US9983644B2 (en) | 2015-11-10 | 2018-05-29 | Intel Corporation | Dynamically updating at least one power management operational parameter pertaining to a turbo mode of a processor for increased performance |
US9910470B2 (en) | 2015-12-16 | 2018-03-06 | Intel Corporation | Controlling telemetry data communication in a processor |
US10146286B2 (en) | 2016-01-14 | 2018-12-04 | Intel Corporation | Dynamically updating a power management policy of a processor |
US10289188B2 (en) | 2016-06-21 | 2019-05-14 | Intel Corporation | Processor having concurrent core and fabric exit from a low power state |
US10281975B2 (en) | 2016-06-23 | 2019-05-07 | Intel Corporation | Processor having accelerated user responsiveness in constrained environment |
US10324519B2 (en) | 2016-06-23 | 2019-06-18 | Intel Corporation | Controlling forced idle state operation in a processor |
US10379596B2 (en) | 2016-08-03 | 2019-08-13 | Intel Corporation | Providing an interface for demotion control information in a processor |
US10234920B2 (en) | 2016-08-31 | 2019-03-19 | Intel Corporation | Controlling current consumption of a processor based at least in part on platform capacitance |
US10423206B2 (en) | 2016-08-31 | 2019-09-24 | Intel Corporation | Processor to pre-empt voltage ramps for exit latency reductions |
US10379904B2 (en) | 2016-08-31 | 2019-08-13 | Intel Corporation | Controlling a performance state of a processor using a combination of package and thread hint information |
US10168758B2 (en) | 2016-09-29 | 2019-01-01 | Intel Corporation | Techniques to enable communication between a processor and voltage regulator |
US10146577B2 (en) | 2016-12-11 | 2018-12-04 | International Business Machines Corporation | Enabling real-time CPU-bound in-kernel workloads to run infinite loops while keeping RCU grace periods finite |
CN108736884B (zh) * | 2017-04-20 | 2021-12-21 | 奇景光电股份有限公司 | 频率除频方法及其电路 |
US10429919B2 (en) | 2017-06-28 | 2019-10-01 | Intel Corporation | System, apparatus and method for loose lock-step redundancy power management |
WO2019005093A1 (en) * | 2017-06-30 | 2019-01-03 | Intel Corporation | MODIFYING THE PROCESSOR FREQUENCY BASED ON AN INTERRUPTION FREQUENCY |
WO2019040054A1 (en) | 2017-08-23 | 2019-02-28 | Intel Corporation | SYSTEM, APPARATUS, AND METHOD FOR ADAPTIVE OPERATING VOLTAGE IN A USER-PROGRAMMED (FPGA) PREDIFFUSED NETWORK |
KR20190058158A (ko) * | 2017-11-21 | 2019-05-29 | 삼성전자주식회사 | 데이터 출력 회로, 데이터 출력 회로를 포함하는 메모리 장치 및 메모리 장치의 동작 방법 |
US10620266B2 (en) | 2017-11-29 | 2020-04-14 | Intel Corporation | System, apparatus and method for in-field self testing in a diagnostic sleep state |
US10620682B2 (en) | 2017-12-21 | 2020-04-14 | Intel Corporation | System, apparatus and method for processor-external override of hardware performance state control of a processor |
US10620969B2 (en) | 2018-03-27 | 2020-04-14 | Intel Corporation | System, apparatus and method for providing hardware feedback information in a processor |
US10739844B2 (en) | 2018-05-02 | 2020-08-11 | Intel Corporation | System, apparatus and method for optimized throttling of a processor |
TWI676879B (zh) * | 2018-05-11 | 2019-11-11 | 瑞昱半導體股份有限公司 | 時脈管理電路及時脈管理方法 |
US10955899B2 (en) | 2018-06-20 | 2021-03-23 | Intel Corporation | System, apparatus and method for responsive autonomous hardware performance state control of a processor |
US10976801B2 (en) | 2018-09-20 | 2021-04-13 | Intel Corporation | System, apparatus and method for power budget distribution for a plurality of virtual machines to execute on a processor |
US10860083B2 (en) | 2018-09-26 | 2020-12-08 | Intel Corporation | System, apparatus and method for collective power control of multiple intellectual property agents and a shared power rail |
US11656676B2 (en) | 2018-12-12 | 2023-05-23 | Intel Corporation | System, apparatus and method for dynamic thermal distribution of a system on chip |
US11256657B2 (en) | 2019-03-26 | 2022-02-22 | Intel Corporation | System, apparatus and method for adaptive interconnect routing |
US11442529B2 (en) | 2019-05-15 | 2022-09-13 | Intel Corporation | System, apparatus and method for dynamically controlling current consumption of processing circuits of a processor |
CN110399034B (zh) * | 2019-07-04 | 2021-08-17 | 福州瑞芯微电子股份有限公司 | 一种SoC系统的功耗优化方法及终端 |
US11698812B2 (en) | 2019-08-29 | 2023-07-11 | Intel Corporation | System, apparatus and method for providing hardware state feedback to an operating system in a heterogeneous processor |
US11251801B2 (en) | 2019-11-11 | 2022-02-15 | Realtek Semiconductor Corporation | Frequency adjusting apparatus and frequency adjusting method |
US11366506B2 (en) | 2019-11-22 | 2022-06-21 | Intel Corporation | System, apparatus and method for globally aware reactive local power control in a processor |
US11132201B2 (en) | 2019-12-23 | 2021-09-28 | Intel Corporation | System, apparatus and method for dynamic pipeline stage control of data path dominant circuitry of an integrated circuit |
TWI768543B (zh) * | 2020-11-13 | 2022-06-21 | 新唐科技股份有限公司 | 積體電路及其系統內程式化電路 |
US11921564B2 (en) | 2022-02-28 | 2024-03-05 | Intel Corporation | Saving and restoring configuration and status information with reduced latency |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6223297B1 (en) * | 1997-11-10 | 2001-04-24 | Fujitsu Limited | Clock modifying method and information processing apparatus which gradually increase frequency of an external clock to be supplied to processing unit |
US6272642B2 (en) * | 1998-12-03 | 2001-08-07 | Intel Corporation | Managing a system's performance state |
US6298448B1 (en) * | 1998-12-21 | 2001-10-02 | Siemens Information And Communication Networks, Inc. | Apparatus and method for automatic CPU speed control based on application-specific criteria |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0617812B1 (en) * | 1991-12-17 | 1998-03-04 | Compaq Computer Corporation | Apparatus for reducing computer system power consumption |
US6343363B1 (en) | 1994-09-22 | 2002-01-29 | National Semiconductor Corporation | Method of invoking a low power mode in a computer system using a halt instruction |
US5471625A (en) * | 1993-09-27 | 1995-11-28 | Motorola, Inc. | Method and apparatus for entering a low-power mode and controlling an external bus of a data processing system during low-power mode |
AU2364095A (en) * | 1994-05-12 | 1995-12-05 | Ast Research, Inc. | Cpu activity monitoring through cache watching |
US5754837A (en) | 1994-12-22 | 1998-05-19 | Texas Instruments Incorporated | Clock control circuits, systems and methods |
US5771373A (en) | 1994-12-22 | 1998-06-23 | Texas Instruments Incorporated | Power management masked clock circuitry, systems and methods |
US5834956A (en) | 1995-12-29 | 1998-11-10 | Intel Corporation | Core clock correction in a 2/N mode clocking scheme |
US5815725A (en) * | 1996-04-03 | 1998-09-29 | Sun Microsystems, Inc. | Apparatus and method for reducing power consumption in microprocessors through selective gating of clock signals |
US6163583A (en) * | 1998-03-25 | 2000-12-19 | Sony Corporation Of Japan | Dynamic clocking apparatus and system for reducing power dissipation |
US6233690B1 (en) * | 1998-09-17 | 2001-05-15 | Intel Corporation | Mechanism for saving power on long latency stalls |
US6151262A (en) * | 1998-10-28 | 2000-11-21 | Texas Instruments Incorporated | Apparatus, system and method for control of speed of operation and power consumption of a memory |
US6311281B1 (en) * | 1999-03-02 | 2001-10-30 | Edwin H. Taylor | Apparatus and method for changing processor clock ratio settings |
US6363490B1 (en) | 1999-03-30 | 2002-03-26 | Intel Corporation | Method and apparatus for monitoring the temperature of a processor |
-
2002
- 2002-09-30 US US10/260,995 patent/US7051227B2/en not_active Expired - Fee Related
-
2003
- 2003-09-12 TW TW092125193A patent/TWI243979B/zh not_active IP Right Cessation
- 2003-09-27 CN CNB031271987A patent/CN1303490C/zh not_active Expired - Fee Related
-
2006
- 2006-01-12 US US11/330,647 patent/US7721129B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6223297B1 (en) * | 1997-11-10 | 2001-04-24 | Fujitsu Limited | Clock modifying method and information processing apparatus which gradually increase frequency of an external clock to be supplied to processing unit |
US6272642B2 (en) * | 1998-12-03 | 2001-08-07 | Intel Corporation | Managing a system's performance state |
US6298448B1 (en) * | 1998-12-21 | 2001-10-02 | Siemens Information And Communication Networks, Inc. | Apparatus and method for automatic CPU speed control based on application-specific criteria |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102253708A (zh) * | 2011-08-01 | 2011-11-23 | 北京科技大学 | 一种微处理器硬件多线程动态变频控制装置及其应用方法 |
CN102253708B (zh) * | 2011-08-01 | 2013-12-04 | 北京科技大学 | 一种微处理器硬件多线程动态变频控制装置及其应用方法 |
Also Published As
Publication number | Publication date |
---|---|
TWI243979B (en) | 2005-11-21 |
CN1497407A (zh) | 2004-05-19 |
TW200408923A (en) | 2004-06-01 |
US20040064752A1 (en) | 2004-04-01 |
US20060129860A1 (en) | 2006-06-15 |
US7721129B2 (en) | 2010-05-18 |
US7051227B2 (en) | 2006-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1303490C (zh) | 用于在低工作量期间减少时钟频率的方法和装置 | |
US9081517B2 (en) | Hardware-based automatic clock gating | |
US8397238B2 (en) | Thread allocation and clock cycle adjustment in an interleaved multi-threaded processor | |
Naffziger et al. | The implementation of the Itanium 2 microprocessor | |
TWI305883B (en) | Method of managing power consumption and the computer apparatus and computing system using the same | |
CN1664956A (zh) | 半导体存储装置中的延迟锁定回路及其时钟锁定方法 | |
CN1664753A (zh) | 用于集成设备中功率节流的快速频率切换的方法和系统 | |
US20070174514A1 (en) | Instantaneous data-driven clock-gating device and hard-wired streaming processing system including the same | |
CN1550070A (zh) | 用于无线系统中的时钟及电源控制的方法和设备 | |
US20030110404A1 (en) | Static storage element for dynamic logic | |
US8285917B2 (en) | Apparatus for enhancing flash memory access | |
US7917882B2 (en) | Automated digital circuit design tool that reduces or eliminates adverse timing constraints due to an inherent clock signal skew, and applications thereof | |
US7971043B2 (en) | Electronic system and method for changing number of operation stages of a pipeline | |
US20080244299A1 (en) | Data processing apparatus and method for translating a signal between a first clock domain and a second clock domain | |
CN1395368A (zh) | 时钟控制电路 | |
CN1570907A (zh) | 多处理器系统 | |
KR102143089B1 (ko) | 클럭 게이팅 인에이블 생성 | |
KR101575711B1 (ko) | 하이브리드 레인 스톨링 또는 비고정 버스 아키텍처를 위한 방법, 장치, 시스템 | |
US8091053B2 (en) | System, method, and program for generating circuit | |
CN100343778C (zh) | 数据传送方法和数据传送桥接器 | |
CN1427336A (zh) | 微处理器 | |
CN1308792C (zh) | 选通时钟产生电路 | |
JP4524251B2 (ja) | 要求駆動型クロック・スロットリング電力低減を用いるプロセッサ | |
CN112368679A (zh) | 用于调度线程以用于执行的系统 | |
CN1941630A (zh) | 开环转换率控制输出驱动器 |
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: 20070307 Termination date: 20170927 |