计算设备功率管理的制作方法

文档序号:18744609发布日期:2019-09-21 02:11阅读:166来源:国知局
计算设备功率管理的制作方法

计算设备包括台式计算机以及比如膝上型和笔记本计算机之类的便携式计算机。计算设备包括内部硬件,诸如处理器、存储器和存储设备,以及便携式计算机和一体化(AIO)台式计算机的情况中的显示设备。计算设备还可以具有诸如通用串行总线(USB)端口之类的端口,比如存储设备之类的外围设备、诸如键盘和指示设备之类的输入设备以及诸如打印机之类的输出设备可以连接到该端口。

附图说明

图1是示例计算设备的图。

图2是图1的示例计算设备的图,其中详细描绘了计算设备的功率管理器硬件。

图3是图1的示例计算设备的功率管理器硬件可以执行的方法的流程图。

具体实施方式



背景技术:
部分所述,比如台式计算机、膝上型计算机或笔记本计算机之类的计算设备可以包括内部硬件和端口,外围设备或外部部件可以连接到该内部硬件和端口。计算设备可以连接到比如壁装插座之类的电源,比如壁装插座之类的电源向计算机的内部硬件提供电力,包括经由计算设备的电池的再充电间接地提供。除了通过端口与计算设备传送数据之外,连接到计算设备的端口的外部部件还可以在这些端口处接收电力。这种外部部件可以被称为总线供电的部件。

计算设备包括电源电路(power circuit),其可以包括内部电源。电源电路管理从外部电源或内部电池到计算设备的内部硬件和到连接到计算设备的端口的外部部件的电力的递送。总之,电源电路可以提供最大量的功率,其可以是以瓦特或安培可测量的,其中后者更具体地是电流的测量。为了确保电源电路不灾难性地或以其他方式发生故障,计算设备的功率管理器硬件(即线路)可以监视内部硬件的功率使用和连接到计算设备的端口的外部部件所消耗的功率。

常规上,计算设备的内部硬件总计可以具有最大的功率预算,并且每个端口可以具有单独的功率预算。例如,计算设备的电源可能能够提供八十瓦特的总直流(DC)功率。可以指定计算设备的内部硬件,包括存储器、处理器、存储设备和显示设备,使得它们最大总计消耗不多于三十瓦特的DC功率。计算设备可以具有四个端口,其中三个端口被指定为能够提供高达十瓦特的DC功率,并且其中第四个端口被指定为能够提供高达二十瓦特的DC功率。功率管理器硬件可以监视功率使用,使得没有连接到端口的外部部件超过端口的十或二十瓦特的额定值(rating),和/或使得内部硬件和连接的外部部件的总功率使用不超过八十瓦特。

然而,在每个端口的基础上指定最大功率使用具有缺点。许多外部部件,诸如比如键盘和指示设备之类的输入设备,以及非总线供电的设备(即,具有它们自己的内置电池或自身连接到壁装插座的部件),使用显著少于十瓦特的功率,并且可能使用半瓦特那样小的功率。甚至可以在高峰时间使用二十瓦特的功率的、比如较大的总线供电的存储设备之类的相对高功率的外部部件可以平均使用显著少于该量,包括少于十瓦特的功率。类似地,计算设备的内部硬件不频繁地消耗其总峰额定值。因此,计算设备的电源具有大于绝大多数时间所需的容量的最大容量,从而需要较大、较重并且较昂贵的电源。

此外,在每个端口基础上指定最大功率使用不必要地限制了端口的有用性。例如,在前述示例中,用户可能希望将两个存储设备连接到计算设备的相应端口,每个存储设备可能消耗高达二十瓦特的功率。用户可能还具有已经连接的鼠标和键盘,每个消耗半瓦特功率。尽管这四个设备的最大理论总功率——四十一瓦特少于端口总计可以提供的功率,即五十瓦特,但用户不能将两个存储设备都连接到计算设备。这是因为计算设备只有一个额定二十瓦特的端口;其他三个端口每个都不提供多于十瓦特的功率。

