CN107463242A - 授权组件功率控制 - Google Patents
授权组件功率控制 Download PDFInfo
- Publication number
- CN107463242A CN107463242A CN201710388806.6A CN201710388806A CN107463242A CN 107463242 A CN107463242 A CN 107463242A CN 201710388806 A CN201710388806 A CN 201710388806A CN 107463242 A CN107463242 A CN 107463242A
- Authority
- CN
- China
- Prior art keywords
- power
- component
- power mode
- control circuit
- equipment
- 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.)
- Granted
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
- 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
-
- 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/3206—Monitoring of events, devices or parameters that trigger a change in power modality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/82—Architectures of general purpose stored program computers data or demand driven
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Sources (AREA)
Abstract
本公开涉及授权组件功率控制。公开了一种设备和操作该设备的相应方法。设备的组件能够以至少两种功率模式中的一个操作,并且通信地耦接到组件的组件功率控制电路使得组件以这些功率模式中的选定功率模式操作。系统功率控制器通过在其中设置功率模式锁定条件来控制组件功率控制电路的操作。当满足功率模式锁定条件时,组件功率控制电路不能改变组件的选定功率模式。因此,对组件的功率控制被部分地从系统功率控制器授权给组件功率控制电路。
Description
技术领域
本公开涉及数据处理设备,更具体地,本公开涉及授权功率控制数据处理设备的组件。
背景技术
在诸如片上系统之类的数据处理设备中,可能存在不需要被永久供电的组件,因此当这些组件不被使用时可能需要关闭它们以便降低功耗。
发明内容
本申请描述的至少一个示例提供了一种用于处理数据的设备,该设备包括:能够以至少两种功率模式操作的组件;组件功率控制电路,其通信地耦接到组件以使所述组件以从至少两种功率模式中选择的功率模式操作;以及系统功率控制器,其包括指令执行电路来执行一组指令以通过在组件功率控制电路中设置功率模式锁定条件来控制组件功率控制电路的操作,其中当满足功率模式锁定条件时,组件功率控制电路不能改变组件的选定功率模式。
本申请描述的至少一个示例提供了一种操作用于处理数据的设备的方法,该方法包括:从设备的组件功率控制电路向设备的组件发信号,以使组件以从至少两种功率模式中选择的功率模式操作;以选定的功率模式操作设备的组件;在系统功率控制器中执行一组指令以通过在组件功率控制电路中设置功率模式锁定条件来控制组件功率控制电路的操作;并且当满足功率模式锁定条件时,阻止组件功率控制电路改变组件的选定功率模式。
本申请描述的至少一个示例提供了一种用于处理数据的设备,该设备包括:用于从设备的组件功率控制电路向设备的组件发信号以使组件以从至少两种功率模式中选择的功率模式操作的装置;用于以选定的功率模式操作设备的组件的装置;用于在系统功率控制器中执行一组指令以通过在组件功率控制电路中设置功率模式锁定条件来控制组件功率控制电路的操作的装置;以及当满足功率模式锁定条件时,用于阻止组件功率控制电路改变组件的选定功率模式的装置。
附图说明
本技术将参照附图中所示的实施例仅通过示例的方式被进一步描述,其中:
图1示意性地示出了一个实施例中的设备,其中该设备的两个组件各具有相关联的硬件组件功率控制器;
图2更详细地示意性示出了在一个实施例中硬件组件功率控制器的内部配置;
图3示意性地示出了一个实施例中的设备,在该设备中,多个组件位于由单个硬件组件功率控制器控制的单个功率域内;
图4示意性地示出了一个实施例中的设备,在该设备中,与两个高性能CPU相关联的硬件组件功率控制器被配置为依然部分地处于系统功率控制器的控制之下,而与两个低性能CPU相关联的硬件组件功率控制器被配置为自主操作;以及
图5示出了根据一个实施例的方法的一系列步骤。
具体实施方式
在一些示例实施例中,具有用于处理数据的设备,该设备包括:能够以至少两种功率模式操作的组件;组件功率控制电路,其通信地耦接到组件以使所述组件以从至少两种功率模式中选择的功率模式操作;以及系统功率控制器,其包括指令执行电路来执行一组指令以通过在组件功率控制电路中设置功率模式锁定条件来控制组件功率控制电路的操作,其中当满足功率模式锁定条件时,组件功率控制电路不能改变组件的选定功率模式。
设备的系统功率控制器执行指令(例如采用运行固件的功率控制微控制器的形式),与设备(例如,片上系统)特有的且验证成本很高的硬件状态机相比,系统功率控制器具有灵活地可配置性。然而,本技术认识到如果系统功率控制器直接与要在功率模式之间切换的组件进行交互,那么如果这些组件由于其变化的工作负载而要进行高频的功率模式转换请求,则管理组件的功率模式对于系统功率控制器可能是巨大的工作负载。这可能导致其他任务被延迟或需要很大的系统功率控制器的处理功率(因此本身消耗更多的功率和/或占用更大范围)。为了解决这个问题,本技术提供了组件功率控制电路,组件的功率模式选择的一些控制被授权给该组件功率控制电路,从而减少系统功率控制器的处理负担。然而,本技术还认识到将组件的所有功率模式控制完全授权给其相关联的组件功率控制电路将不允许系统功率控制器管理设备的系统级功率特性。为了解决这个问题,系统功率控制器在组件功率控制电路中设置(定义)功率模式锁定条件,一旦满足该功率模式锁定条件,将使得组件功率控制电路不能改变组件的功率模式。根据功率模式锁定条件的具体定义,这意味着系统功率控制器可以允许组件在组件功率控制电路的控制下在其功率模式之间具有一些变动(movement),但是一旦满足功率模式锁定条件,组件的功率模式将不会改变,直到系统功率控制器进行干预从而允许这种情况发生为止。因此,系统功率控制器保持对组件的功率模式切换的控制级别,这尤其允许其维持对设备的功率特性的全系统控制。
功率模式锁定条件可以根据具体系统要求以各种方式定义,但是在一些实施例中,当满足功率模式锁定条件时,组件功率控制电路不能将组件的选定功率模式从至少两种功率模式的第一功率模式升到至少两种功率模式的第二功率模式,其中第二功率模式的功率消耗大于第一功率模式的功率消耗。因此,该定义的功率模式锁定条件指一旦组件功率控制电路将组件切换到第一(较低)功率模式,则其不能使组件自主地切换到第二(较高)功率模式。例如,在组件只有两种功率模式(开启和关闭)的情况下,这意味着组件电源控制电路能使得组件切换到关闭,但是不能在没有系统电源控制器的帮助下使得组件重新切换到开启。在另一示例中,在组件具有三种功率模式(开启、保持和关闭)的情况下,功率模式锁定条件可以被定义为使得组件功率控制电路能够在组件开启功率模式和组件保持功率模式之间自由地切换组件,以及将组件从组件开启功率模式或组件保持功率模式切换到组件关闭功率模式,但组件一旦切换到其关闭功率模式,则组件功率控制电路就不能将组件再次切换到开启,直到系统电源控制器干预以允许这种情况发生为止。这意味着再次开启组件的额外功耗仍然在系统功率控制器的控制之下,因此使得系统功率控制器能够对设备的功率特性具有改进的全系统管理。
在一些实施例中,功率模式锁定条件定义了组件的最小功率模式,并且当组件功率控制电路使组件进入最小功率模式时,组件功率控制电路的功率模式设置电路被锁定,并且组件功率控制电路不能改变组件的选定功率模式直到系统功率控制器解锁组件功率控制电路为止。因此,组件功率控制电路能够在高于最小功率模式的功率模式之间自由地切换组件,但是一旦组件被切换到其最小功率模式,组件功率控制电路将不能将组件再次切换到开启,直到系统功率控制器干预以允许这种情况发生为止。这意味着组件保持在最小功率模式,直到系统功率控制器允许组件(至少部分地)再次开启,因此使得系统功率控制器进一步控制设备的功率特性的全系统管理。
在一些实施例中,组件能够请求高于由系统功率控制器设置的最小功率模式的指定功率模式。虽然组件原则上可以请求由组件功率控制电路来实现的功率模式中的任何一种,但组件因此能限制自身选择(请求)那些高于最小功率模式的功率模式,因此不会导致组件功率控制电路被锁定。
当确定是否以及何时释放功率模式锁定条件时,系统功率控制器可以将各种标准考虑在内,但是在一些实施例中,系统功率控制器包括系统监视电路,用于监视如下参数组中的至少一个系统参数,该参数组包括:设备的总功耗;设备的温度;以及设备中的电流变化率,并且当满足功率模式条件时,系统功率控制器根据所述至少一个系统参数释放功率模式锁定条件。提供用于监视系统参数(如功耗、温度和电流变化)的系统监控电路意味着系统功率控制器能够通过根据这些参数决定何时释放(重置)功率模式锁定条件来维持对设备中这些量的控制。例如,当确定这将对这些系统参数中的至少一个具有不利影响时,系统功率控制器能够因此阻止组件切换功率模式,或者可以为组件设置切换规则以使得将系统参数中的至少一个保持在给定范围内的预定方法可以被保持。
组件功率控制电路可以以各种方式被提供,但是在一些实施例中,组件功率控制电路包括有限状态机电路,其中有限状态机电路的状态设置组件的选定功率模式,并且当满足功率模式锁定条件时,组件功率控制电路不能改变有限状态机电路的状态。这提供了可靠的基于硬件的机制,用于确保组件的功率模式和功率模式之间的转换被良好地定义,并且当满足功率模式锁定条件时,阻止组件的功率模式改变。
在一些实施例中,组件功率控制电路包括至少一个寄存器,其中至少一个寄存器的内容定义功率模式锁定条件,并且系统功率控制器能够经由在系统功率控制器和组件功率控制电路之间的软件接口来改变至少一个寄存器的内容。因此,基于寄存器的方法提供了定义功率模式锁定条件的灵活方式,并且还向系统功率控制器提供灵活的机制(通过软件接口)来定义和/或重置(释放)功率模式锁定条件。
通过将组件的功率模式的控制授权给组件功率控制电路,组件功率控制电路和组件可以以各种方式进行交互来设置组件的功率模式。在一些实施例中,当功率模式锁定条件不被满足时,组件功率控制电路响应于来自组件本身的功率模式改变请求来改变组件的选定功率模式。因此,组件能够请求特定的功率模式,并且只要功率模式锁定条件不被满足,组件功率控制电路就能够通过适当地改变组件的功率模式来进行响应。
应当注意,对于组件的功率模式改变的请求不需要来自组件本身,并且在一些实施例中,当功率模式锁定条件不被满足时,组件功率控制电路响应于来自设备中的另一组件的功率模式改变请求来改变组件的选定功率模式。设备中的另一组件可以例如取决于组件的操作,并且因此可以自身请求改变组件的功率模式。例如,当组件处于其“关闭”功率模式,并且另一组件需要它(至少暂时地)激活时,该另一组件能够向组件功率控制电路发送该请求。
在一些实施例中,组件功率控制电路包括中断生成电路,以向系统功率控制器发出中断来信号通知功率模式锁定条件被满足。因此,当满足功率模式锁定条件时,阻止组件功率控制电路改变组件的选定功率模式,该事实能够通过中断被信号通知给系统功率控制器。因此,系统功率控制器能够意识到组件功率控制器电路现在需要系统功率控制器干预以使得能够改变组件的功率模式。此外,在满足功率模式锁定条件之前,没有任何关于组件的功率模式改变的信息被传送到系统功率控制器,从而减少了其处理负担。
这种用于信号通知系统功率控制器的中断机制也可以用于通知系统功率控制器该组件正在请求功率模式改变,这将要求系统功率控制器进行干预。例如,在一些实施例中,当满足功率模式锁定条件时,中断生成电路能够向系统功率控制器发出中断以将功率模式改变请求信号通知系统功率控制器。在一个这样的示例中,组件本身可能希望改变其功率模式(例如当组件先前已经被锁定在低功率“保持”模式),并且产生唤醒请求以指示该请求移动到完全供电“开启”模式。因此,组件功率控制电路可以从组件接收这样的唤醒请求,并通过中断将其发送给系统控制器。系统功率控制器然后能够确定是否应该满足该功率模式改变请求,并且如果适当,则进行干预来允许它。
在一些实施例中,设备还包括能够以至少两种功率模式操作的另一组件,其中所述另一组件能够独立于系统功率控制器自主地在所述至少两种功率模式之间切换。因此,在一些配置中,在系统内可以具有各种组件,每个组件相对于系统功率控制器具有不同功率控制关系。一些组件能够进行自主功率模式切换,而一些组件至少部分地取决于系统功率控制器。这可以通过与系统功率控制器(至少暂时地)配置的设备的每个组件相关联的组件功率控制电路来实现。例如,在配置设备中存在的组件功率控制电路实例中,系统功率控制器可以允许控制消耗相对小功率的组件的功率模式的组件功率电路自主地操作,同时保持对与更高功率需求组件相关联的组件功率控制电路一定程度的控制。仅举一个示例,在设备包括不止一个处理器核心,并且这些处理器核心具有一定范围的功率特性的情况下,更强大的(以及更多的功率需求)核心可以被(至少部分地)保持在系统功率控制器的功率控制之下,而不太强大(且较小的功率需求)的核心可以被允许自主地选择其功率模式。
在一些实施例中,设备包括与所述组件一起包括在共享功率域内的另一组件,其中所述另一组件能够以至少两种功率模式操作,并且共享功率域的域功率模式定义选定的功率模式,其中组件功率控制电路通信地耦接到共享功率域,以使共享功率域中的所有组件以从至少两种功率模式中选择的功率模式操作,并且其中当满足功率模式锁定条件时,组件功率控制电路不能改变共享功率域的选定功率模式。因此,组件功率控制电路可以仅控制一个组件的功率,但是也可以控制不止一个组件的功率,其中组件功率控制电路控制功率域的功率模式,并且不止一个组件被包括在该功率域内。
在一些实施例中,具有一种操作用于处理数据的设备的方法,该方法包括:从设备的组件功率控制电路向设备的组件发信号,以使组件以从至少两种功率模式中选择的功率模式操作;以选定的功率模式操作设备的组件;在系统功率控制器中执行一组指令以通过在组件功率控制电路中设置功率模式锁定条件来控制组件功率控制电路的操作;并且当满足功率模式锁定条件时,阻止组件功率控制电路改变组件的选定功率模式。
在一些实施例中,具有一种用于处理数据的设备,该设备包括:用于从设备的组件功率控制电路向设备的组件发信号以使组件以从至少两种功率模式中选择的功率模式操作的装置;用于以选定的功率模式操作设备的组件的装置;用于在系统功率控制器中执行一组指令以通过在组件功率控制电路中设置功率模式锁定条件来控制组件功率控制电路的操作的装置;以及当满足功率模式锁定条件时,用于阻止组件功率控制电路改变组件的选定功率模式的装置。
现在将参考附图描述一些特定实施例。图1示意性地示出了一个实施例中的设备10。设备10的两个组件12和14被示出,组件12和14分别位于其自身的功率域16和18内。设备10还包括硬件组件功率控制器20和22,硬件组件功率控制器20和22分别与组件12和14中的一个相关联,并且对相应组件的功率模式控制至少部分地由系统功率控制器24授权。系统功率控制器24维持设备的总体功率控制,并且系统功率控制器24包括微控制器26,微控制器26被编程为通过其执行的固件28来执行系统功率控制功能。因此,本领域普通技术人员将理解,微控制器26包括各种处理电路(指令执行电路),以使其能够实现上述功能,各种处理电路的具体图示在图1中被省略,仅用于视觉清晰的目的。
还示出了系统功率控制器24,该系统功率控制器24接收表示温度信息、功率消耗信息和电流消耗(例如以电流测量的变化率的形式)的信号T、P和I。如下面将更详细讨论的那样,系统功率控制器24,或更具体地,微控制器26然后能够根据其接收的关于温度、功率和电流的信息来管理组件12和14的功率控制。图1中的虚线28示意性地示出了T、P、I信息可以来自系统功率控制器24外部的相应测量电路,或这样的测量电路也可以被包括在功率控制器24自身内。在上述电流测量的变化率的示例中,微控制器26可以基于瞬时电流测量自己确定该量。微控制器26通过软件接口30、32对硬件组件功率控制器20和22进行控制。硬件组件功率控制器20、22分别能够产生中断(IRQ),通过中断其分别可以与系统功率控制器24中的微控制器26进行通信。组件12、14分别包括功率电路34、36,功率电路34、36在相应的硬件组件功率控制器20、22的直接控制下操作,其将参照下面的附图被更详细地描述。
图2更详细地示出了一个实施例中的硬件组件功率控制器50的一些组件。如从图1的上述讨论中可以理解的,硬件组件功率控制器50与设备的组件相关联,以便代表系统功率控制器(在该实施例中为52)来控制该组件的功率模式选择。这里,被功率控制的组件是CPU 54。CPU 54能够被置于三种功率模式开启、保持或关闭中的一种。这通过功率电路56发生。对功率电路56的控制来自硬件组件功率控制器50,硬件组件功率控制器50又由系统功率控制器52控制。
硬件组件功率控制器50包括软件接口56,通过该软件接口56,系统功率控制器52能够直接向寄存器58、60和62进行写入。这些寄存器的内容定义了硬件功率控制器50执行对CPU 54的功率控制的方式。在初始化时,系统功率控制器52通过软件接口56定义功率策略58。该功率策略定义了CPU 54的功率模式的控制将由硬件功率控制器50锁定的条件。还需要设置锁定启用值60以使功率模式锁定机构处于激活状态,并且因此满足由功率策略所定义的功率模式锁定条件。在图2背景下的一个示例中,系统功率控制器52可以定义功率策略58以对应于处于CPU 54的最小功率模式(即关闭70)。换句话说,如果组件(CPU 54)被置于其关闭功率模式,则功率模式锁定条件根据该定义的功率政策被满足,从而触发功率模式锁定机构。在初始化时,系统功率控制器还设置锁定启用值60,来启用功率模式锁定机构。
在该示例中,硬件组件功率控制器50还包括有限状态机64,有限状态机64实现CPU54的三种功率模式,即开启66、保持68和关闭70。有限状态机64的电路确保CPU 54的功率模式只能在这三种状态之间以良好定义的方式转变。由有限状态机64实现的功率模式由功率模式状态寄存器74的内容定义。将功率模式状态寄存器74的内容与功率策略值58进行比较,以便确定功率模式锁定条件何时被满足。将从CPU 54自身或从与CPU 54交互的另一系统组件78接收的功率模式请求与功率策略(如果需要,参考由功率模式状态值74指示的当前功率模式)进行比较,以确定请求是否能够被满足。如果允许所请求的功率模式改变,并且特别地如果未设置锁定状态72,则通过改变在功率模式状态寄存器74中保持的值来实现改变。在一些示例中,组件可以(暂时地)将自身限制于功率模式改变请求,已知其不会触发功率模式锁定。然而,当功率模式锁定条件被满足并且当锁定启用值60被设置时,这导致锁定功率模式改变机构的锁定状态72被设置。一旦设置了锁定状态值72,则功率模式状态值74不能被改变,直到系统功率控制器52通过将解锁值写入到解锁寄存器62来进行干预为止,这反过来释放锁定状态72。
硬件组件功率控制器50的功率控制电路的锁定状态通过中断(IRQ)被信号通知给系统功率控制器52。为此,硬件组件功率控制器50具有中断设置和生成电路76。功率模式请求也由该组件接收,并且当功率控制电路被锁定时,功率模式改变请求(例如唤醒请求)被接收到,这也通过中断(IRQ)被信号通知给系统功率控制器52。如果系统功率控制器52确定应该满足功率模式改变请求,则其经由软件接口56访问硬件组件功率控制器50,以便将解锁值写入到解锁寄存器62,从而释放锁定状态72,使得功率模式改变请求允许组件的功率模式被改变,并且因此状态值74被更新。
图3示意性地示出了一个实施例中的系统100。在图3中,如在先前的图中,单个系统功率控制器102与单个硬件组件功率控制器104通信,但是与图1的组件和功率域相比,在图3中,三个组件110、112和114全部在单个功率域106内,并且因此它们全部一起受到功率控制。硬件组件功率控制器104通过标记为LPI的硬件接口(在这个实施例中,该硬件接口由ARM P-信道低功率接口提供)所通信的选定功率模式因此将域功率电路108,功率域106内的组件110、112和114都配置为经受相同的功率模式。选定相反地,当功率域106内的任何组件希望唤醒时,其唤醒请求只能使整个功率域(而不只是该组件)被移动到不同的功率模式(当该唤醒请求被授权时)。唤醒请求也经由硬件LPI接口被传送到硬件组件功率控制器104。还要注意的是,图3示意性地示出了可以单独地与硬件组件功率控制器104通信的另一组件116,并且特别地发送唤醒请求来唤醒功率域106。
图4示意性地示出了另一示例系统120,其中系统功率控制器122与四个硬件组件功率控制器124、126、128和130交互。每个硬件组件功率控制器与系统的组件相关联,在这个示例中,系统的组件是处理器核心(CPU)。从图中可以看出,这些CPU分为两类,即高性能CPU 132和134以及低性能CPU 136和138。系统功率控制器122经由其软件接口与硬件组件功率控制器中的每个进行交互,并且图4中的标记示出了,硬件组件功率控制器128和130已经被系统功率控制器配置为以完全自主的方式操作。因此,这些硬件组件功率控制器128和130能够在任何可用的功率模式(例如,开启、保持和关闭)之间自由地切换低性能CPU 136和138,而不会导致功率控制的任何锁定。相反地,系统功率控制器122已经配置硬件组件功率控制器124和126进行操作,使得当这些高性能CPU中的一个被切换到其最小功率模式时,硬件组件功率控制器的功率控制被锁定,从而进一步阻止功率模式改变,直到系统功率控制器进行干预为止。这种方法意味着,通过保持对高性能CPU 132和134何时被允许退出他们的关闭功率模式的控制,系统功率控制器仍然能够有效地管理系统功率和热预算,但是低性能CPU 136和138的功耗的显著程度(significance)已经被确定为处于不会不利地影响系统功率预算的水平。因此,如图4所示,当以这种方式自主配置时,硬件组件功率控制器128和130不会向系统功率控制器122发出中断,因为不需要功率模式请求或状态的通信。
图5示出了在一个实施例的方法中采取的一系列步骤。最初,在步骤150,系统功率控制器使用到硬件组件功率控制器的软件接口来设置其最小功率模式(在图5的示例中为关闭)并且使能功率控制锁定。换句话说,通过软件接口,系统电源控制器向硬件组件功率控制器中的相关寄存器进行写入,来建立该配置。在步骤152,继续系统的通常数据处理。因此,为了本讨论的目的,假设组件在该阶段已经开启并且可操作。然后在步骤154确定组件是否要求其应该进入其保持功率模式。如果否,则流程进行到步骤156,在步骤156确定组件是否请求关闭。如果否,则流程简单地循环回到步骤152,并且继续正常的数据处理,直到接收到这样的功率模式改变请求。考虑到第一步骤154,如果组件请求进入其保持功率模式,则流程进行到步骤158,在步骤158硬件组件功率控制器将该组件切换到其保持功率模式。此后,在步骤160确定(在一段时间之后)是否已经接收到组件要被切换到其开启模式的请求。如果是,则流程进行到步骤162,在步骤162硬件组件功率控制器将该组件切换到其开启功率模式,流程返回到步骤152,并且继续正常的数据处理。如果在步骤160确定组件尚未请求其开启功率模式,则流程进行到步骤164,在步骤164确定是否已经(从组件或为组件)接收到组件要被关闭的请求。当判定是“否”时,流程通过步骤166循环回去并且组件维持在其保持功率模式。
如果在步骤164确定组件已经请求其进入其关闭功率模式,或实际上在步骤156做出相同的确定,则流程从任一步骤进行到步骤168。在步骤168,硬件组件功率控制器关闭该组件并且在这样做时,硬件组件功率控制器的功率控制被锁定。流程然后经由步骤170(组件关闭,功率控制被锁定)进行到步骤172,在步骤172如果存在对该组件的唤醒请求(即,不是来自该组件本身,因为通常不预期关闭的组件能够发出其自己的唤醒请求),则流程进行到步骤174。当没有接收到这样的请求时,流程循环回到步骤170(即,组件维持关闭)。在步骤174接收到这样的唤醒请求时,硬件组件功率控制器通过中断将唤醒请求通知给系统功率控制器。在步骤176,然后由系统功率控制器确定允许功率组件上电是否将不会违反当前为系统设置的任何预定功率、热或电流变化率规定。应当理解,系统功率控制器还可以根据其他相关标准(例如当前活动/不活动的系统组件的计数)确定是否允许组件上电。如果在步骤176确定将发生这样的违规,即组件不应在此阶段被允许上电,则流程返回到步骤170,使组件处于关闭功率模式。然而,当在步骤176确定该组件可以被允许上电时,流程进行到步骤178,在步骤178系统功率控制器使用硬件组件功率控制器的软件接口将新值写入到相关寄存器以解锁功率控制。流程然后进行到步骤162,在步骤162硬件组件功率控制器开启组件并且流程进行到步骤152重新开始正常的数据处理。
总而言之,公开了一种设备和操作该设备的相应方法。设备的组件能够以至少两种功率模式中的一个操作,并且通信地耦接到组件的组件功率控制电路使得组件以这些功率模式中的选定功率模式操作。系统功率控制器通过在其中设置功率模式锁定条件来控制组件功率控制电路的操作。当满足功率模式锁定条件时,组件功率控制电路不能改变组件的选定功率模式。因此,对组件的功率控制被部分地从系统功率控制器授权给组件功率控制电路。
在本申请中,词语“配置为...”或“布置为”用于表示设备的元件具有能够执行定义的操作的配置。在该上下文中,“配置”是指硬件或软件的互连方式或布置。例如,设备可以具有提供所定义的操作的专用硬件,或者处理器或其他处理设备可以被编程为执行上述功能。“配置为”或“布置为”并不意味着设备元件需要以任何方式改变,以便提供所定义的操作。
尽管本文参考附图已经详细描述了本发明的说明性实施例,但是应当理解,本发明不限于这些精确实施例,并且可以由本领域的技术人员在不偏离由所附权利要求限定的本发明的范围的情况下进行各种改变、添加和修改。例如,在不脱离本发明的范围的情况下,可以对独立权利要求的特征与从属权利要求的特征进行各种组合。
Claims (15)
1.一种用于处理数据的设备,包括:
能够以至少两种功率模式操作的组件;
组件功率控制电路,所述组件功率控制电路通信地耦接到所述组件以使所述组件以所述至少两种功率模式中的选定功率模式操作;以及
系统功率控制器,所述系统功率控制器包括执行一组指令以通过在所述组件功率控制电路中设置功率模式锁定条件来控制所述组件功率控制电路的操作的指令执行电路,其中当满足所述功率模式锁定条件时,所述组件功率控制电路不能改变所述组件的选定功率模式。
2.如权利要求1所述的设备,其中当满足功率模式锁定条件时,所述组件功率控制电路不能将所述组件的选定功率模式从所述至少两种功率模式的第一功率模式升到所述至少两种功率模式的第二功率模式,其中所述第二功率模式的功率消耗大于所述第一功率模式的功率消耗。
3.如权利要求1所述的设备,其中所述功率模式锁定条件定义所述组件的最小功率模式,并且当所述组件功率控制电路使所述组件进入所述最小功率模式时,所述组件功率控制电路的功率模式设置电路被锁定,并且
所述组件功率控制电路不能改变所述组件的选定功率模式,直到所述系统功率控制器解锁所述组件功率控制电路为止。
4.如权利要求3所述的设备,其中所述组件能够请求高于由所述系统功率控制器设置的所述最小功率模式的指定功率模式。
5.如权利要求1所述的设备,其中所述系统功率控制器包括系统监视电路,用于监视如下参数组中的至少一个系统参数,该参数组包括:
所述设备的总功耗;
所述设备的温度;以及
所述设备中的电流变化率,并且
当满足所述功率模式条件时,所述系统功率控制器根据所述至少一个系统参数释放所述功率模式锁定条件。
6.如权利要求1所述的设备,其中所述组件功率控制电路包括有限状态机电路,其中有限状态机电路的状态设置所述组件的选定功率模式,并且当满足所述功率模式锁定条件时,所述组件功率控制电路不能改变所述有限状态机电路的状态。
7.如权利要求1所述的设备,其中所述组件功率控制电路包括至少一个寄存器,其中所述至少一个寄存器的内容定义所述功率模式锁定条件,并且所述系统功率控制器能够经由所述系统功率控制器和所述组件功率控制电路之间的软件接口来改变所述至少一个寄存器的内容。
8.如权利要求1所述的设备,其中当不满足所述功率模式锁定条件时,所述组件功率控制电路响应于来自所述组件的功率模式改变请求来改变所述组件的选定功率模式。
9.如权利要求1所述的设备,其中当不满足所述功率模式锁定条件时,所述组件功率控制电路响应于来自所述设备中的另一组件的功率模式改变请求来改变所述组件的选定功率模式。
10.如权利要求1所述的设备,其中所述组件功率控制电路包括中断生成电路,以向所述系统功率控制器发出中断来信号通知所述功率模式锁定条件被满足。
11.如权利要求10所述的设备,其中当满足所述功率模式锁定条件时,所述中断生成电路能够向所述系统功率控制器发出中断以将功率模式改变请求信号通知所述系统功率控制器。
12.如权利要求1所述的设备,还包括能够以至少两种功率模式操作的另一组件,其中所述另一组件能够独立于所述系统功率控制器自主地在所述至少两种功率模式之间切换。
13.如权利要求1所述的设备,包括与所述组件一起被包括在共享功率域内的另一组件,其中所述另一组件能够以至少两种功率模式操作,并且所述共享功率域的域功率模式定义选定的功率模式,
其中所述组件功率控制电路通信地耦接到所述共享功率域,以使所述共享功率域中的所有组件以从所述至少两种功率模式中选择的功率模式操作,并且
其中当满足所述功率模式锁定条件时,所述组件功率控制电路不能改变所述共享功率域的选定功率模式。
14.一种操作用于处理数据的设备的方法,所述方法包括:
从所述设备的组件功率控制电路向所述设备的组件发信号,以使所述组件以至少两种功率模式中的选定功率模式操作;
以选定的功率模式操作所述设备的所述组件;
在系统功率控制器中执行一组指令以通过在所述组件功率控制电路中设置功率模式锁定条件来控制所述组件功率控制电路的操作;并且
当满足所述功率模式锁定条件时,阻止所述组件功率控制电路改变所述组件的选定功率模式。
15.一种用于处理数据的设备,所述设备包括:
用于从所述设备的组件功率控制电路向所述设备的组件发信号以使所述组件以至少两种功率模式中的选定功率模式操作的装置;
用于以选定的功率模式操作所述设备的所述组件的装置;
用于在系统功率控制器中执行一组指令以通过在所述组件功率控制电路中设置功率模式锁定条件来控制所述组件功率控制电路的操作的装置;以及
当满足所述功率模式锁定条件时,用于阻止所述组件功率控制电路改变所述组件的选定功率模式的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/173,939 US10133341B2 (en) | 2016-06-06 | 2016-06-06 | Delegating component power control |
US15/173,939 | 2016-06-06 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107463242A true CN107463242A (zh) | 2017-12-12 |
CN107463242B CN107463242B (zh) | 2023-05-23 |
Family
ID=60483731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710388806.6A Active CN107463242B (zh) | 2016-06-06 | 2017-05-27 | 授权组件功率控制 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10133341B2 (zh) |
CN (1) | CN107463242B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10642341B2 (en) * | 2018-03-23 | 2020-05-05 | Juniper Networks, Inc. | Selective modification of power states based on conditions |
IL315283A (en) | 2018-03-30 | 2024-10-01 | Google Llc | Mediation parts of transactions in ritualistic channels attributed to connection |
US20190302861A1 (en) * | 2018-03-30 | 2019-10-03 | Provino Technologies, Inc. | Protocol level control for system on a chip (soc) agent reset and power management |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120054511A1 (en) * | 2010-08-31 | 2012-03-01 | Sonics, Inc | Intelligent power controller |
US20130073878A1 (en) * | 2011-09-19 | 2013-03-21 | Sonics, Inc. | Apparatus and methods for an interconnect power manager |
CN104049715A (zh) * | 2013-03-13 | 2014-09-17 | 英特尔公司 | 平台不可知的功率管理 |
CN105308571A (zh) * | 2013-06-21 | 2016-02-03 | 苹果公司 | 基于活动处理器的动态电压和频率管理 |
CN106293894A (zh) * | 2015-06-27 | 2017-01-04 | 英特尔公司 | 执行事务性功率管理的硬件设备和方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3321769A1 (en) * | 2003-05-07 | 2018-05-16 | Conversant Intellectual Property Management Inc. | Managing power on integrated circuits using power islands |
KR20060081413A (ko) * | 2003-09-16 | 2006-07-12 | 코닌클리즈케 필립스 일렉트로닉스 엔.브이. | 스위칭 가능 장치 및 그 작동 방법 |
US7155623B2 (en) * | 2003-12-03 | 2006-12-26 | International Business Machines Corporation | Method and system for power management including local bounding of device group power consumption |
KR101305497B1 (ko) * | 2006-08-14 | 2013-09-05 | 삼성전자주식회사 | 클라이언트 컴퓨터 및 원격관리 시스템 및 원격관리방법 |
EP2075696A3 (en) * | 2007-05-10 | 2010-01-27 | Texas Instruments Incorporated | Interrupt- related circuits, systems and processes |
US7730248B2 (en) * | 2007-12-13 | 2010-06-01 | Texas Instruments Incorporated | Interrupt morphing and configuration, circuits, systems and processes |
US8775839B2 (en) * | 2008-02-08 | 2014-07-08 | Texas Instruments Incorporated | Global hardware supervised power transition management circuits, processes and systems |
US8010822B2 (en) * | 2008-03-28 | 2011-08-30 | Microsoft Corporation | Power-aware thread scheduling and dynamic use of processors |
US20110213950A1 (en) * | 2008-06-11 | 2011-09-01 | John George Mathieson | System and Method for Power Optimization |
DE102008062692B4 (de) * | 2008-12-17 | 2013-11-14 | Texas Instruments Deutschland Gmbh | Eingebettetes Mikrocontrollersystem und Verfahren zur Konfiguration eines eingebetteten Mikrocontrollersystems mit gesteuertem Schaltmodus |
US8458499B2 (en) * | 2009-08-07 | 2013-06-04 | International Business Machines Corporation | Method for reducing power state in a computer system out-of-band when a request for reducing the power state is not immediately serviceable in band according to a priority of the request |
KR101620103B1 (ko) * | 2009-10-21 | 2016-05-13 | 삼성전자주식회사 | 멀티 코어 시스템에서 중앙 처리 장치의 전력 제어 장치 및 방법 |
US8271812B2 (en) * | 2010-04-07 | 2012-09-18 | Apple Inc. | Hardware automatic performance state transitions in system on processor sleep and wake events |
JP2015038651A (ja) * | 2011-01-26 | 2015-02-26 | 株式会社東芝 | 情報処理装置およびその制御方法 |
US9360909B2 (en) * | 2012-04-19 | 2016-06-07 | Intel Corporation | System, method and apparatus for energy efficiency and energy conservation by configuring power management parameters during run time |
US9195291B2 (en) * | 2013-06-21 | 2015-11-24 | Apple Inc. | Digital power estimator to control processor power consumption |
US9606605B2 (en) * | 2014-03-07 | 2017-03-28 | Apple Inc. | Dynamic voltage margin recovery |
-
2016
- 2016-06-06 US US15/173,939 patent/US10133341B2/en active Active
-
2017
- 2017-05-27 CN CN201710388806.6A patent/CN107463242B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120054511A1 (en) * | 2010-08-31 | 2012-03-01 | Sonics, Inc | Intelligent power controller |
US20130073878A1 (en) * | 2011-09-19 | 2013-03-21 | Sonics, Inc. | Apparatus and methods for an interconnect power manager |
CN104049715A (zh) * | 2013-03-13 | 2014-09-17 | 英特尔公司 | 平台不可知的功率管理 |
CN105308571A (zh) * | 2013-06-21 | 2016-02-03 | 苹果公司 | 基于活动处理器的动态电压和频率管理 |
CN106293894A (zh) * | 2015-06-27 | 2017-01-04 | 英特尔公司 | 执行事务性功率管理的硬件设备和方法 |
Also Published As
Publication number | Publication date |
---|---|
US20170351319A1 (en) | 2017-12-07 |
CN107463242B (zh) | 2023-05-23 |
US10133341B2 (en) | 2018-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4008989B2 (ja) | マイクロプロセッサ及びその最適化方法 | |
US7421601B2 (en) | Method and system for controlling power in a chip through a power-performance monitor and control unit | |
CN101472327B (zh) | 建立和动态控制能量消耗的系统和方法 | |
Floyd et al. | System power management support in the IBM POWER6 microprocessor | |
CN116097196A (zh) | 分级功率管理装置和方法 | |
KR20130082152A (ko) | 지능형 전력 제어기 | |
US20080028246A1 (en) | Self-monitoring and self-adjusting power consumption computer control system | |
CN107463242A (zh) | 授权组件功率控制 | |
JP2005502114A (ja) | 動的電圧制御方法および装置 | |
CN105867949A (zh) | 一种面向多结点服务器的bios在线刷新方法 | |
US20130124890A1 (en) | Multi-core processor and method of power management of a multi-core processor | |
KR20160119121A (ko) | 저-레이턴시 전환을 이용한 동적 클락 및 전압 스케일링 | |
US11340689B2 (en) | Thermal mitigation in devices with multiple processing units | |
CN100381977C (zh) | 用于控制元件的活动的方法、系统和处理器 | |
Sarma et al. | On-chip self-awareness using cyberphysical-systems-on-chip (CPSoC) | |
US10732697B2 (en) | Voltage rail coupling sequencing based on upstream voltage rail coupling status | |
WO2015044717A1 (en) | Electronic device and apparatus and method for power management of an electronic device | |
TW201237608A (en) | VR power mode interface | |
US20190187770A1 (en) | Technique for managing power domains in an integrated circuit | |
KR102333391B1 (ko) | 전자 장치 및 이의 전력 제어 방법 | |
US12086004B2 (en) | Selectable and hierarchical power management | |
Khan et al. | Hardware/software co-design architecture for thermal management of chip multiprocessors | |
US20060031835A1 (en) | Hierarchical management for multiprocessor system | |
JP5650302B1 (ja) | 電源制御システム及び電源制御方法 | |
US20240211321A1 (en) | Network devices with user-defined management of operating parameters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20180601 Address after: cambridge Applicant after: ARM Ltd. Applicant after: ARM TECHNOLOGY (CHINA) Co.,Ltd. Address before: cambridge Applicant before: ARM Ltd. |
|
TA01 | Transfer of patent application right | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |