IP Library Patent Application 13533480
Patent Application
App. No. 13/533,480

Proactive Power Management Using a Power Management Unit

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
13/533,480
Abstract

Embodiments of the present disclosure provide systems and methods for proactively managing power in a device. A power management unit (PMU) receives information from various subsystems of a device and estimates the total power required by each subsystem of the device. Based on this information, the PMU can predict power requirements for a particular subsystem or for one or more application(s) to execute. Based on this prediction, the PMU can reconfigure the subsystems so that the device executes more efficiently given the current battery life of the device. Proactive power management advantageously gives the PMU the capability to predict power needs of various subsystems of a device so that the power supplied to these subsystems can be managed in an intelligent way before battery resources are exhausted.

Claims (81)

1 . An apparatus comprising:

a power source;

a plurality of subsystems coupled to the power source, wherein the subsystems are configured to receive power from the power source; and

a power management unit (PMU) configured to manage distribution of power from the power source to the subsystems, wherein the PMU is further configured to:

receive information from the subsystems indicating power requirements of the subsystems;

predict power requirements for a first subsystem in the plurality of subsystems based on the information; and

reconfigure the first subsystem based on the predicted power requirements.

2 . The apparatus of claim 1 , wherein the subsystems include a sensor, and wherein the PMU is further configured to:

receive information from the sensor indicating the occurrence of an event; and

determine whether to reconfigure the first subsystem or a second subsystem in the plurality of subsystems based on the event.

3 . The apparatus of claim 2 , wherein the information indicates that no user is in the proximity of the apparatus, and wherein the PMU is further configured to reduce an amount of power supplied to the first subsystem in response to determining that no user is in the proximity of the apparatus.

4 . The apparatus of claim 1 , wherein the subsystems include:

a first memory; and

a processor having a cache memory, and wherein the PMU is further configured to:

monitor a plurality of cache miss signals received from the processor;

detect an increase or a decrease in an amount of cache miss signals associated with data stored in the first memory; and

determine whether to reconfigure the first memory or the cache memory based on the detected increase or decrease.

5 . The apparatus of claim 4 , wherein the PMU is further configured to:

increase an amount of power supplied to the first memory in response to detecting the increase in the amount of cache miss signals associated with data stored in the first memory; and

decrease the amount of power supplied to the first memory in response to detecting the decrease in the amount of cache miss signals associated with data stored in the first memory.

6 . The apparatus of claim 1 , wherein the PMU is further configured to:

generate a signature based on a pattern of access associated with a block of code;

access power consumption information stored in a table in memory;

determine whether an entry in the table matches the signature;

access power prediction information corresponding to the signature in response to determining that the entry matches the signature; and

determine whether to reconfigure the first subsystem or a second subsystem in the plurality of subsystems based on the power prediction information.

7 . The apparatus of claim 6 , wherein the signature is a hash of a plurality of addresses in memory accessed during execution of the block of code.

8 . The apparatus of claim 1 , wherein the PMU is further configured to:

detect a signal generated during an execution of a block of code, wherein the signal indicates upcoming power consumption needs of the block of code; and

determine whether to reconfigure the first subsystem or a second subsystem in the plurality of subsystems based on the signal.

9 . The apparatus of claim 8 , wherein the block of code includes energy hint code for notifying the PMU that power-expensive code is being executed, and wherein the signal is generated during execution of the energy hint code.

10 . A communications device comprising:

a power source;

a plurality of subsystems configured to receive power from the power source; and

a power management unit (PMU) configured to manage distribution of power from the power source to the subsystems, wherein the PMU is further configured to:

receive information from the subsystems indicating power requirements of a plurality of applications;

access information stored after a previous execution of a first application in the plurality of applications;

predict power requirements for the first application based on the accessed information; and

reconfigure characteristics of the first application based on the predicted power requirements.

11 . The communications device of claim 10 , wherein the PMU is further configured to:

determine whether the communications device has sufficient power to finish executing the application; and

reconfigure characteristics of the first application in response to determining that the communications device does not have sufficient power to finish executing the application.

12 . The communications device of claim 11 , wherein the PMU is further configured to:

access a stored policy;

determine whether the policy contains instructions for reconfiguring the characteristics of the first application;

in response to determining that the policy contains instructions for reconfiguring the characteristics of the first application:

notify a user of the communications device of an upcoming reconfiguration of the characteristics of the first application, and

reconfigure the characteristics of the first application based on the stored policy; and

in response to determining that the policy does not contain instructions for reconfiguring the characteristics of the first application:

inform the user that the communications device has insufficient power to finish executing the application, and

propose a power saving option to the user.

13 . The communications device of claim 10 , wherein the PMU is further configured to:

determine a power mode of the communications device;

in response to determining that the communications device is operating in a lower power mode, periodically evaluate currently executing applications to determine whether the first application is a high priority application; and

in response to determining that the first application is a high priority application:

determine whether the communications device has sufficient power to finish executing the application, and

reconfigure characteristics of the first application in response to determining that the communications device does not have sufficient power to finish executing the application.

14 . The communications device of claim 10 , wherein the PMU is further configured to lower quality of a playing video in response to determining that the communications device has insufficient power to finish playing the video.

15 . The communications device of claim 10 , wherein the PMU is further configured to:

determine an amount of power available to a second device in communication with the communications device; and

reconfigure characteristics of the first application based on the amount of power available to the second device.

16 . A method comprising:

receiving, at a power management unit of a device, information from a plurality of subsystems of the device indicating power requirements of the subsystems;

predicting power requirements for a first subsystem in the plurality of subsystems based on the information; and

reconfiguring the first subsystem based on the predicted power requirements.

17 . The method of claim 16 , further comprising:

receiving information from a sensor indicating the occurrence of an event; and

determining whether to reconfigure the first subsystem or a second subsystem in the plurality of subsystems based on the event.

18 . The method of claim 16 , further comprising:

monitoring a plurality of cache miss signals received from a processor having a cache memory;

detecting an increase or a decrease in an amount of cache miss signals associated with data stored in a first memory; and

determining whether to reconfigure the first memory or the cache memory based on the detected increase or decrease.

19 . The method of claim 16 , further comprising:

generating a signature based on a pattern of access associated with a block of code;

accessing power consumption information stored in a table in memory;

determining whether an entry in the table matches the signature;

accessing power prediction information corresponding to the signature in response to determining that the entry matches the signature; and

determining whether to reconfigure the first subsystem or a second subsystem in the plurality of subsystems based on the power prediction information.

20 . The method of claim 16 , further comprising:

detecting a signal generated during an execution of a block of code, wherein the signal indicates upcoming power consumption needs of the block of code; and

determining whether to reconfigure the first subsystem or a second subsystem in the plurality of subsystems based on the signal.

Assignments (4)
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2012
From: FULLERTON, MARK; WALLEY, JOHN; JUNG, HWISUNG
To: BROADCOM CORPORATION
Reel/Frame 028446/0414 →