作为另一示例,用户可能希望将每个可能消耗高达二十瓦特功率的三个存储设备连接到计算设备的相应端口。因此,在任何给定时间存储设备消耗的总最大功率量理论上是六十瓦特。将该量与计算设备的内部硬件所消耗的功率的总理论最大量——三十瓦特相加产生九十瓦特,这大于计算设备的电源可以提供的,其额定八十瓦特。然而,实际上,如果不是远程,则存储设备和内部硬件在任何给定时间使用的总功率将超过电源的八十瓦特额定值的可能性是低的。在这两个示例中,用户因此在他或她可以连接到计算设备的端口的设备的类型中受到有效地人工限制。

这里公开了可以减轻上述缺点的功率管理技术。计算设备的电源电路可以提供直到功率的最大量。计算设备的内部硬件具有实际的当前使用功率,并且计算设备的端口中的每个都可连接到具有实际当前端口使用功率的外围设备。计算设备的功率管理器硬件可以监视电源电路当前正提供的功率。当功率管理器硬件检测到电源电路处的过功率(overpower)状况时,它选择端口之一并且将选择的端口从电源电路断开,使得连接到选择的端口的外围设备不再由计算设备的电源电路提供电力。这样,可以减轻电源电路处的过功率状况。

电源电路处的过功率状况可以是过载电流(overcurrent)或欠电压状况。当电源电路正在提供大于电源电路所额定的电流的电流时,过载电流情况发生。欠电压状况可以与过载电流状况共同发生,并且在电源电路处的电压下降到其额定电压之下时产生,电源电路处的电压下降到其额定电压之下诸如由于从电源电路汲取太多电流。计算设备的内部硬件的实际当前使用功率和每个端口处的实际当前端口使用功率可以引起电源电路处的过功率状况。例如,当电源电路当前正在向内部硬件并且在端口处提供多于功率的最大量的阈值百分比时,过功率状况可以产生。这样,当内部硬件的实际当前使用功率和每个端口处的实际当前端口使用功率之和超过电源电路可以提供的功率的最大量时,过功率状况发生。

因此,功率管理器硬件监视计算设备的总当前功率使用,而不管该功率量是由计算设备的内部硬件还是由连接到计算设备的端口的外围设备消耗的。这意味着每个端口可以被额定为提供相同的最大使用单独端口功率,以提供给所连接的外围设备。因此,内部硬件可以使用的最大使用功率与最大使用单独端口功率乘以端口的总数量的积之和可以超过电源电路可以提供的功率的最大量。类似地,最大使用单独端口功率乘以端口的数量的积可能超过端口总计可以提供的最大使用总功率。

例如,可能存在总计可以提供七十瓦特的DC功率的四个端口。然而,每个端口可以被单独额定在二十瓦特的DC功率,并且向与其连接的外围设备通知端口可以提供二十瓦特,即使二十瓦特乘以四个端口的积大于在任何一次(at any one time)端口一起可以提供的最大五十瓦特。此外,内部硬件可以使用高达三十瓦特的DC功率,并且电源电路额定在八十瓦特的DC功率。如果每个同时使用二十瓦特的功率的外围设备连接到所有四个端口,那么电源电路的最大额定值将已经被满足。即使每个同时使用二十瓦特的功率的外围设备仅连接到三个端口,电源电路的八十瓦特的最大额定值仍然将为内部硬件留下恰好二十瓦特,即使内部硬件可能使用高达三十瓦特。

因此,本文公开的技术利用以下见解:在任何给定时间处,连接到计算设备的端口的外围设备的总当前功率使用加上计算设备的内部硬件的当前功率使用将超过电源电路可以提供的功率的最大量的可能性低。因此,这里公开的技术可以不以每个端口为基础限制功率,或者甚至不以全部端口为基础限制功率。例如,如果一种类型的端口被限制为二十瓦特,并且存在四个端口,则每个端口可以向所连接的外围设备通告它可以提供二十瓦特,并且可能不存在总计出现在四个端口上的功率限制(即,少于八十瓦特)。

不如说,本文公开的技术在计算设备范围的基础上管理功率。在如果不罕见也是不频繁的、其中内部硬件与连接到计算设备的端口的外围设备组合正在使用多于电源电路可以提供的功率的情况中,功率管理器硬件那时就可以将端口(以及因此将外围设备)从电源电路断开以确保电源电路不经历灾难性或其他故障。如下面详细描述的,可以进一步采用不同的优先化策略来选择从电源电路断开的端口,以确保电源电路上的功耗(power draw)保持在电源电路的指定额定值内。

