CN104777889B - 用于使平台子系统并行进入较低功率状态的技术 - Google Patents
用于使平台子系统并行进入较低功率状态的技术 Download PDFInfo
- Publication number
- CN104777889B CN104777889B CN201410496184.5A CN201410496184A CN104777889B CN 104777889 B CN104777889 B CN 104777889B CN 201410496184 A CN201410496184 A CN 201410496184A CN 104777889 B CN104777889 B CN 104777889B
- Authority
- CN
- China
- Prior art keywords
- subsystem
- power
- power control
- control register
- register
- 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
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
-
- 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/3243—Power saving in microcontroller unit
-
- 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/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- 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
-
- 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
Abstract
各种实施例一般涉及设备、方法和其它技术,其用于确定具有相关联的子系统睡眠控制寄存器的多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态,用每个子系统的睡眠配置状态配置每个相关联的子系统睡眠控制寄存器,并在转换到较低功率状态时为每个子系统并行地启用睡眠配置状态。
Description
技术领域
本文所描述的实施例一般涉及计算系统的低功率状态。具体来说,实施例涉及使平台处理装置的子系统并行进入低功率状态。
背景技术
芯片上系统(SoC)装置在现今高科技领域正变得越来越普遍。SoC在单个半导体装置上将大量处理功能性与异类装置合并在一起。随着SoC随时间变得越来越复杂,有效且低开销的功率管理随着子系统数量的扩大而变得越来越困难。进入和退出低功率状态的等待时间是实现SoC的功率管理效率的关键参数。子系统进入和退出低功率状态的转换时间实际上从SoC处于低功率状态的驻留时间移除,因而导致较高的功率消耗和较短的电池寿命。
附图说明
图1A示出第一系统的实施例。
图1B示出第二系统的实施例。
图1C示出功率控制寄存器的实施例。
图2A示出进入低功率状态的第一逻辑流的实施例。
图2B示出退出低功率状态的第二逻辑流的实施例。
图3A示出防火墙启用的第一逻辑路径的实施例。
图3B示出电源启用的第二逻辑路径的实施例。
图3C示出时钟启用的第三逻辑路径的实施例。
图3D示出复位的第四逻辑路径的实施例。
图4示出第三逻辑流的实施例。
图5示出计算装置的实施例。
图6示出计算体系结构的实施例。
具体实施方式
各种实施例一般涉及用于使平台处理装置的一个或多个子系统转换到低或较低功率状态的设备、方法和其它技术。各种子系统可以包括一个或多个处理核、存储器控制器、图形处理单元控制器、音频控制器、包括媒体卡接口控制器的输入/输出(I/O)控制器、通用串行总线控制器、串行总线控制器、并行端口控制器、IEEE 1394火线控制器、无线和有线联网控制器、或平台处理装置上的任何其它类型的控制器或系统。
在一些实施例中,每个子系统的配置寄存器可以配置成在子系统进入或退出低功率状态时设置各种功率控制。例如,每个子系统可以包括睡眠控制寄存器,它包含用于在子系统进入较低功率状态时配置功率控制的信息。另外,每个子系统可以包括唤醒控制寄存器,它包含用于在子系统退出较低功率状态时配置功率控制的信息。
功率控制可以包括但不限于防火墙启用功率控制、电源启用功率控制、时钟启用功率控制和复位功率控制。每个子系统可以包括对应于可基于配置寄存器进行配置的每个功率控制的寄存器。可以为每个子系统并行地配置每个功率控制。例如,可以为每个子系统同时或并行地配置或设置对应于防火墙启用功率控制的所有寄存器。可以以此方式设置或配置每个功率控制。
在一些实施例中,平台处理装置可以包括用于控制何时为平台处理装置的每个子系统配置每个功率控制的功率管理组件或逻辑。更具体来说,逻辑可以包括设置对应于每个功率控制的一个或多个控制位,以便启动诸如功率管理功率控制寄存器的寄存器中的子系统的每个功率控制的配置。
在一些实施例中,当逻辑设置对应于功率管理功率控制寄存器中的功率控制的一个或多个控制位时,为每个子系统并行地配置该功率控制。逻辑可以在设置这些位之间以一定的延迟设置对应于每个功率控制的一个或多个位。更具体来说,逻辑可以设置对应于功率控制之一的一个或多个位,然后等待一段时间或一定的延迟以便允许配置子系统的该功率控制。逻辑可以设置对应于另一个功率控制的另一个或多个位以便为每个子系统进行设置或配置。这个过程可以重复,直到为子系统配置所有功率控制。通过与串行相反地并行配置每个功率控制,在转换到低功率状态以及从低功率状态转换出时可以节省显著的时间,从而导致功率节省的增大并延长移动平台装置的电池寿命。
一般参考本文所使用的标记和命名,可以按照在计算机或计算机网络上执行的程序过程来呈现接下来的详细描述。本领域技术人员使用这些过程描述和表示来向本领域其他技术人员最有效地传达他们的工作本质。
在这里并且一般也认为过程是导致期望结果的操作的自洽序列。这些操作是那些需要对物理量进行物理操纵的操作。通常但不一定,这些量采用能够存储、传送、组合、比较以及以其它方式进行操纵的电、磁或光信号的形式。主要出于常用的原因,有时将这些信号称为位、值、元素、符号、字符、项、数字等经证实是便利的。但是,应注意,所有这些和类似术语都将与合适的物理量相关联,并且只是应用于这些量的便利标记。
此外,通常用诸如相加或比较的术语来指所执行的操纵,这些术语通常与由人工操作员所执行的智力操作相关联。在大多数情况下,在本文所描述的形成一个或多个实施例的部分的任何操作中,人工操作员的这种能力不是必需或合乎需要的。而是,这些操作是机器操作。用于执行各种实施例的操作的有用机器包括通用数字计算机或类似装置。
各种实施例还涉及用于执行这些操作的设备或系统。该设备可以为所需目的而特别构造,或者它可以包括由存储在计算机中的计算机程序选择性地激活或重新配置的通用计算机。本文呈现的过程不与特定计算机或其它设备固有地相关。各种通用机器可以与根据本文的教导编写的程序一起使用,或者将更加专门的设备构造成执行所需的方法步骤经证实是便利的。各种这些机器的所需结构将从给定的描述中显而易见。
现在参考附图,其中所有图中,类似的参考数字用于表示类似要素。在以下描述中,出于解释的目的,阐述了众多具体细节以充分理解本发明。但是,显然,没有这些具体细节也可以实践这些新颖的实施例。在其它情况下,以框图形式示出公知的结构和装置以便于对其进行描述。其意图是涵盖与要求权利的主题一致的所有修改、等同物和备选。
图1A 示出适于实现本文所描述的各种实施例的示例性计算机系统105的实施例。在各种实施例中,计算机系统105包括平台处理装置110、控制器130、存储器装置140和输入/输出(I/O)装置150。平台处理装置110可以是任何类型的计算元件,例如但不限于微处理器、处理器、中央处理单元、数字信号处理单元、双核处理器、移动装置处理器、桌面处理器、单核处理器、芯片上系统(SoC)装置、复杂指令集计算(CISC)微处理器、精简指令集(RISC)微处理器、超长指令字(VLIW)微处理器、或单个芯片或集成电路上的任何其它类型的处理器或处理电路。平台处理装置110可以分别经由互连132、142和152连接到控制器130、存储器装置140和I/O装置150并与其通信。此外,控制器130、存储器装置140和I/O装置150可以与平台处理装置110的所有组件通信。
平台处理装置110可以包括功率管理组件115和一个或多个子系统111,子系统111包括一个或多个处理器组件112、图形处理单元(GPU)114、平台I/O装置116、平台存储器装置118、音频控制器组件120、多媒体卡控制器组件122和任何其它非核(uncore/non-core)组件(未示出),但本发明在这方面不受限制。非核组件可以包括其它存储器、高速缓存、管线、I/O装置和控制器。例如,在一些实施例中,平台处理装置110可以具有多于两个处理核。所述一个或多个处理器组件112可以具有多于一个处理单元或处理核。所述一个或多个处理器组件112包括但不限于用于取指令的预取逻辑、用于对指令进行解码的解码逻辑、用于执行指令的执行逻辑等。
在一些实施例中,平台处理装置110包括图形处理单元114。图形处理单元114可以用作管理图形和/或视频操作和/或处理的副处理器。
在一些实施例中,平台处理装置110包括平台I/O装置116和平台存储器装置118。平台I/O装置116提供平台处理装置110到计算机系统105内的其它装置的外部接口。另外,平台存储器装置118存储平台处理装置110、具体来说是所述一个或多个处理器组件112的指令和/或数据。平台存储器装置118还可在平台处理装置110和所述一个或多个处理器组件112执行指令时存储临时变量或其它中间信息。在另一个实施例中,平台存储器装置118包括但不限于1级(L1)、2级(L2)和3级(L3)高速缓冲存储器、或平台处理装置110内的高速缓冲存储器的任何其它配置。处理器组件112、图形处理单元114、平台I/O装置116和平台存储器装置118可以经由互连(未示出)彼此通信。
另外,平台处理装置110还可以包括音频控制器组件120和媒体卡控制器组件122。音频控制器组件120可以控制音频或音响信号以用于处理。更具体来说,音频控制器组件120可以处理从一个或多个应用接收的音频数字信息,并将经过处理的音频数字信息发送给一个或多个扬声器以用于播放。在各种实施例中,媒体卡控制器组件122可以控制对诸如多媒体卡(MMC)或安全数字卡(SD)的闪速存储器装置或任何其它存储器装置的输入和输出存取。
功率管理组件115可以进行操作以便管理计算系统105、具体来说是平台处理装置110及组件的功率状态。在一些实施例中,功率管理组件115可以进行操作以便启动平台处理装置110进入低功率状态的转换。低功率状态可以是任何高级配置与电源接口(ACPI)状态或任何其它合适的低功率状态。例如,低功率状态可以是诸如SOix的空闲状态。另外,功率管理组件115还可以从低功率状态转换到正常操作状态。
在一些实施例中,功率管理组件115可以从诸如操作系统或任何其它程序的软件接收指示平台处理装置110可以进入低功率状态或退出低功率状态的信息或指令。在一个示例中,操作系统可以向平台处理装置110和功率管理组件115指示它可以通过启动进入到诸如对应于ACPI C3状态的Mwait C状态的中间功率状态而进入低功率状态。ACPI C3状态一般称为睡眠状态,它提供比C1和C2状态改进的功率节省。当处于C3状态时,来自处理核的所有内部时钟信号都被切断。但是,所述一个或多个处理核高速缓存得以维持。操作系统负责确保这些高速缓存保持相干性。
在各种实施例中,功率管理组件115可以在平台处理装置110转换到低功率状态以及从低功率状态转换出时控制子系统111的各个方面。例如,功率管理组件115可以在平台处理装置110转换到低功率状态时基于相关联的睡眠控制寄存器配置每个子系统111的各种功率控制寄存器,并在平台处理装置110从低功率状态转换出或转换到正常操作状态时基于相关联的唤醒控制寄存器配置功率控制寄存器。子系统睡眠控制寄存器和唤醒控制寄存器中的每个寄存器可以在平台处理装置110的引导过程中、或者在完全引导或加载平台处理装置之后但是在转换启动之前进行配置或设置。
在各种实施例中,睡眠控制寄存器和唤醒控制寄存器可以基于诸如主图像简档(MIP)报头文件的配置文件或基于基本输入/输出系统(BIOS)中的配置文件进行配置。MIP报头文件或BIOS可以包括诸如通用输入/输出引脚设置、备选引脚复用配置信息、平台处理装置特定信息(例如,组件引脚的上拉/下拉设置)、任何特定固件参数等信息。在各种实施例中,MIP报头文件可以从存储器加载到固件中,并初始化平台处理装置110的各个组件。
另外,配置文件可以具有用于将逻辑子系统映射到物理子系统的逻辑-物理映射表。在各种实施例中,功率管理组件115可以在平台处理装置110的引导时间或者在已经完全引导平台处理装置110之后通过查找配置文件中的配置信息来确定睡眠配置状态(和唤醒配置状态)。
在各种实施例中,功率管理组件115可以采用并行方式使子系统转换到低功率状态以及从低功率状态转换出。更具体来说,功率管理组件115可以为每个子系统并行地配置相同类型的所有功率控制寄存器。通过并行地处理子系统进入和退出低功率状态,功率管理组件115可以显著减少进入和退出低功率状态的时间量。一旦基于睡眠控制寄存器或唤醒控制寄存器配置每个子系统控制寄存器,平台处理装置110进出低功率状态的转换便可以在启动另一转换之前完成。
图1B示出包括平台处理装置110的系统125的实施例。在图1B中,示出平台处理装置110具有各种组件,包括功率管理组件115和子系统111以及用于在进入和退出低功率状态期间控制子系统的寄存器。
在一些实施例中,平台处理装置110可以包括睡眠控制寄存器160-1至160-n、唤醒控制寄存器162-1至162-n以及功率管理功率控制寄存器164。如之前所论述,每个子系统可以与睡眠控制寄存器160和唤醒控制寄存器162相关联。例如,GPU 114可以与睡眠控制寄存器160-1和唤醒控制寄存器162-1相关联,而音频控制器组件120可以与睡眠控制寄存器160-2和唤醒控制寄存器162-2相关联。平台处理装置110的其它子系统可以与不同的睡眠控制寄存器和唤醒控制寄存器相关联,其中每个子系统与它自己的寄存器相关联。
在各种实施例中,每个睡眠控制寄存器160-1至160-n和唤醒控制寄存器162-1至162-n可以包括用于配置每个子系统的功率控制寄存器的两个位。逻辑表1示出子系统的功率控制寄存器的控制逻辑的一个示例。
表1
如表1所示,每个睡眠控制和唤醒控制寄存器状态与每个子系统的功率控制寄存器的功率控制状态相对应。“00”寄存器状态指示子系统和对应的功率控制将保持处于正常操作状态。在正常操作状态,防火墙启用保持开状态,电源启用保持开状态,时钟启用保持开状态,而复位则未设置。“01”寄存器状态指示子系统和对应的功率控制将禁用时钟,而剩余的功率控制将保持处于正常操作状态。“10”和“11”寄存器状态指示使子系统和对应的功率控制处于低功率状态。在低功率状态,防火墙启用关,电源启用关,时钟启用关,并设置复位。各种实施例不限于上文示出的逻辑,而是可以存在其它逻辑以便转换到低功率状态以及从低功率状态转换出。
在一些实施例中,防火墙启用功率控制是“低态有效”信号,并且防火墙启用功率控制的逻辑“1”指示防火墙启用将开,并且断电逻辑信号可进入有效域,而防火墙启用功率控制的逻辑“0”则指示防火墙启用将关,并且断电逻辑信号不可进入有效域。
电源启用功率控制也是“低态有效”,并且逻辑“1”指示电源启用开,并且不启用或不进行功率门控。另外,逻辑“0”指示电源启用关,并且启用或进行功率门控。
在各种实施例中,时钟启用功率控制是“高态有效”信号,并且逻辑“1”指示时钟启用开,并且子系统的时钟开。另外,逻辑“0”指示时钟启用关,并且子系统的时钟关。
复位功率控制是“低态有效”信号。因此,逻辑“1”指示不设置复位,而逻辑“0”指示设置复位。
如之前所论述,可以用上文的转换到低功率状态或从低功率状态转换出的寄存器状态来配置每个子系统相关联的睡眠控制160和/或唤醒控制寄存器162。例如,如果用“11”配置与 GPU 114相关联的睡眠控制寄存器160-1(PM_PSSC0),那么当使平台处理装置110处于低功率状态时,将使GPU 114断电或处于低功率状态。更具体来说,GPU 114的防火墙启用可以关,电源启用可以关,时钟启用可以关,并且可以设置复位。
在另一个示例中,当用“00”寄存器状态配置与音频控制器组件120相关联的睡眠控制寄存器160-1(PM_PSSC1)时,当平台处理装置110处于低功率状态时,音频控制器将保持正常操作。更具体来说,防火墙启用将保持开,电源将保持开,时钟启用将保持开,并且不会为音频控制器组件120设置复位。
在各种实施例中,可以使用与子系统相关联的睡眠控制寄存器和唤醒控制寄存器作为限定器以允许功率管理组件115以并行方式将子系统转换到低功率状态以及从低功率状态转换出。更具体来说,可以基于与特定子系统相关联的睡眠配置寄存器和/或唤醒配置寄存器中的每个寄存器中的配置为所有子系统同时或并行地配置或设置包括防火墙启用、电源启用、时钟启用和复位在内的每个功率控制。
平台处理装置110还可以包括用于向每个子系统并行地断言或启动功率控制状态的平台管理功率控制寄存器164。具体来说,平台管理功率控制寄存器164可以包括与功率控制相关联的多个控制位。在一个示例中,平台管理功率控制寄存器164可以包括四个控制位,其中每个位对应于特定功率控制。例如,第一个位可以对应于防火墙启用功率控制,第二个位可以对应于电源启用功率控制,第三个位可以对应于时钟启用功率控制,而第四个位可以对应于复位功率控制。
功率管理组件115可以通过写到对应于特定功率控制的特定位来断言每个功率控制。例如,为了断言防火墙启用功率控制,功率管理组件115可以写到对应于防火墙启用功率控制的特定位。此外,当功率管理组件115写到对应于特定功率控制的特定位时,将并行地配置每个子系统特定功率控制。例如,当功率管理组件115写到对应于防火墙启用功率控制的特定位时,将并行地配置每个子系统防火墙启用功率控制。将在转换到低功率状态时基于相关联的睡眠控制寄存器中的逻辑或者在从低功率状态转换出时基于相关联的唤醒控制寄存器中的逻辑配置每个子系统的防火墙启用功率控制。
功率管理组件115可以通过写到功率管理功率控制寄存器164中的对应控制位来以类似方式配置每个功率控制。例如,为了配置每个子系统的电源启用功率控制,功率管理组件115可以写到对应于功率管理功率控制寄存器164中的电源启用功率控制的特定位。在另一个示例中,功率管理组件115可以写到功率管理功率控制寄存器164中对应于时钟启用功率控制的特定位以便配置每个子系统的时钟启用。最后,功率管理组件115可以通过写到功率控制功率管理寄存器164中的特定位来配置每个子系统的复位。
在各种实施例中,功率管理组件115可以通过按照特定顺序写到对应于功率管理功率控制寄存器164中的功率控制的特定位来按照特定顺序配置功率控制。例如,功率管理组件115首先可以写到对应于功率管理功率控制寄存器164中的时钟启用功率控制的位以便配置所有子系统的所有时钟启用功率控制。然后,功率管理组件115可以写到对应于防火墙启用功率控制、电源启用功率控制和复位功率控制的特定位以便配置子系统的这些功率控制。在每一个功率控制之前,功率管理组件115可以等待一段时间或一定延迟,以便确保在移动到下一个功率控制上之前配置所有子系统功率控制。对于每个功率控制,将同时或并行地配置每个子系统。各种实施例不限于上文叙述的顺序,而是可以按照任何顺序配置功率控制。
计算机系统105和平台处理装置110中示出的组件不是要限制,而是出于说明的目的而呈现。在其它实施例中,计算机系统105的配置包括与图1A/1B中示出的组件不同(更多或更少)的组件。本领域技术人员将领会,在不影响本文所描述的实施例的工作的情况下,可以使用计算机系统105的其它配置。
图1C示出子系统的功率控制寄存器180的一个实施例。每个子系统可以具有对应的功率控制寄存器180以便在进入或退出低功率状态时进行配置。功率控制寄存器180可以包括硬件隔离功率控制寄存器182、电源启用功率控制寄存器184、时钟启用功率控制寄存器186和复位功率控制寄存器188。每个功率控制寄存器可用于配置子系统功率控制,包括防火墙启用功率控制、电源启用功率控制、时钟启用功率控制、复位功率控制。在各种实施例中,硬件隔离功率控制寄存器182可以设置成配置防火墙启用功率控制,电源启用功率控制寄存器184可以设置成配置电源启用功率控制,时钟启用功率控制寄存器186可以设置成配置时钟启用功率控制,复位功率控制寄存器188可以设置成配置复位功率控制。
在各种实施例中,每个子系统的每个功率控制寄存器180可以在进入低功率状态时基于睡眠控制寄存器160进行配置,并且可以在退出低功率状态时基于唤醒控制寄存器162进行配置。更具体来说,如表1所示,可以基于对应的睡眠控制寄存器160和/或唤醒控制寄存器162中的逻辑来配置每个子系统的功率控制。在一个示例中,当用“11”寄存器状态配置与音频控制器组件120相关联的睡眠控制寄存器160-1(PM_PSSC1)时,将如表1所示配置音频控制器组件120的功率控制寄存器180。具体来说,对于音频控制器组件120功率控制寄存器180,硬件隔离功率控制寄存器182将设置成关或“0”,电源启用功率控制寄存器184将设置成关或“1”,时钟启用功率控制寄存器186将设置成关或“0”,而复位功率控制寄存器188将设置成开或“1”。可以采用类似方式基于相关联的睡眠控制寄存器160配置每个子系统。
图2A包括示出平台处理装置进入低功率状态的一个示例的逻辑流图200。出于清楚的目的,参考图1A的计算机系统105以及图1A和图1B的平台处理装置110论述该逻辑流。在方框201,功率管理组件115可以基于诸如MIP报头文件的配置文件确定每个子系统111的睡眠配置状态。配置文件可以具有用于将逻辑子系统映射到物理子系统的逻辑-物理映射表。在各种实施例中,功率管理组件115可以在平台处理装置110的引导时间或者在已经完全引导平台处理装置110之后通过查找配置文件中的配置信息来确定睡眠配置状态。
在各种实施例中,在方框203,功率管理组件115可以用在方框201确定的睡眠配置信息来配置每个子系统的睡眠控制寄存器160。功率管理组件115可以用对应于每个子系统的配置信息来加载或设置每个睡眠控制寄存器160。可以在平台处理装置110进入低功率状态之前在睡眠控制寄存器160中加载或设置配置信息。
在方框205,功率管理组件115可以启用或启动进入到低功率状态。例如,功率管理组件115可以从诸如操作系统或任何其它程序的软件或诸如中断的硬件接收指示平台处理装置110可以进入低功率状态的信息或指令。基于所接收的信息,功率管理组件115可以启用进入到低功率状态。
在各种实施例中,在方框207,功率管理组件115可以设置第一个(或多个)位以便配置功率管理功率控制寄存器164中的功率控制。例如,功率管理组件115可以设置对应于功率管理功率控制寄存器164中的时钟启用功率控制的位。但是,不是以此方式限制各种实施例,而是在方框207,功率管理组件115可以设置对应于包括时钟启用功率控制、防火墙启用功率控制、电源启用功率控制和复位功率控制在内的任何功率控制的位。
在方框209,功率管理组件115可以为每个子系统配置对应于在方框207设置的功率控制的功率控制寄存器。例如,如果在方框207设置对应于时钟启用功率控制的位,那么功率管理组件115可以在方框209为每个子系统并行地配置时钟启用功率控制寄存器186。
在判定框211,功率管理组件115可以确定是否任何其它功率控制要配置用于子系统。如果没有其它功率控制要配置用于子系统,那么逻辑流200可以结束。但是,如果仍有额外的功率控制,那么在方框213,功率管理组件115可以为下一个功率控制设置功率管理功率控制寄存器164中的位。然后,在方框209,功率管理组件115可以为每个子系统配置对应于在方框213设置的功率控制位的功率控制寄存器。这个过程可以重复,直到为每个子系统设置所有功率控制。
图2B包括示出平台处理装置110退出低功率状态的一个示例的逻辑流图250。逻辑流250可以包括在方框251确定每个子系统的唤醒配置状态。与关于流程图200的方框201的论述所类似,功率管理组件115可以基于诸如MIP报头文件的配置文件来确定每个子系统的唤醒配置。配置文件可以具有用于将逻辑子系统映射到物理子系统的逻辑-物理映射表。在各种实施例中,功率管理组件115可以在平台处理装置110的引导时间或者在已经完全引导平台处理装置110之后通过查找配置文件中的配置信息来确定唤醒配置状态。
在各种实施例中,在方框253,功率管理组件115可以用在方框203确定的唤醒配置信息来配置每个子系统的唤醒控制寄存器162。功率管理组件115可以用对应于每个子系统的配置信息来加载每个唤醒控制寄存器162。
在方框255,功率管理组件115可以启用或启动退出低功率状态。例如,功率管理组件115可以从诸如操作系统或任何其它程序的软件或诸如中断的硬件接收指示平台处理装置110可以退出低功率状态的信息或指令。基于所接收的信息,功率管理组件115可以从低功率状态退出。
在各种实施例中,在方框257,功率管理组件115可以设置第一个(或多个)位以便配置功率管理功率控制寄存器164中的功率控制。例如,功率管理组件115可以设置对应于功率管理功率控制寄存器164中的时钟启用功率控制的位。但是,不是以此方式限制各种实施例,而是在方框257,功率管理组件115可以设置对应于包括时钟启用功率控制、防火墙启用功率控制、电源启用功率控制和复位功率控制在内的任何功率控制的位。
在方框259,功率管理组件115可以为每个子系统配置对应于在方框257设置的功率控制的功率控制寄存器。例如,如果在方框257设置对应于时钟启用功率控制的位,那么在方框259,功率管理组件115可以为每个子系统并行地配置时钟启用功率控制寄存器186。
在判定框261,功率管理组件115可以确定是否任何其它功率控制是否要配置用于子系统。如果没有其它功率控制要配置用于子系统,那么逻辑流250可以结束。但是,如果仍有额外的功率控制,那么在方框263,功率管理组件115可以为下一个功率控制设置功率管理功率控制寄存器164中的位。然后,在方框259,功率管理组件115可以为每个子系统配置对应于在方框253设置的功率控制位的功率控制寄存器。可以基于对应的唤醒控制寄存器162-n配置每个子系统功率控制。这个过程可以重复,直到为每个子系统设置所有功率控制。
图3A示出用于配置子系统的防火墙功率控制和硬件隔离功率控制寄存器的逻辑控制路径300的示例性实施例。每个子系统可以具有类似或相同的逻辑控制路径以配置防火墙功率控制。各种实施例不限于该示例性实施例,而是可以利用其它逻辑控制路径来配置防火墙功率控制并设置硬件隔离功率控制寄存器。
逻辑控制300可以包括多个输入线,包括防火墙功率控制301、写硬件隔离303、断言防火墙启用305、写数据307和功率状态313。另外,逻辑控制300可以包括多个寄存器,例如睡眠控制寄存器309、唤醒控制寄存器311和硬件隔离功率控制寄存器315。最后,逻辑控制可以包括复用器302、304和306以基于输入线上的一个或多个输入充当开关。
在各种实施例中,防火墙功率控制位301可以是与子系统的防火墙功率控制相关联的功率管理功率控制寄存器164中的控制位。防火墙功率控制位301可以是确定何时在硬件隔离功率控制寄存器315中设置睡眠控制寄存器309或唤醒控制寄存器311中的信息或设置的主控制位。防火墙功率控制位301可以在功率管理组件115写到功率管理功率控制寄存器164中的控制位时断言或启用,以便基于睡眠控制寄存器309或唤醒控制寄存器311的配置为每个子系统并行地配置每个防火墙启用功率控制并设置硬件隔离功率控制寄存器315。
在各种实施例中,写硬件隔离303和写数据307是可以在防火墙功率控制位301没有启用或者设置成0时使用的覆盖(override)机制。写硬件隔离303和写数据307可用于隔离任何单个子系统以进行配置。当防火墙功率控制位301设置成0或者没有启用时,写硬件隔离303是硬件隔离功率控制寄存器315的启用,并且写数据307是写到硬件隔离功率控制寄存器315的信息。功率管理组件115利用这些位、硬件隔离303和写数据307来设置单个子系统的硬件隔离功率控制寄存器315,而不在并行设置子系统时进行设置。
在一些实施例中,睡眠控制寄存器309和唤醒控制寄存器311可以分别与睡眠控制寄存器160和唤醒控制寄存器162相同或类似。功率状态313可以设置成在睡眠控制寄存器309和唤醒控制寄存器311之间选择。例如,如果平台处理装置不处于低功率状态,那么功率状态313可以设置成选择睡眠控制寄存器309以便在子系统进入低功率状态时充当限定器。但是,如果平台处理装置处于低功率状态,那么功率状态313可以设置成选择唤醒控制寄存器311以便在子系统退出低功率状态时使用。
如之前所论述,睡眠控制寄存器309和唤醒控制寄存器311可以充当限定器,并且可用于利用防火墙启用功率控制的合适状态来配置硬件隔离功率控制寄存器315。可以将睡眠控制寄存器309和/或唤醒控制寄存器311中的信息解码,然后通过复用器304和306进行传播以便控制防火墙功率控制是开还是关。此外,一旦将防火墙功率控制位设置成“1”,功率管理组件115便可将断言防火墙启用305排序,并且可以将信息写到硬件隔离功率控制寄存器315。
图3B示出用于配置子系统的电源启用功率控制和电源启用功率控制寄存器的第二逻辑路径320的实施例。每个子系统可以具有类似或相同的逻辑控制路径以配置电源启用功率控制。各种实施例不限于该示例性实施例,而是可以利用其它逻辑控制路径来配置电源启用功率控制并设置电源启用功率控制寄存器。
逻辑控制路径320可以包括多个输入线,包括电源启用功率控制322、写电源启用324、断言电源启用326、写数据328和功率状态334。另外,逻辑控制320可以包括多个寄存器,例如睡眠控制寄存器330、唤醒控制寄存器332和电源启用功率控制寄存器336。最后,逻辑控制可以包括复用器321、323和325以基于输入线上的一个或多个输入充当开关。
在各种实施例中,电源启用功率控制位322可以是与子系统的电源启用功率控制相关联的功率管理功率控制寄存器164中的控制位。电源启用功率控制位322可以是确定何时在电源启用功率控制寄存器336中设置睡眠控制寄存器330或唤醒控制寄存器332中的信息或设置的主控制位。电源启用功率控制位322可以在功率管理组件115写到功率管理功率控制寄存器164中的控制位时断言或启用,以便为每个子系统并行地配置每个电源启用功率控制并设置电源启用功率控制寄存器336。
在各种实施例中,写电源启用324和写数据328是可以在电源启用功率控制位322没有启用或者设置成0时使用的覆盖机制。写电源启用324和写数据328可用于隔离任何单个子系统以进行配置。当电源启用功率控制位322设置成0或者没有启用时,写电源启用324是硬件电源启用功率控制寄存器336的启用,并且写数据328是写到电源启用功率控制寄存器336的信息。功率管理组件115利用写电源启用324和写328来设置单个子系统的电源启用功率控制寄存器336,而不在并行设置子系统时进行设置。
此外,睡眠控制寄存器330和唤醒控制寄存器332可以分别与睡眠控制寄存器160和唤醒控制寄存器162相同或类似。功率状态334可以设置成在睡眠控制寄存器330和唤醒控制寄存器332之间选择。例如,如果平台处理装置不处于低功率状态,那么功率状态334可以设置成选择睡眠控制寄存器330以便在子系统进入低功率状态时充当限定器。但是,如果平台处理装置处于低功率状态,那么功率状态334可以设置成选择唤醒控制寄存器332以便在子系统退出低功率状态时使用。
如之前所论述,睡眠控制寄存器330和唤醒控制寄存器332可以充当限定器,并且可用于利用电源启用功率控制的合适状态来配置电源启用功率控制寄存器336。可以将睡眠控制寄存器330和/或唤醒控制寄存器332中的信息解码,然后通过复用器323和325进行传播以便控制电源启用功率控制是开还是关。此外,一旦将电源启用功率控制位322设置成“1”,功率管理组件115便可将断言电源启用326排序,并且可以将信息写到电源启用功率控制寄存器336。
图3C示出用于配置子系统的时钟启用功率控制和时钟启用功率控制寄存器的第三逻辑路径340的实施例。每个子系统可以具有类似或相同的逻辑控制路径以配置时钟启用功率控制。各种实施例不限于该示例性实施例,而是可以利用其它逻辑控制路径来配置时钟启用功率控制并设置时钟启用功率控制寄存器。
逻辑控制路径340可以包括多个输入线,包括时钟启用功率控制342、写时钟启用344、断言时钟启用346、写数据348和功率状态354。另外,逻辑控制340可以包括多个寄存器,例如睡眠控制寄存器350、唤醒控制寄存器352和时钟启用功率控制寄存器356。最后,逻辑控制可以包括复用器341、343和345以基于输入线上的一个或多个输入充当开关。
在各种实施例中,时钟启用功率控制位342可以是与子系统的时钟启用功率控制相关联的功率管理功率控制寄存器164中的控制位。时钟启用功率控制位342可以是确定何时在时钟启用功率控制寄存器356中设置睡眠控制寄存器350或唤醒控制寄存器352中的信息或设置的主控制位。时钟启用功率控制位342可以在功率管理组件115写到功率管理功率控制寄存器164中的控制位时断言或启用,以便为每个子系统并行地配置每个时钟启用功率控制并设置时钟启用功率控制寄存器356。
在各种实施例中,写时钟启用344和写数据348是可以在时钟启用功率控制位342没有启用或者设置成0时使用的覆盖机制。写时钟启用344和写数据348可用于隔离任何单个子系统以进行配置。当时钟启用功率控制位342设置成0或者没有启用时,写时钟启用344是硬件时钟启用功率控制寄存器356的启用,并且写数据348是写到时钟启用功率控制寄存器356的信息。功率管理组件115利用这些位、写时钟启用344和写数据348来设置单个子系统的时钟启用功率控制寄存器356,而不在并行设置子系统时进行设置。
此外,睡眠控制寄存器350和唤醒控制寄存器352可以分别与睡眠控制寄存器160和唤醒控制寄存器162相同或类似。功率状态354可以设置成在睡眠控制寄存器350和唤醒控制寄存器352之间选择。例如,如果平台处理装置不处于低功率状态,那么功率状态354可以设置成选择睡眠控制寄存器350以便在子系统进入低功率状态时充当限定器。但是,如果平台处理装置处于低功率状态,那么功率状态354可以设置成选择唤醒控制寄存器352以便在子系统退出低功率状态时使用。
如之前所论述,睡眠控制寄存器350和唤醒控制寄存器352可以充当限定器,并且可用于利用时钟启用功率控制的合适状态来配置时钟启用功率控制寄存器356。可以将睡眠控制寄存器350和/或唤醒控制寄存器352中的信息解码,然后通过复用器343和345进行传播以便控制时钟启用功率控制是开还是关。此外,一旦将时钟启用功率控制位342设置成“1”,功率管理组件115便可将断言时钟启用346排序,并且可以将信息写到时钟启用功率控制寄存器356。
图3D示出用于配置子系统的复位功率控制和复位功率控制寄存器的第四逻辑路径360的实施例。每个子系统可以具有类似或相同的逻辑控制路径以配置复位功率控制。各种实施例不限于该示例性实施例,而是可以利用其它逻辑控制路径来配置复位功率控制并设置复位功率控制寄存器。
逻辑控制路径360可以包括多个输入线,包括复位功率控制362、写复位启用364、断言复位启用366、写数据368和功率状态374。另外,逻辑控制360可以包括多个寄存器,例如睡眠控制寄存器370、唤醒控制寄存器372和复位功率控制寄存器376。最后,逻辑控制可以包括复用器361、363和365以基于输入线上的一个或多个输入充当开关。
在各种实施例中,复位功率控制位362可以是与子系统的复位功率控制相关联的功率管理功率控制寄存器164中的控制位。复位功率控制位362可以是确定何时在复位功率控制寄存器376中设置睡眠控制寄存器370或唤醒控制寄存器372中的信息或设置的主控制位。复位功率控制位362可以在功率管理组件115写到功率管理功率控制寄存器164中的控制位时断言或启用,以便为每个子系统并行地配置每个复位功率控制并设置复位功率控制寄存器376。
在各种实施例中,写复位364和写数据368是可以在复位功率控制位362没有启用或者设置成0时使用的覆盖机制。写复位364可用于隔离任何单个子系统以进行配置。当复位功率控制位362设置成0或者没有启用时,写复位364是复位功率控制寄存器376的启用,并且写数据368是写到复位功率控制寄存器376的信息。功率管理组件115利用这些位、写复位364和写368来设置单个子系统的复位功率控制寄存器376,而不在并行设置子系统时进行设置。
此外,睡眠控制寄存器370和唤醒控制寄存器372可以分别与睡眠控制寄存器160和唤醒控制寄存器162相同或类似。功率状态374可以设置成在睡眠控制寄存器370和唤醒控制寄存器372之间选择。例如,如果平台处理装置不处于低功率状态,那么功率状态374可以设置成选择睡眠控制寄存器370以便在子系统进入低功率状态时充当限定器。但是,如果平台处理装置处于低功率状态,那么功率状态374可以设置成选择唤醒控制寄存器372以便在子系统退出低功率状态时使用。
如之前所论述,睡眠控制寄存器370和唤醒控制寄存器372可以充当限定器,并且可用于利用复位功率控制的合适状态来配置复位功率控制寄存器376。可以将睡眠控制寄存器370和/或唤醒控制寄存器372中的信息解码,然后通过复用器363和365进行传播以便控制复位功率控制是开还是关。此外,一旦将复位功率控制位362设置成“1”,功率管理组件115便可将断言复位启用366排序,并且可以将信息写到复位功率控制寄存器376。
图4示出第三逻辑流400的一个实施例。逻辑流400可以表示由本文所描述的一个或多个实施例执行的一些或所有操作。例如,逻辑流400可以示出由系统100,更具体来说是由系统100的计算机系统105和平台处理装置110执行的操作。在图4中示出的所示实施例中,逻辑流400可以包括在方框402确定具有相关联的子系统睡眠控制寄存器的多个子系统中的每个子系统的睡眠配置状态以便进入到低或较低功率状态。在各种实施例中,可以基于诸如MIP报头文件的配置文件为每个子系统111确定睡眠配置状态。配置文件可以具有用于将逻辑子系统映射到物理子系统的逻辑-物理映射表。在各种实施例中,功率管理组件115可以在平台处理装置110的引导时间或者在已经完全引导平台处理装置110之后通过查找配置文件中的配置信息来确定睡眠配置状态。
在各种实施例中,逻辑流400还可以包括在方框404用每个子系统的睡眠配置状态来配置每个相关联的子系统睡眠控制寄存器。例如,功率管理组件115可以用对应于每个子系统的配置信息来加载或设置每个睡眠控制寄存器160。可以在平台处理装置110进入较低功率状态之前在睡眠控制寄存器160中加载或设置配置信息。
逻辑流400还可以包括在转换到低或较低功率状态时为每个子系统并行地启用睡眠配置状态。例如,功率管理组件115可以设置功率管理功率控制寄存器164中对应于包括防火墙启用功率控制、电源启用功率控制、时钟启用功率控制和复位功率控制在内的每个功率控制的一个或多个位。当功率管理组件115设置对应于某个功率控制的所述一个或多个位时,将功率控制配置并行地传播到每个子系统。
在各种实施例中,功率管理组件115可以在每个功率控制配置之间以一定延迟设置每个功率控制的一个或多个位,以确保合适地配置每个子系统对应的功率控制寄存器。例如,功率管理组件115可以设置防火墙启用功率控制的一个或多个位,然后可以为每个子系统并行地设置或配置防火墙启用功率控制,并且功率管理组件可以等待一段时间或一定延迟后再设置对应于另一个功率控制的一个或多个位。在该延迟之后,功率管理组件115可以设置对应于诸如时钟启用功率控制的不同功率控制的一个或多个位,并且可以为每个子系统并行地配置时钟启用功率控制。这个过程可以重复,直到为每个子系统设置或配置所有功率控制。
图5示出其中可以实施系统100的计算装置500的实施例。例如,在实施例中,装置500可以作为具有无线能力的移动计算装置来实现。移动计算装置可以指具有处理系统和诸如一个或多个电池的移动电源或电供给的任何装置。
如上所述,移动计算装置的示例可以包括个人计算机(PC)、膝上型计算机、超膝上型计算机、平板计算机、触摸板、便携式计算机、手持式计算机、掌上型计算机、个人数字助理(PDA)、蜂窝电话、组合式蜂窝电话/PDA、电视、智能装置(例如,智能电话、智能平板或智能电视)、移动互联网装置(MID)、消息传递装置、数据通信装置等。
移动计算装置的示例还可包括布置成由人穿戴的计算机,例如手腕式计算机、手指式计算机、指环式计算机、眼镜式计算机、皮带夹式计算机、臂带式计算机、鞋式计算机、衣服式计算机和其它可穿戴计算机。例如,在实施例中,移动计算装置可以作为能够执行计算机应用以及语音通信和/或数据通信的智能电话来实现。尽管作为举例可以用实现为智能电话的移动计算装置来描述一些实施例,但是可领会,也可以利用其它无线移动计算装置来实现其它实施例。实施例在这方面不受限制。
如图5所示,装置500可以包括显示器554、导航控制器550、用户界面553、外壳555、I/O装置556和天线557。显示器554可以包括用于显示适合移动计算装置的信息的任何合适的显示器单元。导航控制器550可以包括可用于与用户界面553交互的一个或多个导航特征。I/O装置556可以包括用于将信息输入到移动计算装置的任何合适的I/O装置。I/O装置556的示例可以包括字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、摇臂开关、麦克风、扬声器、语音识别装置和软件等。还可通过麦克风将信息输入到装置500中。可以通过语音识别装置将这些信息数字化。实施例在这方面不受限制。
图6示出适合实现如之前所描述的各种实施例的示例性计算体系结构600的实施例。在一个实施例中,计算体系结构600可以包括计算装置115的一部分,或者可以作为计算装置115的一部分来实现。
如本申请书中所使用,术语“系统”和“组件”意指计算机相关的实体,它可以指硬件、硬件和软件的组合、软件或执行中的软件,其示例由示例性计算体系结构600提供。例如,组件可以是但不限于是在处理器上运行的进程、处理器、硬盘驱动器、(光和/或磁存储介质的)多个存储驱动器、对象、可执行文件、执行线程、程序和/或计算机。作为说明,在服务器上运行的应用和服务器都可以是组件。一个或多个组件可以驻留在进程和/或执行线程内,并且组件可以集中在一个计算机上和/或分布在两个或两个以上计算机之间。此外,组件可以通过各种类型的通信介质在通信上彼此耦合以便协调操作。协调可以涉及信息的单向或双向交换。例如,组件可以用通过通信介质传送的信号的形式通信信息。信息可以作为分配给各种信号线的信号来实现。在这些分配中,每个消息是一个信号。但是,其它实施例可以备选地采用数据消息。这些数据消息可以跨越各种连接进行发送。示例性连接包括并行接口、串行接口和总线接口。
计算体系结构600包括各种常见计算元件,例如一个或多个处理器、多核处理器、协处理器、存储器单元、芯片组、控制器、外围装置、接口、振荡器、计时装置、视频卡、音频卡、多媒体输入/输出(I/O)组件、电源等。但是,实施例不限于计算体系结构600的实现。
如图6所示,计算体系结构600包括处理单元604、系统存储器606和系统总线608。处理单元604可以是任意的各种市场上可买到的处理器,例如参考图1中示出的平台处理装置110描述的那些处理器。
系统总线608提供供包括但不限于系统存储器606的系统组件到处理单元604的接口。系统总线608可以是若干种类型的总线结构中的任何总线结构,这些总线结构还可以利用各种市场上可买到的总线体系结构中的任何市场上可买到的总线体系结构互连到存储器总线(具有或不具有存储器控制器)、外围总线和本地总线。接口适配器可以经由槽体系结构连接到系统总线608。示例槽体系结构可以包括但不限于加速图形端口(AGP)、CardBus(卡总线)、(扩展型)工业标准体系结构((E)ISA)、微通道体系结构(MCA)、NuBus、外围组件互连(扩展)(PCI(X))、PCI Express、个人计算机存储卡国际协会(PCMCIA)等。
计算体系结构600可以包括或实现各种制品。制品可以包括用于存储逻辑的计算机可读存储介质。计算机可读存储介质的示例可以包括能够存储电子数据的任何有形介质,包括易失性存储器或非易失性存储器、可移动或不可移动存储器、可擦除或不可擦除存储器、可写或可重写存储器等。逻辑的示例可以包括利用诸如源代码、编译代码、解释代码、可执行代码、静态代码、动态代码、面向对象代码、可视代码等任何合适类型的代码实现的可执行计算机程序指令。实施例还可至少部分地作为包含在非暂时性计算机可读介质之中或之上的指令来实现,所述指令可以由一个或多个处理器读取和执行以使得能够执行本文所描述的操作。
系统存储器606可以包括一个或多个较高速存储器单元形式的各种类型的计算机可读存储介质,例如只读存储器(ROM)、随机存取存储器(RAM)、动态RAM(DRAM)、双倍数据速率DRAM(DDRAM)、同步DRAM(SDRAM)、静态RAM(SRAM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪速存储器、诸如铁电聚合物存储器的聚合物存储器、双向存储器、相变或铁电存储器、硅-氧化物-氮化物-氧化物-硅(SONOS)存储器、磁或光卡、诸如独立盘冗余阵列(RAID)驱动器的装置阵列、固态存储器装置(例如,USB存储器、固态驱动器(SSD))以及适合存储信息的任何其它类型的存储介质。在图6中示出的所示实施例中,系统存储器606可以包括非易失性存储器610和/或易失性存储器612。可以在非易失性存储器610中存储基本输入/输出系统(BIOS)。
计算机602可以包括一个或多个较低速存储器单元形式的各种类型的计算机可读存储介质,包括内部(或外部)硬盘驱动器(HDD)614、用于从可移动磁盘618读取或写到可移动磁盘618的磁软盘驱动器(FDD)616以及用于从可移动光盘622(例如,CD-ROM或DVD)读取或写到可移动光盘622的光盘驱动器620。HDD 614、FDD 616和光盘驱动器620可以分别通过HDD接口624、FDD接口626和光驱接口628连接到系统总线608。外部驱动器实现的HDD接口624可以包括通用串行总线(USB)和IEEE 1394接口技术中的至少一种或两种。
驱动器和相关联的计算机可读介质提供数据、数据结构、计算机可执行指令等的易失性和/或非易失性存储。例如,可以在驱动器和存储器单元610、612中存储多个程序模块,包括操作系统630、一个或多个应用程序632、其它程序模块634和程序数据636。在一个实施例中,所述一个或多个应用程序632、其它程序模块634和程序数据636可以包括例如系统105的各种应用和/或组件。
用户可以通过诸如键盘638的一个或多个有线/无线输入装置和诸如鼠标640的指示装置将命令和信息输入到计算机602中。其它输入装置可以包括麦克风、红外(IR)遥控装置、射频(RF)遥控装置、游戏盘、手写笔、读卡器、软件狗(dongle)、指纹识别器、手套、图形输入板、操纵杆、键盘、视网膜阅读器、触摸屏(例如,电容式、电阻式等)、跟踪球、跟踪板、传感器、记录笔等。这些和其它输入装置通常通过耦合到系统总线608的输入装置接口642连接到处理单元604,但是也可以通过诸如并行端口、IEEE 1394串行端口、游戏端口、USB端口、IR接口等其它接口连接。
监视器644或其它类型的显示装置也经由诸如视频适配器646的接口连接到系统总线608。监视器644可以位于计算机602的内部或外部。除了监视器644之外,计算机通常还包括诸如扬声器、打印机等其它外围输出装置。
计算机602可以经由到诸如远程计算机648的一个或多个远程计算机的有线和/或无线通信利用逻辑连接在联网环境中操作。远程计算机648可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐器具、对等装置或其它常见网络节点,并且通常包括相对于计算机602描述的许多或所有元件,但是出于简洁的目的,只示出存储器/存储装置650。所描绘的逻辑连接包括到局域网(LAN)652和/或诸如广域网(WAN)654的更大网络的有线/无线连接性。这种LAN和WAN联网环境在办公室和公司中是很普遍的,并且便于诸如内联网的企业范围的计算机网络,所有这些都可连接到诸如互联网的全局通信网络。
当在LAN联网环境中使用时,计算机602通过有线和/或无线通信网络接口或适配器656连接到LAN 652。适配器656可以便于到LAN 652的有线和/或无线通信,LAN 652还可包括部署在它上面的用于与适配器656的无线功能性通信的无线接入点。
当在WAN联网环境中使用时,计算机602可以包括调制解调器658,或者连接到WAN654上的通信服务器,或者具有用于通过例如互联网在WAN 654上建立通信的其它手段。调制解调器658可以位于内部或外部并且可以是有线和/或无线装置,它经由输入装置接口642连接到系统总线608。在联网环境中,可以在远程存储器/存储装置650中存储相对于计算机602描绘的程序模块或其部分。将领会,所示的网络连接是示例性的,可以使用其它手段来在计算机之间建立通信链路。
计算机602可进行操作以利用IEEE 802标准系列与诸如在操作上部署在无线通信(例如,IEEE 802.11空中调制技术)中的无线装置的有线和无线装置或实体通信。其中,这至少包括WiFi(或无线保真)、WiMax、和蓝牙TM无线技术、3G、4G、LTE无线技术。因此,通信可以是如与常规网络一样的预定义结构或者仅仅是至少两个装置之间的特设(ad hoc)通信。WiFi网络利用称为IEEE 802.11x(a、b、g、n等)的无线电技术来提供安全、可靠、快速的无线连接性。WiFi网络可用于将计算机彼此连接、将计算机连接到互联网以及将计算机连接到有线网络(它们使用IEEE 802.3有关的媒体和功能)。
如之前参考图1-6描述的计算机系统105的各种元件可以包括各种硬件元件、软件元件或两者的组合。硬件元件的示例可以包括装置、逻辑装置、组件、处理器、微处理器、电路、处理器、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、存储器单元、逻辑门、寄存器、半导体装置、芯片、微芯片、芯片组等。软件元件的示例可以包括软件组件、程序、应用、计算机程序、应用程序、系统程序、软件开发程序、机器程序、操作系统软件、中间件、固件、软件模块、例行程序、子例行程序、功能、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或其任意组合。但是,根据给定实现的需要,依照任意数量的因素,例如期望的计算速率、功率级、耐热性、处理循环预算、输入数据速率、输出数据速率、存储器资源、数据总线速度和其它设计或性能约束,确定利用硬件元件和/或软件元件来实现实施例是可以改变的。
详细公开现在转到提供关于进一步实施例的示例。以下提供的示例一至三十八(1-38)旨在是示例性的而非限制性的。
在第一示例中,设备可以包括:处理器电路;以及在处理器电路上执行的功率管理组件、控制器或逻辑,其用于确定具有相关联的子系统睡眠控制寄存器的装置的多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态,用每个子系统的睡眠配置状态配置每个相关联的子系统睡眠控制寄存器,并在转换到较低功率状态时为每个子系统并行地启用睡眠配置状态。
在第二示例中,并且在第一示例的推动下,设备可以包括功率管理组件或逻辑,其用于在设备处于较低功率状态时基于相关联的子系统睡眠控制寄存器中的睡眠配置状态确定所述多个子系统中的哪些子系统禁用以及哪些子系统保持启用。
在第三示例中,并且在之前示例中的任一示例的推动下,设备可以包括:与一个或多个功率控制寄存器相关联的子系统;以及功率管理组件、控制器或逻辑,其用于在转换到较低功率状态时基于睡眠配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
在第四示例中,并且在之前示例中的任一示例的推动下,设备可以包括一个或多个功率控制寄存器,包括防火墙启用功率控制寄存器、电源启用功率控制寄存器、时钟启用功率控制寄存器和复位功率控制寄存器中的至少一个。
在第五示例中,并且在之前示例中的任一示例的推动下,设备可以包括功率管理组件、控制器或逻辑,其用于在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位以便按照特定顺序配置所述一个或多个功率控制寄存器中的每个功率控制寄存器,其中该特定顺序基于写控制位的顺序。
在第六示例中,并且在之前示例中的任一示例的推动下,设备可以包括功率管理组件、控制器或逻辑,其用于通过在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位来为每个子系统并行地配置所述一个或多个功率控制寄存器的相同寄存器。
在第七示例中,并且在之前示例中的任一示例的推动下,设备可以包括功率管理组件、控制器或逻辑,其用于确定具有相关联的子系统唤醒控制寄存器的所述多个子系统中的每个子系统的唤醒配置状态以便退出较低功率状态,用每个子系统的唤醒配置状态配置每个相关联的子系统唤醒控制寄存器,并在从较低功率状态转换时为每个子系统并行地启用唤醒配置状态。
在第八示例中,并且在之前示例中的任一示例的推动下,设备可以包括:其中每个子系统与一个或多个功率控制寄存器相关联;以及功率管理组件、控制器或逻辑,其用于在从低功率状态转换时基于唤醒配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
在第九示例中,并且在之前示例中的任一示例的推动下,物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够确定具有相关联的子系统睡眠控制寄存器的多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态,用每个子系统的睡眠配置状态配置每个相关联的子系统睡眠控制寄存器,并在转换到较低功率状态时为每个子系统并行地启用睡眠配置状态。
在第十示例中,并且在之前示例中的任一示例的推动下,物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够基于相关联的子系统睡眠控制寄存器中的睡眠配置状态确定所述多个子系统中的哪些子系统禁用以及哪些子系统保持启用。
在第十一示例中,并且在之前示例中的任一示例的推动下,其中每个子系统与一个或多个功率控制寄存器相关联,并且物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够在转换到较低功率状态时基于睡眠配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
在第十二示例中,并且在之前示例中的任一示例的推动下,所述一个或多个功率控制寄存器包括防火墙启用功率控制寄存器、电源启用功率控制寄存器、时钟启用功率控制寄存器和复位功率控制寄存器中的至少一个。
在第十三示例中,并且在之前示例中的任一示例的推动下,物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位,以便按照特定顺序配置所述一个或多个功率控制寄存器中的每个功率控制寄存器,其中该特定顺序基于写控制位的顺序。
在第十四示例中,并且在之前示例中的任一示例的推动下,物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够通过在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位来为每个子系统并行地配置所述一个或多个功率控制寄存器的相同寄存器类型。
在第十五示例中,并且在之前示例中的任一示例的推动下,物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够确定具有相关联的子系统唤醒控制寄存器的所述多个子系统中的每个子系统的唤醒配置状态以便退出较低功率状态,用每个子系统的唤醒配置状态配置每个相关联的子系统唤醒控制寄存器,并在从较低功率状态转换时为每个子系统并行地启用唤醒配置状态。
在第十六示例中,并且在之前示例中的任一示例的推动下,物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够其中每个子系统与一个或多个功率控制寄存器相关联,并且物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够在从较低功率状态转换时基于唤醒配置状态来配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
在第十六示例中,并且在之前示例中的任一示例的推动下,其中每个子系统与一个或多个功率控制寄存器相关联,并且物品包括包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够在从较低功率状态转换时基于唤醒配置状态来配置所述一个或多个功率控制寄存器的每个功率控制寄存器。
在第十七示例中,并且在之前示例中的任一示例的推动下,计算机实现的方法可以包括:确定具有相关联的子系统睡眠控制寄存器的多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态,用每个子系统的睡眠配置状态配置每个相关联的子系统睡眠控制寄存器,并在转换到较低功率状态时为每个子系统并行地启用睡眠配置状态。
在第十八示例中,并且在之前示例中的任一示例的推动下,计算机实现的方法可以包括基于相关联的子系统睡眠控制寄存器中的睡眠配置状态确定所述多个子系统中的哪些子系统禁用以及哪些子系统保持启用。
在第十九示例中,并且在之前示例中的任一示例的推动下,其中每个子系统与一个或多个功率控制寄存器相关联,并且方法可以包括在转换到较低功率状态时基于睡眠配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
在第二十示例中,并且在之前示例中的任一示例的推动下,计算机实现的方法可以包括所述一个或多个功率控制寄存器,包括防火墙启用功率控制寄存器、电源启用功率控制寄存器、时钟启用功率控制寄存器和复位功率控制寄存器中的至少一个。
在第二十一示例中,并且在之前示例中的任一示例的推动下,计算机实现的方法可以包括:在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位,以便按照特定顺序配置所述一个或多个功率控制寄存器中的每个功率控制寄存器,其中该特定顺序基于写控制位的顺序。
在第二十二示例中,并且在之前示例中的任一示例的推动下,计算机实现的方法可以包括通过在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位来为每个子系统并行地配置所述一个或多个功率控制寄存器的相同寄存器类型。
在第二十三示例中,并且在之前示例中的任一示例的推动下,计算机实现的方法可以包括:确定具有相关联的子系统唤醒控制寄存器的所述多个子系统中的每个子系统的唤醒配置状态以便退出较低功率状态,用每个子系统的唤醒配置状态配置每个相关联的子系统唤醒控制寄存器,并在从较低功率状态转换时为每个子系统并行地启用唤醒配置状态。
在第二十四示例中,并且在之前示例中的任一示例的推动下,计算机实现的方法可包括其中每个子系统与一个或多个功率控制寄存器相关联,并且计算机实现的方法包括在从较低功率状态转换时基于唤醒配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
在第二十五示例中,并且在之前示例中的任一示例的推动下,设备可以包括:用于确定具有相关联的子系统睡眠控制寄存器的多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态的部件,用于用每个子系统的睡眠配置状态配置每个相关联的子系统睡眠控制寄存器的部件,以及用于在转换到较低功率状态时为每个子系统并行地启用睡眠配置状态的部件。
在第二十六示例中,并且在之前示例中的任一示例的推动下,设备可以包括用于基于相关联的子系统睡眠控制寄存器中的睡眠配置状态确定所述多个子系统中的哪些子系统禁用以及哪些子系统保持启用的部件。
在第二十七示例中,并且在之前示例中的任一示例的推动下,其中每个子系统与一个或多个功率控制寄存器相关联,并且设备可以包括用于在转换到较低功率状态时基于睡眠配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器的部件。
在第二十八示例中,并且在之前示例中的任一示例的推动下,所述一个或多个功率控制寄存器包括防火墙启用功率控制寄存器、电源启用功率控制寄存器、时钟启用功率控制寄存器和复位功率控制寄存器中的至少一个。
在第二十九示例中,并且在之前示例中的任一示例的推动下,设备可以包括部件,其用于在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位,以便按照特定顺序配置所述一个或多个功率控制寄存器中的每个功率控制寄存器,其中该特定顺序基于写控制位的顺序。
在第三十示例中,并且在之前示例中的任一示例的推动下,设备可以包括部件,其用于通过在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位来为每个子系统并行地配置所述一个或多个功率控制寄存器的相同寄存器类型。
在第三十一示例中,并且在之前示例中的任一示例的推动下,设备可以包括:用于确定具有相关联的子系统唤醒控制寄存器的所述多个子系统中的每个子系统的唤醒配置状态以便退出较低功率状态的部件,用于用每个子系统的唤醒配置状态配置每个相关联的子系统唤醒控制寄存器的部件,以及用于在从较低功率状态转换时为每个子系统并行地启用唤醒配置状态的部件。
在第三十二示例中,并且在之前示例中的任一示例的推动下,其中每个子系统与一个或多个功率控制寄存器相关联,并且设备可以包括用于在从较低功率状态转换时基于唤醒配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器的部件。
在第三十三示例中,并且在之前示例中的任一示例的推动下,用于转换到较低功率状态的计算装置可以包括:处理器电路;以及在处理器电路上执行的功率管理组件,其用于确定具有相关联的子系统睡眠控制寄存器的装置的多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态,用每个子系统的睡眠配置状态配置每个相关联的子系统睡眠控制寄存器,并在转换到较低功率状态时为每个子系统并行地启用睡眠配置状态。
在第三十三示例中,并且在之前示例中的任一示例的推动下,计算装置可以包括功率管理组件,其用于在装置处于较低功率状态时基于相关联的子系统睡眠控制寄存器中的睡眠配置状态确定所述多个子系统中的哪些子系统禁用以及哪些子系统保持启用。
在第三十四示例中,并且在之前示例中的任一示例的推动下,其中每个子系统与一个或多个功率控制寄存器相关联,并且计算装置包括用于在转换到较低功率状态时基于睡眠配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器的功率管理组件。
在第三十五示例中,并且在之前示例中的任一示例的推动下,所述一个或多个功率控制寄存器包括防火墙启用功率控制寄存器、电源启用功率控制寄存器、时钟启用功率控制寄存器和复位功率控制寄存器中的至少一个。
在第三十六示例中,并且在之前示例中的任一示例的推动下,计算装置可以包括功率管理组件,其用于在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位,以便按照特定顺序配置所述一个或多个功率控制寄存器中的每个功率控制寄存器,其中该特定顺序基于写控制位的顺序。
在第三十七示例中,并且在之前示例中的任一示例的推动下,计算装置可以包括功率管理组件,其用于通过在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位来为每个子系统并行地配置所述一个或多个功率控制寄存器的相同寄存器类型。
在第三十七示例中,并且在之前示例中的任一示例的推动下,计算装置可以包括功率管理组件,其用于确定具有相关联的子系统唤醒控制寄存器的所述多个子系统中的每个子系统的唤醒配置状态以便退出较低功率状态,用每个子系统的唤醒配置状态配置每个相关联的子系统唤醒控制寄存器,并在从较低功率状态转换时为每个子系统并行地启用唤醒配置状态。
在第三十八示例中,并且在之前示例中的任一示例的推动下,其中每个子系统与一个或多个功率控制寄存器相关联,并且计算装置可以包括用于在从较低功率状态转换时基于唤醒配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器的功率管理组件。
在第三十九示例中,并且在之前示例中的任一示例的推动下,用于转换到较低功率状态的计算系统可以包括存储器、输入/输出组件、显示器、处理器电路以及在处理器电路上执行的功率管理组件,该功率管理组件用于确定具有相关联的子系统睡眠控制寄存器的装置的多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态,用每个子系统的睡眠配置状态配置每个相关联的子系统睡眠控制寄存器,并在转换到较低功率状态时为每个子系统并行地启用睡眠配置状态。
一些实施例可以利用表述“一个实施例”或“实施例”及其派生词来进行描述。这些术语表示,结合该实施例描述的特定特征、结构或特性包含在至少一个实施例中。本说明书的各个地方出现短语“在一个实施例中”时不一定都指相同实施例。此外,一些实施例可以使用表述“耦合”和“连接”及其派生词来进行描述。这些术语不一定要彼此同义。例如,一些实施例可以利用术语“连接”和/或“耦合”来进行描述,以便指示两个或两个以上元件彼此直接物理或电接触。但是,术语“耦合”也可以表示两个或两个以上元件彼此不直接接触,但仍然彼此共同协作或交互。
应强调,提供本公开的摘要是为了允许阅读者快速确定本技术公开的本质。认为它不是用于解释或限制权利要求的范围或含义。另外,在以上详细描述中可见,出于使本公开流畅的目的,各个特征组合在单个实施例中。本公开方法不是要解释为反映以下意图:要求保护的实施例需要比在每个权利要求中明确记载的特征更多的特征。而是,如随附权利要求所反映,发明主题在于比单个公开实施例的所有特征更少。因此,随附权利要求由此并入到详细描述中,其中每个权利要求独立作为单独的实施例。在随附权利要求中,术语“包括(including)”和“在其中(in which)”分别用作相应术语“包含(comprising)”和“其中(wherein)”的简单等效词。此外,术语“第一”、“第二”、“第三”等只是用作标记,而不是要对其对象强加数值要求。
上文的描述包括所公开的体系结构的示例。当然,不可能描述组件和/或方法的每种想得到的组合,但是本领域技术人员可以意识到,许多进一步的组合和排列是可能的。因此,新颖体系结构意欲包含落在随附权利要求的精神和范围内的所有这些改变、修改和变化。
Claims (24)
1.一种用于使平台子系统并行进入较低功率状态的设备,包括:
处理器电路;以及
在所述处理器电路上执行的功率管理组件,用于:
确定装置的多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态,其中每个子系统与其自己的子系统睡眠控制寄存器相关联,
用所述子系统中的每个子系统的所述睡眠配置状态配置相关联的子系统睡眠控制寄存器中的每个子系统睡眠控制寄存器,并且
在转换到所述较低功率状态时为所述子系统中的每个子系统并行地启用所述睡眠配置状态。
2.如权利要求1所述的设备,所述功率管理组件用于在所述装置处于所述较低功率状态时基于所述相关联的子系统睡眠控制寄存器中的所述睡眠配置状态来确定所述多个子系统中的哪些子系统禁用以及哪些子系统保持启用。
3.如权利要求1或权利要求2所述的设备,其中所述子系统中的每个子系统与一个或多个功率控制寄存器相关联,并且所述功率管理组件用于在转换到所述较低功率状态时基于所述睡眠配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
4.如权利要求3所述的设备,所述一个或多个功率控制寄存器包括防火墙启用功率控制寄存器、电源启用功率控制寄存器、时钟启用功率控制寄存器和复位功率控制寄存器中的至少一个。
5.如权利要求3所述的设备,所述功率管理组件用于在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位,以便按照特定顺序配置所述一个或多个功率控制寄存器中的每个功率控制寄存器,其中所述特定顺序基于写所述控制位的顺序。
6.如权利要求3所述的设备,所述功率管理组件用于通过在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位来为所述子系统中的每个子系统并行地配置的所述一个或多个功率控制寄存器的相同寄存器类型。
7.如权利要求1或权利要求2所述的设备,所述功率管理组件用于:
确定所述多个子系统中的每个子系统的唤醒配置状态以便退出较低功率状态,其中每个子系统具有相关联的子系统唤醒控制寄存器,
用所述子系统中的每个子系统的所述唤醒配置状态配置所述相关联的子系统唤醒控制寄存器中的每个子系统唤醒控制寄存器,并且
在从所述较低功率状态转换时为所述子系统中的每个子系统并行地启用所述唤醒配置状态。
8.如权利要求7所述的设备,其中所述子系统中的每个子系统与一个或多个功率控制寄存器相关联,并且所述功率管理组件用于在从所述较低功率状态转换时基于所述唤醒配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
9.一种包含多个指令的计算机可读存储介质,所述指令在执行时使得处理器电路能够:
确定多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态,其中每个子系统与其自己的子系统睡眠控制寄存器相关联;
用所述子系统中的每个子系统的所述睡眠配置状态配置相关联的子系统睡眠控制寄存器中的每个子系统睡眠控制寄存器;以及
在转换到所述较低功率状态时为所述子系统中的每个子系统并行地启用所述睡眠配置状态。
10.如权利要求9所述的计算机可读存储介质,其中所述指令在执行时使得所述处理器电路能够基于所述相关联的子系统睡眠控制寄存器中的所述睡眠配置状态确定所述多个子系统中的哪些子系统禁用以及哪些子系统保持启用。
11.如权利要求9或权利要求10所述的计算机可读存储介质,其中所述子系统中的每个子系统与一个或多个功率控制寄存器相关联,并且其中所述指令在执行时使得所述处理器电路能够在转换到所述较低功率状态时基于所述睡眠配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器。
12.如权利要求11所述的计算机可读存储介质,所述一个或多个功率控制寄存器包括防火墙启用功率控制寄存器、电源启用功率控制寄存器、时钟启用功率控制寄存器和复位功率控制寄存器中的至少一个。
13.如权利要求11所述的计算机可读存储介质,其中所述指令在执行时使得所述处理器电路能够在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位,以便按照特定顺序配置所述一个或多个功率控制寄存器中的每个功率控制寄存器,其中所述特定顺序基于写所述控制位的顺序。
14.如权利要求11所述的所述计算机可读存储介质,其中所述指令在执行时使得所述处理器电路能够通过在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位来为所述子系统中的每个子系统并行地配置所述一个或多个功率控制寄存器的相同寄存器类型。
15.如权利要求9或权利要求10所述的计算机可读存储介质,其中所述指令在执行时使得所述处理器电路能够:
确定所述多个子系统中的每个子系统的唤醒配置状态以便退出较低功率状态,其中每个子系统具有相关联的子系统唤醒控制寄存器;
用所述子系统中的每个子系统的所述唤醒配置状态配置所述相关联的子系统唤醒控制寄存器中的每个子系统唤醒控制寄存器;以及
在从所述较低功率状态转换时为所述子系统中的每个子系统并行地启用所述唤醒配置状态。
16.如权利要求15所述的计算机可读存储介质,其中所述子系统中的每个子系统与一个或多个功率控制寄存器相关联,并且其中所述指令在执行时使得所述处理器电路能够在从所述较低功率状态转换时基于所述唤醒配置状态配置所述一个或多个功率控制寄存器的每个功率控制寄存器。
17.一种用于使平台子系统并行进入较低功率状态的设备,包括:
用于确定多个子系统中的每个子系统的睡眠配置状态以便进入较低功率状态的部件,其中每个子系统与其自己的子系统睡眠控制寄存器相关联;
用于用所述子系统中的每个子系统的所述睡眠配置状态配置相关联的子系统睡眠控制寄存器中的每个子系统睡眠控制寄存器的部件;以及
用于在转换到所述较低功率状态时为所述子系统中的每个子系统并行地启用所述睡眠配置状态的部件。
18.如权利要求17所述的设备,包括用于基于所述相关联的子系统睡眠控制寄存器中的所述睡眠配置状态确定所述多个子系统中的哪些子系统禁用以及哪些子系统保持启用的部件。
19.如权利要求17或权利要求18所述的设备,其中所述子系统中的每个子系统与一个或多个功率控制寄存器相关联,并且所述设备包括用于在转换到所述较低功率状态时基于所述睡眠配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器的部件。
20.如权利要求19所述的设备,所述一个或多个功率控制寄存器包括防火墙启用功率控制寄存器、电源启用功率控制寄存器、时钟启用功率控制寄存器和复位功率控制寄存器中的至少一个。
21.如权利要求19所述的设备,包括用于在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位以便按照特定顺序配置所述一个或多个功率控制寄存器中的每个功率控制寄存器的部件,其中所述特定顺序基于写所述控制位的顺序。
22.如权利要求19所述的设备,包括用于通过在功率管理功率控制寄存器中写所述一个或多个功率控制寄存器中的每个功率控制寄存器的控制位来为所述子系统中的每个子系统并行地配置所述一个或多个功率控制寄存器的相同寄存器类型的部件。
23.如权利要求17或权利要求18所述的设备,包括:
用于确定所述多个子系统中的每个子系统的唤醒配置状态以便退出较低功率状态的部件,其中每个子系统具有相关联的子系统唤醒控制寄存器;
用于用所述子系统中的每个子系统的所述唤醒配置状态配置所述相关联的子系统唤醒控制寄存器中的每个子系统唤醒控制寄存器的部件;以及
用于在从所述较低功率状态转换时为所述子系统中的每个子系统并行地启用所述唤醒配置状态的部件。
24.如权利要求23所述的设备,其中所述子系统中的每个子系统与一个或多个功率控制寄存器相关联,并且所述设备包括用于在从所述较低功率状态转换时基于所述唤醒配置状态配置所述一个或多个功率控制寄存器中的每个功率控制寄存器的部件。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/040,156 US9471132B2 (en) | 2013-09-27 | 2013-09-27 | Techniques for putting platform subsystems into a lower power state in parallel |
US14/040156 | 2013-09-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104777889A CN104777889A (zh) | 2015-07-15 |
CN104777889B true CN104777889B (zh) | 2019-03-19 |
Family
ID=52741365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410496184.5A Active CN104777889B (zh) | 2013-09-27 | 2014-09-25 | 用于使平台子系统并行进入较低功率状态的技术 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9471132B2 (zh) |
CN (1) | CN104777889B (zh) |
TW (1) | TWI609260B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11023379B2 (en) | 2019-02-13 | 2021-06-01 | Google Llc | Low-power cached ambient computing |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1732447A (zh) * | 2002-12-26 | 2006-02-08 | 英特尔公司 | 最低优先级中断的处理器功率状态知晓分配的机制 |
CN101135929A (zh) * | 2007-09-28 | 2008-03-05 | 中国科学院计算技术研究所 | 一种多核处理器及其变频装置和核间通信方法 |
CN103150005A (zh) * | 2013-03-01 | 2013-06-12 | 福州瑞芯微电子有限公司 | 非对称低功耗移动设备的多核结构 |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5692197A (en) * | 1995-03-31 | 1997-11-25 | Sun Microsystems, Inc. | Method and apparatus for reducing power consumption in a computer network without sacrificing performance |
JPH09138716A (ja) * | 1995-11-14 | 1997-05-27 | Toshiba Corp | 電子計算機 |
US6665802B1 (en) * | 2000-02-29 | 2003-12-16 | Infineon Technologies North America Corp. | Power management and control for a microcontroller |
US7869835B1 (en) * | 2005-03-02 | 2011-01-11 | Nvidia Corporation | Method and system for pre-loading and executing computer instructions within the cache memory |
US8509859B2 (en) * | 2005-03-11 | 2013-08-13 | Qualcomm Incorporated | Apparatus and methods for control of sleep modes in a transceiver |
US9146600B2 (en) * | 2006-10-11 | 2015-09-29 | Texas Instruments Incorporated | Array and peripheral power control decoded from circuitry and registers |
US9124463B2 (en) * | 2012-04-04 | 2015-09-01 | Texas Instruments Incorporated | Communication device with sleep state indicator and state machine control |
US7991992B2 (en) | 2007-03-13 | 2011-08-02 | Intel Corporation | Power reduction for system on chip |
US7840239B2 (en) * | 2007-05-03 | 2010-11-23 | Texas Instruments Incorporated | Distributed power management |
KR101429674B1 (ko) | 2007-09-11 | 2014-08-13 | 삼성전자주식회사 | 시스템 온 칩에서 전력 소모를 감소시키기 위한 장치 및방법 |
US8176341B2 (en) * | 2008-03-31 | 2012-05-08 | Intel Corporation | Platform power management based on latency guidance |
JP5169731B2 (ja) * | 2008-10-24 | 2013-03-27 | 富士通セミコンダクター株式会社 | マルチプロセッサシステムlsi |
US8190931B2 (en) * | 2009-04-30 | 2012-05-29 | Texas Instruments Incorporated | Power management events profiling |
US7906996B1 (en) * | 2009-08-18 | 2011-03-15 | Nxp B.V. | System and method for controlling an integrated circuit in different operational modes |
WO2012033496A1 (en) * | 2010-09-10 | 2012-03-15 | Hewlett-Packard Development Company, L.P. | Unlock a storage device |
JP5682246B2 (ja) * | 2010-11-10 | 2015-03-11 | 富士ゼロックス株式会社 | 画像処理装置、システムおよびプログラム |
US9335805B2 (en) * | 2010-11-25 | 2016-05-10 | Freescale Semiconductor, Inc. | Method and apparatus for managing power in a multi-core processor |
US8468373B2 (en) * | 2011-01-14 | 2013-06-18 | Apple Inc. | Modifying performance parameters in multiple circuits according to a performance state table upon receiving a request to change a performance state |
US9471121B2 (en) * | 2011-11-14 | 2016-10-18 | Texas Instruments Incorporated | Microprocessor based power management system architecture |
US9329658B2 (en) * | 2012-12-28 | 2016-05-03 | Intel Corporation | Block-level sleep logic |
US20140337650A1 (en) * | 2013-05-09 | 2014-11-13 | Lsi Corporation | System and Method for Power Management in a Multiple-Initiator Storage System |
-
2013
- 2013-09-27 US US14/040,156 patent/US9471132B2/en active Active
-
2014
- 2014-09-23 TW TW103132777A patent/TWI609260B/zh active
- 2014-09-25 CN CN201410496184.5A patent/CN104777889B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1732447A (zh) * | 2002-12-26 | 2006-02-08 | 英特尔公司 | 最低优先级中断的处理器功率状态知晓分配的机制 |
CN101135929A (zh) * | 2007-09-28 | 2008-03-05 | 中国科学院计算技术研究所 | 一种多核处理器及其变频装置和核间通信方法 |
CN103150005A (zh) * | 2013-03-01 | 2013-06-12 | 福州瑞芯微电子有限公司 | 非对称低功耗移动设备的多核结构 |
Also Published As
Publication number | Publication date |
---|---|
US20150095677A1 (en) | 2015-04-02 |
US9471132B2 (en) | 2016-10-18 |
TW201523227A (zh) | 2015-06-16 |
TWI609260B (zh) | 2017-12-21 |
CN104777889A (zh) | 2015-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104813286B (zh) | 用于代码区的连续自动调整的方法、装置、系统 | |
CN104516477B (zh) | 进入低功率状态的技术 | |
CN105745615B (zh) | 用于移动设备的始终进行的音频控制 | |
CN107967419B (zh) | 一种解锁控制方法及移动终端 | |
CN105492996B (zh) | 对通信端口启用低功率状态的技术 | |
CN106716298B (zh) | 用于传感器数据的超低电力处理的算法引擎 | |
CN107209548A (zh) | 在多核处理器中执行功率管理 | |
CN106462219A (zh) | 管理处理器设备功耗的系统和方法 | |
CN108076217A (zh) | 用于显示使用图标的应用的执行屏幕的电子装置和方法 | |
CN104053028B (zh) | 用于多媒体重放的计算机实现方法及通信设备 | |
CN106537285A (zh) | 处理器温度的平衡控制 | |
CN107016950A (zh) | 用于操作电子设备的方法和支持该方法的电子设备 | |
CN107004047A (zh) | 针对健康监测和响应的设备 | |
TW201436426A (zh) | 用於電子裝置之電池充電管理技術 | |
CN105493180A (zh) | 用于语音识别的电子装置和方法 | |
CN104798039A (zh) | 用于平台占空比处理的技术 | |
CN104137024A (zh) | 包括使用深降电模式的高能效处理器热节流的用于高能效且节能的方法、装置和系统 | |
CN105474126B (zh) | 用于集成的pcie控制器的改进的功率控制技术 | |
CN104040483B (zh) | 用于非易失性存储器的优化的冷引导 | |
CN107835307A (zh) | 用于终端的助睡眠方法及系统 | |
CN107407951A (zh) | 电子设备及其电池信息提供方法 | |
CN105807892A (zh) | 一种嵌入式实时操作系统的低功耗模式切换方法 | |
CN107148601A (zh) | 电子设备及其控制方法 | |
CN108369445A (zh) | 唤醒分割架构的级联触摸 | |
CN104777889B (zh) | 用于使平台子系统并行进入较低功率状态的技术 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |