A pair of electronic devices (a tablet computer, a laptop computer, an external hard disk drive (HDD), a monitor, and so forth) may be physically connected to each other by a serial bus cable, such as a Universal Serial Bus (USB) cable. For purposes of data communications between the electronic devices, one of the electronic devices is a host (which initiates the data communication), and the other electronic device is a peripheral. The USB Power Delivery (PD) Specification sets forth a standard for electronic devices to negotiate power delivery so that one of the devices (the receiver) receives power from the USB cable, and the other device (the contributor) provides the power from the USB cable. When the electronic devices become first connected to the USB cable, the devices may negotiate to create a PD contract, which establishes which of the devices is the contributor and which device is the receiver. Moreover, the PD contract allocates a certain level of power from the contributor.
Multiple electronic devices (laptops, tablet computers, smartphones, desktop computers, and so forth) may be connected together through serial bus connections. For example, in accordance with example implementations, three or more electronic devices may have Universal Serial Bus (USB) port connectors such that electronic device A may be connected by a USB cable to electronic device B, and electronic device A may also be connected (through another USB connector) to electronic device C. Moreover, the electronic devices may each have Power Delivery (PD) capability, which permits a given electronic device to either contribute power to another electronic device or receive power from another electronic device via a USB connection with that device. In this manner, the USB PD specification allows devices that are connected by USB-A or USB-C cables to negotiate a power sharing contract, or agreement, between the two devices. In this manner, through this PD negotiated contract between two such USB connected devices, one of the electronic devices is the power source, or “contributor,” and the other electronic device is the power sink, or “receiver.” Moreover, the PD contract defines a maximum amount of power that may be provided by the contributor to the receiver.
In accordance with example implementations that are described herein, three or more electronic devices, which are connected by serial bus port connectors (connected by USB port connectors and corresponding USB cables, for example) may form a power sharing agreement that defines power allocations for each of the electronic devices. The collective power sharing agreement takes into account the total power sourced to each electronic device, as well as the total power load of each device. For example, electronic device A may receive power over a USB cable from electronic B, and electronic device A may provide power to electronic device C. The total power sourced to electronic device A may be a summation of the power received from electronic B and the power provided by the battery of electronic device A. The total power load of electronic device A may be the summation of power load of components of electronic device A as well as the power provided by electronic device A to electronic device C.
In accordance with example implementations, a plurality of electronic devices may be interconnected with each other through their USB port connectors to form a power ecosystem. A given electronic device may, upon connection of another electronic device to the USB port connector of the given electronic device, communicate with the other electronic devices for purposes of determining contributor/receiver roles for the USB port connectors of the power ecosystem and for purposes of allocating power loads for the electronic devices of the power ecosystem.
As a member of the power ecosystem, a given electronic device may monitor its power load and implement a reactive power sharing control or an active power sharing control. When using the reactive power sharing control, an electronic device may react to a power demand increase in the device's power load by communicating with a contributor to increase power to the electronic device or communicating with a receiver to swap roles and become a contributor of power to the electronic device. If this is unsuccessful, the reactive power sharing control may involve the electronic device reducing the power consumed by its components by power throttling.
When using active power sharing control, an electronic device may react to a power demand increase in the device's power load by first employing power throttling to reduce the power that is consumed by its components. If the power throttling results in unsatisfactory performance, the electronic device may then communicate with a contributor to increase power to the electronic device and/or communicate with a receiver to swap roles and become a contributor of power to the electronic device. If the power demand has still not been met, the electronic device may use the power throttling until the power demand is reduced (regardless of performance).
For the exemplary power ecosystem 100, each laptop computer 110 includes one or multiple type C USB port connectors 114 (two type C USB port connectors 114-1 and 114-2 being depicted in
The laptop computer 110-1 receives power from an AC wall receptacle 160. In this regard, an AC adapter 162 for this example is plugged into the AC wall receptacle 160 and is connected to a type-C USB cable 117, which, in turn, is connected to the USB port connector 114-1. For this specific example, the USB port connector 114-1 receives power from the AC adapter 162, and correspondingly, the PD controller 130-1 does not negotiate power. Instead, power flows, as depicted by arrow 163, from the AC adapter 162 into the laptop computer 110-1.
As schematically depicted in
Moreover, as depicted by bidirectional arrows 133, 135 and 137, there are numerous bidirectional paths for power to flow within the laptop computer 110-1. In this manner, power may flow from the AC adapter 162 to charge the battery 120, power may flow to power consuming components of the laptop computer 110-1 and power may flow to the other USB port connector 114-2. Moreover, the laptop computer 110-1 may have more than two USB port connectors 114, and each of these ports 114 may, for example, be associated with and connected to a PD controller. In this manner, in accordance with example implementations, each USB port connector 114 (such as USB port connectors 114-1 and 114-2, for example) may receive power from another electronic device, receive power from a power source or provide power to another electronic device.
For the configuration that is depicted in
The USB port connector 114-2 of the laptop computer 110-1 is connected by a USB cable 170 to the USB port connector 114-1 of the laptop computer 110-2. For the example state of the power ecosystem 100 of
It is noted that depending on the power sources available to the laptop computer 110-2 the power roles of the USB port connectors 114 of the laptop computer 110-2 may change. For example, the battery 120 of the laptop computer 110-2 may become depleted, and as such, the laptop computer 110-2 may not receive sufficient power from the USB cable 170 to sustain the power load of the laptop computer 110-2 (i.e., the load due to the power consuming components of the laptop computer 110-2 and the power supplied through USB cable 174 to the laptop computer 110-3). As such, as described herein, corrective action may be taken, such as, as examples, the laptop computer 110-2 performing power throttling to reduce the power demanded by its components; the laptop computer 110-2 requesting an increase in the power supplied by the laptop computer 110-1; the laptop computer 110-2 initiating a swap in power roles in which the USB port connector 114-1 of the laptop computer 110-3 becomes the power provider, and the USB port connector 114-2 of the laptop computer 110-2 becomes the power receiver; and so forth.
In accordance with example implementations, the laptop computer 110 contains a controller 109 that regulates power sharing for the case in which the laptop computer 110 is connected to multiple other electronic devices through USB connections, i.e., for the scenario in which the laptop computer 110 and other electronic devices to form a power ecosystem. Depending on the particular implementation, the controller 109 may be an inter-integrated circuit (I2C) controller or a microcontroller unit (MCU). In this manner, in accordance with some implementations, the controller 109 may include a processor, such as a processor formed from one or multiple central processing unit (CPUs), one or multiple CPU cores, and so forth. In accordance with example implementations, the processor may execute machine executable instructions (or “software”), which are stored in a memory of the controller 109 for purpose of causing the controller 109 to perform one or more of the techniques that are described herein. The memory may be a non-transitory storage medium that is formed from storage devices, such as semiconductor storage devices, memristors, phase change memory devices, volatile memory devices, non-volatile memory devices, memory devices from other storage technologies, one or more of the foregoing storage devices, and so forth.
In accordance with further example implementations, the controller 109 may be formed from one or multiple hardware circuits that do not execute machine executable instructions. In this regard, in accordance with further example implementations, in place of a processor executing instructions, for example, the controller may include one or multiple hardware circuits, such as a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), and so forth.
Regardless of its particular form, in accordance with example implementations, the controller 109 may perform the following in response to the laptop computer 110 containing the controller 109, such as laptop computer 110-2, being connected to at least one other electronic device through USB connection(s). The controller 109 may communicate (via an I2C bus 140, for example) with the PD controllers 130-1 and 130-2 of the laptop computer 110-2 for purposes of determining the power status of the laptop computer 110-2, i.e., the incoming power received by the laptop computer 110-2 and the outgoing power provided by the laptop computer 110-2. As an example, the PD controllers 130-1 and 130-2 may include current sensors, which allows the PD controllers 130-1 and 130-2 to sense these powers. The controller 109 of the laptop computer 110-2 may also communicate with the controllers 109 of the laptop computers 110-1 and 110-3 for purposes of determine the power statuses of the laptop computers 110-1 and 110-3.
From this information, the controller 109 of the laptop computer 110-2 may determine the power roles of the USB port connectors 114-1 and 114-2 of the laptop computer 110-2, i.e., determine whether the USB port connector 114-1 of the laptop computer 110-2 is a power receiver or contributor and determine whether the USB port connector 114-2 of the laptop computer 110-2 is a power receiver or contributor. For example, if the controller 109 determines, based on the power statuses, that the power provided by the USB cable 170 and the power available from the battery 120 of the laptop computer 110-2 is sufficient to power both laptop connectors 110-2 and 110-3, then the controller 109 sets up the USB power roles so that power flows between the laptop computers 110-1, 110-2 and 110-3, as depicted in
It is noted that the power ecosystem 100 is advantageous over, for example, the unconstrained power provision in the USB PD specification, as the unconstrained power may eventually stifle any available power at the end of multiple receiver tier connections. To the contrary, the power ecosystem 100 may allow accumulated total power from all contributor systems throughout the entire power system for any power delivery direction.
For the state of the power ecosystem 200 depicted in
In accordance with example implementations, when a first electronic device (such as the laptop computer 110) connects through its USB port connector to a second electronic device (such as another laptop computer 110), the first electronic device may perform a technique 300 that is depicted in
If the first electronic device is to receive power from the second electronic device, then, in accordance with example implementations, the controller 109 of the first electronic device requests (block 326) the highest available power level from the second electronic device. The controller 109 regulates power sharing based on the load of the first electronic device, pursuant to block 330.
Referring back to
For the following discussion, it is assumed that for the power sharing that occurs over the USB cable 170, the laptop computer 110-1 is at least initially the contributor, and the laptop computer 110-2 is at least initially the receiver (i.e., the laptop computer 110-2 receives power from the laptop computer 110-1 via the USB cable 170). Moreover, for the following discussion, it is assumed for the power sharing that occurs over the USB cable 174, the laptop computer 110-2 is at least initially the contributor, and the laptop computer 110-3 is at least initially the receiver (i.e., the laptop computer 110-3 receives power from the laptop computer 110-2 via the USB cable 174).
Referring to
In the state 414, the controller 109 of the laptop computer 110-2 (the receiver for the power sharing over the USB cable 170) sends a message to the controller 109 of the laptop computer 110-1 (the contributor for the power sharing over the USB cable 170) requesting a power increase. If the power increase meets the power demand of the laptop computer 110-2, as depicted at reference number 415, then the controller 109 of the laptop computer 110-2 returns to the state 410. However, as depicted at reference number 417, if the power increase from the contributor is not enough to meet the power demand increase (or perhaps if the contributor cannot increase power), then the controller 109 transitions to state 418, in which the controller 109 sends a message to the controller 109 of the laptop computer 110-3 (the receiver for the power sharing over the USB cable 174) for the laptop computers 110-2 and 110-3 to swap roles for the power sharing over the USB cable 174. With this power role swap, the laptop computer 110-3 is now the contributor and the laptop computer 110-2 is now the receiver for the power sharing over the USB cable 174. In other words, with the power role swap, another contributor is now providing power to the laptop computer 110-2, and if the controller 109 of the laptop computer 110-2 determines that the power increase meets the demand, then the controller 109 of laptop computer 110-2 transitions back to the state 410.
If, however, the controller 109 of laptop computer 110-2 determines, as depicted at reference number 419, that the power from the new contributor (laptop computer 110-3) is not sufficient to meet the power demand, then the controller 109 may transition to a state 428 in which the controller 109 throttles power of the laptop computer 110-2. For example, in accordance with some implementations, the controller 109 may use configurable thermal design power (cTDP) throttling, in which the controller 109 downwardly adjust the thermal design power (TDP) value of one or multiple microprocessors of the electronic device to downwardly adjust their operating frequencies (and consequently decrease the power demand of the electronic device). In response to the power reduction meeting the demand increase, the controller 109 may then transition back to state 410.
If the controller 109 of the laptop computer 110-2 determines that the performance of the laptop computer 110-2 is insufficient after the power throttling, then, as depicted at block 514, control may transition to block 514, in which the controller 109 sends a message to the power contributor, laptop computer 110-1, to increase the level of provided power to the laptop computer 110-2. If the controller 109 of the laptop computer 110-2 determines that the additional power meets the demand increase and restores performance to an acceptable level, then the controller 109 transitions back to the state 506, as depicted at reference number 519. However, if the controller 109 of the laptop computer 110-2 determines, as depicted in reference number 515, that the additional power is not enough to meet the demand increase, then the controller 109 transitions to a state 518.
In state 518, the controller 109 sends a message to the receiver laptop computer 110-3 for the laptop computers 110-2 and 110-3 to swap power roles, i.e., the laptop computer 110-3 becomes the contributor for the power sharing over the USB cable 174, and the laptop computer 110-2 becomes the receiver. In other words, with this power role swap, another contributor is now providing power to the laptop computer 110-2, and if the power increase meets the demand, then the controller 109 of the laptop computer 110-2 transitions back to the state 506. Otherwise, from the new contributor is not sufficient to meet the demand increase, then, as depicted at reference number 521, the controller 109 of the laptop computer 110-2 transitions to a state 522 in which the controller 109 reduces power using power throttling (cTDP-based throttling, for example). When the throttling results the power demand increase being met, then, as depicted at reference number 523, the controller 109 of the laptop computer 110-2 transitions back to the state 506.
Referring to
Referring to
Referring to
While the present disclosure has been described with respect to a limited number of implementations, those skilled in the art, having the benefit of this disclosure, will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2018/017179 | 2/7/2018 | WO | 00 |