图1示出了示例计算设备100。该计算设备100可以是计算机,如台式计算机,或便携式计算机,如膝上型或笔记本计算机。计算设备100的其他示例包括坞站、显示设备和数据集线器。计算设备100包括电源电路102、内部硬件104、端口106A、106B、106C和106D以及功率管理器硬件108。除了图1中所示的那些之外,计算设备100还可以包括其他硬件。

电源电路102提供功率的最大量。电源电路102可以连接到计算设备100外部的电源110,该外部的电源110诸如是交流(AC)电源,比如AC主壁装插座、连接到这样的壁装插座的电涌保护器、连接到这样的壁装插座的不间断电源(UPS)以及诸如此类。电源电路102还可以包括电源,其可以在计算设备100的壳体或外壳的内部或外部,并且其包括变压器以将由电源110提供的AC功率转换为由计算设备100所使用的DC功率。电源电路102可以包括由电源再充电的电池,使得当电源电路102未连接到电源110时计算设备100是可用的。

内部硬件104包括计算设备100的硬件部件,其永久地或可移除地附接或设置在计算设备100的壳体或外壳内。这样的硬件部件可包括处理器、存储器,如硬盘驱动器(HDD)和固态驱动器(SSD)之类的存储设备以及诸如此类。如果计算设备100是一体化(AIO)或便携式计算设备,则硬件部件可以包括显示设备,如液晶显示器(LCD)。经由电源电路102向内部硬件104供电。内部硬件104具有额定的最大使用功率和实际当前使用功率。也就是说,在任何给定时间处,内部硬件104瞬间消耗实际当前使用功率,其不多于额定最大使用功率。

端口106A、106B、106C和106D被统称为端口106,并且术语“端口106”指的是端口106中的任何一个。在图1的示例中,计算设备100具有四个端口106,但是通常可以存在更多或更少的端口106。端口106可以是通用串行总线(USB)端口,诸如USB 1.0、2.0、3.0、3.1或USB-C端口。端口106允许外部外围设备或外部部件112A、112B、112C和112D物理地连接到计算设备100。外围设备112被统称为外围设备112,并且术语“外围设备112”指的是外围设备112中的任何一个。外围设备的示例包括输入设备,诸如扫描仪和比如键盘和指示设备(例如触摸板、鼠标和轨迹球)之类的用户输入设备,以及诸如打印机之类的输出设备,以及如外部HDD和SSD之类的存储设备。

每个端口106具有额定的最大使用单独端口功率,端口106可以将额定的最大使用单独端口功率提供给连接到其的外围设备112。端口106中的每个可以具有相同的额定最大使用单独端口功率。例如,USB 3.0端口中的每个可以提供五伏特处的最大1.5安培或者7.5瓦特,而USB 3.1端口中的每个可以提供五伏特处的最大三安培或十五瓦特。每个端口106具有实际当前端口功率使用,其是连接到所讨论的端口106的外围设备112正在瞬时消耗的功率的量,并且其不大于端口106的最大使用单独端口功率。电源电路102提供在每个端口106处提供的功率。连接到端口106的外围设备112可以至少使用端口106可以提供的功率的最小量。如果外围设备112是总线供电的,即,设备112本身未连接到电源110或者没有电池,那么设备112完全由它通过所讨论的端口106从电源电路102接收的电力供电。

功率管理器硬件108监视电源电路102当前正在提供给连接到端口106的任何外围设备112和内部硬件104的功率。换句话说,功率管理器硬件108可以针对电源电路102监视功耗。功率管理器硬件108可以以多种不同方式监视电源电路102当前正在提供的功率。功率管理器硬件108可以测量或以其他方式检测当前正从电源电路102汲取的功率的量,诸如以瓦特为单位。功率管理器硬件108可以针对过载电流状况监视电源电路102,其是在从电路102汲取比电路102可以提供的更多电流时。功率管理器硬件108可以针对欠电压状况监视电源电路102,该欠电压状况是当从电源电路102汲取太多功率时发生在电路102处的掉电压(sagging voltage)。

