CN102163074B - 具有非工作状态操作的处理器及其方法 - Google Patents
具有非工作状态操作的处理器及其方法 Download PDFInfo
- Publication number
- CN102163074B CN102163074B CN2011100593658A CN201110059365A CN102163074B CN 102163074 B CN102163074 B CN 102163074B CN 2011100593658 A CN2011100593658 A CN 2011100593658A CN 201110059365 A CN201110059365 A CN 201110059365A CN 102163074 B CN102163074 B CN 102163074B
- Authority
- CN
- China
- Prior art keywords
- processor
- logical block
- controller
- resident
- state
- 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.)
- Active
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
-
- 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/3237—Power saving characterised by the action undertaken by disabling clock generation or distribution
-
- 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
-
- 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
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Logic Circuits (AREA)
- Electronic Switches (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
本发明的名称是“具有非工作状态操作的处理器及其方法”。本发明实施例提供一个具有非工作状态操作的处理器及相应方法。根据本发明的一些具体实施例,该处理器包括一个控制器,其用于确定处理器是否进入非工作状态操作,并且在进入非工作状态之前使预定一组的一个或多个执行单元执行一个或多个预定的微操作序列。其他的实施例也被描述和声明。
Description
本申请是申请日为2006年12月29日、申请号为200610064224.4、发明名称为“具有非工作状态操作的处理器及其方法”的申请的分案申请。
发明背景
处理器可能处于工作状态操作,如当执行进程操作时;或非工作状态操作时,和处于工作状态操作的处理器所消耗的电能相比较,此时的处理器减少了电能耗费。
在非工作状态中,处理器所消耗的至少部分功率是通过一个或多个处理器的逻辑单元的电能泄漏造成,逻辑单元如组合和/或时序逻辑单元。例如,该逻辑单元可以包括多个晶体管,由于晶体管源极和漏极间的电场,这些晶体管甚至在非工作状态或“关断”状态时可能消耗功率。如果处理器在相对长的时期间内处于非工作状态,处理器消耗的电能总量可能增加。在某些应用中,尤其在依靠电池功率操作时,这种被处理器所额外消耗的功率是不希望出现的。进一步,在某些电子系统中额外的功率消耗可导致发热,这也是不希望出现的(如,在膝上型计算机内)。
现有技术中,在非工作状态下用于控制处理器中功率消耗的技术包括增加应用到处理器的一个或多个晶体管上的阈值电压。然而,尽管增加阈值电压可能减少功率泄漏,却可能导致不期望的性能降低的结果。
附图说明
本发明的主题在本说明书的结束部分被特别指出并清楚声明。然而,本发明的操作的结构和方法,以及物体,特征和由此而具有的优点,都可以通过下述详细描述并结合阅读附图而获得最佳理解。其中:
图1为根据本发明的一个具体实施例包括处理器的计算系统示意图。
图2为根据本发明的另一个具体实施例包括处理器的计算系统示意图。
图3为根据本发明的一些具体实施例进入非工作状态操作的方法的示意方框图。
图4为根据本发明的一些具体实施例配置处理器的方法的示意方框图。
图5为根据本发明的一些具体实施例描述可控的时序逻辑单元对驻留序列的相位的百分比的示意图。
为了叙述的简单和清楚起见,在附图中所示的元件没有必要精确或按比例绘制。例如,为清楚起见,某些元件的尺寸可能相对于其他元件被放大,或这一些物理组件被包含在一个功能框或元件中。进而,在适当情况下,为指明相应或相似的元件,参考数字在附图中可能被重复使用。而且,在附图中绘制的某些块可组成一个单一功能。
具体实施方式
在以下具体描述中,为彻底理解本发明的实施例而陈述了众多特殊细节。然而,本领域普通技术人员可以理解本发明的实施例不必使用这些特殊细节而实施。此外,公知的方法、步骤、组件和电路没有都详细描述以免混淆本发明的实施例。
除非特别指明,在以下论述中显见,整个说明书论述中使用的术语如“处理”,“计算”,“运算”,“决定”等均表示了计算机或计算机系统,或相似的电子计算设备的运行和/或过程,它们把在计算机系统的存储器和/或寄存器中表示为电子、量子等的物理数据操作和/或转换成在计算机系统的存储器、寄存器或其他信息存储、传输或显示装置中类似表示为物理量的其他数据。此外,术语“多个”可在整个说明书中用于描述两个或更多的组件、设备、元件、参数等等。
例如,本发明的一些实施例可能通过使用可以存储指令或指令集的机器可读媒质或制品来实施,该指令或指令集如果被机器(如,被处理器和或其他合适的机器)所执行,将使得机器执行相应本发明的实施例中的方法和/或操作。这样的机器可包括,如任何合适的处理系统、计算系统、计算设备、处理设备、计算系统、处理系统、计算机、处理器等。并且能使用任何合适的硬件和/或软件的组合来实施。该机器可读媒质或制品可包括,如任何合适类型的内存单元、内存设备、内存制品、内存媒质、存储设备、存储制品、存储媒质和或存储单元,如存储器、可移动或不可移动的媒体、可擦除或不可擦除的媒体、可写的或可重写的媒体、数字或模拟媒体、硬盘、软盘、只读存储器的高密度盘(CD-ROM)、可刻录的高密度盘(CD-R)、可重写的高密度盘(CD-RW)、光盘、磁性媒体、各种类型的数字化多用途盘(DVD)、磁带,卡带等等。指令可以包含任何合适类型的代码,如源代码、编译代码、翻译代码、可执行代码、静态代码、动态代码等等,并可以通过任何合适的高级,低级,面向对象的,可视的,编译的或/解释的编程语言,如C,C++,Java,BASIC,Pascal,Fortran,Cobol,汇编语言,机器代码等等来实现。
如图1所述,该图简要的阐述了根据本发明的一个具体实施例的计算系统100。
根据一些具体实施例,系统100可包括处理器104。处理器104可包括:如中央处理单元(CPU),数字信号处理器(DSP),微处理器,主处理器,多个处理器,控制器,芯片,微芯片,或任何其他合适的多目标或特殊的处理器或控制器。
根据本发明的一些具体实施例,系统100也可包括如“前端总线”(FSB)132之类的共享总线。例如,FSB132可以是能在处理器104和计算系统100的其他设备之间传送信息的CPU数据总线。根据本发明的一些具体实施例,FSB132可连接在芯片组(CS)133和处理器104之间。尽管本发明不限于该方面,但芯片组133可包括一个或多个主板芯片,如“北桥”和“南桥”,和/或“固件集线器”。芯片组133可包括用于计算系统100的附加总线和或设备的连接点。
根据本发明的一些具体实施例,系统100可包括一个或多个外设134,该外设可连接到芯片组133上。例如,外设134可包括输入单元,如键盘,鼠标,触摸垫,或其他合适的指向设备或输入设备;输出单元,如阴极射线管(CRT)监视器,液晶显示(LCD)监视器,或其他合适的监视或显示单元。在一些实施例中,前述的输出设备可连接到芯片组133,如在系统包括固件集线器时。在一些实施例中,外设134可包括存储单元,如硬盘驱动器,软盘驱动器,高密度盘(CD)驱动器,可刻录的CD(CD-R)驱动器,或其他合适的可移动的和/或固定的存储单元。
根据本发明的一些具体实施例,系统100可包括存储器135,例如,一个通过存储总线136连接到芯片组133的系统存储器。存储器135可包括,如,随机存取存储器(RAM)、只读存储器(ROM)、动态随机存取存储器(DRAM)、同步DRAM(SD-RAM)、闪存、易失存储器、非易失存储器、缓冲存储器、缓冲器、短期存储单元、长期存储单元、或其他合适的内存单元或存储单元。系统100可另外包括合适的硬件组件和/或软件组件。
在一些实施例中,系统100可包括或可以为,例如,计算机系统,如个人计算机、台式计算机、移动计算机、便携式计算机、笔记本、终端、工作站、服务器计算机、个人数字助理(PDA)设备、输入板计算机、网络设备、微控制器、蜂窝电话、照相机、或其他合适的计算和/或通讯设备。
根据本发明的一些具体实施例,处理器104可处于如本技术领域中所知晓的工作状态操作或非工作状态操作。例如,处理器104可在执行一个如本技术领域中所知晓的处理操作时处于工作状态操作。当处于非工作状态操作时,例如,“备用”状态、“睡眠”状态、“掉电”状态、“深度睡眠”状态和或其他非工作状态操作,处理器104可减少电能消耗,例如,相对于工作状态操作下的处理器104的电能消耗要少。
根据本发明的一些具体实施例,处理器104可包括如下详细叙述的时钟182,控制器184,和逻辑块186。根据本发明的一些具体实施例,例如,在处理器104的如本技术领域中所知晓的工作状态操作中,时钟182可将时钟信号188提供给控制器184和/或逻辑块186。根据本发明的一些具体实施例,时钟182可选择性的使控制信号(“驻留信号)180有效或解除有效。例如,时钟182在进入非工作状态操作后可使信号182有效,和/或在返回工作状态操作前使信号180解除有效,如下详细描述。
根据本发明的一些具体实施例,控制器184可以例如通过给逻辑块186提供信号192来控制逻辑块186的操作,该信号包括如本技术领域中所知晓的一个或多个被逻辑块186所执行的微操作。根据本发明的一些具体实施例,逻辑块186可执行一个或多个逻辑操作,例如对应于信号192的微操作。尽管本发明不限于该方面,逻辑块186可包括,例如,无序(OOO)模块194,以及包括一个或多个执行单元(EU)的执行(EXE)块198,执行单元如EU160和162。OOO模块194可包括如本技术领域中所知晓的任何合适的OOO配置或结构。该组执行单元可包括,例如,一个或多个加法器、乘法器、移位器、和/或任何其他合适的如本技术领域中所知晓的执行单元。
根据本发明的一些具体实施例,执行块198可包括一个或多个逻辑元件。例如,EU160可包括逻辑元件160;和/或EU162可包括逻辑元件166和168。逻辑元件164、166和/或168可包括,例如,一个或多个组合逻辑元件,如ADD门、OR门、NOT门等等;一个或多个时序逻辑元件,如触发器(FF)、锁存器等等;和/或如本技术领域中所知晓的任何合适的逻辑元件、单元或组件。根据本发明的一些具体实施例,控制器184可在进入非工作状态操作前使得或指导逻辑块186的一组一个或多个执行单元执行一个或多个微操作的序列(“驻留序列”)。
根据本发明的一些具体实施例,逻辑块186可包括分配到一个或多个逻辑元件的一个或多个低泄漏(LL)的晶体管,如下所述如基于非工作状态操作下的逻辑块186的逻辑状态。例如,LL晶体管170可被分配到逻辑元件164,和/或LL晶体管172可被分配到逻辑元件168。此外或可选择地,如当使信号180有效时,逻辑块186的一个或多个逻辑元件,如逻辑元件166,可选择性的转换到操作状态(如,一个“驻留操作状态”)。如下详细描述,逻辑元件166当处于驻留操作状态时可减少功率泄漏,例如使其最小化。例如,当使信号180有效时,元件166可转换一个或多个数据总线和或数据操纵选择器到普通状态,例如零状态。结果可能为,例如,通过元件166的选择器节点的功率泄漏将减少。
根据本发明的一些具体实施例,元件166可包括,如一个宽多路复用器(MUX),和/或一个MUX锁存器配置。在驻留操作状态时,通过设定MUX的所有数据输入为同一逻辑值,如0或1,由此可减少元件166的功率泄漏。例如由于MUX中的源极和漏极的通过阈值都设定为同一电压,结果将导致功率泄漏的减少。到驻留操作状态的开关元件166可保持MUX的输出电压在接近功率限制的级别上。结果可使得在MUX的下述阶段中的功率消耗减少。
参照图2,其中示意性的阐述了根据本发明的另外一个具体实施例的计算系统200。
根据本发明的一些具体实施例,例如,系统200可包括具有一个或多个处理器、存储器和/或输入/输出(I/O)设备的点对点总线方案,处理器是如处理器270和280,存储器是如存储器202和204,I/O设备是如设备214,它们通过一个或多个点到点的接口相连。处理器270和/或280可各自包括处理器核心274和284。处理器核心274和/或284可包括参照图1如上描述的时钟182,控制器184,和/或逻辑块186。
根据本发明的一些具体实施例,处理器270和280也可各自包括本地的存储通道集线器(MCH)272和282,如分别连接存储器202和204。处理器270和280可通过点对点接口250交换数据,如分别使用点对点接口电路278、288。处理器270和/或280可通过点对点接口252、254与芯片组290交换数据,如使用点对点接口电路276、294、286和298。芯片组290也可通过高性能图像接口292与高性能图像电路238交换数据。芯片组290也可通过总线接口296与总线216交换数据。根据某些实施例,输入/输出设备214可包括如本技术领域中所知晓的低性能的图像控制器、视频控制器、和/或网络控制器。根据某些具体实施例,系统200也可包括另一个总线桥218,例如该总线桥可被用于在总线216和总线220之间交换数据。在一些实施例中总线220可以是如本技术领域中所知晓的小型计算机系统接口(SCSI)总线、集成驱动电子设备(IDE)总线、或通用串行总线(USB)。附加的I/O设备可连接到总线220。例如,系统200也可包括键盘和/或如鼠标的光标控制设备222、音频I/O设备224、如包括调制解调器和/或网络接口的通讯设备226;和/或如存储软件代码230的数据存储设备228。在一些实施例中,数据存储设备228可包括固定磁盘,软盘驱动器,光盘驱动器,磁光盘驱动器,磁带,或包括闪存的非易失性存储器。
参照图3,其中示意性的描述了根据本发明的某些具体实施例进入非工作状态操作的一种方法。尽管本发明不局限于此方面,但图3中的方法可通过处理器104(图1)和或处理器200(图2)实施。
如块302中所示,例如,该方法可包括在工作状态操作期间确定是否要进入非工作状态操作。例如,控制器184可以监视时钟信号188,并如本技术领域中所知晓的,基于该时钟信号188,确定是否要进入非工作状态操作。
如块304中所示,该方法也可包括使得一个或多个执行单元组执行驻留序列,例如在确定将要进入非工作状态操作之后,和在进入非工作状态操作之前。例如,控制器184可使得或指导块186的一个或多个执行单元组执行驻留序列,例如在确定将要进入非工作状态操作之后。例如,在确定将进入非工作状态操作后,控制器184可提供包括由EU160和/或162执行的代表驻留序列的微操作序列的信号192给逻辑块186。
根据本发明的一些具体实施例,该驻留序列可包括在块186的一个或多个EU中的微操作,如在块186至少50%的EU中,微操作为预定的逻辑状态(“驻留状态”)。例如,该驻留状态可用来减少,如最小化,逻辑块186的功率消耗,将如下详细描述。
如块306中所示,根据本发明的一些具体实施例,该方法也可包括清除被一组执行单元所执行的一个或多个控制操作,例如在执行驻留序列之后并在进入非工作状态操作之前。例如,控制器184可给逻辑块186提供一个清除命令信号191以使得逻辑块186清除一个或多个由逻辑块186执行的控制操作。在接收清除信号191时候,OOO模块194可如本技术领域中所知晓的清除一个或多个被EXE块198所执行的控制操作。
如块308中所示,该方法可包括进入非工作状态操作。例如控制器184可如本技术领域中所知晓的对一睡眠寄存器执行一个反复写操作。
如块310所示,该方法也可包括使时钟信号无效。例如,控制器184可如本技术领域中所知晓的通过使控制信号190有效来使时钟182无效。
如块311中所示,该方法也可包括使得执行单元组中的一个或多个逻辑元件转换到驻留操作状态,例如在使时钟信号无效之后。例如,时钟182可以在例如从控制器184接收信号190的时候使驻留控制信号180有效。逻辑元件166可在使信号180有效的同时保持驻留状态。
处理器104的非工作状态操作可以被中断,例如,当控制器184识别一个使用逻辑块186执行一个操作的企图,正如本技术领域中所知晓的那样。如块315中所示,该方法也可包括返回到工作状态操作。例如,在识别该企图的时候,控制器184可以例如通过使信号190解除有效来重新激活时钟182。
如块314中所示,该方法也可包括使得被转换到驻留操作状态的一个或多个逻辑元件转换回一个操作状态,例如在返回工作状态操作之前。如时钟182可以例如在使信号190解除有效的时候使驻留控制信号180解除有效。例如,逻辑元件166可以例如当使信号180解除有效时,返回到该操作状态。
根据本发明的一些具体实施例,在非工作状态操作期间处理器104消耗的电能可能与通过逻辑块186中一个或多个逻辑元件造成的功率泄漏有关。通过一个逻辑元件造成的功率泄漏可以取决于该逻辑单元的逻辑状态。
根据本发明的一些具体实施例,该驻留序列和/或逻辑块186的配置可被确定成在非工作状态期间块186的功率泄漏被减少,例如被最小化,如下所述。根据本发明的一些具体实施例,该驻留序列可被确定成逻辑块186的一个或多个逻辑元件的功率泄漏在非工作状态操作期间可以被减少,例如被最小化,如下所述。
根据本发明的一些具体实施例,在非工作状态操作期间,块186的逻辑元件的功率泄漏可以根据块186的驻留状态所确定。一个或多个LL晶体管可以例如基于逻辑块186的驻留状态,被分配到块186的一个或多个逻辑元件。例如,该LL晶体管170可以根据在该驻留状态所确定的功率泄漏被分配到逻辑元件164。例如,一个LL晶体管170可被分配到逻辑元件164,和/或一个LL晶体管170可被分配到逻辑元件168,例如当逻辑元件164和/或168被确定在驻留状态时具有一个高于预定水平的功率泄漏。
参照图4,其中根据本发明的一些具体实施例示意性地描述了一种配置处理器的方法。虽然本发明不仅限于此,但图4中的方法可用来配置处理器104(图1)和/或处理器200(图2)。例如,图4中的方法可用来确定应用到逻辑块186(图1)的驻留序列;和/或如通过分配一个或多个如LL晶体管170(图1)和/或172(图1)的LL晶体管来配置逻辑块186(图1),和/或配置一个或多个逻辑元件如逻辑元件166(图1)的驻留状态操作。
如块402中所示,该方法可包括确定被应用到逻辑块的多个逻辑元件的驻留序列。如,基于逻辑块的一个给定的配置可确定一个初始的驻留序列。该初始驻留序列可以例如基于逻辑元件的数量、位置、布置和/或类型。
根据本发明的一些具体实施例,该驻留序列欲持续一个预定的操作阶段数,定义为N。该阶段数N对应于例如为执行驻留序列所需要的周期数,定义为Cl,如N=2Cl。该逻辑块可包括多个组合逻辑元件,和多个时序逻辑元件,如前参照图1所述。对于本领域普通技术人员来说可以理解的是,组合逻辑元件的逻辑状态可基于时序元件的逻辑状态来确定。因此,根据如下所述的本发明的一些具体实施例,该驻留序列可基于例如不涉及组合逻辑元件而是涉及时序逻辑元件的可控性分析来评价。对于本领域普通技术人员来说可以理解的是,根据本发明的其他实施例,任何其他合适的方法或分析都可应用于确定和/或评价该驻留序列。
如块403中所述,根据本发明的一些具体实施例,该方法可包括评价驻留序列的可控性水平,例如基于在应用驻留序列时的时序逻辑元件的可控性。时序逻辑序列可被定义为例如可控的,如果应用该驻留序列到时序元件的任意的如未知的状态可以导致时序元件在驻留序列的结尾处的n个阶段的预定间隔中,如n=30,保持一个已知的逻辑值(“信号概率(SP)值”),如0或1。该驻留序列的可控性可由例如可控时序元件的百分比来确定。
根据本发明的一些具体实施例,该驻留序列的可控性可使用三值模拟来测量,如具有如本技术领域中所知晓的0,1和某未知的定义为X的数值。例如,该驻留序列可应用到一个逻辑状态,其中所有的时序元件初始具有未知值X。该保持常数值如0或1的时序元件在模拟的最后n阶段中可被确定为可控的。
如块404中所述,驻留序列的可控性水平评价可包括例如在一个或多个N阶段期间确定多个对应于多个逻辑元件的SP值。例如,对于一个时序元件在第i阶段的SP值可根据该时序元件在第i个阶段的一个模拟的逻辑状态如0,1或X来确定。
如块406中所述,驻留序列的可控性水平的评价也可包括基于多个SP值来确定驻留序列的可控性水平。例如,驻留序列的可控性可由在n个阶段中具有一已知数值如0或1的时序元件的百分比来确定。
如块408中所述,该方法也可包括确定驻留序列的可控性水平是否等于或高于一个预定的可控性阈值,例如对应于时序元件的90%的可控性水平都具有一个已知数值。该方法也可包括重定义驻留序列,如块402中所述,例如,如果驻留序列的可控性水平低于可控性阈值。
虽然本发明不仅仅局限于此,但是一个符号模拟方法,如本技术领域中所知晓的符号轨迹评价(STE)方法可用来执行一个或多个上述如块403,404和/或406中的操作。
图5为绘制了可控时序元件百分比与驻留序列阶段比较的示意图。如图5所示,在大约30个驻留序列阶段之后,可控性可达到大约80%。如在大约60个驻留序列阶段后,该可控性可增加到大约90%。
回头参照图4,如块412所示,该方法也可包括确定和/或分析逻辑块的功率泄漏,例如,当在驻留状态时,包括一个或多个组合逻辑元件和/或时序元件。任何如本技术领域中所知晓的合适的功率泄漏分析和/或功率估计方法均可用来确定和/或分析功率泄漏。
如块414中所示,该方法也可包括确定逻辑块的功率泄漏是否等于或低于一个预定的泄漏阈值。该方法可包括重定义驻留序列,比如当逻辑块的功率泄漏高于泄漏阈值时。
如块416中所示,该方法也可包括确定逻辑块的功率泄漏和/或定时效率,例如可以通过将如下所述的分配一个或多个低泄漏(LL)晶体管,来改善块186。
如块418所示,该方法也可包括基于逻辑块的驻留状态来分配一个或多个LL晶体管到逻辑块的一个或多个逻辑元件,将如下所述。
根据本发明的一些具体实施例,该逻辑块的驻留状态的内容可以被理由来例如基于处于驻留状态的元件的功率泄漏以分配一个或多个LL晶体管给逻辑元件。此外,如晶体管之类的逻辑元件的堆的有效泄漏可根据在堆中每个元件的驻留状态来评估。这样例如根据处于驻留状态的功率泄漏而不是根据晶体管尺寸和/或状态可能性,来使得在堆中加权逻辑元件。例如,一个包含至少两个在驻留状态的晶体管的两个或更多晶体管的堆,例如和一个包含少于两个在驻留状态的晶体管的堆相比较,可能具有X10泄漏缩减,导致10X小(10X smaller)的有效Z。如果在堆中仅有一个晶体管处于驻留状态,且该晶体管不是离堆输出最近的晶体管,那么该泄漏可以被减少大约40%,导致大约X0.6小(X0.6smaller)的有效Z。因此,对于本领域普通技术人员来说可以理解的是驻留状态的内容可用来根据在非工作状态的晶体管功率泄漏来分配LL晶体管。相应地,基于驻留状态的LL晶体管的分配可导致在功率泄漏上相对大的减少。根据本发明的一些具体实施例,逻辑块可包括一个或多个如本技术领域中所知晓的定时关键路径。
根据本发明的一些具体实施例,LL晶体管可基于驻留状态的逻辑元件的功率泄漏,和/或基于该逻辑元件是否为定时关键路径的一部分来分配到一个逻辑元件。例如,这些LL晶体管可基于下述规则被分配到逻辑块的逻辑元件中:
对于关键定时路径的逻辑元件,只要定时界限允许,把LL晶体管分配给在驻留状态具有最大的功率泄漏的逻辑元件。
如果允许速度降级,把额外的LL晶态管分配到一个具有低于时间插入限定的时间裕度的路径中。这些额外的LL晶体管可以例如基于由这些LL晶体管的分配导致的速度降级和功率泄漏的缩减的组合来分配到该路径上的逻辑元件中。
对于上述两种情况,LL晶体管的插入可以根据逻辑元件的有效泄漏来排优先级,例如当考虑逻辑元件的有效堆时,这种情况就像从堆内所有逻辑元件的逻辑状态中暗示的那样。
虽然本发明不仅仅局限于此,任何合适的如本技术领域中所知晓的功率编译可被用来执行一个或多个在上文中根据块416和/或418所描述的操作。
如块420所示,该方法也可包括确定和或分析逻辑块的功率泄漏,例如,在分配LL晶体管之后。
如块422所示,该方法也可包括例如根据被分配的LL晶体管来修改逻辑块。
本发明的实施例可通过软件,硬件,或由于适合特殊应用或根据特别所设计需要而开发的任何软件和/或硬件的组合实施,本发明的实施例可包括单元和子单元,这些单元可以整体上或部分上相互独立或组合在一起,并可以使用如本技术领域中所知晓的特别的,多目的的或通用的处理器或设备所实施。本发明的一些实施例可为了暂时的或长期的数据存储和/或帮助某特别实施例的操作而包括缓冲器、寄存器、存储器单元和/或内存单元。
尽管本发明的某些特征已经在上描述,本领域技术人员还可能作出许多修改,替代,改变和等效。因此,特此申明,该附属的权利要求是用来涵盖所有在本发明实质精神内的修改和改变。
Claims (1)
1.一种处理器,包括:
逻辑块,所述逻辑块包括包含一个或多个执行单元的执行块,以及
与所述逻辑块耦合的控制器,
其中,响应于检测到所述处理器的至少一部分处于非工作状态,所述控制器使所述一个或多个执行单元执行一个或多个指令来把所述处理器置于降低功率状态,
其中,响应于所述一个或多个指令的执行,所述控制器降低所述至少一部分的时钟频率,以及
其中降低所述时钟频率是为了降低所述处理器的泄漏功率。
2. 如权利要求1所述的处理器,其中,所述控制器使控制信号有效来降低所述时钟频率。
3. 如权利要求1所述的处理器,其中,由所述控制器执行的所述一个或多个指令包括一个或多个微操作。
4. 如权利要求3所述的处理器,其中,所述控制器执行所述一个或多个微操作,所述一个或多个微操作引发至少一半所述一个或多个执行单元的预定逻辑状态。
5. 如权利要求3所述的处理器,其中,所述控制器使用所述一个或多个微操作来确定微操作序列,所述一个或多个微操作在被执行时降低所述泄漏功率。
6. 如权利要求5所述的处理器,其中,在进入所述非工作状态之后,所述控制器将所述一个或多个执行单元的至少一部分设置成预定逻辑状态。
7. 如权利要求6所述的处理器,其中,所述控制器对所述至少一部分的输入设定预定值。
8. 如权利要求1所述的处理器,其中,在退出所述非工作状态之前,所述控制器将所述至少一部分转换到操作逻辑状态。
9. 一种处理器,包括:
执行一个或多个逻辑操作的逻辑块;以及
耦合到所述逻辑块的控制器,其中,响应于确定要进入非工作状态,所述控制器使得所述逻辑块清除一个或多个由所述逻辑块执行的控制操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/319,805 | 2005-12-29 | ||
US11/319805 | 2005-12-29 | ||
US11/319,805 US7536485B2 (en) | 2005-12-29 | 2005-12-29 | Processor having inactive state of operation and method thereof |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006100642244A Division CN1991689B (zh) | 2005-12-29 | 2006-12-29 | 具有非工作状态操作的处理器及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102163074A CN102163074A (zh) | 2011-08-24 |
CN102163074B true CN102163074B (zh) | 2013-11-20 |
Family
ID=38213979
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006100642244A Expired - Fee Related CN1991689B (zh) | 2005-12-29 | 2006-12-29 | 具有非工作状态操作的处理器及其方法 |
CN2011100593658A Active CN102163074B (zh) | 2005-12-29 | 2006-12-29 | 具有非工作状态操作的处理器及其方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006100642244A Expired - Fee Related CN1991689B (zh) | 2005-12-29 | 2006-12-29 | 具有非工作状态操作的处理器及其方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7536485B2 (zh) |
JP (1) | JP4509996B2 (zh) |
CN (2) | CN1991689B (zh) |
TW (1) | TWI333611B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI314688B (en) * | 2006-06-09 | 2009-09-11 | Asustek Comp Inc | Computer and main circuit board thereof |
US20080155296A1 (en) * | 2006-12-22 | 2008-06-26 | Fujitsu Limited | Apparatus for controlling clock signals to processor circuit |
JP2009294875A (ja) * | 2008-06-04 | 2009-12-17 | Fujitsu Ltd | 演算処理装置、演算処理装置の電源制御方法 |
US8135970B2 (en) * | 2009-03-06 | 2012-03-13 | Via Technologies, Inc. | Microprocessor that performs adaptive power throttling |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1227938A (zh) * | 1998-11-27 | 1999-09-08 | 中国科学院空间科学与应用研究中心 | 一种通用的数据采集装置及其操作方法 |
CN1542442A (zh) * | 2003-11-10 | 2004-11-03 | 张焕义 | 一种遥控调校方法和矿用智能甲烷报警矿灯 |
WO2005106626A1 (en) * | 2004-05-05 | 2005-11-10 | Koninklijke Philips Electronics N.V. | A mobile apparatus comprising integrated circuit and method of powering down such circuit |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5623677A (en) * | 1994-05-13 | 1997-04-22 | Apple Computer, Inc. | Apparatus and method for reducing power consumption in a computer system |
JP3807884B2 (ja) * | 1998-11-20 | 2006-08-09 | 株式会社ルネサステクノロジ | 低電力情報処理装置 |
US6249739B1 (en) * | 1999-08-31 | 2001-06-19 | Intel Corporation | Operating vehicular processor-based systems |
US6771118B2 (en) * | 2002-10-30 | 2004-08-03 | Texas Instruments Incorporated | System and method for reducing a leakage current associated with an integrated circuit |
-
2005
- 2005-12-29 US US11/319,805 patent/US7536485B2/en not_active Expired - Fee Related
-
2006
- 2006-12-12 TW TW095146432A patent/TWI333611B/zh not_active IP Right Cessation
- 2006-12-25 JP JP2006348280A patent/JP4509996B2/ja active Active
- 2006-12-29 CN CN2006100642244A patent/CN1991689B/zh not_active Expired - Fee Related
- 2006-12-29 CN CN2011100593658A patent/CN102163074B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1227938A (zh) * | 1998-11-27 | 1999-09-08 | 中国科学院空间科学与应用研究中心 | 一种通用的数据采集装置及其操作方法 |
CN1542442A (zh) * | 2003-11-10 | 2004-11-03 | 张焕义 | 一种遥控调校方法和矿用智能甲烷报警矿灯 |
WO2005106626A1 (en) * | 2004-05-05 | 2005-11-10 | Koninklijke Philips Electronics N.V. | A mobile apparatus comprising integrated circuit and method of powering down such circuit |
Also Published As
Publication number | Publication date |
---|---|
TWI333611B (en) | 2010-11-21 |
CN1991689A (zh) | 2007-07-04 |
US20070174589A1 (en) | 2007-07-26 |
US7536485B2 (en) | 2009-05-19 |
JP2007183942A (ja) | 2007-07-19 |
CN102163074A (zh) | 2011-08-24 |
TW200809484A (en) | 2008-02-16 |
CN1991689B (zh) | 2012-06-13 |
JP4509996B2 (ja) | 2010-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109885343B (zh) | 一种控制器低功耗启动方法、装置、计算机设备及存储介质 | |
US9164764B2 (en) | Single instruction for specifying and saving a subset of registers, specifying a pointer to a work-monitoring function to be executed after waking, and entering a low-power mode | |
CN101105711B (zh) | 用于在主处理器与副处理器间分配处理功能的系统和方法 | |
TWI301573B (en) | An apparatus and method for power performance monitors for low-power program tuning | |
Mehta et al. | Instruction level power profiling | |
CN102163074B (zh) | 具有非工作状态操作的处理器及其方法 | |
US6308313B1 (en) | Method for synthesis of common-case optimized circuits to improve performance and power dissipation | |
CN101558383A (zh) | 处理器的电源管理方法和装置 | |
CN104081357A (zh) | 使用多级单元设置本地检查点 | |
US10025639B2 (en) | Energy efficient supercomputer job allocation | |
CN103049037B (zh) | 修改计时器的装置、设备、系统和方法 | |
CN116382560A (zh) | 用于存储器的管理方法和控制系统 | |
CN103544003A (zh) | 基于数据管理功率的设备和方法 | |
CN115904679A (zh) | 一种芯片调整方法及装置 | |
KR20210125886A (ko) | 이종 코어를 포함하는 프로세서, 시스템-온-칩 및 이의 동작 방법 | |
US10566065B2 (en) | Memory control device and memory control method | |
CN101593095B (zh) | 基于流水级的数据处理方法和系统 | |
US11669491B2 (en) | Processor, system on chip including heterogeneous core, and operating methods thereof for optimizing hot functions for execution on each core of a heterogeneous processor | |
US20180260014A1 (en) | Systems and methods for controlling memory array power consumption | |
US11880231B2 (en) | Accurate timestamp or derived counter value generation on a complex CPU | |
US20200075104A1 (en) | Memory control device for estimating time interval and method thereof | |
KR20240087384A (ko) | 시스템 온 칩 및 이의 동작 방법 | |
CN105224399A (zh) | 电子装置及其切换作业系统的方法 | |
Yeh et al. | Conserving Battery Energy through Making Fewer Incorrect File Predictions | |
US7138826B2 (en) | Self-rewinding circuit |
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 |