US6167524AExpiredUtility
Apparatus and method for efficient battery utilization in portable personal computers
Est. expiryApr 6, 2018(expired)· nominal 20-yr term from priority
G06F 9/3842G06F 9/3836G06F 9/3869G06F 1/3203Y02D10/00G06F 9/3885G06F 1/3287
85
PatentIndex Score
123
Cited by
22
References
30
Claims
Abstract
An apparatus and method controlling power consumption in portable personal computers by dynamically allocating power to the system logic. Expected total power consumption is calculated and compared to an optimum power efficiency value. The expected power consumption values for each execution unit are stored in a look-up table in actual or compressed form. If the expected total power consumption value exceeds the power efficiency value, selected execution units are made inactive. Conversely, if the power efficiency value exceeds the expected total power consumption value, execution unit functions are added in order to maintain a level current demand on the battery.
Claims
exact text as granted — not AI-modifiedThus, having described the invention, what is claimed is:
1. An apparatus for controlling power consumption of a computer system having a plurality of execution units comprising: means for storing and retrieving a power efficiency value, and expected power consumption values corresponding to the plurality of execution units when said execution units are active; means for determining which of said execution units are currently active; means for calculating an approximate expected total power consumption value corresponding to said execution units when said execution units are active; means for comparing said expected total power consumption value to said power efficiency value; means for monitoring each of said execution units, and collecting said expected power consumption values; means for canceling operation of said active execution units responsive to said means for comparing to control power consumption of the computer system, said canceling operation based on said calculated power consumption values and said power efficiency value; and, means for setting a level of power allocation, wherein said power allocation correlates to said power efficiency value.
2. The apparatus of claim 1 wherein said means for canceling comprises canceling operation of said active execution units such that said expected total power consumption does not substantially exceed said power efficiency value.
3. The apparatus of claim 1 further comprising means for adding executable operation codes to said execution units such that said expected total power consumption value is sustained at approximately said power efficiency value.
4. The apparatus of claim 3 wherein said means for adding executable operation codes comprises means for adding nonsense opcodes to execution units.
5. The apparatus of claim 1 wherein said means for determining said approximate expected total power consumption value comprises means for summing said expected power consumption values corresponding to each of said active execution units.
6. The apparatus of claim 1 wherein said means for canceling operation of said active execution units comprises means for determining which of said active execution units are speculative and canceling said speculative execution units.
7. The apparatus of claim 1 further comprising a power converter and battery such that said comparing and canceling operations sustain a substantially constant load to said battery during computer operation.
8. The apparatus of claim 1 wherein said means of storing and retrieving said expected power consumption values comprises a look-up table.
9. An apparatus for controlling power consumption of a computer system having a plurality of execution units comprising: a memory storage device, said memory device being adapted to store a power efficiency value, and expected power consumption values corresponding to said plurality of execution units; a processor comprising a controller element, a power allocation control element, and a programmable register, and having connections to said memory storage device, said processor being adapted to determine which of said execution units are active, determine an approximate expected total power consumption value corresponding to the plurality of execution units when said execution units are active, and compare said expected total power consumption value to said power efficiency value; said controller element of said processor being connected to and accessible by said power allocation control element, and having connections to monitor each of said execution units, said controller element being adapted to collect said expected power consumption values and cancel operation of active execution units; said power allocation control element of said processor being connected to said controller and said programmable register, said power allocation control element being adapted to receive input data from execution units, power allocation level information from said programmable register, and expected power consumption values, and sum the total value of all expected power consumption values corresponding to active execution units to determine if power allocation based on optimum battery efficiency has been exceeded; and said programmable register of said processor being connected to said power allocation control element, wherein said register is adapted to set the level of power allocation.
10. The apparatus of claim 9 further comprising a controller element being adapted to add operational codes such that said expected total power consumption is approximately equal to said power efficiency value.
11. The apparatus of claim 9 wherein said memory storage device includes a look-up table storing said expected power consumption values.
12. The apparatus of claim 11 wherein said expected power consumption values comprises a total number of node toggles for each of said execution units.
13. The apparatus of claim 12 wherein said expected power consumption values are stored in a compressed form in said look-up table.
14. The apparatus of claim 13 wherein said compressed form of said look-up table includes an organized distribution of a small number of integer values corresponding to selected groupings of said total number of node toggles for each of said execution units.
15. The apparatus of claim 14 wherein said organized distribution of integer values comprises values in a range with limits based on multiples of two (2).
16. The apparatus of claim 9 further comprising a dc-to-dc converter modified with inductors, said dc-to-dc converter being connected to a battery.
17. A method of controlling power consumption of a computer system having a plurality of execution units comprising: a) storing and retrieving a power efficiency value, and expected power consumption values corresponding to the plurality of execution units when said execution units are active; b) determining which of said execution units are currently active; c) calculating an approximate expected total power consumption value corresponding to said execution units when said execution units are active; d) comparing said expected total power consumption value to said power efficiency value; (e) monitoring each of said execution units, and collecting said expected power consumption values; f) canceling operation of one or more of said active execution units responsive to said comparing of said expected total power consumption value to said power efficiency value, said canceling operation based on said calculated power consumption values and said power efficiency value; and, g) setting a level of power allocation, wherein said power allocation correlates to said power efficiency value.
18. The method of claim 17 wherein said canceling step comprises canceling operation of one or more of said active execution units when said expected total power consumption substantially exceeds said power efficiency value.
19. The method of claim 17 further comprising adding executable operation codes to said execution units such that said expected total power consumption value is sustained at approximately said power efficiency value.
20. The method of claim 19 further comprising adding nonsense opcodes to the execution units.
21. The method of claim 17 wherein said step of storing and retrieving said expected power consumption values comprises utilizing a look-up table.
22. The method of claim 21 wherein said step of storing and retrieving said expected power consumption values comprises using a compressed form look-up table of the total number of node toggles for said execution units.
23. The method of claim 22 wherein said step of retrieving of said look-up table compressed form comprises retrieving an organized distribution of a small number of values for grouping said total number of node toggles for said execution units.
24. The method of claim 23 wherein said step of retrieving of said look-up table compressed form comprises retrieving said organized distribution of a small number of values wherein said values are in a range with limits based on multiples of two (2).
25. The method of claim 17 wherein said step of determining an approximate expected total power consumption value comprises summing said expected power consumption values corresponding to each of said active execution units.
26. The method of claim 17 wherein said step of canceling operation of said active execution units comprises determining which of said execution units are speculative and canceling said speculative execution units.
27. The method of claim 17 wherein said expected power consumption values comprise the total number of node toggles for each execution unit.
28. An apparatus for controlling power consumption of a computer system having a plurality of execution units corresponding to node toggles, comprising: means for storing and retrieving a power efficiency value, and expected power consumption values corresponding to the plurality of execution units when said execution units are active; means for determining which of said execution units are currently active; means for calculating an approximate expected total power consumption value corresponding to said execution units when said execution units are active; means for comparing said expected total power consumption value to said power efficiency value; means for monitoring each of said execution units, and collecting said expected power consumption values; and, means for adding executable operation codes to said execution units such that said expected total power consumption value is sustained at approximately said power efficiency value, and a consistent number of said node toggles is maintained.
29. A method of controlling power consumption of a computer system having a plurality of execution units corresponding to node toggles, comprising: a) storing and retrieving a power efficiency value, and expected power consumption values corresponding to the plurality of execution units when said execution units are active; b) determining which of said execution units are currently active; c) calculating an approximate expected total power consumption value corresponding to said execution units when said execution units are active; d) comparing said expected total power consumption value to said power efficiency value; (e) monitoring each of said execution units, and collecting said expected power consumption values; and, f) adding executable operation codes to sustain a constant load of the battery when said expected total power consumption does not substantially exceed said power efficiency value, and a consistent number of said node toggles is maintained.
30. A method of controlling power consumption of a computer system having a plurality of execution units comprising: a) storing and retrieving a power efficiency value, and expected power consumption values corresponding to the plurality of execution units when said execution units are active, wherein said storing and retrieving said expected power consumption values comprises utilizing a compressed form look-up table of the total number of node toggles for said execution units, said retrieving of said look-up table further comprises retrieving an organized distribution of a small number of values for grouping said total number of node toggles for said execution units, wherein said small number of values are in a range with limits based on multiples of two (2); b) determining which of said execution units are currently active; c) determining an approximate expected total power consumption value; d) comparing said expected total power consumption value to said power efficiency value; and, e) canceling operation of one or more of said active execution units responsive to said comparing of said expected total power consumption value to said power efficiency value.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.