功率管理器硬件108监视电源电路102,以检测过功率状况的发生。由于过载电流或欠电压状况,过功率状况发生。当电源电路102正向内部硬件104并且在端口106处(即向与其连接的外围设备112)提供大于电路102可以提供的功率的最大量的阈值百分比的功率的量时,过功率状况可以发生。因此,当内部硬件104的实际当前使用功率加上连接到每个端口106的外围设备112的实际当前端口使用功率大于电源电路102可以提供的功率的最大量时,过功率状况产生。

在这方面,内部硬件104的额定最大使用功率和每个端口106提供的额定最大使用单独端口功率之和可以超过电源电路102可以提供的功率的最大量。如上所述,这种情况发生的可能性低,如果不是罕见的话,并且允许每个端口106提供相同的最大使用单独端口功率为计算设备100的用户提供了将外围设备112连接到端口106的更大灵活性。例如,不是具有可以提供1.5安培的一个USB 3.0端口和被限制为提供0.9安培的其他USB 3.0端口,而是所有USB 3.0端口中的每个都可以被额定为提供最大1.5安培。此外,电源电路102的电源可以被设定大小(size)以提供最大功率的较低量,这可以减少计算设备100的成本、重量、利用的物理空间和/或产生的热量。

然而,虽然在电源电路102处出现过功率状况的可能性低,如果不是罕见的话,但可能性不是零。因此,当功率管理器硬件108检测到电源电路102处的过功率状况时,不得不减少从电源电路102汲取的功率的量,以避免电源电路102和/或作为整体的计算设备100的灾难性的或其他故障。这样,响应于过功率状况发生,功率管理器硬件108选择外围设备112所连接到的端口106中的一个,并且将所选择的端口106从电源电路102断开。例如,当内部硬件104的实际当前使用功率和连接到每个端口106的外围设备112的实际当前端口使用功率的和大于电源电路102可以提供的功率的最大量时,功率管理器硬件108从电源电路102断开所选择的端口106。

作为结果的当前正由电源电路102提供的功率的减少将减轻过功率状况,使得内部硬件104可以继续正常运转(经由接收功率),保持连接到供电端口106的外围设备112可以继续正常运转。此外,避免了电源电路102的灾难性的或其他故障。如果过功率状况仍然存在,则功率管理器硬件108可以选择另一个端口106以从电源电路102断开来减轻过功率状况。下面更详细地描述了用于选择端口106以从电源电路102断开来减轻电源电路102处的过功率状况的不同策略。

图2示出了示例计算设备100,其中更详细地示出了功率管理器硬件108。电源110和外围设备112为说明清楚和方便未在图2中描绘。共享的电压或电力线202从电源电路102延伸到内部硬件104,以及通过功率管理器硬件108延伸到端口106。电源电路102因此经由共享的电力线202向内部硬件104并且在端口106处提供电力。

功率管理器硬件108包括监视器204和被连接到监视器204的控制器206。监视器204和控制器206中的每个可以经由线路来实现,包括一个或多个集成电路(IC)。监视器204监视共享的电力线202以检测电源电路102处是否正在发生过功率状况。监视器204可以向控制器206输出与是否在电源电路102处已经检测到过功率状况相对应的信号。

功率管理器硬件108可以包括逻辑与(AND)门208A、208B、208C和208D,它们被统称为与门208,并且其中术语“与门208”指的是与门208中的任何与门。与门208在数量上并且单独地对应于端口106;每个与门208具有连接到相应端口106的输出。每个与门208的一个输入连接到共享的电力线202。每个与门208的另一个输入连接到控制器206。当监视器204没有报告在电源电路102处检测到过功率状况时,控制器206将每个与门208的其输入升高。这允许每个端口106在对应于所讨论的端口106的与门208的另一输入处在共享的电力线202接收由电源电路102提供的电力。

