强制处理器进入低功率状态的制作方法

文档序号:9431958阅读:378来源:国知局
强制处理器进入低功率状态的制作方法
【技术领域】
[0001] 各实施例设及对系统的功率管理,更具体而言,设及对多核处理器的功率管理。
【背景技术】
[0002] 半导体处理和逻辑设计的进步可使集成电路设备上可W存在的逻辑量增大。结 果,计算机系统配置从系统中的单一或多个集成电路发展到单个集成电路上的多个硬件线 程、多个核、多个设备和/或完整的系统。另外,随着集成电路的密度增长,计算系统(从嵌 入式系统到服务器)的功率要求也逐步升高。此外,软件低效率W及其对硬件的要求也导 致计算设备能源消耗的增大。事实上,某些研究指出,计算设备消耗了诸如美国之类的国家 的全部电力供应的相当大的百分比。结果,迫切需要与集成电路相关联的能量效率和节省。 随着服务器、台式计算机、笔记本、超极本?、平板电脑、移动电话、处理器、嵌入式系统等等 变得越来越流行(从包括在典型的计算机中、汽车,W及电视机到生物技术),运些需要将 增大。
[0003] 附图简述
[0004] 图1是根据本发明的一个实施例的系统的框图。 阳0化]图2是根据本发明的实施例的处理器的框图。
[0006] 图3是示出了多核处理器环境中的各种硬件组件之间的交互的框图。
[0007] 图4是根据一实施例的用于处理强制空闲状态进入和退出的封装级别控制的通 f目流。
[0008] 图5是描述了根据一实施例的频率发生器设备的操作范围的曲线。
[0009] 图6A是根据本发明的实施例的用于对处理器操作频率进行控制的方法的流程 图。
[0010] 图6B是根据另一实施例的皿C控制方法的流程图。
[0011] 图7是对执行的两个线程的原始调度W及根据一实施例的使用硬件轮停的修改 的调度。
[0012] 图8是根据本发明的另一实施例的用于执行皿C操作的方法的流程图。
[0013] 图9是根据本发明的实施例的处理器的框图。
[0014] 图10是根据本发明的另一实施例的多域处理器的框图。
[0015] 图11是包括多个核的处理器的实施例。
[0016] 图12是根据本发明的实施例的系统的框图。
[0017] 图13是根据本发明的另一实施例的处理器的框图。
【具体实施方式】
[0018] 在各实施例中,硬件控制的轮停(皿C)允许处理器自主地强制处理器的一些或所 有组件进入诸如给定低功率状态之类的空闲状态。例如,处理器可W有选择地只强制处理 器的诸个核(或诸个核的子集)(诸如所称的英特尔架构(IA)核)进入空闲状态。或在其 他情况下,可w强制诸如图形处理单元之类的额外的计算引擎或其他运样的引擎进入给定 低功率状态。在一个实施例中,在受支持的处理器上,可W可控制地启用或默认地禁用皿C。 在运样的情况下,系统软件(例如,操作系统(0巧或基本输入输出系统度10巧)可W动态 地启用或禁用皿C操作。注意,当在活跃的皿C模式,处理器不延迟诸如计时器失效或任何 接收设备中断之类的事件,但是,当线程在恰恰好快要完成并进入天然的空闲状态之前被 强制进入空闲状态时,它可能会影响短软件线程的延迟,并且会因为非正常的执行流程的 强制空闲而在正常的执行中添加延迟。
[0019] 皿C强制的空闲操作可W被视为操作频率下降。目P,有效平均操作频率(例如,如 由软件计算出的)包括皿C强制的空闲影响。软件还将简单地计数皿C操作,作为其定期 执行时间过程中的空闲时间。
[0020] 皿C的主要目标是对于低活跃度的工作负荷而言延长在深度低功率状态(例如, 封装级别低功率状态)中的停留时间,W及对于高活跃度的工作负荷而言,在功率或热限 审揃情况下,提供降低平均操作频率的比较有效的方式。当逻辑处理器、核或封装进入强制 的空闲状态时,它可W被置于相对深度低功率状态,特别是在接收事件被校准到在活动窗 口中发生的情况下。
[0021] 现在参考图1,所示是根据本发明的实施例的系统的一部分的框图。如图1所示, 系统100可W包括各种组件,包括处理器110,如图所示,该处理器110是多核处理器。处理 器110可W通过外部电压调节器160禪合到电源150,调节器160可W执行第一电压转换, W向处理器110提供主要被调节的电压。
[0022] 可W看出,处理器110可W是包括多个核120。-120。的单管忍处理器。另外,每一 个核还可W与集成的调压器(IVR)125a-125n相关联,运些集成的调压器接收主要被调节 的电压,并生成操作电压,操作电波被提供到与IVR相关联的处理器的一个或多个代理。相 应地,可W提供IVR实现,W允许对每一个单个核的电压进行细粒度的控制,因而对每一个 单个核的功率和性能进行细粒度的控制。如此,每一个核都可W在独立电压和频率下操作, 允许极大的灵活性,并提供用于对功率消耗与性能进行平衡的广泛的机会。
[0023] 仍参考图1,额外的组件可W存在于处理器内,包括输入/输出接口 132、另一接口 134W及集成的存储器控制器136。可W看出,运些组件中的每一个都可W由另一集成的电 压调节器125、来供电。在一个实施例中,接口 132可W符合Intel敏快速路径互连(QPI)协 议,该协议在高速缓存一致性协议中提供点对点(Pt巧链路,该高速缓存一致性协议包括 多个层,包括物理层、链路层W及协议层。接口 134又可W符合外围组件互连快速(PCIe?) 规范,例如,PCIExpress?规范基础规范版本2. 0 (2007年1月17日)。
[0024] 还示出了功率控制单元(PCU) 138,该功率控制单元(PCU) 138可包括对于处理器 110执行功率管理操作的硬件、软件和/或固件。可W看出,PCU138通过数字接口向外部 电压调节器160提供控制信息,W导致电压调节器生成合适的被调节的电压。PCU138还 通过另一数字接口向IVR125提供控制信息,W控制所生成的操作电压(或导致对应的IVR 在低功率模式下被禁用)。在各实施例中,PCU138可包括控制并执行如此处所描述的皿C 操作的逻辑。 阳0巧]尽管为便于说明未示出,但是,可W理解,额外的组件可W存在于处理器110内, 诸如非核逻辑、及其他组件,诸如图形处理器、内部存储器,例如,一个或多个级别的缓存存 储器层次结构等等。此外,尽管在图1的实现中是利用集成的电压调节器示出的,但是,各 实施例不是限制性的。此外,还可W理解,在某些实施例中,某些组件可W共享电压调节器, 而其他组件可W具有专用的电压调节器。
[0026] 虽然参考特定集成电路(诸如在计算平台或处理器中)描述了下列实施例,但其 他实施例也适用于其他类型的集成电路和逻辑设备。可W将此处所描述的各实施例的类似 的技术和教示应用于也可W得益于更好的能量效率和能量节约的其他类型的电路或半导 体器件。例如,所公开的各实施例不仅限于任何特定类型的计算机系统,也可W用于诸如手 持式设备、片上系统(S0C)设备W及嵌入式应用之类的其他设备中。手持式设备的某些示 例包括蜂窝电话、网际协议设备、数码相机、个人数字助理(PDA)W及手持式PC。嵌入式应 用通常包括微控制器、数字信号处理器值SP)、网络计算机(NetPC)、机顶盒、网络集线器、 广域网(WAN)交换机,或能够执行下面教导的功能和操作的任何其他系统。此外,此处所描 述的设备、方法,W及系统也不仅限于物理计算设备,但是,也可W设及对于节能和效率的 软件优化。如在下面的描述中显而易见地看出,此处所描述的方法、设备W及系统的各实施 例(无论引用硬件、固件、软件或其组合)为未来的绿色技术摂所不可缺少的,诸如,用于涵 盖美国经济的大部分的产品中的电能节省和能量效率。
[0027] 注意,此处所描述的硬件轮停或机会性的断电(0PD)操作可W独立于基于操作系 统(0巧的机制,诸如高级配置和平台接口(ACPI)标准(例如,2006年10月10日发布的 Rev.3.化),并与其互补。根据ACPI,处理器可W操作在各种性能状态或级别,所谓的P状 态,即,从P0到PN。一般而言,P1性能状态可W对应于可W由0S请求的最高保证的性能 状态。除此P1状态之外,0S还可W请求较高性能状态,即,P0状态。如此,此P0状态可W 是机会性状态或超频模式状态,其中,当有电能和/或热预算可用时,处理器硬件可W配置 处理器或其至少一些部分,W便W高于保证的频率操作。在许多实现中,处理器可包括高于 P1保证的最大频率的多个所谓的元频率,也被称为P1频率,超出特定处理器的最大峰值频 率,运是在制造过程中烙化的或W别的方式写入到处理器中。另外,根据ACPI,处理器还可 W在各种功率状态或级别下操作。相对于功率状态,ACPI指定不同的功率消耗状态,一般 被称为C状态,C0,C1到化状态。当核活跃时,它在C0状态运行,而当核空闲时,它可W被 置于核低功率状态,也叫做核非零C状态(例如,C1-C6状态),每一个C状态都处于低功率 消耗级别便C6是比C1更深的低功率状态,等等)。在强制的空闲状态,硬件线程、核和 /或处理器封装可W被置于所选择的C状态,例如,至少C3状态。
[0028] 各实施例提供允许0S、BI0S或其他系统软件判断皿C是否在给定处理器上得到支 持,控制皿C操作并监测其影响的各种接口。在不同的实施例中,对皿C的控制可WW各种 方式实行。在一个实施例中,可W通过系统BIOS,利用完全控制启用皿C,有或者没有来自 0S驱动程序的辅助,0S驱动程序可W由0S供应商或者由任何其他软件供应商开发。在此 模式下,0S不控制皿C。在另一个实施例中,可W通过0S,利用完全控制来启用皿C,W便0S 可W动态地启用或禁用皿C。在一个实施例中,系统BIOS在引导过程中选择皿C控制操作 的模式。在皿C由0S控制的情况下,硬件可W枚举皿C操作的能力。0S又可W确保皿C在 给定处理器上得到支持,然后,启用皿C。
[0029] 皿C启用/禁用在处理器封装级别或者在逻辑处理器级别是可能的。如此处所使 用的,术语"逻辑处理器"和"硬件线程"是可互换的,用于表示处理器的提供对要在核的其 他逻辑或其他硬件上执行的线程进行控制w及其状态的硬件结构。
[0030] 为了使逻辑处理器参与轮停,封装W及该逻辑处理器两者都可W启用皿C。启用或 禁用封装级别皿C可W通过任何逻辑处理器来完成。逻辑处理器级别皿C可W在只在该逻 辑处理器上执行的上下文内启用或禁用。在一种默认情况下,在一个实施例中,逻辑处理器 皿C是启用的,而封装级别是禁用的。在此默认情况下,0S可W决定使用皿C,W便0S启用 封装级别皿CW便启用皿C操作。
[0031] 现在参照图2,其中示出了根据本发明一实施例的处理器的框图。如图2所示,处 理器200实现为多核处理器,例如,单一封装处理器,其中,在封装内的一个或多个半导体 管忍上实现多个核及其他计算引擎。注意,此逻辑图示将核与封装分离,并将线程与核分 离;然而,可W理解:线程是硬件线程或是基础核的逻辑处理器,并且核本身是封装的一部 分。当然,还可W为多封装系统提供皿C支持。
[0032] 在图2的示图中,注意封装级别启用/禁用指示符212的存在,该指示符212被配 置成指示处理器作为整体(例如,整个封装地)是否被允许被置于强制的空闲状态。还存在 强制的空闲计数器214,该计数器214被配置成计数封装处于强制的空闲状态的周期,意味 着,封装内的至少一个硬件线程正处于强制的空闲状态,而封装的所有其他线程处于空闲 状态(天然地通过0S请求或由于强制的空闲)。另外,还存在多个低功率状态计数器215, 此处也被称为C状态计数器。
[0033] 仍参考图2,存在包括皿C逻辑218的功率控制单元(PCU) 216,下面将进一步描述 其细节。简单地说,皿C逻辑218设及实现封装范围内的进入合适的轮停状态的决定,包括 运些状态的持续时间,W及在各种逻辑处理器、核、计算引擎及封装210内的其他运样的单 元之间对运些轮停状态的控制的协调或同步。
[0034] 仍参考图2,在封装210内存在多个核220。-22〇m。可W看出,每一个核都包括其 自己的强制空闲计数器225。-225"。运些强制空闲计数器可W被配置成计数当对应的核的 一个或多个逻辑处理器(即,硬件线程)处于强制的空闲状态时的诸个空闲周期。还存在 也具有其自己的强制空闲计数器225。的图形处理器220。。<
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1