CN101986241B - 用于存储系统中功率分配的方法和设备 - Google Patents

用于存储系统中功率分配的方法和设备 Download PDF

Info

Publication number
CN101986241B
CN101986241B CN201010003803.4A CN201010003803A CN101986241B CN 101986241 B CN101986241 B CN 101986241B CN 201010003803 A CN201010003803 A CN 201010003803A CN 101986241 B CN101986241 B CN 101986241B
Authority
CN
China
Prior art keywords
power
controller
message
sas
request
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
Application number
CN201010003803.4A
Other languages
English (en)
Other versions
CN101986241A (zh
Inventor
B·A·戴
B·D·贝斯默
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avago Technologies International Sales Pte Ltd
Original Assignee
Avago Technologies Fiber IP Singapore Pte Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Avago Technologies Fiber IP Singapore Pte Ltd filed Critical Avago Technologies Fiber IP Singapore Pte Ltd
Publication of CN101986241A publication Critical patent/CN101986241A/zh
Application granted granted Critical
Publication of CN101986241B publication Critical patent/CN101986241B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/266Arrangements to supply power to external peripherals either directly from the computer or under computer control, e.g. supply of power through the communication port, computer controlled power-strips

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Supply And Distribution Of Alternating Current (AREA)

Abstract

用于在与控制器耦合的多个装置中对功率分配改进管理的方法和系统。控制器(102)和装置(106.1至106.4)交换消息以请求,准许和释放来自共用电源(108)的功率分配。在一些实施例中,该控制器可以是SAS/SATA控制器,交换的消息可以是SAS/SATA帧和/或原语。在示例性实施例中,该消息可以请求/准许由电源提供的一个或多个电压电平中的每一个的具体功率量。在其它示例性实施例中,该消息可以指定请求装置可使用所分配的功率的持续时间。从装置发送到控制器的功率状态消息可以指示装置功率消耗的变化。响应于功率状态消息,控制器可以重新分配先前分配给装置的、已经完成其使用的功率。

Description

用于存储系统中功率分配的方法和设备
背景技术
在各种电子系统中,在公共控制单元的控制下使用共用电源为该系统中的多个装置供电。例如,在存储系统中,存储控制器可以可控制地调整从电源向多个存储装置中的每一个的功率施加。具体来说,每个存储装置可以例如是旋转盘驱动器。这种装置在最初被应用时可以使用最小的功率,但是随后当该盘驱动器的电机开始旋转该盘驱动器内的转动存储介质时该装置可能消耗相当大的功率。尽管当该电机达到期望的转速时(即,处于稳定态操作中),该盘驱动器消耗较少的功率,但是对于短促的时间,该盘驱动器可能要求相当大的功率来起动并完成其初始化。
在包括例如SCSI架构(包括串行连接SCSI-SAS)系统的所许多当前的存储系统中,与存储装置耦合的控制装置可以使用命令结构和/或协议原语/序列以在其控制下对每个存储装置的“起转(spin-up)”进行控制和排序。这种控制装置可以例如包括存储控制器(例如,SCSI、SAS或SATA控制器)、SAS扩展器、SATA端口倍增器等。该控制装置可以例如限制在任意给定的时间点被起转的SCSI盘驱动器的数量,直到最后所有盘驱动器都被启动并旋转。因此SCSI/SAS存储控制器可以在其控制下限制多个盘驱动器的起转功率需要。然而,该存储控制器不知道SCSI盘驱动器可能需要附加的功率多久来完成初始化。因此,目前的SCSI/SAS存储控制器假定允许最长可能持续时间用于与其耦合的每个SCSI盘驱动器初始化的最坏情形。该方案可能在存储系统的初始化时引起显著的不必要的延迟,并且因此延迟了所附加的主系统对该存储系统的访问。
在一些存储系统环境中,存储装置可以耦合到多个控制装置,或者可以自动改变它们的功率消耗状态。此外,控制装置甚至可以不以相同的功率域(powerdomain)耦合以使得它能够知道存储装置的可用功率状态。在这种情况下,简单的命令结构可能不足以容许控制装置对存储装置的功率消耗进行调整和排序。在串行高级技术附件(SerialAdvancedTechnologyAttachment,SATA)盘驱动器的情况下这些问题被进一步加剧。尽管SCSI/SAS和SATA标准提供了容许耦合到适应的(compliant)控制装置的盘驱动器的受控启动的命令结构,但是SATA协议没有提供非面向命令技术(non-commandorientedtechnique)以容许控制装置调整装置的功率消耗。因此作为控制装置的SATA控制器和端口倍增器可能缺乏有效地调整向与其耦合的SATA存储装置施加功率的能力。因此当前使用SATA盘驱动器的存储系统典型地提供显著过大(过剩容量)的功率供应以容许所有SATA时的最坏情况的功率消耗。这种过大功率供应增加了存储系统的成本/复杂性。
因此,在多个包括在初始化期间需要功率突发(burst)的装置的系统中管理功率分配是一个现实挑战。
发明内容
本发明通过提供用于在控制器的控制下管理从共用电源到多个装置的功率分配的方法和系统解决了上述及其它问题,从而使该实用技术的状态得以前进。该控制器和装置交换消息以控制对多个装置的功率分配。装置将功率请求消息发送给控制器。控制器保持来自电源的当前可利用的功率容量的指示器。如果当前可利用的功率容量足以准许装置的请求,则从控制器向请求装置发送功率准许消息(powergrantmessage),并且更新当前可利用的功率容量以反映该分配。在一些实施例中,可以从装置向控制器发送表示该装置功率消耗变化的功率状态消息。例如,当装置完成其附加功率的使用时,可以向控制器发送功率状态消息以指示不再需要先前分配的附加功率。
在一个示例性实施例中,该控制器可以是SAS/SATA控制器并且该装置可以是SAS/SATA存储装置,如转动盘驱动器。当存储装置需要附加功率时(例如,用于转动存储介质的电机的起转),它向控制器请求附加功率。当控制器准许该附加功率时,存储装置可以随后使该电机起转。在一些示例性实施例中,当不再需要该附加功率时(例如,转动存储介质已经达到稳态转速),该装置可以将功率状态消息发送给控制器以允许控制器重新分配被释放的附加功率容量。在一些示例性实施例中,交换的消息可以是SAS/SATA帧和/或原语(primitive)。
在本发明的一个方面,在包括控制器和与该控制器耦合的多个装置的系统中提供一种方法。该方法管理施加到与该控制器可通信地耦合的多个装置中每一个的功率。该方法包括在控制器内向所述多个装置中的每一个分配初始功率量并且在控制器中接收来自装置的功率请求消息。该方法然后在控制器内确定当前是否有足够的功率容量可以利用。响应于确定出当前有足够的功率容量可以利用,该方法然后包括在控制器内将附加功率分配给该装置,并且从控制器向该装置发送功率准许消息以准许该装置使用分配的附加功率。
本发明的另一个方面提供一种用于在存储系统中管理功率分配的方法。该存储系统包括使用通信介质和协议耦合到多个存储装置的存储控制器。该方法可以在存储控制器中操作。该方法包括确定总的可利用功率容量,向所述多个存储装置中的每一个分配初始功率量,并基于分配给所述多个存储装置中的每一个的初始功率量的总和调节所述总的可利用功率容量。该方法然后从所述多个装置中的请求装置接收请求附加功率量的功率请求消息。该方法然后确定所述总的可利用功率容量是否足以提供所请求的附加功率量。响应于确定出所述总的可利用功率容量足以提供所请求的附加功率量,该方法然后包括向所述请求装置分配所请求的附加功率量,发送功率准许消息给所述请求装置,并基于所请求的附加功率量调节所述总的可利用功率容量。
本发明的另一方面提供一种系统,该系统包括:电源;多个装置,每个装置被耦合为从该电源接收功率并且每个装置适于在操作期间要求变化的功率量;以及与所述多个装置中的每一个可通信地耦合的SAS控制器。该控制器适于与所述多个装置中的一个或多个装置交换SAS信息以管理由所述一个或多个装置消耗的电源功率的消耗。
附图说明
图1是根据本发明的特征和方面的适于管理对耦合到共用控制器和共用电源的多个装置的功率分配的示例性系统的框图。
图2是描述根据本发明的特征和方面的用于管理对耦合到控制器的多个装置的功率分配的示例性方法的流程图。
图3是描述根据本发明的特征和方面的用于管理对耦合到控制器的多个装置的功率分配的另一个示例性方法的流程图。
具体实施方式
图1是根据本发明的特征和方面而改进的系统100的框图,该系统用于管理由耦合到控制器的一个或多个装置106.1至106.4的功率消耗。系统100可以包括电源108、SAS控制器102以及一个或多个装置106.1至106.4(每一个装置与电源108耦合并与SAS控制器102耦合)。每一个装置106.1至106.4可以经由信号路径152从电源108接收一个或多个电压电平。SAS控制器102可以包括功率管理模块104,功率管理模块104被耦合为经由路径150与SAS装置106.1至106.4通信。尽管在本文中被称为“SAS”控制器,但是存储控制器102可以是任何适当的控制装置,包括例如SAS/SATA存储控制器,SAS扩展器、SATA端口倍增器等。
在一个示例性实施例中,装置106.1至106.4可以是SAS/SATA装置,如盘驱动器或其它存储装置。在这种实施例中,通信路径150代表适应SAS或SATA标准的任何适当的通信介质。功率管理模块104与装置106.1至106.4通信以管理共享电源108的共用功率源的所述装置中的每一个的功率消耗。更具体来说,功率管理模块104与装置106.1至106.4交换信息(例如,控制和状态信息)以管理由装置106.1至106.4中的任意一个消耗的功率量以及/或者各装置106.1至106.4的功率消耗的定时或顺序。
SAS控制器102可以是作为与一个或多个SAS/SATA装置106.1至106.4通信的SAS控制器的任何适当的计算装置。在一个示例性实施例中,SAS控制器102可以是SAS启动器(initiator)。在其它实施例中,SAS控制器102可以是SAS扩展器。在一些示例性实施例中,功率管理模块104可以是由SAS控制器102内的通用或专用处理器执行的适当程序化的指令。在其它实施例中,功率管理模块104可以作为定制的电路和/或定制的电路与适当程序化的指令的组合来实施。因此功率管理模块104代表用于与装置106.1至106.4相互作用以管理各装置的功率消耗的任何适当的控制结构。
在图1的示例性实施例中,在功率管理模块104和各装置106.1至106.4之间交换的信息可以是SAS帧、SAS原语和/或SATA帧。如下文中进一步讨论的,如此交换的SAS/SATA信息可以包括从装置106.1至106.4引导到SAS控制器102内的功率管理模块104的用于请求为该装置分配功率的请求消息。在一个示例性实施例中,该请求消息可以指示该装置需要的附加功率量。例如,在转动盘驱动器的起转操作期间,在转动介质达到稳态的受控速度之前该盘驱动器需要附加功率。在这种情况下,该装置会向SAS控制器102的功率管理模块104发出用于请求为该装置的操作分配附加功率的请求消息。
尽管SAS控制器102的功率管理模块104不(一定)物理控制从电源108经由路径152向装置106.1至106.4的功率施加,但是请求装置依然会等待接收来自SAS控制器102的功率管理模块104的准许消息。当确定出当前有足够的功率容量可以利用来满足请求装置的功率请求消息时,可以从SAS控制器102发送准许消息。在一个示例性实施例中,如果当前只有小于所请求的量可以利用,则该准许消息可以指示分配给该请求装置的具体功率量。在其它实施例中,该准许消息可以指示请求装置可以使用所分配的附加功率的持续时间。另外的其它实施例可以使用准许消息来指示可以从电源108获得的多个电压电平中的每一个的附加功率的具体量和/或附加功率的持续时间。
在另外的其它示例性实施例中,可以由装置106.1至106.4产生功率状态消息并且该消息可以被发送回到SAS控制器102。这种功率状态消息可以指示例如对应的装置关于其功率消耗的状态变化。例如,当先前请求的并且被准许的附加功率不再被需要时,可以从该装置向存储控制器发送功率状态消息。在这种情况下,存储控制器可以将先前分配的功率容量返回到可能分配给其它装置的可利用功率容量的累计总和。
图1的系统100和上述等同结构通过使得SAS控制器102能够(通过其功率管理模块104)更准确和迅速地对耦合到SAS控制器102的多个存储装置106.1至106.4中的每一个的加电(起转)处理进行排序来改进现有技术。控制器102可以在每个装置准备好起转处理时接收来自该装置的请求,然后可以对准许给每个请求装置的功率进行排序,以便使电源108的可利用功率的使用最大化,同时确保永远不准许超过可利用容量的功率容量。此外,控制器从装置106.1至106.4接收到的功率状态消息可以允许SAS控制器更紧密地控制多个盘驱动器(装置106.1至106.4)的起转顺序的定时。存储控制器在认为该装置已经完成其起转处理之前不需要像当前实践中那样等待最大延迟。在这种示例性实施例中,存储控制器102可以在从完成其起转处理的前面装置的功率状态消息得知完成时立即允许另一个装置开始起转处理。
在一个示例性实施例中,功率管理模块104的功率分配管理可以通过使用控制器102的功率管理模块104中的计数器功能/结构来实现。可以初始化这种计数器以指示最大可利用功率。还可以初始化多个计数器以代表由电源108提供的多个电压电平中的每一个可利用的最大功率。可以在制造系统100时将(电源108提供的每个电压电平的)初始最大可利用功率配置为控制器102中的参数,也可以由系统100的管理用户动态地配置该初始最大可利用功率,或者可以通过控制器102和电源108之间的适当数据路径(未示出)在二者之间的交换来动态地确定该初始最大可利用功率。
当功率被分配给装置时,计数器减去准许给装置的功率量。当该装置完成了对分配功率的使用时(或者指示其功率消耗状态的变化),计数器可以适当递增以指示减少的功率消耗并且因此使得当前可利用的功率能够被分配给其它装置,而不等待装置使用附加功率的最大超时。因此,响应于所交换的各种消息,计数器被更新,以保持对电源108的当前可利用功率的记录。
对于本领域的技术人员来说,图1的完全功能系统100中的多个附加和等同模块以及元件是显而易见的。为了讨论的简化和简短,在本文中省略了这些等同和附加特征。具体来说,本领域的技术人员容易想到可以将任意数量的装置106耦合到SAS控制器102。因此对四个示例性装置的描述只是意图提出多个装置106与SAS控制器102耦合的系统100的一种可能的配置。此外,本领域的技术人员容易想到电源108可以提供多种施加到装置106.1至106.4的电压电平。每种电压电平可以与对应的当前可利用容量计数器相关联,并且因此在SAS控制器102和装置106.1至106.4之间交换的请求和准许信息可以包括对所请求和所准许的一个或多个具体电压电平的标记。
图2是描述根据本发明的特征和方面的示例性实施例的流程图,其允许对耦合到共用电源和存储控制器的多个装置的功率分配的改进管理。例如,可以在诸如图1的系统100的系统中操作图2的方法。更具体来说,可以由可在图1所例举的系统的存储控制器内操作的功率管理模块执行图2的方法。
首先,步骤200考虑从总的可利用功率容量对每个附接装置的初始功率分配。在一个示例性实施例中,可以将计数器初始化为代表来自电源的总的可利用功率。对于由电源产生的每个可利用电压电平可以具有一个计数器。可以如上所述预先确定和预先配置(例如每个电压电平的)总的可利用功率容量,并且/或者可以通过与电源的通信来动态地确定总的可利用功率容量。对每个装置的初始功率分配考虑了使得每个装置的控制电子器件能够开始处理从而允许与控制器进行通信的每个装置的最小功率需求。就耦合到控制器的盘驱动器装置而言,初始功率分配典型地不包括使转动盘介质起转所需的附加功率容量。相反,初始功率分配可以只考虑控制该装置以使其能够与存储控制器进行最小限度通信的计算逻辑,或者只考虑初始起转之后该装置的正常稳态操作。
然后,步骤202从附接装置接收功率请求消息。如上面指出的,该消息可以被编码为SAS/SATA帧和/或原语。在一个示例性实施例中,功率请求消息可以表示分配标准功率量的标准请求,并且不需要指定所要求的特定功率量。可以由系统设计者/制造者或者由管理用户预先确定并预先配置该标准功率量。在其它示例性实施例中,功率请求消息可以指定该装置的进一步操作所要求的附加功率量。在更进一步的示例性实施例中,功率请求消息可以指示对由电源提供的多个电压电平中的每一个所需的具体功率量。
然后,步骤204确定当前是否有足够的可利用的功率容量来满足从附接装置接收到的附加功率请求。如上面指出的,在功率请求消息指示来自多个可利用电压电平中的每一个的特定功率量的情况下,步骤204确定所请求的附加容量是否可以从所有确定的电压电平获得。如果不是,则处理继续在步骤204循环,直到恢复了足够的可利用的容量。可以作为线程编程范例(threadprogrammingparadigm)实现步骤204的处理,其中在可以满足其它线程中处理的其它请求的同时(例如,因为它们需要较少功率),特定的请求可以等待足够的可利用的功率。因此,本领域的技术人员将理解步骤204中例举的简单循环结构代表这样的简单循环结构以及更普通的多线程或者多任务编程范例或实施方式。
当已经确定出足够的可利用的功率容量时,步骤206分配由请求装置请求的附加功率。如上面指出的,在功率请求消息确定功率容量的具体量以及/或者与每个被请求的容量相关联的具体的电压电平的情况下,步骤206的分配可以考虑对一个或多个电压电平中的每一个的功率分配(例如,如上所述,适当的计数器递减)。此外,在准许的附加功率容量用于有限持续时间的情况下,步骤206的处理还可以指出该附加功率的使用期满的预期时间。步骤206的处理一般需要记录当前分配给多个装置中每一个的功率容量和/或准许特定水平的功率分配的持续时间。控制器的功率管理模块内的适当的表格结构可以用于这种记录目的。因此,控制器不一定需要物理控制指定功率容量的施加和使用,而是仅考虑或记录对多个装置中的每一个的功率分配以及电源的当前可利用容量。
然后步骤208向请求装置发送功率准许消息,指示所请求的附加功率量已经被准许。在被准许的量不同于原始请求量的情况下(或者在其它适当的情况下),功率准许消息可以指示准许给请求装置的功率容量的具体量。类似地,功率准许消息可以包括被分配的功率容量可以被使用的持续时间。此外,功率准许消息可以指示与电源提供的多个电压电平中的每一个相关联的功率的量和/或持续时间。
在一个示例性实施例中,分配给请求装置的附加功率容量可以被自动分配并且在预定的固定时间段之后被自动恢复以用于随后的重新分配。例如,该预定的固定时间段可以是从控制器发送到请求装置的功率准许消息中指示的持续时间。或者,例如,在另一个示例性实施例中,该持续时间可以是任何一个装置可能需要使用所请求的附加功率的固定最大时间。在下面本文中进一步讨论的其它实施例中,装置可以向控制器发送消息,除了其它指示以外,该消息还指示该装置什么时候完成了对分配给它的任何附加功率的使用。
图3是描述根据本发明的特征和方面的用于管理耦合到控制器并共享共用电源的多个装置当中的功率容量分配的另一个示例性方法的流程图。例如可以在诸如图1的系统100的系统内执行图3的方法。
首先步骤300确定与多个装置耦合的电源提供的所有可利用电压电平的总的可利用功率容量。如上面指出的,可以通过存储在控制器中的工厂定义或者管理用户定义的配置参数来确定总的可利用功率容量,或者在可选择的实施例中,可以通过询问与电源相关联的数据端口来确定总的可利用功率容量。
然后步骤302从确定出的总的可利用功率容量分配每个附接装置的初始功率分配。如上面指出的,初始功率分配是装置开始初始化到允许与所连接的控制器通信的点所需要的最小功率。例如,在转动盘驱动器存储装置的情况下,初始功率分配可以是初始化到除了头执行器机构致动和/或启动用于转动存储介质的电机以外的程度所需要的功率量。该最小初始功率分配量是足以能够在转动盘驱动器存储装置和管理功率分配的存储控制器之间通信的功率量。可以参考由存储系统的制造商提供的静态配置信息来确定多个装置中的每一个需要的初始功率分配量,或者也可以通过管理用户输入来确定该初始功率分配量,该管理用户输入用于配置耦合到控制器的每个装置所需要的初始功率分配。此外,在一些实施例中,控制器可以询问每个装置以确定例如最初需要的功率分配量等特征。
步骤302还基于对多个装置中每一个的初始功率分配通过减少剩余的当前可利用功率容量来适当地调节总的可利用功率容量。如上面指出的,可以将计数器用于电源提供的每个电压电平。针对每个装置的启动所需的每个电压电平的初始功率分配调节(例如,递减)所述计数器。
接下来步骤306接收来自附接装置的功率请求消息。如上面指出的,该消息可以被编码为SAS/SATA消息,例如包括SAS/SATA帧和/或原语。另外,控制器从装置接收到的功率请求消息可以包括请求装置需要的附加功率量的指示。此外,该功率请求消息可以指示由耦合到装置的电源提供的多个电压电平中的每一个所需要的附加功率量。例如,转动盘驱动器存储装置可能需要+12伏的功率和+/-5伏的功率,用于装置内的不同目的和应用。
然后步骤308确定(例如,多个电压电平中的每一个的)当前可利用的功率容量是否足以满足请求。在功率请求消息指示需要多个电压电平中的每一个的功率的情况下,步骤308的测试可以确定对于多个电压电平中的每一个是否都有足够的功率可以利用。如果当前没有足够的功率可以利用以满足该请求,则步骤310代表用于等待所需要的附加功率变得可以利用的处理。在一个示例性实施例中,控制器可以确定出先前对装置分配的附加功率在从准许该分配开始经过预定的时间量之后再次可以利用。在本文中下面进一步讨论的其它示例性实施例中,从装置接收到的消息可用于指示该装置不再需要先前分配的附加功率。此外,本领域的技术人员容易想到,可以使用多线程/任务编程范例实现步骤308和310的处理,使得满足特定功率请求消息的处理可以暂停,同时使用与图3相同方法的其它请求(在另一个线程/任务中)可以继续进行。此外,本领域的技术人员容易想到,添加或修改图3的方法以确保在处理多个接收到的功率请求消息时分配功率的公平性,并且确保对多个请求的处理不会在针对多个装置的线程/任务处理请求当中产生死锁情形。
当如步骤308和310所确定的,认为有足够的功率可以利用以满足接收到的功率请求消息时,接下来步骤312为请求装置分配所请求的附加功率。如上所述,该分配可以包括使一个或多个计数器递减以指示在一个或多个电压域中对装置的功率分配。
步骤314向请求装置发送指示可以利用附加功率的功率准许消息。该功率准许消息还可以被编码为SAS/SATA消息,所述SAS/SATA消息例如包括SAS/SATA帧和/或原语。此外,该功率准许消息可以包括所分配的供装置使用的功率量和/或允许该装置使用所分配的附加功率的持续时间的指示。
在一个示例性实施例中,该方法可以继续,使得步骤318接收来自该装置的功率状态消息。如上所述,该功率状态消息可以被编码为SAS/SATA消息,所述SAS/SATA消息例如包括SAS/SATA帧和/或原语。一般来说,该功率状态消息可以指示发送装置关于功率使用或消耗的任意状态变化。在一个具体的示例性实施例中,该功率状态消息可以指示该装置不再需要使用先前分配的附加功率。响应于接收到这样的功率状态消息,随后步骤320基于指示该装置不再需要先前分配的附加功率的功率状态消息调节当前可利用的功率容量。如上面关于功率准许消息所述的,该功率状态消息还可以提供该装置不再需要的具体功率量的指示。因此该装置可以分阶段减小其对被分配的附加功率的使用,在遇到每个减小功率消耗的阶段时通知控制器。此外,功率状态消息可以指示该装置不再需要的多个电压水平中的每一个的具体功率量。因此步骤320根据从发送装置接收到的功率状态消息的信息调节当前可利用的功率容量。
本领域的技术人员容易想到上述图2和图3的方法中的多个附加和等同步骤。为了本讨论的简化和简短,在本文中省略了这种附加和等同步骤。
尽管已经在附图和上述说明中示出和描述了本发明,但是这种示出和描述被认为在性质上是示例性的而不是限定性的。已经示出并描述了本发明的一个实施例及其微小变体。具体来说,作为示例性软件或固件实施例示出和描述的特征可以等同地作为定制的逻辑电路来实施,反之亦然。落在本发明的精神内的所有变化和修改都期望被保护。本领域的技术人员将理解落入本发明的范围内的上述实施例的变体。因此,本发明不局限于上述特定的例子和图解,而是由所附权利要求及其等同物来限定。

Claims (19)

1.一种可在包括控制器和与所述控制器耦合的多个装置的系统中操作的方法,所述方法用于管理施加到与所述控制器通信地耦合的所述多个装置中的每一个的功率,所述方法包括:
在所述控制器内,向所述多个装置中的每一个分配初始功率量;
在所述控制器内,从装置接收功率请求消息,所述功率请求消息包括所述装置所需要的附加功率量;
在接收所述功率请求消息之后,在所述控制器内,确定当前是否有足够的功率容量可用;以及
响应于确定出当前有足够的功率容量可用,执行以下步骤:
在所述控制器内,向所述装置分配附加功率;以及
从所述控制器向所述装置发送功率准许消息,以允许所述装置使用所分配的附加功率。
2.根据权利要求1所述的方法,
其中发送所述功率准许消息的步骤还包括:发送包括分配给所述装置的附加功率量的功率准许消息,其中所分配的附加功率量与所请求的附加功率量不同。
3.根据权利要求2所述的方法,还包括:
基于分配给所述装置的附加功率量调整所述装置中的初始化顺序。
4.根据权利要求1所述的方法,
其中发送所述功率准许消息的步骤还包括:发送包括允许装置使用所分配的附加功率的持续时间的功率准许消息。
5.根据权利要求4所述的方法,还包括:
基于由所述功率准许消息所指示的持续时间调整所述装置中的初始化顺序。
6.根据权利要求1所述的方法,
其中响应于确定出当前有足够的功率容量可用,执行以下步骤:
在所述控制器内,基于所分配的附加功率,减小当前可用的功率容量;
在所述控制器内,接收来自所述装置的功率状态消息,所述功率状态消息指示所述装置已经完成了对所分配的附加功率的使用;以及
在所述控制器内,基于所分配的附加功率,增大当前可用的功率容量。
7.一种用于管理存储系统中的功率分配的方法,该存储系统包括使用通信介质和协议耦合到多个存储装置的存储控制器,该方法可在该存储控制器中操作,该方法包括:
确定总的可利用功率容量;
向所述多个存储装置中的每一个分配初始功率量;
基于分配给所述多个存储装置中的每一个的所述初始功率量的总和调节总的可利用功率容量;
从所述多个存储装置中的请求装置接收功率请求消息,该功率请求消息包括所述请求装置所需要的附加功率量;
在接收所述功率请求消息之后,确定所述总的可利用功率容量是否足以提供所请求的附加功率量;以及
响应于确定出所述总的可利用功率容量足以提供所请求的附加功率量,进行以下步骤:
为所述请求装置分配所请求的附加功率量;
向所述请求装置发送功率准许消息;以及
基于所请求的附加功率量调节所述总的可利用功率容量。
8.根据权利要求7所述的方法,还包括:
从所述请求装置接收功率状态消息,该功率状态消息指示先前分配的附加功率量被所述请求装置释放;以及
基于功率释放消息调节所述总的可利用功率容量。
9.根据权利要求8所述的方法,
其中所述存储控制器是串行连接SCSI(SAS)存储控制器,并且其中所述多个存储装置中的每一个是SAS装置,
其中所述功率请求消息、所述功率准许消息和所述功率状态消息中的每一个是SAS帧或SAS原语中的一个。
10.根据权利要求8所述的方法,
其中所述存储控制器是串行高级技术附件(SATA)存储控制器或SATA端口倍增器,并且其中所述多个存储装置中的每一个是SATA装置,
其中所述功率请求消息、所述功率准许消息和所述功率状态消息中的每一个是SATA帧或SATA原语中的一个。
11.根据权利要求7所述的方法,
其中所述存储控制器是串行高级技术附件(SATA)控制器、SATA端口倍增器、SAS控制器或SAS扩展器中的一个。
12.根据权利要求7所述的方法,
其中所述发送步骤还包括:
发送功率准许消息,其中所述功率准许消息包括所述请求装置可以使用所请求的附加功率量的持续时间的指示。
13.根据权利要求7所述的方法,还包括:
从所述请求装置接收功率状态消息,该功率状态消息指示所述请求装置的功率消耗的变化。
14.根据权利要求13所述的方法,还包括:
响应于所述请求装置的功率消耗的变化调节分配给所述系统中的其它装置的功率。
15.根据权利要求7的方法,
其中接收所述功率请求消息的步骤还包括接收包括多个电压电平中的每一个的附加功率量的功率请求消息。
16.一种系统,包括:
电源;
多个装置,每个装置被耦合为从所述电源接收功率,并且每个装置适于在操作期间需要变化的功率量;
与所述多个装置中的每一个可通信地耦合的存储控制器,该控制器适于与所述多个装置中的一个或多个装置交换信息,以通过处理从所述一个或多个装置接收的功率请求消息管理由所述一个或多个装置消耗的来自所述电源的功率消耗,所述功率请求消息包括所述装置需要的附加功率量,
其中所述存储控制器进一步适于:
在接收所述功率请求消息之后,在所述存储控制器内,确定当前是否有足够的功率容量可用;以及
响应于确定出当前有足够的功率容量可用,执行以下步骤:
在所述存储控制器内,向所述装置分配附加功率;
以及
从所述存储控制器向所述装置发送功率准许消息,以允许所述装置使用所分配的附加功率。
17.根据权利要求16所述的系统,
其中所述存储控制器是串行连接SCSI(SAS)控制器或者SAS扩展器,并且
其中所述多个装置中的至少一个是SAS装置。
18.根据权利要求16所述的系统,
其中所述存储控制器是串行高级技术附件(SATA)控制器或SATA端口倍增器,并且
其中所述多个装置中的至少一个是SATA装置。
19.根据权利要求16所述的系统,
其中交换的信息还包括下列中的一个或多个:所述控制器向装置分配的功率量、装置可以使用所述控制器分配给它的功率的持续时间、以及给所述控制器关于装置功率消耗变化的指示。
CN201010003803.4A 2009-07-28 2010-01-13 用于存储系统中功率分配的方法和设备 Active CN101986241B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/510,699 2009-07-28
US12/510,699 US8239701B2 (en) 2009-07-28 2009-07-28 Methods and apparatus for power allocation in a storage system

Publications (2)

Publication Number Publication Date
CN101986241A CN101986241A (zh) 2011-03-16
CN101986241B true CN101986241B (zh) 2016-02-03

Family

ID=41698127

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010003803.4A Active CN101986241B (zh) 2009-07-28 2010-01-13 用于存储系统中功率分配的方法和设备

Country Status (6)

Country Link
US (1) US8239701B2 (zh)
EP (1) EP2284650A3 (zh)
JP (2) JP5506459B2 (zh)
KR (1) KR101443418B1 (zh)
CN (1) CN101986241B (zh)
TW (1) TWI497270B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8327166B2 (en) * 2009-05-21 2012-12-04 Lsi Corporation Power managment for storage devices
US8239701B2 (en) * 2009-07-28 2012-08-07 Lsi Corporation Methods and apparatus for power allocation in a storage system
US8694810B2 (en) * 2010-09-22 2014-04-08 International Business Machines Corporation Server power management with automatically-expiring server power allocations
CN103998942A (zh) * 2010-12-13 2014-08-20 美国弗劳恩霍夫股份公司 用于非侵入式负载监测的方法和系统
US8612801B2 (en) * 2011-01-25 2013-12-17 Dell Products, Lp System and method for extending system uptime while running on backup power
US8669752B2 (en) * 2011-02-22 2014-03-11 Cisco Technology, Inc. Controlling resistance for inline power powered device detection
US8751836B1 (en) * 2011-12-28 2014-06-10 Datadirect Networks, Inc. Data storage system and method for monitoring and controlling the power budget in a drive enclosure housing data storage devices
US9939865B2 (en) 2014-06-13 2018-04-10 Seagate Technology Llc Selective storage resource powering for data transfer management
US9971534B2 (en) * 2014-10-24 2018-05-15 Spectra Logic, Corp. Authoritative power management
JP6205401B2 (ja) * 2015-03-13 2017-09-27 聯發科技股▲ふん▼有限公司Mediatek Inc. 電力管理方法及び電力管理方法を適用する電力供給システム
US10198061B2 (en) 2015-09-01 2019-02-05 Toshiba Memory Corporation Storage and storage system
US10048738B2 (en) * 2016-03-03 2018-08-14 Intel Corporation Hierarchical autonomous capacitance management
US10254985B2 (en) * 2016-03-15 2019-04-09 Western Digital Technologies, Inc. Power management of storage devices
WO2017188981A1 (en) * 2016-04-29 2017-11-02 Hewlett Packard Enterprise Development Lp Power usage modes of drives
US10437303B2 (en) * 2016-05-20 2019-10-08 Dell Products L.P. Systems and methods for chassis-level view of information handling system power capping
WO2018068638A1 (zh) * 2016-10-11 2018-04-19 北京忆恒创源科技有限公司 固态存储设备及其温度、功耗控制方法
JP2019087089A (ja) * 2017-11-08 2019-06-06 ルネサスエレクトロニクス株式会社 給電システムおよびそれに用いられる半導体装置
US11454941B2 (en) 2019-07-12 2022-09-27 Micron Technology, Inc. Peak power management of dice in a power network
US11079829B2 (en) * 2019-07-12 2021-08-03 Micron Technology, Inc. Peak power management of dice in a power network
US11921555B2 (en) * 2019-07-26 2024-03-05 Samsung Electronics Co., Ltd. Systems, methods, and devices for providing power to devices through connectors
US11281273B2 (en) * 2019-07-26 2022-03-22 Samsung Electronics Co., Ltd. System method for power distribution to storage devices
US11209882B2 (en) 2019-07-31 2021-12-28 Microsoft Technology Licensing, Llc Mechanical selection of power consumption indicator by form factor
EP4022846A1 (en) * 2019-08-29 2022-07-06 Signify Holding B.V. Control network system for power allocation
KR20210073754A (ko) * 2019-12-11 2021-06-21 에스케이하이닉스 주식회사 시스템, 컨트롤러 및 시스템의 동작 방법
US11175837B2 (en) 2020-03-16 2021-11-16 Micron Technology, Inc. Quantization of peak power for allocation to memory dice
US20220413583A1 (en) * 2021-06-28 2022-12-29 Western Digital Technologies, Inc. Precise power cycle management in data storage devices

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1624628A (zh) * 2003-12-03 2005-06-08 国际商业机器公司 包括器件使用评估和功率状态控制的功率管理方法和系统
CN1801046A (zh) * 2005-01-07 2006-07-12 戴尔产品有限公司 多个信息处理系统的功率管理的系统和方法
CN1983120A (zh) * 2005-12-16 2007-06-20 辉达公司 具有用以管理计算装置及组件功率消耗的集成功率管理的数据路径控制器
US7555666B2 (en) * 2006-05-04 2009-06-30 Dell Products L.P. Power profiling application for managing power allocation in an information handling system

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4964040A (en) 1983-01-03 1990-10-16 United States Of America As Represented By The Secretary Of The Navy Computer hardware executive
US4811216A (en) 1986-12-22 1989-03-07 American Telephone And Telegraph Company Multiprocessor memory management method
US4862342A (en) 1987-12-03 1989-08-29 Sundstrand Corp. DC to AC inverter with neutral having a resonant circuit
US5357632A (en) 1990-01-09 1994-10-18 Hughes Aircraft Company Dynamic task allocation in a multi-processor system employing distributed control processors and distributed arithmetic processors
US5367678A (en) 1990-12-06 1994-11-22 The Regents Of The University Of California Multiprocessor system having statically determining resource allocation schedule at compile time and the using of static schedule with processor signals to control the execution time dynamically
US5434970A (en) 1991-02-14 1995-07-18 Cray Research, Inc. System for distributed multiprocessor communication
EP0522224B1 (en) 1991-07-10 1998-10-21 International Business Machines Corporation High speed buffer management
US5317757A (en) 1992-02-06 1994-05-31 International Business Machines Corporation System and method for finite state machine processing using action vectors
US5553305A (en) 1992-04-14 1996-09-03 International Business Machines Corporation System for synchronizing execution by a processing element of threads within a process using a state indicator
JPH066935A (ja) * 1992-06-19 1994-01-14 Brother Ind Ltd 電流制限システム
US5623634A (en) 1992-09-15 1997-04-22 S3, Incorporated Resource allocation with parameter counter in multiple requester system
JP2516317B2 (ja) 1992-10-13 1996-07-24 インターナショナル・ビジネス・マシーンズ・コーポレイション デ―タ処理システムとディジタル信号プロセッサへのロ―ディング方法
US5483656A (en) * 1993-01-14 1996-01-09 Apple Computer, Inc. System for managing power consumption of devices coupled to a common bus
US5579486A (en) 1993-01-14 1996-11-26 Apple Computer, Inc. Communication node with a first bus configuration for arbitration and a second bus configuration for data transfer
GB2278258A (en) 1993-05-17 1994-11-23 Ibm Token ring network
US5442789A (en) 1994-03-31 1995-08-15 International Business Machines Corporation System and method for efficiently loading and removing selected functions on digital signal processors without interrupting execution of other functions on the digital signal processors
TW323350B (zh) * 1996-02-26 1997-12-21 Ibm
US5838766A (en) 1996-09-26 1998-11-17 Mci Communications Corporation System and method for providing shared resources to test platforms
US5905889A (en) 1997-03-20 1999-05-18 International Business Machines Corporation Resource management system using next available integer from an integer pool and returning the integer thereto as the next available integer upon completion of use
JP3087696B2 (ja) 1997-07-25 2000-09-11 日本電気株式会社 分散メモリ型マルチプロセッサ・システム制御方法およびコンピュータ読み取り可能な記録媒体
US6233625B1 (en) * 1998-11-18 2001-05-15 Compaq Computer Corporation System and method for applying initialization power to SCSI devices
JP3376980B2 (ja) * 1999-12-22 2003-02-17 日本電気株式会社 電源制御装置及び電源制御方法
US20010039497A1 (en) 2000-03-30 2001-11-08 Hubbard Edward A. System and method for monitizing network connected user bases utilizing distributed processing systems
US6594771B1 (en) * 2000-04-13 2003-07-15 Hewlett-Packard Development Company, L.P. Method and apparatus for managing power in an electronic device
US7284244B1 (en) 2000-05-02 2007-10-16 Microsoft Corporation Resource manager architecture with dynamic resource allocation among multiple configurations
TW540203B (en) * 2000-07-10 2003-07-01 Powerdsine Ltd Improved structured cabling system
US6963537B2 (en) 2000-07-27 2005-11-08 Corrigent Systems Ltd. Resource reservation in a ring network
US20030158609A1 (en) * 2002-02-19 2003-08-21 Koninklijke Philips Electronics N.V. Power saving management for portable devices
TWI220978B (en) * 2002-08-01 2004-09-11 Hon Hai Prec Ind Co Ltd A controlling circuit and method for powering on a plurality of IDE devices
US20040196489A1 (en) 2003-04-07 2004-10-07 Kia Silverbrook Coupon redemption
US7818461B2 (en) 2003-04-28 2010-10-19 Lsi Corporation Systems and methods for allocating an asset to interconnected devices
US7290066B2 (en) 2004-03-18 2007-10-30 Lsi Corporation Methods and structure for improved transfer rate performance in a SAS wide port environment
JP2005339135A (ja) 2004-05-26 2005-12-08 Toshiba Corp シリアルataインタフェースを持つ電子機器及び同機器におけるパワーセーブ制御方法
US7676613B2 (en) 2004-08-03 2010-03-09 Lsi Corporation Methods and structure for assuring correct data order in SATA transmissions over a SAS wide port
TWI269153B (en) * 2005-01-31 2006-12-21 Mitac Int Corp Power management method of storage device and system thereof
US8041967B2 (en) 2005-02-15 2011-10-18 Hewlett-Packard Development Company, L.P. System and method for controlling power to resources based on historical utilization data
US7474926B1 (en) 2005-03-31 2009-01-06 Pmc-Sierra, Inc. Hierarchical device spin-up control for serial attached devices
US20060242362A1 (en) * 2005-04-20 2006-10-26 Hanes David H Method and apparatus for disconnecting an external data storage device from a computer
TWI289242B (en) * 2005-04-21 2007-11-01 Shr-Ming Huang Automatic control system for plug-and-play electric appliances
US20070061509A1 (en) * 2005-09-09 2007-03-15 Vikas Ahluwalia Power management in a distributed file system
TWM292669U (en) * 2006-01-18 2006-06-21 Chi-Huang Liau Automatic control system for real time monitor on street lamps
US7539881B2 (en) * 2006-04-15 2009-05-26 Hewlett-Packard Development Company, L.P. System and method for dynamically adjusting power caps for electronic components based on power consumption
JP4897387B2 (ja) * 2006-08-10 2012-03-14 株式会社日立製作所 ストレージ装置およびこれを用いたデータの管理方法
US7624202B2 (en) * 2006-08-17 2009-11-24 Standard Microsystems Corporation System and method for enumerating a USB device using low power
JP5194435B2 (ja) * 2006-11-08 2013-05-08 ソニー株式会社 電力供給システム、電力供給方法、電力供給プログラム及びサーバ
KR20080061639A (ko) * 2006-12-28 2008-07-03 삼성전자주식회사 다수의 디스크저장장치의 스핀업 동작을 시간차로 구동하는데이터기록장치 및 그 방법
US7818592B2 (en) * 2007-04-18 2010-10-19 Globalfoundries Inc. Token based power control mechanism
JP5011028B2 (ja) * 2007-08-23 2012-08-29 株式会社日立製作所 ストレージシステム、管理装置、スケジューリング方法、プログラム、記録媒体
JP4395800B2 (ja) * 2007-09-18 2010-01-13 日本電気株式会社 電力管理システムおよび電力管理方法
TWI349406B (en) * 2007-11-29 2011-09-21 Chi Hsiu Ni Dynamic power distribution device and dynamic power distribution method for dynamic power distribution system
US8996890B2 (en) 2008-02-07 2015-03-31 Dell Products L.P. Method for power conservation in virtualized environments
US8327166B2 (en) * 2009-05-21 2012-12-04 Lsi Corporation Power managment for storage devices
US8239701B2 (en) * 2009-07-28 2012-08-07 Lsi Corporation Methods and apparatus for power allocation in a storage system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1624628A (zh) * 2003-12-03 2005-06-08 国际商业机器公司 包括器件使用评估和功率状态控制的功率管理方法和系统
CN1801046A (zh) * 2005-01-07 2006-07-12 戴尔产品有限公司 多个信息处理系统的功率管理的系统和方法
CN1983120A (zh) * 2005-12-16 2007-06-20 辉达公司 具有用以管理计算装置及组件功率消耗的集成功率管理的数据路径控制器
US7555666B2 (en) * 2006-05-04 2009-06-30 Dell Products L.P. Power profiling application for managing power allocation in an information handling system

Also Published As

Publication number Publication date
KR101443418B1 (ko) 2014-09-24
EP2284650A3 (en) 2014-08-13
CN101986241A (zh) 2011-03-16
TW201104400A (en) 2011-02-01
EP2284650A2 (en) 2011-02-16
TWI497270B (zh) 2015-08-21
JP2011028720A (ja) 2011-02-10
KR20110011501A (ko) 2011-02-08
JP2014067440A (ja) 2014-04-17
JP5727582B2 (ja) 2015-06-03
JP5506459B2 (ja) 2014-05-28
US8239701B2 (en) 2012-08-07
US20110029787A1 (en) 2011-02-03

Similar Documents

Publication Publication Date Title
CN101986241B (zh) 用于存储系统中功率分配的方法和设备
US7437576B2 (en) Power management apparatus and method for managing the quantity of power that is consumed by a computer group including a plurality of computers interconnected by a network
US8171321B2 (en) Method and apparatus for cost and power efficient, scalable operating system independent services
TWI537716B (zh) 單晶片系統及用於其之方法
US11061580B2 (en) Storage device and controllers included in storage device
US8694810B2 (en) Server power management with automatically-expiring server power allocations
JP5661874B2 (ja) 電力管理のためのアイドル期間報告
US8255713B2 (en) Management of link states using plateform and device latencies
KR101114791B1 (ko) 전력 할당 방법 및 시스템
TWI816023B (zh) 具有整合式電源及熱管理之usb集線器
CN105339917A (zh) 访问存储器中数据的分离的存储器控制器
JP2011530731A (ja) 複数のストレージデバイスを管理するためのストレージシステムおよび方法
KR102099301B1 (ko) 반도체 장치의 제어
US7818461B2 (en) Systems and methods for allocating an asset to interconnected devices
US11086390B2 (en) Method and apparatus for improving power management by controlling a system input current in a power supply unit
CN110096224A (zh) 存储器子系统中的功率控制
US20230229217A1 (en) Systems and methods for power relaxation on startup
CN116449940A (zh) 用于在开启时进行功率放宽的系统和方法
KR20200013498A (ko) USB type-C를 지원하는 인쇄장치를 이용한 전력 공급 방법 및 이를 수행하기 위한 인쇄장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) CORPORAT

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES CORP.

Effective date: 20150813

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150813

Address after: Singapore Singapore

Applicant after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: California, USA

Applicant before: LSI Corp.

C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20181022

Address after: Singapore Singapore

Patentee after: Avago Technologies General IP (Singapore) Pte. Ltd.

Address before: Singapore Singapore

Patentee before: Avago Technologies General IP (Singapore) Pte. Ltd.