然而,当监视器204检测到过功率状况并向控制器206报告检测到过功率状况时,控制器206选择端口106中的一个以从共享电力线202并且因此从电源电路102断开。控制器206相应地降低连接到所选端口106的与门208的输入,这防止了所选端口106通过共享的电力线202从电源电路102接收电力。如果监视器204继续检测到过功率状况,则控制器206可以选择另一个端口106以从电源电路102断开,并且依此类推,直到减轻了过功率状况。还应注意,在一个实现中,监视器204可以连接到每个与门208的输出,使得监视器204除了监视电源电路102当前向内部硬件104并且在端口106处正在提供的总功率之外,还能够监视每个端口106处的功率使用。

响应于监视器204检测到电源电路102处的过功率状况,控制器206可以以多种不同方式选择端口106从共享的电力线202断开。控制器206可以从外围设备112连接到的端口106随机地选择端口106。控制器206可以以最后连接最先断开的方法论选择外围设备112最近曾经并且现在仍然连接着的端口106。后一策略可能是有用的,因为用户可能期望响应于发生过功率状况而从电源选择该端口106。

在一个实现中,控制器206可以选择当前正在使用最多功率的、外围设备112连接到的端口106。该策略可用于确保不得不从共享的电力线202断开最小数量的端口106以减轻电源电路102处的过功率状况。也就是说,选择当前正在提供最多功率的端口106比选择正在向其连接的外围设备112提供最小量功率的端口106更可能减轻过功率状况,这然后可能需要从电源断开另一端口106(或更多),以减轻在电源电路102的过功率状况。

在一个实现中,控制器206可以选择外围设备112连接到的端口106,其正在消耗多于端口106所通告的可用于设备112的量的功率。例如,当外围设备112第一次连接到端口106时,端口106可以传送设备112被允许使用的功率的量,诸如在一个示例中是二十瓦特。然而,根据这里描述的技术,允许外围设备112消耗多于该通告的功率的量,这对于USB-C和USB-功率递送(USB-PD)端口特别有用,使得外围设备可以更快地再充电。除了在不罕见也不常见的情况之外,这种过度的功率消耗是可接受的,因为电源电路102具有足够的功率来提供给外围设备112。但是如果过功率状况发生,则该外围设备112连接到的端口106可以被选择为要从电源断开的端口106。

在一个实现中,控制器206可以选择外围设备112连接到的端口106,该端口106恰好正在再充电且不与计算设备100通信(诸如不与在设备100上运行的操作系统通信)。例如,用户可以采用计算设备100来为外部设备的电池再充电,而不是将设备插入连接到壁装插座或其他电源的专用充电器,以避免不得不随身携带充电器。某些外部设备没有专门连接到数据线或端口的引脚,而只是连接到电力线或引脚以接收电力来为其电池再充电。因此,控制器206可以选择这样的外部设备连接到的端口106。

此外,在一些情况下,诸如智能电话或平板计算机之类的外部设备可以仅仅为了电池再充电的目的而连接到端口106,即使该设备还具有与计算设备100传输数据的能力。用户可以在计算设备100上运行的操作系统内卸下(dismount)或以其他方式逻辑地断开外部设备,而不实际上将该外部设备从其连接到的端口106物理地断开。因此,操作系统不允许与端口106的数据通信,因为从操作系统的角度来看,外部设备不再(逻辑上)连接到计算设备100。然而,外部设备在端口106处仍然物理地连接到计算设备100,并且因此可以接收电力。断开恰好正在再充电并且不与计算设备100通信的外部设备可以是有用的,因为它确保没有运行在计算设备100上的计算机程序将受到从电源断开相应的端口106的不利影响。

在一些情况下,诸如智能电话或平板计算机之类的外部设备可以为了电池再充电和数据通信两者的目的连接到端口106。因为外部设备具有其自己的内部电池,所以端口106可以被选择作为要从电源断开的端口,而不影响计算设备100和外部设备之间的数据通信。例如,USB和其他类型的端口可以具有用于电力递送而不是用于数据通信的单独引脚。这样,可以断开电力递送引脚,而不断开数据通信引脚。将这样的外部设备从电源断开可以是有用的,因为尽管该设备不再能够被再充电,但是该外部设备与计算设备100传输数据的能力可以保持不受影响。

