通过微架构带宽抑制进行处理器功耗控制和降低电压的制作方法

文档序号:6580553阅读:127来源:国知局

专利名称::通过微架构带宽抑制进行处理器功耗控制和降低电压的制作方法
技术领域
:本发明涉及对特定处理器功率状态进行微架构带宽抑制。
背景技术
:现代处理器,例如Intd⑧架构的处理器或其它品牌的处理器,一般具有多个可用功率状态,以允许当处理器不忙时节电。处理器一般具有称为CO的完全工作功率状态。CO—般具有高频模式(HFM)和低频模式(LFM)。另外一种普通的处理器功率状态是C1E。在C1E状态中,处理器可用于侦听服务,而不执行或撤出(retire)任何指令。侦听服务需要某一足以保持处理器的高速缓存工作的电压。通过举例的方式来说明本发明,并且本发明不受附图的限制,在附图中,相同的标记指示类似的部件,并且其中图1描述了一计算机系统的实施例,其能够使用微架构带宽抑制来使能在增强型处理器暂停状态中的操作,该增强型处理器暂停状态处于比与该状态兼容的电压电平更低的供电电压电平;图2描述了用于实现深度cm电压的电源管理逻辑的实施例;图3是进入或退出深度cm处理器电源管^状态的过程的实施例的流程图。具体实施例方式公开了用于通过实现处理器带宽抑制,从而在处于比C1E功率状态电压电平更低的电压电平的C1E功率状态中操作处理器的方法、设备和系统的实施例。现代处理器一般具有多个可用功率状态,以允许当处理器不忙时节电。在许多处理器中,这些状态之一包括CO状态,它是处理器完全工作的状态。在正常工作期间,处理器以高频模式(HFM)或低频模式(LFM)在CO状态中工作。在HFM和LFM中,处理器被提供不同的电压,其中,LFM电压通常是比HFM电压更低的电压。另一个处理器功率状态是C1E状态,其要求处理器可用于侦听服务。在许多实施例中,C1E状态可以被称为"增强型处理器暂停状态"。相比较于C0HFM状态,C1E状态需要向处理器提供更低的电压。在标准LFM电压,处理器能够在每个时钟周期调度和撤出最大数目的指令。一般来说,C1E状态使用与LFM电压相同的电压,这是因为,一旦从C1E状态中唤醒,处理器就可以立即转换到最大执行和撤出速率。为了降低C1E状态下的功耗,可以实现深度C1E电压,其是低于标准C1E(即,LFM)电压的电压。深度C1E电压与最大指令调度和撤出速率并不兼容。因此,为了在退出处于深度C1E电压的C1E状态时维持与可能的调度和撤出速率的电压兼容性,处理器可以实现微架构带宽抑制,例如,一旦退出C1E状态,立即抑制指令调度速率或指令撤出速率。因为抑制限制了指令通过处理器的带宽,因此,也降低了处理器功耗的限制。当处理器退出深度C1E电压下的C1E状态时,发生两个事件。首先,电压电平将开始向标准LFM电压升高,因为标准LFM电压与最大处理器执行和撤出速率兼容。另夕卜,在退出C1E状态之后和在电压达到LFM电压之前的过渡时间段内,处理器可以实现微架构带宽抑制机制,其可以降低可能的最大功耗,并因此将所需的电压降至至少为所述深度C1E电压。这允许在C1E状态期间向处理器提供深度C1E电压,并且一旦退出C1E状态,在电压开始向LFM电压升高时维持电压的兼容性。电压供应的减小量是特定于处理器和实现的。例如,当增加抑制时,可获得更大的电压减小。在以下说明书和权利要求书中对本公开技术的"一个实施例"、"实施例"的引用是指结合该实施例而描述的具体特征、结构或特性被包括在本公开技术的至少一个实施例中。因此,在整个说明书不同位置处出现的短语"在一个实施例中"不一定全指同一实施例。在以下说明书和权利要求书中,可以使用术语"包括"和"包含"以9及它们的派生词,并且意图将它们用作彼此的同义词。此外,在以下说明书和权利要求书中,可以使用术语"耦合"和"连接"以及它们的派生词。应该理解,并不意图将这些术语用作彼此的同义词。相反,在特定的实施例中,"连接"可以被用来指示两个或更多个元件彼此之间是直接物理接触或电接触的。"耦合"可以指两个或更多个元件是直接物理接触或电接触的。然而,"耦合"还可以指两个或更多的元件彼此之间不是直接接触的,但彼此之间仍然可以协作或交互。图1描述了能够使用微架构带宽抑制的计算机系统的实施例,其使得能够在退出一增强型处理器暂停状态时进行工作,该增强型处理器暂停状态所处的供电电压电平低于与该状态兼容的电压电平。在不同实施例中,计算机系统可以是台式计算机、服务器计算机、膝上型计算机、手持电子设备、电视机顶盒计算机、设备或交通工具内集成的计算机,或者在以下所述的各种实施例的范围内的任何其它类型的可想到的计算机系统。在许多实施例中,计算机系统包括处理器100。该处理器可以包括单个核心,例如核心102,或者可以具有多个核心,例如核心102和104(或者更多)。高速缓存存储器106也位于处理器硅核上。高速缓存存储器106可以包括多级高速缓存,例如1级高速缓存和2级高速缓存。此外,当处理器内存在多个核心时,在不同的实施例中,可以共享高速缓存存储器106的每个不同级别的高速缓存,或者可以每个核心都具有高速缓存存储器。在一些实施例中,处理器100可以是Intel⑧架构的微处理器。在一些实施例中,处理器100可以包括IntelSpeedStep⑧技术,或者另外的提供两个或更多个电压/频率工作点的电源管理相关技术。在一些实施例中,处理器IOO可以是不同类型的处理器,例如,嵌入式处理器或数字信号处理器。微架构抑制机制可以采用多种形式。在一些实施例中,微架构抑制机制可以限制处理器执行的指令的撤出速率。在其它实施例中,微架构抑制机制可以限制发送给调度器的指令的分配,该调度器对要执行的指令进行调度。例如,调度指令的调度器可以在用于调度指令的时钟周期之间强加一个或更多个其中不调度指令的废弃时钟周期(deadclockcycle)。在一些实施例中,微架构带宽抑制限制精简指令集计算机(RISC)架构中的指令的调度和/或撤出。在其它实施例中,微架构带宽抑制限制复杂指令集计算机(CISC)架构中的指令的调度和/或撤出。在CISC实施例中,由处理器执行的指令被分解为一个或更多个微架构操作(uop)。Uop—般不可再分,其构成CISC处理器的指令流水线。因此,在许多RISC和CISC实施例中,处理器包括调度单元,用于调度要被处理器的执行单元执行的指令,并且还包括撤出单元,用于撤出已经通过执行单元的指令。处理器的功耗部分地由其调度速率和撤出速率确定。大多数处理器具有在每个时钟周期内调度和撤出不止一个指令的能力。例如,许多处理器可以在每个时钟周期内调度和撤出多达四个指令。如果核心被限制为在每个时钟周期内调度或撤出少于最大数目的指令,则可以进行处理器的带宽抑制。例如,如果撤出单元正常情况下可以在每个时钟周期内撤出四个指令,但是处理器内的逻辑将撤出速率限制为每个时钟周期撤出一个指令,则处理器实质上被抑制了,这导致更低的性能和更低的可能的功率消耗。每个核心可以包括调度单元(SU),例如,分别用于核心102和104的SU134和SU136。另外,每个核心可以包括撤出单元(RU),例如,分别用于核心102和104的RU106和RU108。SU内的逻辑调度核心要执行的指令。在CISC架构中,SU可以以乱序的方式调度指令,从而加快流水线内的执行速度。另外,在CISC架构内,RU可以包括重排序缓冲器(ROB)。CISC架构的RU内的ROB在uop已经被执行(可能为乱序执行)之后,将这些uop重新排列成原始的程序顺序。如上所述,大多数处理器能够在每个核心时钟内调度和撤出不止一个指令,例如,在许多处理器中,每个核心在每个核心时钟内可以调度和撤出四个指令。因此,如果SU内的逻辑、RU内的逻辑或者这二者内的逻辑将指令的调度速率和域撤出速率限制为小于每个核心时钟四个指令,则微架构带宽抑制可以发生。在一些实施例中,当SU内的逻辑将调度的速率限制为每个核心时钟一个指令而非每个核心时钟四个指令的可能的最大速率时,抑制发生。在其它实施例中,当SU内的逻辑将对指令的调度限制为每隔一个核心时钟进行调度而非每个核心时钟进行调度时,抑制发生。因此,当调度的最大速率为每个时钟四个指令时,如果仅每隔一个时钟可用于调度,则有效的最大调度速率被减小为每个核心时钟二个指令。在其它实施例中,当RU内的逻辑将撤出的速率限制为每个核心时钟一个指令而非每个核心时钟四个指令的可能的最大速率时,抑制发生。可以实现许多其它标准的微架构带宽抑制机制,或者可以实现这些机制的组合。任何抑制机制的结果都是一段时间内的指令吞吐量被限制为小于核心能够产生的吞吐量。这导致了比通过核心的最优指令流带宽更少的带宽,因此,该核心在抑制期间将不会到达需要最大的规定的供电电压的状态。因此,在微架构带宽抑制期间,可以减小提供给核心的电压。另外,在许多实施例中,处理器还具有集成的存储器控制器112。在未示出的其它实施例中,存储器控制器112是分立器件,或者被集成到与处理器100分离的桥器件或其它系统芯片内。存储器控制器112通过处理器-存储器互连耦合到系统存储器114。存储器控制器112使处理器100和计算机系统内的任何其它器件能够访问系统存储器114。在许多实施例中,系统存储器114可以包括随机存取存储器(RAM)的形式,例如动态RAM(DRAM)、闪存,或者包括存储器的其它形式。在许多实施例中,处理器还耦合到分立的输入/输出(I/O)复合体116。在未示出的其它实施例中,I/O复合体可以集成到处理器中。I/O复合体116可以包括一个或更多个集成的I/O主机控制器(未示出),其允许诸如键盘、大容量存储设备等这样的I/O设备连接到计算机系统。系统还包括耦合到处理器100的电压调节器(VR)118。VR118向处理器提供电源工作电压,并且可以根据Intd⑧移动电压定位(IMVP)规范的一个版本(例如,IMVP-6规范)来工作。VR118可以包括这样的逻辑该逻辑响应于一个或更多个信号,以将处理器100的电压减小到一个或更多个低电压状态。在退出低电压状态之后,VR118逻辑还可以重新升高处理器100的电压。此外,在未示出的其它实施例中,VR118可以被集成到处理器100中。处理器100还包括功率状态进入和退出逻辑120,用于控制一个或更多个电压状态的进入和退出。每个功率状态包括用作从VR118馈送至处理器的电源工作电压的特定电压。在某些实施例中,处理器可以使用电压ID(VID)值将电压值发送给VR118。在其它实施例中,处理器可以使用不同于VID的信息将电压值发送给VR。发送给VR的信息是特定于实现的,因为不同的平台利用不同类型的VR,这些不同类型的VR接受不同格式的电压修改指令/信息。在许多利用VID的实施例中,功率状态VID与特定处理器工作频率配对。因此,在许多实施例中,存储电压/频率对的功率状态表被存储在计算机系统中。该表可以位于处理器100中的微码内、1/0复合体116中的存储装置内、BIOS(基本输入/输出系统)122内,或者系统中的其它固件内。在许多实施例中,功率状态表包括线性递增的电压值。例如,第一个表项可以与最低电压量相对应,并且随后的表项可以对于每个表项将电压线性地递增一统一的量。在其它实施例中,第一表项可以与处理器的最高电压量相对应,并且随后的表项可以对于每个表项将电压线性地递减一统一的在许多实施例中,当计算机系统工作时,操作系统124被加载到系统存储器114中。操作系统可以包括支持高级配置和电源接口(ACPI)的代码126。使用该代码,操作系统可以访问功率状态表,并命令ACPI接口进入和退出不同的功率状态。在许多实施例中,1/0复合体116还包括电源管理微控制器128。电源管理微控制器128包括状态控制逻辑,其可以控制与处理器100相关联的电源管理状态和正常工作状态之间的转换。每个电源管理状态具有至少一个特定的电压电平与频率的组合。电压电平是提供给处理器的电压电平,频率是处理器的工作频率。电源管理微控制器128可以向VR118内的电压修改逻辑130提供信息,以设置提供给处理器100的电压。电源管理微控制器128还可以向时钟发生器电路132提供信息,以向处理器100提供时钟信号。在许多实施例中,时钟发生器电路132是锁相环(PLL)。在许多实施例中,功率状态进入/退出逻辑120还可以为不同功率状态控制处理器内的频率的修改。一般存在多个电源管理状态。下文中描述实施例来说明将处理器100从完全工作C0功率状态向下转换到C1E功率状态,以及在深度C1E电压状态期间和在深度C1E电压状13态与LFM电压状态之间的转换期间,利用微架构带宽抑制将处理器100重新转换回CO功率状态。当处理器在CO功率状态中运行时,可以将来自操作系统或来自计算机系统内其它位置的ACPI或其它命令发送给电源管理微控制器128,以将处理器100降低到CIE状态。在一些实施例中,如果处理器100以HFM频率工作,则首先将其降低到LFM频率/电压对,该LFM频率/电压对是更低的所支持的频率和相应的电压。为了将处理器转换到LFM频率,功率状态进入/退出逻辑120可以修改频率。在另一可选实施例中,时钟发生器132可以从外部修改提供给处理器100的时钟,这将附带地修改处理器100的频率。在许多实施例中,当频率变为LFM频率时,电源管理微控制器128将诸如VID这样的电压信息发送给VR118,以将电压降低到LFM电压电平。LFM电压电平是与处理器处于标准C1E状态时利用的电压电平相同的电压。在一些实施例中,一旦频率和电压处于LFM级别,功率状态进入/退出逻辑120就可以使处理器进入C1E状态。如上面所提及的,C1E状态要求处理器可用于侦听服务,但是处理器在该状态下不执行任何指令。一旦进入C1E状态,电源管理微控制器128可以将命令发送给VR118内的电压修改逻辑130,以将电压降低到与C1E/LFM频率配对的电压之下。在一些实施例中,可以通过从标准LFM/C1EVID值减去一变化量VID值,来降低电压电平。因此,可以将得到的更低的VID值发送给VR118,以降低电压。被降低到标准LFM/C1E电压电平之下的电压电平可以被称为深度C1E电压电平。提供给处理器的电压可以降低的量在不同实施例(使用不同处理器)中可以不同。在许多实施例中,可以在将深度C1E电压信息发送给VR118的同时实行微架构带宽抑制机制。在许多实施例中,指示VR118降低提供给核心的电压的信号与可以被发送给处理器以指示核心实行抑制机制的信号是同一信号。因此,即使处理器不执行指令,在C1E状态下也可以实行微架构带宽抑制机制。这允许处理器快速退出C1E状态,并返回到COLFM状态中执行指令,而需等待电压完成从深度C1E电压到标准LFM/C1E电压电平的升高过程。换言之,在LFM状态的提供给处理器的电压低于LFM/C1E电压电平的部分内,使用抑制机制来抑制处理器指令的吞吐量。具体来说,当处理器从C1E状态退出以进入LFM状态时,VR118将电压从深度C1E电压电平升高到LFM/C1E电压电平需要有限的时间。因此,在这段时间内,由于抑制机制限制处理器运行需要LFM电压电平的沉重工作负荷,所以即使电压低于为LFM状态规定的电压,处理器核心也被允许如在COLFM状态中那样执行指令。因此,在许多实施例中,当处理器在处于深度C1E电压电平的C1E功率状态下运行时,将处理器唤醒以进入完全工作C0功率状态的中断可以被发送给电源管理微控制器128。在许多实施例中,一旦接收到该中断,核心将开始唤醒过程,并且将开始以LFM频率服务标准中断。在从C1E到C0的转换开始时,电源管理微控制器128可以将信息发送给VR118(和VR118内的电压修改逻辑130),以开始将电压从深度C1E电压电平升高到标准LFM/C1E电压电平。在一些实施例中,微架构抑制继续进行,直到电压电平达到LFM电压电平。在这些实施例中,一旦达到LFM电压电平,抑制中止。在其它实施例中,处理器从C1E状态退出并直接进入到C0HFM状态。在这些实施例中,在电压升高期间,抑制继续进行,至少直到电压电平达到LFM电压电平。在这些实施例中,一旦电压电平已经上升到LFM电压电平,对于电压向C0HFM电压升高的剩余过程抑制中止。图2描述了用来实现深度C1E电压的电源管理逻辑的实施例。在许多实施例中,向该逻辑输入多个值。这些值是来自于存储它们的一种或更多种存储器存储位置的值,在一些实施例中,这些值包括软件频率值200、LFM频率值202、软件电压值204以及LFM电压值206。在一些实施例中,这些值可以存储在位于处理器内的寄存器中,或者存储在计算机系统内的其它位置。在其它实施例中,这些值存储在与BIOS相关联的非易失性存储器内、系统存储器内,或者计算机系统中的其它存储位置。在许多实施例中,这些值可以包括与一个或更多个表中的位置对应的代表值,这些表存储在计算机系统内的一个或更多个存储位置中。例如,频率值可以对应于频率值表内的行。该表可以存储处理器能够运行的频率的完整集合。表l说明了一部分频率表的实施例。表1.处理器频率值表<table>tableseeoriginaldocumentpage16</column></row><table>该表从对应于全零频率值的0吉赫兹(GHz)的频率开始。之后,该表示出从作为高频的3.0GHz开始,对于8位二进制频率值的每次增加,相应的频率降低100兆赫兹(MHz)。尽管该表仅示出了降低到1.9GHz的处理器频率值,但是完整的表可以继续向下,使用进一步增加的二进制频率值和相应地进一步降低的处理器频率。此外,该表可以位于计算机系统内具有足够用于存储该表的存储空间的任意位置。因此,软件频率值200可以包括对应于频率值表(例如,表l)中的行的8位频率值,在许多实施例中,该软件频率值200是指系统内的软件正在请求处理器的电压要被设置成的当前值。在另一实例中,电压值可以对应于电压表内的行,该电压表存储能够提供给处理器的电压电平的完整集合。表2说明了使用特定VID值实现的部分电压值表的实施例。表2.电压/VID值表<table>tableseeoriginaldocumentpage17</column></row><table>该表从VID值为全零时的关闭电压开始。之后,该表示出从作为高电压的1.6V开始,对于8位二进制VID值的每次增加,相应的电压降低0.0125V。尽管该表仅示出降低到1.4625V的供电电压值,但是完整的表可以继续向下,使用进一步增加的二进制值和相应地进一步降低的供电电压。此外,该表可以位于计算机系统内具有足够用于存储该表的存储空间的任意位置。因此,软件VID值204可以包括对应于VID表(例如,表l)中的行的8位VID值,在许多实施例中,该软件VID值204是指系统内的软件正在请求处理器的电压要被设置成的当前值。LFM频率值202和LFMVID值206对应于当处理器处于LFM中时所利用的处理器频率和提供给处理器的电压。因此,LFM电压和频率值可以是当电源管理逻辑决定使处理器进入LFM时要利用的预设值。在许多实施例中,还将深度C1E变化量值208提供给电源管理逻辑。深度C1E变化量值208包括标准LFMVID与对应于深度C1EVID的更低的电压之间的差。例如,LFMVID可以是00001010b,其对应于表2中的1.55V。深度C1E电压值可以是00010110b,其对应于表2中的1.475V。因此,深度C1E变化量值208将对应于这两个值之间的变化量00001100b(即,00001010b+00001100b=0001011Ob)。LFMVID值206和深度C1E变化量值208被输入到加法逻辑210,其将两个值相加到一起。结果是表2中对应于深度CIEVID值的值。在许多实施例中,电源管理逻辑包括多个门,用于确定两个值中的哪一个将被馈送至计算机系统内的各个部件。门212可以在是将LFMVID值206还是将计算的深度C1EVID值发送给门214之间切换。门214继而可以在是将软件VID值204还是将来自门212的结果VID值发送给VR118之间切换。最后,门216可以在是将软件频率值200还是将LFM频率值202发送给PLL132用于比率修改之间进行切换。门214和216的哪些输入被输出的判断由功率状态进入/退出逻辑120作出。功率状态进入/退出逻辑120可以在软件确定的VID值和频率值与LFMVID值和频率值之间切换。在许多实施例中,深度C1E控制值218可以确定是否将深度C1EVID值而非LFMVID值发送给门212。在一些实施例中,深度CIE控制值218可以位于控制寄存器内或处理器中的其它存储位置,或者计算机系统内的其它位置。在不同实施例中,深度C1E控制值218可以位于电源管理微控制器(图1中的128)内、功率状态进入/退出逻辑120内、系统存储器114中的位置,或者其它位置。在许多实施例中,深度C1E控制值218还向核心内的微架构抑制逻辑提供输入值,该输入值指定核心内的抑制逻辑是否对穿过该核心的指令实行抑制。在一些实施例中,深度C1E控制值218是单个位。例如,如果深度C1E控制值218为"1",则指示深度C1E电源管理启用。该"1"将被发送给门212。因为门212接收到控制"1",所以它将允许把来自加法逻辑210的所计算的深度C1EVID值发送给门214。值为"1"的深度C1E控制值218还被发送给微架构抑制逻辑,因为接收到该"l",所以微架构抑制逻辑实行抑制机制。另一方面,如果深度C1E控制值218为"0",则指示深度C1E电源管理停用。该"0"将被发送给门212。因为门212接收到控制"0",所以它将允许把LFMVID值发送给门214。值为"0"的深度C1E控制值218还被发送给微架构抑制逻辑,因为接收到该"0",所以微架构抑制逻辑不实行抑制机制。在许多实施例中,微架构带宽抑制逻辑224包括定时器,当使深度C1E电源管理停用时,该定时器启动。在解除抑制机制之前,抑制逻辑可以等待,直到定时器到达结束时刻。该定时器可以与电压从深度C1E电压电平升高到LFM电压电平所用的标准时间长度一致。在其它实施例中,在电压从深度C1E电压电平升高期间,当提供给处理器的电压达到LFM电压时,核心内的逻辑或VR内的逻辑可以通知微架构带宽抑制逻辑。提供给抑制逻辑的信息将确认提供给核心的电压至少处于LFM电压电平。一旦抑制逻辑根据该信息确认已经达到LFM电压电平,抑制逻辑然后就可以解除抑制机制。另外,在许多实施例中,将深度C1E控制值218与抑制调试控制寄存器226进行"或"(or)运算。该调试寄存器也可以实现微架构带宽抑制。在不引起发送给VR118的VID的变化的情况下,该寄存器将允许核心抑制指令吞吐率。图3是进入和退出深度C1E处理器电源管理状态的过程的实施例的流程图。该过程由可以包括硬件、软件或二者的组合的处理逻辑来执行。另外,在不同实施例中,处理逻辑可以位于处理器内、与处理器分离的i/o复合体内、系统存储器内,或者计算机系统中的其它位置。此外,执行流程图中的框的处理逻辑可以位于这些位置中的不止一个内。该过程从处理逻辑确定是否存在规定处理器应该进入深度C1E状态的命令、指令或其它信息开始(处理框300)。如上面参照图l和2所描述的,深度C1E状态是一种处理器电源管理状态,其允许处理器在C1E状态("增强型处理器暂停状态")下,以低于针对C1E状态而规定的正常电压的供电电压来工作。在如图3所示的过程的实施例中,处理器开始在C0状态下完全工作。回到处理框300,如果不存在进入深度C1E状态的指示,则处理器继续在CO状态下工作,并且处理框300再次检查进入深度C1E状态的指示是否已经到达。在一些实施例中,中断向处理逻辑通知进入深度C1E状态。如果存在进入深度C1E状态的指示,则处理逻辑将处理器频率改变为LFM频率和电压(处理框302)。当处理器在CO状态下以HFM频率和电压工作时,该处理发生。一旦达到LFM频率和电压,处理逻辑使处理器进入C1E处理器状态(处理框304)。一旦在C1E处理器状态下,处理逻辑就开始通过使用上面所讨论的一种或更多种抑制机制(例如,指令调度速率、指令撤出速率等)来抑制通过该处理器的指令吞吐量(处理逻辑306)。虽然所抑制的指令吞吐率为比未抑制的吞吐率更低的每个时钟的吞吐率,但是抑制和未抑制模式中的具体的指令吞吐率是特定于实现的。在已经抑制了指令吞吐率之后,处理逻辑将提供给处理器的电压降低为低于LFM电压量(处理逻辑308)。电压的这种变化可以基于所设置的变化量,该变化量被加到LFM电压值上(或者从LFM电压值减去其一取决于电压表的实现),以获得新的、更低的电压值。新的电压值被发送给为处理器供电的VR,VR内的处理逻辑将供电电压降低为该新的电压量。此时,因为处理器频率被设置为LFM(即,C1E)频率,而提供给处理器的电压为深度C1E电压电平,所以处理器工作在深度C1E状态。在处理器完全进入深度C1E状态之后的某个时间点,可以发送一中断,以使得处理器退出深度C1E状态。在许多实施例中,该中断要求处理器至少返回到C0LFM状态。处理逻辑等待中断,并确定中断是否要求从深度C1E退出(处理框310)。如果不要求,则处理逻辑返回,并在框310处再次检查从深度C1E退出的事件。否则,如果要求退出深度C1E的中断到达,则处理逻辑将提供给处理器的电压值改变为LFM电压值。该电压值被发送给VR,VR开始将电压升高到LFM电压(处理框312)。当中断到达处理器以要求退出深度C1E状态时,处理器可以开始为标准中断服务。然后,处理逻辑检查提供给处理器的电压是否已经上升到LFM电压量(处理框314)。如果还未升到,则处理逻辑继续在框314处检査是否已达到LFM电压量。当已经达到LFM电压时,处理逻辑停止对处理器中的指令吞吐率的抑制(处理框316),该过程结束。在另一未描绘的实施例中,附加的框316可以将电压和频率进一步升高到它们的HFM级别。尽管本文所描述的实施例关注于C1E状态,以实现指令吞吐率抑制机制来允许降低该状态下的供电电压电平,但是在许多另外的实施例中,可以采用该抑制机制来降低不同于C1E状态(即"增强型处理器暂停状态")的处理器状态的电压。因此,公开了用于通过实现处理器带宽抑制,从而在处于比C1E功率状态电压电平更低的电压的C1E功率状态下操作处理器的方法、设备和系统的实施例。已经参照具体示例性实施例对它们进行了描述。在不脱离本文所描述的实施例的更广泛的精神和范围的情况下,可以对这些实施例进行各种修改和改变,这对于受益于本公开的人员来讲是显而易见的。因此,本说明书和附图应当被认为是说明性的而非限制性的。权利要求1、一种方法,包括向处理器提供第一电压,所述第一电压低于第二电压,所述第二电压是增强型处理器暂停状态的最低兼容电压;通过抑制在所述处理器中执行的指令的最大吞吐率,来允许所述处理器在从处于所述第一电压的所述增强型处理器暂停状态唤醒时执行指令。2、根据权利要求1所述的方法,还包括通过以下步骤使所述处理器进入所述增强型处理器暂停状态将所述处理器转换到低频模式的第一频率和所述第二电压,其中,所述第二电压与所述低频模式相关联;以及进一步将所述处理器转换到第一电压,并且同时实现所述指令吞吐率抑制。3、根据权利要求2所述的方法,还包括在所述处理器处于所述增强型处理器暂停状态时接收处理器中断请求,所述请求要求所述处理器退出所述增强型处理器暂停状态以服务所述请求;以及在所述第一电压服务所述中断。4、根据权利要求3所述的方法,还包括通过以下步骤使所述处理器退出所述增强型处理器暂停状态在继续抑制所述指令吞吐率的同时,将提供给所述处理器的电压从所述第一电压升高到所述第二电压;以及当提供给所述处理器的电压达到所述第二电压时,停止所述指令吞吐率抑制。5、根据权利要求3所述的方法,还包括通过以下步骤使所述处理器退出所述增强型处理器暂停状态在继续抑制所述指令吞吐率的同时,将提供给所述处理器的电压从所述第一电压升高到所述第二电压;当提供给所述处理器的电压达到所述第二电压时,停止所述指令吞吐率抑制;一旦已经停止了所述指令吞吐率抑制,就将提供给所述处理器的电压从所述第二电压升高到第三电压,所述第三电压是高于所述第二电压的电压,并且与较高频率的模式相关联;以及当提供给所述处理器的电压达到所述第三电压时,将所述处理器转换到与所述较高频率的模式相关联的第二频率。6、根据权利要求4所述的方法,还包括当所述指令吞吐率被抑制时,在所述电压升高期间服务所述中断。7、根据权利要求1所述的方法,其中,所述处理器能够在每个周期撤出多达第一数目的指令,并且其中,在所述指令吞吐率抑制期间,所述处理器被限制为在每个周期撤出比所述第一数目的指令更少的指令。8、根据权利要求1所述的方法,其中,在所述增强型处理器暂停状态期间,所述处理器可用于侦听服务。9、根据权利要求1所述的方法,其中,所述增强型处理器暂停状态是C1E功率状态。10、一种设备,包括处理器电源管理电路,用于向处理器提供第一电压,所述第一电压低于第二电压,所述第二电压是增强型处理器暂停状态的最低兼容电压;通过抑制在所述处理器中执行的指令的最大吞吐率,来允许所述处理器在从处于所述第一电压的所述增强型处理器暂停状态唤醒时执行指令。11、根据权利要求10所述的设备,其中,所述处理器电源管理电路还可用于-将所述处理器转换到低频模式的第一频率和所述第二电压,其中,所述第二电压与所述低频模式相关联;以及进一步将所述处理器转换到所述第一电压,并且同时实现所述指令吞吐率抑制。12、根据权利要求ll所述的设备,其中,所述处理器电源管理电路还可用于-在所述处理器处于所述增强型处理器暂停状态时接收处理器中断请求,所述请求要求所述处理器退出所述增强型处理器暂停状态以服务所述请求;以及'使所述处理器在所述第一电压服务所述中断。13、根据权利要求12所述的设备,其中,所述处理器电源管理电路还可用于-在继续抑制所述指令吞吐率的同时,将提供给所述处理器的电压从所述第一电压升高到所述第二电压;以及当提供给所述处理器的电压达到所述第二电压时,停止所述指令吞吐率抑制。14、根据权利要求12所述的设备,其中,所述处理器电源管理电路还可用于-在继续抑制所述指令吞吐率的同时,将提供给所述处理器的电压从所述第一电压升高到所述第二电压;当提供给所述处理器的电压达到所述第二电压时,停止所述指令吞吐率抑制;一旦已经停止了所述指令吞吐率抑制,就将提供给所述处理器的电压从所述第二电压升高到第三电压,所述第三电压是比所述第二电压更高的电压,并且与较高频率的模式相关联;以及当提供给所述处理器的电压达到所述第三电压时,将所述处理器转换到与所述较高频率的模式相关联的第二频率。15、根据权利要求13所述的设备,其中,所述处理器还可用于当所述处理器的指令吞吐率被抑制时,在所述电压升高期间服务所述中断。16、根据权利要求10所述的设备,其中,所述处理器能够在每个周期撤出多达第一数目的指令,并且其中,在所述指令吞吐率抑制期间,所述处理器被限制为在每个周期撤出比所述第一数目的指令更少的指令。17、根据权利要求10所述的设备,其中,在所述增强型处理器暂停状态期间,所述处理器可用于侦听服务。18、根据权利要求10所述的设备,其中,所述增强型处理器暂停状态是C1E功率状态。19、一种系统,包括多核处理器;电压调节器;以及处理器电源管理电路,用于使所述电压调节器向所述处理器提供第一电压,所述第一电压低于第二电压,所述第二电压是增强型处理器暂停状态的最低兼容电压;通过抑制在所述处理器中执行的指令的最大吞吐率,来允许所述处理器在从处于所述第一电压的所述增强型处理器暂停状态唤醒时执行指令。20、根据权利要求19所述的设备,其中,所述处理器电源管理电路还可用于将所述处理器转换到低频模式的第一频率和所述第二电压,其中,所述第二电压与所述低频模式相关联;以及进一步将所述处理器转换到所述第一电压,并且同时实现所述指令吞吐率抑制。21、根据权利要求20所述的设备,其中,所述处理器电源管理电路还可用于在所述处理器处于所述增强型处理器暂停状态时接收处理器中断请求,所述请求要求所述处理器退出所述增强型处理器暂停状态以服务所述请求;以及使所述处理器在所述第一电压服务所述中断。22、根据权利要求21所述的设备,其中,所述处理器电源管理电路还可用于在继续抑制所述指令吞吐率的同时,将提供给所述处理器的电压从所述第一电压升高到所述第二电压;以及当提供给所述处理器的电压达到所述第二电压时,停止所述指令吞吐率抑制。23、根据权利要求21所述的设备,其中,所述处理器电源管理电路还可用于在继续抑制所述指令吞吐率的同时,将提供给所述处理器的电压从所述第一电压升高到所述第二电压;当提供给所述处理器的电压达到所述第二电压时,停止所述指令吞吐率抑制;一旦已经停止了所述指令吞吐率抑制,就将提供给所述处理器的电压从所述第二电压升高到第三电压,所述第三电压是比所述第二电压更高的电压,并且与较高频率的模式相关联;以及当提供给所述处理器的电压达到所述第三电压时,将所述处理器转换到与所述较高频率的模式相关联的第二频率。24、根据权利要求22所述的系统,其中,所述处理器能够在每个周期撤出多达第一数目的指令,并且其中,在所述指令吞吐率抑制期间,所述处理器被限制为在每个周期撤出比所述第一数目的指令更少的指令。25、根据权利要求19所述的系统,其中,所述增强型处理器暂停状态是C1E功率状态。全文摘要公开了一种向处理器提供电压的方法、设备和系统。在一个实施例中,所述方法包括向处理器提供第一电压。所述方法还包括允许所述处理器在处于第一电压的增强型处理器暂停状态下工作。所述第一电压是低于所述增强型处理器暂停状态的最低兼容电压的电压。所述方法通过抑制在所述处理器中执行的指令的最大吞吐率,来允许所述处理器在从处于所述第一电压的所述增强型处理器暂停状态唤醒时执行指令。文档编号G06F1/32GK101676833SQ200910174649公开日2010年3月24日申请日期2009年9月21日优先权日2008年9月19日发明者E·冈萨拉冈,S·E·西尔斯,S·贾哈格达申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1