Power management for digital devices
First Claim
1. A method of managing power consumption in a digital device, the digital device comprising one or more processors, a peripheral component and a memory, wherein the peripheral component and the memory transfer data between each other on a bus using direct memory access (DMA), the method comprising:
- determining a number of units of data transferred on the bus between the peripheral component and the memory in a prior time interval;
computing an estimate of a number of units of data that will be transferred on the memory bus in a future time interval; and
issuing a power management command to change a power consumption state of at least one of the one or more processors, the peripheral component and the memory, wherein the determination of the power management command includes the use of the estimate;
wherein the issuing a power management command is designed to change a value of at least one of a power supply voltage supplied to the one or more processors or the peripheral component, a frequency of a clock controlling the operations of the one or more processors or the peripheral component, and a frequency of a bus clock controlling a rate of transfer of data on the bus; and
wherein the transfer of data on the bus is controlled by a bus controller, wherein the bus controller receives the bus clock, wherein the changing comprises writing a value to the bus controller to modify the frequency of the bus clock.
1 Assignment
0 Petitions
Accused Products
Abstract
In a digital device, activity of (or load on) one or more processors, peripherals and memory buses are measured. A power management framework operated in the digital device bases power settings in the digital device on the measured loads, and accordingly issues power management commands to change power consumption states of one or more of the processors, peripherals and memory buses. Some user applications (termed power aware applications) in the digital device provide a number identifying their application type to the power management framework, which thereby determines the resources required by the application. The power management commands issued by the power management framework ensure provision of the corresponding resources to the application, while also targeting minimization of power consumption in the digital device. In an embodiment, the digital device corresponds to a mobile phone.
-
Citations
14 Claims
-
1. A method of managing power consumption in a digital device, the digital device comprising one or more processors, a peripheral component and a memory, wherein the peripheral component and the memory transfer data between each other on a bus using direct memory access (DMA), the method comprising:
-
determining a number of units of data transferred on the bus between the peripheral component and the memory in a prior time interval; computing an estimate of a number of units of data that will be transferred on the memory bus in a future time interval; and issuing a power management command to change a power consumption state of at least one of the one or more processors, the peripheral component and the memory, wherein the determination of the power management command includes the use of the estimate; wherein the issuing a power management command is designed to change a value of at least one of a power supply voltage supplied to the one or more processors or the peripheral component, a frequency of a clock controlling the operations of the one or more processors or the peripheral component, and a frequency of a bus clock controlling a rate of transfer of data on the bus; and wherein the transfer of data on the bus is controlled by a bus controller, wherein the bus controller receives the bus clock, wherein the changing comprises writing a value to the bus controller to modify the frequency of the bus clock. - View Dependent Claims (2, 3)
-
-
4. A method of managing power consumption in a digital device, the digital device comprising one or more processors, a peripheral component and a memory, wherein the peripheral component and the memory transfer data between each other on a bus using direct memory access (DMA), the method comprising:
-
determining a number of units of data transferred on the bus between the peripheral component and the memory in a prior time interval; computing an estimate of a number of units of data that will be transferred on the memory bus in a future time interval; issuing a power management command to change a power consumption state of at least one of the one or more processors, the peripheral component and the memory, wherein the determination of the power management command includes the use of the estimate, wherein the issuing a power management command is designed to change a value of at least one of a power supply voltage supplied to the one or more processors or the peripheral component, a frequency of a clock controlling the operations of the one or more processors or the peripheral component, and a frequency of a bus clock controlling a rate of transfer of data on the bus measuring an activity level of a first processor in the one or more processors in the prior time interval; computing an estimate of an activity level of the first processor in the future time interval; and adjusting either a value of a first power supply voltage supplied to the first processor or a frequency of a first clock controlling the operation of the first processor. - View Dependent Claims (5)
-
-
6. A non-transient machine readable medium storing one or more sequences of instructions for managing power consumption in a digital device, the non-transient machine readable medium comprising:
-
a first set of instructions constituting a power management framework; a second set of instructions constituting a first application which when executed in the digital device is designed to send an identifier of the first application to the power management framework executing in the digital device; the first set of instructions when executed in the digital device being designed to determine a resource requirement for executing the first application in the digital device, wherein the determining is performed based on the identifier received from the first application, and to generate a set of power management commands to control power consumption in the digital device, wherein the set of power management commands are designed to ensure the provision of the resource requirement to the first application, wherein the resource requirement includes at least one of a power supply voltage supplied to a component in the digital device, a frequency of a clock controlling the operations of the component, or a frequency of a bus clock controlling a rate of transfer of data on a bus coupled between the component and a memory contained in the digital device, and wherein the power management framework performs a first set of actions to generate the set of power management commands, wherein the first set of actions comprises; determining a load on each of a plurality of components comprised in the digital device; normalizing the load determined on each of the plurality of components; computing a statistical measure of a set of past values and a current value for each of the normalized loads to obtain a set of processed load values; and mapping the set of processed load values to a power management setting. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A method of determining a power management setting in a digital device, the method being performed by a power management framework operational in the digital device, the method comprising:
-
determining a load on each of a plurality of components comprised in the digital device; normalizing the load determined on each of the plurality of components; computing a statistical measure of a set of past values and a current value for each of the normalized loads to obtain a set of processed load values; and mapping the set of processed load values are mapped to obtain the a power management setting, wherein the mapping is one of a linear mapping and a non-linear mapping. - View Dependent Claims (13, 14)
-
Specification