在一个实现中,控制器206可以从不是用户输入外围设备的外围设备112连接到的端口106选择端口106。该策略至少由于两个原因可以是有用的。第一,比如键盘和指示设备之类的用户输入设备不太可能消耗大量电力,使得将其相应端口106从电源断开不太可能减轻过功率状况。第二,选择用户输入设备连接到的端口106可以导致用户能够使用计算设备100,特别是当设备100是不具有其自己的内部键盘和指示设备的台式计算机时。

在一个实现中,控制器206可以从当前不是安装的存储设备的外围设备112连接到的端口106选择端口106。当HDD、SSD或其他外部存储设备连接到计算设备100的端口106时,计算设备100上的操作系统可以自动地安装存储设备,使得数据可以存储在存储设备上和/或从存储设备上取回。操作系统可能不自动地安装存储设备,并且代之以请求用户确认是否应该安装设备,或者使用户运行单独的计算机程序来安装存储设备,使得该设备可以用于数据存储和取回目的。操作系统还可以允许用户从计算设备卸下存储设备,使得它不再可以用于数据存储和取回。

然而,当外部存储设备连接到端口106并且当前未安装时,存储设备保持物理地连接到端口106并且仅在逻辑上与在计算设备上运行的操作系统断绝。因此,外部存储设备仍然可以使用如在端口106处提供的来自电源电路102的电力。选择此类当前卸下的存储设备物理地连接到的端口106可以是期望的,因为其确保当端口106从电源断开时没有存储器上的数据丢失将发生。通过比较,选择当前安装的存储设备连接到的端口106可能导致在端口106从电源断开时的数据丢失,并且如果从存储设备执行操作系统,则可以导致操作系统的崩溃,因为操作系统不再可以访问存储设备。

在一个实现中,控制器206可以选择外部存储设备连接到的端口106以从电源断开,针对该外部存储设备,在计算设备100处(即,在其操作系统处)禁用写高速缓存。写高速缓存是一种高速缓存要写到外部存储设备的数据的技术,使得从计算机程序写数据的角度看,数据写操作发生得更快。操作系统周期性地冲刷高速缓存,将数据交托给外部存储设备。然而,当使能写高速缓存时,将外部存储设备从计算设备100断开,诸如通过将外部存储设备连接到的端口106从电源断开,可以导致数据丢失。这是因为在尚未被传输到外部存储设备的数据可以存储在高速缓存中。因此,在该实现中,控制器206可以选择外部存储设备连接到的端口106以从电源断开,针对该外部存储设备,不使能写高速缓存,使得这种潜在的数据丢失不发生。

图3示出了计算设备100的功率管理器硬件108可以执行的示例方法300。方法300可以实现为功率管理器硬件108可以执行的存储在非暂时性计算机可读数据存储介质上的计算机可执行代码。例如,在这种实现中,硬件108可以实现为专用IC(ASIC)或现场可编程门阵列(FPGA)。

功率管理器硬件108监视电源电路102当前正在提供的功率(302)。换句话说,功率管理器硬件108为内部硬件104和连接到端口106的外围设备112当前正在使用的如由电源电路102提供的电源供电。这种监视可以是功率的直接测量,从其可以推断过功率状况,或者监视可能只是监视诸如过载电流或欠电压状况之类的过功率状况是否正在发生。

功率管理器硬件108因此检测源自(即,由其引起的)内部硬件104和外围设备112正在使用或消耗的、由电源电路102提供的当前功率的过功率状况(304)。响应于检测到过功率状况,功率管理器硬件108从外围设备112当前连接到的端口106选择端口106(306)。然后,功率管理器硬件108将所选的端口106从电源电路102断开,使得不再在该端口106处提供电力并且因此不再提供电力给连接到端口106的外围设备112(308),以减轻过功率状况。

已经公开了用于管理由计算设备100的电源电路102提供给计算设备100的内部硬件104并且提供给连接到计算设备100的端口106的外围设备112的功率的技术。如果使用最大通告量的外围设备112曾连接到每个端口106,则功率管理允许每个端口106有效地通告端口106处可用的功率的最大量,其大于可以提供的功率。然而,就如果不罕见也不太可能的该场景来说,向计算设备100的用户提供了在使用计算设备100的端口106时的更大的灵活性。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1