CN101615067A - 经协调的链路功率管理 - Google Patents
经协调的链路功率管理 Download PDFInfo
- Publication number
- CN101615067A CN101615067A CN 200910150892 CN200910150892A CN101615067A CN 101615067 A CN101615067 A CN 101615067A CN 200910150892 CN200910150892 CN 200910150892 CN 200910150892 A CN200910150892 A CN 200910150892A CN 101615067 A CN101615067 A CN 101615067A
- Authority
- CN
- China
- Prior art keywords
- link
- power management
- delay
- equipment
- management controller
- 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
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/325—Power saving in peripheral device
Abstract
一种用于经协调的链路功率管理的方法、装置和系统。该方法的一些实施例包括:接收用于链路的一组链路状态中的每一个的退出时延,其中设备经由所述第一链路耦合到互连。确定并传输时延容许量的值,并接收平台时延。所述方法进一步确定用于所述设备的链路预算,所述链路预算指示从用于所述设备的链路状态退出可利用的时间量;以及至少部分基于所述链路预算,选择其中一个链路状态。
Description
技术领域
本发明的一些实施例总地涉及设备的链路功率状态。具体地,一些实施例涉及经协调的(coordinated)链路功率管理。
背景技术
在许多设备和系统中利用功率管理来降低功耗并延长操作。在功率管理中可以利用的处理是链路处理,在链路处理中,当利用率降低时,某些链路,例如在特定总线或其他互连标准下操作的链路,被置于较低功率状态中。
例如,通用串行总线(USB)是计算平台上最普遍的互连之一。USB是轮询式总线,在操作中,主机控制器启动总线上的所有事务,并控制每个事务的调度。该总线是用于计算机平台的I/O(输入/输出)互连,并且可以包括一个或更多个链路,其中,链路是端口之间的通信信道。可以对USB链路进行功率管理操作,当空闲时将链路置于较低功率状态中。
USB已经存在于不断演进中的标准之下,其中USB 2.0(2000年4月27日发布的“Universal Serial Bus Specification(通用串行总线规范)”,修改2.0)是当前标准,其以480mbp(兆比特每秒)速度进行操作,正在进展的是定义更高速的USB未来版本,例如以高达5Gbp(吉比特每秒)速度进行操作。USB 2.0标准定义了用于挂起和恢复链路的机制,该机制允许实现功率降低。此外,针对USB发布了工程变更通知(ECN)以提出链路功率管理。(2007年7月16日发布的Link Power Management Addendum(链路功率管理附录)ECN)。
附图说明
在附图的各图中,通过实例的方式而非限制的方式,图示了本发明的多个实施例,其中,相同的标号指代类似的元件:
图1是在链路功率管理系统的实施例中提出的链路状态的图示;
图2是用于经协调的链路管理的系统的实施例的图示;
图3是功率管理系统的实施例的图示;
图4是图示用于确定链路状态的过程的实施例的流程图;
图5是图示用于周期性传送的功率管理过程的实施例的流程图;以及
图6是可以包括经协调的链路功率管理的实施例的计算机系统的图示。
具体实施方式
本发明的实施例关注于经协调的链路功率管理。
本发明的一些实施例提供了经协调的链路功率管理,包括对适当链路状态的选择。具体地,方法、装置或系统的一些实施例提供了对诸如USB总线之类的互连的链路的功率管理。然而,本发明的实施例并不限于任何特定互连技术。
在一些实施例中,链路状态的功率管理被实现来提供优于常规方法的改善的节能方法,由此提升电池供电装备的电池寿命,所述装备包括诸如USB当前版本和进一步版本(USB 3.0及其他)的USB,以及其他互连。尽管这里可以针对USB描述实施例,但是这些实施例并不限于这种类型的互连。可以用任何已有或将来的与主机控制器一同操作的互连来实现这些实施例。
为USB 2.0提供的链路状态机制是粗粒度的,并且系统将花费数毫秒来进入和退出所定义的链路状态。USB标准最初意图是结合不需要快速链路转变时间的系统状态转变(例如在所定义的低功率系统状态S3和S4中)使用。例如,当系统处于完全运行的S0系统状态中并且设备处于D0设备状态中时,USB标准不提供细粒度的功率管理。
如上所示,USB 2.0ECN提出了类似于常规挂起/恢复信令但是具有更快转变时延(latency)的USB链路功率管理(LPM)。用于进入该LPM状态的策略是基于由主机控制器启动的空闲时间段。USB规范的未来版本可能定义可以基于不同业务模式来选择的附加链路状态。
在一些实施例中,系统提供由主机控制器引导的链路功率管理。在一些实施例中,系统对链路功率管理进行协调,以便将该系统中的时延限制考虑进入,并因此允许改善链路状态选择。
在一些实施例中,基于来自整个平台的信息相关集(a coherent set ofinformation)来控制和管理链路状态。这与常规处理相反,常规处理基于设备可获得信息的不完全集(例如设备内的空闲计时器)来设置链路状态,这提供了一种非鲁棒性的过程并且在许多情况中可能会导致设备缓冲器过运行(overrun)/欠运行(under-run)。
在一些实施例中,用平台功率管理来协调链路功率管理。因为链路状态退出时间一般比平台低功率状态退出时间短得多,所以缺少协调可能是有问题的。在一些实施例中,设备的端到端时延要求和与平台上功率管理控制器的握手被利用来产生时延预算,该时延预算可以用作对链路状态的确定的组成部分。
图1是功率管理系统的实施例中提出的链路状态的图示。图1中图示的链路状态是可以在USB的未来版本中利用的实例,但是本发明的实施例并不限于任何特定的链路状态定义。在一些实施例中,以某种方式使用这些链路状态,以便提供改善的功率管理。在图1中,该表包括所定义的链路状态110和对每个状态的描述120。此外,提供每个链路状态的退出时延130。如所指示的,链路状态U1、U2和U3的每一个针对退出时延都具有一个所定义的范围。在操作中,设备可以在其配置寄存器或其他存储器中定义每个链路状态的退出时延,这些退出时延在所定义的范围内。
然而,尽管USB的未来版本可能意图定义各种链路状态以及这些状态的进入与退出机制,但是这样的规范可能并不意图定义进入各种链路状态的策略。在一些实施例中,在由主机控制器引导的功率管理装置、处理或系统140中,利用了所定义的链路状态,该功率管理根据这些链路状态定义适当的进入与退出机制。
在一些实施例中,系统包括中央链路功率管理控制器(可以称为“LPMC”)。在一些实施例中,LPMC被集成到主机控制器内。在一些实施例中,从所有设备中收集平台响应时延要求,并且LPMC在不违反这些设备要求的情况下,做出关于可以进入哪些链路状态的决定。此外,LPMC将进一步考虑平台可能存在的较低功率状态退出时延。每种设备或设备驱动器可以基于诸如业务模式、设备上缓冲和性能要求之类的因素,来获得关于设备可以容许的端到端时延的知识,并且在一些实施例中,这种知识被利用来协调链路功率管理。
分布式链路功率管理方法和策略可以包括例如PCIe规范(PCI Express规范,包括PCI特别兴趣组于2002年7月22日发布的PCI Express BaseSpecification修改1.0,和随后PCI特别兴趣组于2007年1月15日发布的PCI Express Base Specification修改2.0)。在某些功率管理处理中,设备可能在不知道与可以受功率管理的平台组件及其相关退出时延相关的知识的情况下,启动并控制链路功率管理。在来自设备的特定响应时延要求的实现中,链路可以被置于低功率状态,这就阻止平台将其组件置于低功率状态,并且仍然能够满足设备要求。然而,将平台组件置于低功率状态产生的节能实际上可能远大于将链路置于低功率状态的情况,因此,可能会以妨碍改善系统功效的方式利用未经协调的链路状态。
在一些实施例中,中央链路功率管理装置或系统操作来从所有相关系统设备收集链路退出时延信息。当这些设备通过中心(hub)耦合时,将中心所引入的链路退出时延增加到设备链路退出时延中。在一些实施例中,信息收集可以由主机处理完成,并随后以原始或处理过的形式编程到LPMC中。在一些实施例中,作为替代,LPMC可以“走过(walk)”设备树并收集信息。在一些实施例中,例如,原始或已处理的信息例如可以本地存储在LPMC中,或者可替换地,可以存储在LPMC外部,例如存储在主机DRAM(动态随机访问存储器)中的主机控制器描述符结构内。在一些实施例中,在初始配置之后,设备将把它们的平台响应时延要求发送到LPMC。在一些实施例中,当由于发生例如数据业务的变化或电池供电和A/C电源供电之间的切换而造成设备的要求变化时,设备发送新的时延消息。
在一些实施例中,LPMC与平台功率管理控制器(在本文中可以称为“PPMC”)进行通信,并且针对总的端到端时延中的多少可以被用来提供链路功率管理进行协商。至少部分地基于该协商和收集到的信息,由LPMC选择适当的链路状态。
在一些实施例中,LPMC从它所有设备中获取最低时延要求,并将其转发给PPMC。在一些实施例中,PPMC可以与平台中任何其他功率管理控制器通信,以这种方式,确定了平台功率管理的深度。在一些实施例中,PPMC随后将该状态的退出时延传输到LPMC。在从该设备的时延要求中减去该数目之后,LPMC能够确定空闲时用于该设备的适当链路状态。
在一些实施例中,LPMC可以控制层次中所有链路的链路状态,或者可以控制任何设备链路的链路状态。在特定实施例中,LPMC仅可以控制设备链路状态,而例如根据以下处理来控制中心的链路状态:
(1)如果任何中心下游端口处于U0,则它的上游端口被置于U0;
(2)如果所有中心下游端口处于U1或更低的功率状态,则它的上游端口被置于U1;
(3)如果所有中心下游端口处于U2或更低的功率状态,则它的上游端口被置于U2;以及
(4)如果所有中心下游端口处于U3或更低的功率状态(例如,禁用链路状态或其中电源被移除的状态),则它的上游端口被置于U3。
在一些实施例中,对于等时(isochronous)和中断传送,LPMC启动处理来在该传送之前唤醒到设备的路径中的链路(具有调度的等时传送)。使用如上所述收集的链路退出时延信息来计算在该传送之前的时间量。
在常规操作中,USB 2.0中不存在细粒度的链路功率管理能力。因此,当任何USB 2.0设备被插入平台时,由于当事务在主机控制器内为待决(pending)时在链路上连续轮询,造成平台功率显著增加。在另一实例中,PCIe是提供特定链路功率管理能力的串行总线。用于对PCIe进行链路功率管理的策略分布在平台中,并且未与平台功率管理经协调。
由于,至少部分由于,对系统的功率管理中缺少经协调,导致常规链路功率管理在操作中可能是低效的。在没有经协调的情况下,可能很难为系统的元件提供有效的功率管理,尤其是对于可以以附加时延为代价产生更大节能的较深状态更是如此。
在一些实施例中,系统提供经协调的链路功率管理方法和策略,这些方法和策略可以提供以下方面:
(1)系统操作来从总线设备移去复杂性。系统可以被利用来允许实现鲁棒的中央链路功率管理策略,同时用来避免设备缓冲器溢出或欠运行。
(2)LPMC可以与其他平台功率管理控制器通信;并因此,所选择的链路状态可以被利用来提供改善的平台功率管理,同时不会造成不必要的性能降低。
在一些实施例中,处理可以向非周期端点提供链路功率管理策略算法。在一些实施例中,算法可以进一步包括用于中心后面存在的设备的处理,其中,中心引入的附加时延在确定时延时也需要考虑进入。
在一些实施例中,对于其中存在周期性传送(例如等时和中断传送)的系统,例如通过来自主机控制器的信息,向LMPC通知该周期性传送的服务区间。在这种处理中,LMPC可以负责在周期事务之前将到设备的路径中所有链路及时转变到U0状态,从而在周期数据中发送的时间戳对于同步来说足够准确。在一些实施例中,LMPC还知道平台功率管理的深度(平台的用于降低功率的功率状态),并且负责及时将平台从低功率状态唤醒,从而在数据传递中不存在延迟。
图2是用于经协调的链路管理的系统的实施例的图示。在该图示中,平台205包括一个或更多个功率管理控制器,例如PM控制器210(可以是处理器的一部分)和任何其他功率管理控制器215。PM控制器210可以与平台功率管理控制器(PPMC)225耦合,PPMC 225可以是控制中心的一部分。PPMC 225可以与诸如总线主机控制器230的互连主机控制器耦合,总线主机控制器230可以是但不限于,诸如USB主机控制器的串行总线控制器。总线主机控制器包括链路功率管理控制器(LPMC)235。LPMC 235操作来协调总线链路功率管理与平台205的功率管理。在链路功率管理中。LPMC 235可以利用一个或更多个计时器240。计时器在不同实现方式中可以不同,例如,可以表示不同的计时器元件或者可以表示计时器元件的各种计时器值。LPMC可以提供到一个或更多个设备(例如图示的设备A 250到设备n 255)的链路的功率管理。在一些实施例中,LPMC 230与附接的设备250-255通信,以确定这些设备的时延容许量,以及一个或更多个链路状态的退出时延。LPMC 230操作来向PPMC 225通知关于一个或更多个附接的设备250-255的时延容许量,PPMC 225与诸如PM控制器210的任意其他功率管理控制器通信。PPMC 225返回平台205的退出时延。LPMC 230应用该平台退出时延,以确定到附接的设备250-255的每个链路的链路预算,并针对在适当链路预算内的每个链路建立链路状态。
图3是功率管理系统的实施例的图示。在一些实施例中,系统300可以是但不限于:计算系统、个人计算机、服务器、移动计算机或其他类似系统。在一些实施例中,系统300包括可以作为中央处理单元(CPU)或图形处理单元(GPU)的处理器302。处理器302可以包括功率管理控制器304。处理器302可以与包括平台功率管理控制器(PPMC)311和USB控制器312的平台控制中心(PCH)310耦合,USB控制器312包括USB链路功率管理控制器(LPMC)314。PPMC 311可以与用于平台的其他功率管理控制器通信,如所示出的,用PPMC 311和功率管理控制器304之间经由接口(例如所图示的直接媒体接口(DMI)306)的握手进行通信。USB控制器312与任意数目的USB兼容设备耦合,例如,包括经由第一USB链路320耦合的设备A324和经由第二USB链路322耦合的设备B 326。
在该图示中,LPMC 314协调链路功率管理。在该实例中,设备A 324可以具有150微秒的时延容许量,U1状态退出时延为4微秒,而U2为80微秒。设备B 326可以具有250微秒的时延容许量,U1状态退出时延为4微秒,而U2为100微秒。在常规操作中,因为退出U2的时延小于设备A324的时延容许量,所以该设备可以转变到U2。在一些实施例中,协调链路管理以改善功率管理。在一个实施例中,将150微秒的时延容许量,即这些设备的最低时延容许量,提供给LPMC 314。LPMC将该时延容许量提供给PPMC 311,然后,PPMC 311返回用于平台的较低功率状态的100微秒的平台要求。可以在PPMC 311与平台上其他功率管理控制器进行通信之后确定该要求。使用该数据,LPMC 314能够确定用于设备A 324的链路功率管理的50微秒的链路预算。至少基于该链路预算,将到设备A 324的链路转变到U1,这是因为U1在50微秒链路预算内而U2不在该预算内。LPMC 314进一步确定用于设备B 326的150微秒的链路预算。对于设备B的这个链路预算,因为100微秒的退出时延小于150微秒的链路预算,所以可以转变到U2。因此,第一链路320在空闲时转变到U1,而第二链路322在空闲时转变到U2。
图4是图示用于确定链路状态的过程的实施例的流程图。在该图示中,由LPMC 402接收新的设备时延消息。该时延消息可以是来自设备的初始消息,或者是之后当条件改变时发出的更新的消息。如果附接的设备的最低时延已经改变,404,则新时延从LPMC发送到PPMC,408,以用于平台功率管理的确定。如果附接的设备的最低时延未改变,404,则重新确定设备链路状态,406,而不存在任何确定平台功率管理的要求。用最低时延信息,PPMC确定平台功率管理的深度,410,并将平台功率管理状态的退出时延返回到LPMC,412。然后,LPMC从每个设备的退出时延要求中减去所确定的平台退出时延时间,以确定每个设备的链路预算,414。
在一些实施例中,将链路预算与为每个链路状态所建立的退出时延进行比较,以确定当链路空闲时的链路状态。如果链路预算小于U1退出时延,416,则当链路空闲时链路状态保持在U0,418,因为转变到较低功率状态将需要太多时间。如果链路预算不小于U1退出时延而小于U2退出时延,420,则当链路空闲时链路状态转变到U1,422。如果链路预算不小于U2退出时延而小于U3退出时延,424,则当链路空闲时链路状态转变到U2,426。否则,当链路空闲时链路状态为U3,428。
图5是图示用于周期性传送的功率管理过程的实施例的流程图。在该图示中,通过主机控制器激活周期性传送,并且LPMC接收服务区间(“时间t1”)要求,505。基于接收到的服务区间,LPMC确定用于平台功率管理的时延容许量,并将该时延容许量传输到PPMC,510。然后,PPMC确定平台功率管理的深度,并将平台功率管理状态的退出时延发送到LMPC,515。
基于该信息,LMPC确定在每个服务区间之前用于唤醒平台的时间(“时间t2”),并用该时间对计时器编程,520。基于服务区间和每个链路状态需要的退出时延,LPMC针对事务之间的空闲时间段选择最佳链路状态,525。然后,LMPC基于所确定的链路退出时延对用于每个链路的计时器编程,以便允许在每个服务区间之前将链路转变到U0(完全运行状态),530。
对于计时器的到时,535,如果时间t1到时,则主机控制器启动周期事务,545。如果时间t2到时,则LPMC唤醒平台以进行操作,540。如果时间t3到时,则LPMC将链路转变回到U0,550。
图6是可以包括经协调的链路功率管理的实施例的计算机系统的图示。在该图示中,和本说明书关系不密切的一些标准和熟知的组件未被示出。在一些实施例下,计算机600包括:诸如总线605的互连或其他用于传输信息的通信装置;以及诸如与总线605耦合的一个或更多个处理器610的用于处理信息的处理装置。处理器610可以包括一个或更多个物理处理器和一个或更多个逻辑处理器。此外,每个处理器610可以包括多个处理器核心。为了简便,总线605被图示为单个总线,但是它可以表示多个不同的总线,并且到这些总线的组件连接可以改变。图6中示出的总线605是表示任何一个或更多个独立物理总线、点对点连接,或者通过适当的桥、适配器或控制器连接的这两者的抽象。例如,总线605可以包括系统总线、PCI或PCIe总线、HyperTransport或工业标准体系结构(ISA)总线、小型计算机系统接口(SCSI)总线、IIC(I2C)总线,或电气和电子工程师协会(IEEE)标准1394总线(有时称为“火线”)(IEEE于1996年8月30日公布的“Standard for a High Performance Serial Bus(用于高性能串行总线的标准)”1394-1995,及补充)。计算机600进一步包括诸如USB总线670的串行总线,可以将诸如设备A 675和设备B 680的一个或更多个USB兼容设备附接到USB总线670。在一些实施例中,计算机600可以支持功率管理,包括用于到USB总线670的链路的经协调的链路功率管理。
在一些实施例中,处理器610可以被利用来支持一个或更多个虚拟机。在一些实施例中,计算机600进一步包括随机访问存储器(RAM)或其他动态存储设备,作为用于存储处理器610执行的信息和指令的主存储器620。主存储器620还可以用于存储处理器610执行指令期间的临时变量或其他中间信息。在一些实施例中,关于链路状态的数据可以存储在主存储器中。RAM存储器包括需要刷新存储器内容的动态随机存取存储器(DRAM),和不需要刷新内容但是成本增加的静态随机存取存储器(SRAM)。DRAM存储器可以包括包含时钟信号以控制信号的同步动态随机存取存储器(SDRAM),和扩展数据输出动态随机存取存储器(EDO DRAM)。在一些实施例中,系统的存储器可以包括可被计算机系统中多个代理访问的共享存储器,例如共享的BIOS/OS存储器。计算机600还可以包括只读存储器(ROM)625或其他静态存储设备,用来存储用于处理器610的静态信息和指令。计算机600可以包括用于存储特定元素的一个或更多个非易失性存储器设备630,所述元素包括但不限于,系统BIOS和一个或更多个操作系统之前(pre-OS)的应用。
数据存储设备635也可以耦合到计算机600的总线605,来存储信息和指令。数据存储设备635可以包括磁盘、光盘及其对应驱动器,或其他存储器设备。这些元件可以被组合到一起,或者可以是分离的组件,并利用计算机600的其他元件的部分。在特定实施例中,数据存储设备635可以包括硬盘驱动器636。
计算机600还可以经由总线605耦合到显示设备640,例如阴极射线管(CRT)显示器、液晶显示器(LCD)、等离子显示器,或任何其他用于向终端用户显示信息的显示技术。在一些实施例中,显示设备640可以被利用来显示电视节目。在一些环境中,显示设备640可以包括触摸屏,所述触摸屏还用作输入设备的至少一部分。在一些环境中,显示设备640可以是或者可以包括音频设备,例如扬声器,用于提供音频信息,包括电视节目的音频部分。输入设备645可以耦合到总线605,来将信息和/或命令选择传输到处理器610。在各种实现方式中,输入设备645可以是键盘、小键盘、触摸屏和指示笔(stylus)、语音控制系统(voice-activated system)或其他输入设备,或者这些设备的组合。另一类可以包括的用户输入设备是指针控制设备650,例如鼠标、轨迹球或指针方向键,用于将引导信息和命令选择传输到一个或更多个处理器610,并用于控制指针在显示设备640上的移动。
还可以将一个或更多个通信设备655耦合到总线605。根据特定实现,通信设备655可以包括收发机、无线调制解调器、网络接口卡、母版上的LAN(局域网),或其他接口设备。通信设备655的使用可以包括从无线设备接收信号。对于无线电通信来说,通信设备655可以按照需要包括一个或更多个天线658,包括任何偶极或单极天线。在一个实施例中,通信设备655可以包括防火墙以防止对计算机600的非法访问。计算机600还可以使用通信设备655链接到诸如网络665的网络上,或者链接到其他设备,通信设备655可以包括到因特网、局域网或其他环境的链路。计算机600还可以包括电源设备或系统660,电源设备或系统660可以包括电源、电池、太阳能电池、燃料电池,或者其他用于提供或产生功率的系统或设备。电源设备或系统660提供的功率可以按照需要分配给计算机600的各个元件。在一些实施例中,功率分配可能受功率管理的影响,所述功率管理包括链路状态的功率管理。
受益于本公开内容的本领域技术人员将意识到,可以在本发明的范围内对前述说明和附图的做出许多其他变化。实际上,本发明并不限于上述细节。相反,由附带的包含了对其任何修改的权利要求书定义本发明的范围。
在上面的描述中,出于解释的目的,阐述了许多具体细节,以便提供对本发明的透彻理解。然而,对本领域技术人员显而易见,可以在没有这些具体细节中的一些的情况下实践本发明。在其他实例中,以方框图形式示出公知的结构和设备。
本发明的实施例可以包括各种处理。本发明的处理可以由硬件组件执行,或者可以实施在机器可执行指令中,所述机器可执行指令可以用来促使用这些指令编程的通用或专用处理器或逻辑电路执行这些处理。可替换地,可以通过硬件和软件的组合执行这些处理。
本发明的多个部分可以被提供为计算机程序产品,所述计算机程序产品可以包括其上具有存储的指令的计算机可读介质,所述指令可以用来对计算机(或其他电子设备)编程,以执行根据本发明的处理。计算机可读介质可以包括但不限于:软盘、光盘、CD-ROM(致密盘只读存储器)和磁光盘、ROM(只读存储器)、RAM(随机存取存储器)、EPROM(可擦除可编程只读存储器)、EEPROM(电可擦除可编程只读存储器)、磁或光卡、闪存,或者其他类型的适合于存储电子指令的媒体/计算机可读介质。此外,本发明的实施例还可以作为计算机程序产品而被下载。
许多方法以它们最基本的形式被描述,但是在不偏离本发明的基本范围的情况下,可以在任何方法中添加或删除处理,并在任何描述的消息中添加或删减信息。对本领域技术人员显而易见的是,可以做出进一步的修订和修改。特定实施例并不用来限制本发明,而是为了说明本发明。本发明的范围并不由上面提供的具体实例确定,而仅有附带的权利要求书确定。
应该意识到,本说明书中通篇引用“一个实施例”或“实施例”指特定特征可以包括在本发明的实践中。类似地,应该意识到,出于使公开内容流程化并帮助理解各种发明方面中的一个或更多个的目的,在前面对本发明示例性实施例的描述中,本发明的各种特征有时在单个实施例、附图或其描述中被组合在一起。然而,这种公开方法并不解释为反映了这样的意图:即要求保护的本发明需要的特征比每个权利要求中清楚叙述的特征更多。相反,如下面权利要求书所反映的,相对于前面单个公开的实施例的所有特征,各个创新性方案包含更少的特征。因此,权利要求书在这里清楚地并入本说明书,每个权利要求将其自己作为本发明的独立实施例。
Claims (20)
1.一种方法,包括:
接收用于第一链路的多个链路状态中的每一个的退出时延,第一设备经由所述第一链路耦合到互连;
确定并传输时延容许量的值;
接收平台时延;
确定用于所述第一设备的链路预算,所述链路预算指示所述第一设备从链路状态退出可利用的时间量;以及
至少部分基于所述链路预算,选择用于所述第一链路的所述多个状态中的一个。
2.如权利要求1所述的方法,进一步包括:接收所述第一设备的时延容许量。
3.如权利要求2所述的方法,进一步包括:接收第二设备的时延容许量和用于第二链路的多个链路状态中每一个的退出时延,所述第二设备经由所述第二链路耦合到所述互连。
4.如权利要求3所述的方法,其中,所确定的时延容许量的值是所述第一设备的时延容许量和所述第二设备的时延容许量中的较小者。
5.如权利要求1所述的方法,进一步包括:接收用于所述第一链路上的周期性传送的服务区间。
6.如权利要求5所述的方法,其中,所确定的时延容许量的值至少部分基于所接收的服务区间。
7.如权利要求5所述的方法,进一步包括:对第一计时器编程,以在服务区间之前唤醒平台。
8.如权利要求7所述的方法,进一步包括:对第二计时器编程,以在服务区间之前将所述第一链路转变到运行状态。
9.一种装置,包括:
平台功率管理控制器;以及
用于互连的主机控制器,其与所述平台功率管理控制器耦合,所述互连的主机控制器包括链路功率管理控制器,所述互连包括用于第一设备的第一链路,所述链路功率管理控制器控制所述第一链路的链路状态;
其中,所述链路功率管理控制器至少部分基于从所述平台功率管理控制器接收的平台时延要求和用于所述第一链路的多个链路状态中的每一个的退出时延,从所述多个链路状态中选择链路状态。
10.如权利要求9所述的装置,其中,所述链路功率管理控制器向所述平台功率管理控制器提供时延容许量。
11.如权利要求10所述的装置,其中,所述互连包括用于第二设备的第二链路。
12.如权利要求11所述的装置,其中,所述时延容许量的值是所述第一设备的时延容许量和所述第二设备的时延容许量中的较小者。
13.如权利要求10所述的装置,其中,经由所述第一链路进行周期性传送,所述周期性传送具有服务区间。
14.如权利要求13所述的装置,其中,所述时延容许量至少部分基于所述服务区间。
15.如权利要求9所述的装置,其中,所述互连是与通用串行总线(USB)规范兼容的总线。
16.一种系统,包括:
平台功率管理控制器;
用于通用串行总线(USB)的主机控制器,所述主机控制器包括链路功率管理控制器,所述USB提供用于第一设备的第一链路,所述链路功率管理控制器至少部分基于用于所述第一链路的多个链路状态的退出时延,确定用于所述第一链路的链路状态;
包括功率管理控制器的处理器,所述功率管理控制器与所述平台功率管理控制器耦合;以及
同步动态随机存取存储器(SDRAM),其存储关于所述链路状态的数据。
17.如权利要求16所述的系统,其中,所述链路功率管理控制器向所述平台功率管理控制器提供时延容许量。
18.如权利要求17所述的系统,其中,所述平台功率管理控制器确定平台时延要求,并将所述平台时延要求提供给所述链路功率管理控制器,所述平台时延要求至少部分基于所述时延容许量的值。
19.如权利要求18所述的系统,其中,所述平台时延要求的所述确定包括:所述平台功率管理控制器联系所述处理器的所述功率管理控制器。
20.如权利要求17所述的系统,其中,经由所述第一链路进行周期性传送,所述周期性传送具有服务区间,并且其中,所述时延容许量的值至少部分基于所述服务区间。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/146,873 | 2008-06-26 | ||
US12/146,873 US8255713B2 (en) | 2008-06-26 | 2008-06-26 | Management of link states using plateform and device latencies |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101615067A true CN101615067A (zh) | 2009-12-30 |
CN101615067B CN101615067B (zh) | 2011-10-05 |
Family
ID=41396935
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200910150892 Expired - Fee Related CN101615067B (zh) | 2008-06-26 | 2009-06-25 | 经协调的链路功率管理 |
Country Status (4)
Country | Link |
---|---|
US (2) | US8255713B2 (zh) |
CN (1) | CN101615067B (zh) |
DE (1) | DE102009030544B4 (zh) |
TW (1) | TWI420293B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9176570B2 (en) | 2012-12-29 | 2015-11-03 | Intel Corporation | System and method for providing universal serial bus link power management policies in a processor environment |
CN105247498A (zh) * | 2013-06-28 | 2016-01-13 | 英特尔公司 | 通用的基于主机的控制器延迟方法和装置 |
CN108008917A (zh) * | 2016-10-31 | 2018-05-08 | 三星电子株式会社 | 存储设备及控制其链接状态的方法 |
CN108388337A (zh) * | 2013-12-16 | 2018-08-10 | 高通股份有限公司 | 计算设备中的功率节省技术 |
USRE49591E1 (en) | 2013-12-16 | 2023-07-25 | Qualcomm Incorporated | Power saving techniques in computing devices |
CN108008917B (zh) * | 2016-10-31 | 2024-04-30 | 三星电子株式会社 | 存储设备及控制其链接状态的方法 |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8176341B2 (en) * | 2008-03-31 | 2012-05-08 | Intel Corporation | Platform power management based on latency guidance |
US8051314B2 (en) * | 2008-06-25 | 2011-11-01 | Intel Corporation | Serial ATA (SATA) power optimization through automatic deeper power state transition |
US9152199B2 (en) * | 2008-12-16 | 2015-10-06 | Microsoft Technology Licensing, Llc | Power state dependent wake-up alarm |
US8601296B2 (en) * | 2008-12-31 | 2013-12-03 | Intel Corporation | Downstream device service latency reporting for power management |
US8612998B2 (en) * | 2010-09-23 | 2013-12-17 | Intel Corporation | Coordinating device and application break events for platform power saving |
US8607075B2 (en) | 2008-12-31 | 2013-12-10 | Intel Corporation | Idle duration reporting for power management |
US8276010B2 (en) * | 2009-02-12 | 2012-09-25 | Cisco Technology, Inc. | Network based system to control and monitor power consumption of networked elements |
US9235251B2 (en) | 2010-01-11 | 2016-01-12 | Qualcomm Incorporated | Dynamic low power mode implementation for computing devices |
US8504855B2 (en) | 2010-01-11 | 2013-08-06 | Qualcomm Incorporated | Domain specific language, compiler and JIT for dynamic power management |
US8407504B2 (en) * | 2010-06-30 | 2013-03-26 | Intel Corporation | Systems and methods for implementing reduced power states |
US8719475B2 (en) * | 2010-07-13 | 2014-05-06 | Broadcom Corporation | Method and system for utilizing low power superspeed inter-chip (LP-SSIC) communications |
US8775836B2 (en) | 2010-12-23 | 2014-07-08 | Intel Corporation | Method, apparatus and system to save processor state for efficient transition between processor power states |
US8689028B2 (en) * | 2011-07-01 | 2014-04-01 | Intel Corporation | Method and apparatus to reduce idle link power in a platform |
US20130275791A1 (en) * | 2012-04-12 | 2013-10-17 | Qualcomm Incorporated | Method and System for Tracking and Selecting Optimal Power Conserving Modes of a PCD |
US9256268B2 (en) * | 2012-04-24 | 2016-02-09 | Intel Corporation | Adaptive low-power link-state entry policy for active interconnect link power management |
US9087158B2 (en) | 2012-06-30 | 2015-07-21 | Intel Corporation | Explicit control message signaling |
US9229525B2 (en) | 2013-06-17 | 2016-01-05 | Apple Inc. | Adaptive latency tolerance for power management of memory bus interfaces |
US9195292B2 (en) * | 2013-06-26 | 2015-11-24 | Intel Corporation | Controlling reduced power states using platform latency tolerance |
US9395795B2 (en) | 2013-09-20 | 2016-07-19 | Apple Inc. | System power management using communication bus protocols |
JP6139034B2 (ja) | 2013-09-27 | 2017-05-31 | インテル コーポレイション | 通信ポートのための低電力状態を有効にする技術 |
US10261569B2 (en) | 2015-05-01 | 2019-04-16 | Qualcomm Incorporated | Universal serial bus (USB) host and client devices for supporting scheduled low-power operations |
US10140221B2 (en) * | 2016-05-25 | 2018-11-27 | Dell Products L.P. | Method to handle host, device, and link's latency tolerant requirements over USB Type-C power delivery using vendor defined messaging for all alternate modes |
US10678199B2 (en) * | 2016-06-23 | 2020-06-09 | Intel Corporation | Systems, methods and devices for standby power entry without latency tolerance information |
US11263165B2 (en) * | 2016-12-31 | 2022-03-01 | Intel Corporation | Apparatuses for periodic universal serial bus (USB) transaction scheduling at fractional bus intervals |
TWI712893B (zh) * | 2018-09-04 | 2020-12-11 | 瑞昱半導體股份有限公司 | 資料傳輸格式轉換電路及控制其操作的方法 |
US10977197B2 (en) * | 2019-03-28 | 2021-04-13 | Intel Corporation | Providing multiple low power link state wake-up options |
US11157289B2 (en) * | 2019-05-13 | 2021-10-26 | Intel Corporation | Power management method and apparatus for virtualized I/O devices |
US11625084B2 (en) * | 2019-08-15 | 2023-04-11 | Intel Corporation | Method of optimizing device power and efficiency based on host-controlled hints prior to low-power entry for blocks and components on a PCI express device |
US11086384B2 (en) * | 2019-11-19 | 2021-08-10 | Intel Corporation | System, apparatus and method for latency monitoring and response |
US20230090103A1 (en) * | 2021-09-20 | 2023-03-23 | Western Digital Technologies, Inc. | Sideband Information Over Host Interface Considering Link States |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7865744B2 (en) * | 2002-09-04 | 2011-01-04 | Broadcom Corporation | System and method for optimizing power consumption in a mobile environment |
US7137018B2 (en) * | 2002-12-31 | 2006-11-14 | Intel Corporation | Active state link power management |
US7350087B2 (en) * | 2003-03-31 | 2008-03-25 | Intel Corporation | System and method of message-based power management |
US20050097378A1 (en) * | 2003-07-29 | 2005-05-05 | Hwang Andrew S. | Method and system for power management in a gigabit Ethernet chip |
US7343502B2 (en) | 2004-07-26 | 2008-03-11 | Intel Corporation | Method and apparatus for dynamic DLL powerdown and memory self-refresh |
US7529955B2 (en) * | 2005-06-30 | 2009-05-05 | Intel Corporation | Dynamic bus parking |
US7647515B2 (en) * | 2005-08-29 | 2010-01-12 | Dell Products L.P. | System and method for information handling system adaptive variable bus idle timer |
US8717346B2 (en) * | 2005-12-13 | 2014-05-06 | Ncr Corporation | Apparatus and methods for communicating with a low duty cycle wireless device |
US7716506B1 (en) * | 2006-12-14 | 2010-05-11 | Nvidia Corporation | Apparatus, method, and system for dynamically selecting power down level |
US7984314B2 (en) * | 2007-05-14 | 2011-07-19 | Intel Corporation | Power management of low power link states |
US20090172434A1 (en) * | 2007-12-31 | 2009-07-02 | Kwa Seh W | Latency based platform coordination |
US8176341B2 (en) | 2008-03-31 | 2012-05-08 | Intel Corporation | Platform power management based on latency guidance |
US8607075B2 (en) * | 2008-12-31 | 2013-12-10 | Intel Corporation | Idle duration reporting for power management |
US8601296B2 (en) * | 2008-12-31 | 2013-12-03 | Intel Corporation | Downstream device service latency reporting for power management |
-
2008
- 2008-06-26 US US12/146,873 patent/US8255713B2/en not_active Expired - Fee Related
-
2009
- 2009-06-18 TW TW98120437A patent/TWI420293B/zh not_active IP Right Cessation
- 2009-06-25 DE DE102009030544.0A patent/DE102009030544B4/de not_active Expired - Fee Related
- 2009-06-25 CN CN 200910150892 patent/CN101615067B/zh not_active Expired - Fee Related
-
2012
- 2012-08-28 US US13/597,045 patent/US8868948B2/en not_active Expired - Fee Related
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9176570B2 (en) | 2012-12-29 | 2015-11-03 | Intel Corporation | System and method for providing universal serial bus link power management policies in a processor environment |
CN105247498A (zh) * | 2013-06-28 | 2016-01-13 | 英特尔公司 | 通用的基于主机的控制器延迟方法和装置 |
CN105247498B (zh) * | 2013-06-28 | 2018-08-10 | 英特尔公司 | 通用的基于主机的控制器延迟方法和装置 |
CN108388337A (zh) * | 2013-12-16 | 2018-08-10 | 高通股份有限公司 | 计算设备中的功率节省技术 |
CN108388337B (zh) * | 2013-12-16 | 2021-08-20 | 高通股份有限公司 | 计算设备中的功率节省技术 |
USRE49591E1 (en) | 2013-12-16 | 2023-07-25 | Qualcomm Incorporated | Power saving techniques in computing devices |
USRE49652E1 (en) | 2013-12-16 | 2023-09-12 | Qualcomm Incorporated | Power saving techniques in computing devices |
CN108008917A (zh) * | 2016-10-31 | 2018-05-08 | 三星电子株式会社 | 存储设备及控制其链接状态的方法 |
CN108008917B (zh) * | 2016-10-31 | 2024-04-30 | 三星电子株式会社 | 存储设备及控制其链接状态的方法 |
Also Published As
Publication number | Publication date |
---|---|
DE102009030544B4 (de) | 2017-02-23 |
US20090327774A1 (en) | 2009-12-31 |
DE102009030544A1 (de) | 2010-01-07 |
US20120324265A1 (en) | 2012-12-20 |
TWI420293B (zh) | 2013-12-21 |
US8868948B2 (en) | 2014-10-21 |
CN101615067B (zh) | 2011-10-05 |
US8255713B2 (en) | 2012-08-28 |
TW201015289A (en) | 2010-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101615067B (zh) | 经协调的链路功率管理 | |
US9336070B1 (en) | Throttling of application access to resources | |
JP5661874B2 (ja) | 電力管理のためのアイドル期間報告 | |
US9213393B2 (en) | Power management of low power link states | |
JP6713906B2 (ja) | ソリッドステートドライブ及びその動作方法 | |
CN104601203A (zh) | 一种低功耗蓝牙设备动态调整连接参数的方法及装置 | |
CN103593234B (zh) | 自适应进程重要性 | |
CN102651785A (zh) | 移动设备的应用处理器的远程唤醒 | |
KR20120096864A (ko) | 모바일 디바이스의 무선 충전 | |
US20120166731A1 (en) | Computing platform power management with adaptive cache flush | |
CN108228492A (zh) | 一种多通道ddr交织控制方法及装置 | |
CN104679582A (zh) | 对于显示设备的命令调度 | |
CN103827820A (zh) | 管理计算设备的数据使用 | |
CN202257553U (zh) | 一种通用串口到modbus的协议转换器 | |
CN103995755A (zh) | 基于移动终端的服务器优化方法及服务器系统 | |
CN102262434A (zh) | 基于加速计输出来修改电子设备的转换的方法和装置 | |
TW201037508A (en) | Serial bus hub with low power devices | |
US9524260B2 (en) | Universal serial bus (USB) communication systems and methods | |
US9990027B2 (en) | Status switching method | |
CN104298474A (zh) | 一种基于服务端与外部缓存系统的外接式计算设备加速方法与实现该方法的设备 | |
CN107004397A (zh) | 使用宿请求的刷新率控制 | |
CN105893118B (zh) | 一种信息处理方法及电子设备 | |
JP2018509682A (ja) | 入出力動作特性に基づくシステムオンチップアイドル電力状態制御のシステムと方法 | |
CN103813025A (zh) | 省电方法及其手持电子装置 | |
CN116450555B (zh) | 通过串行外设接口通信的方法及装置 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20111005 Termination date: 20210625 |
|
CF01 | Termination of patent right due to non-payment of annual fee |