On-die real time leakage energy meter
A method includes measuring a temperature for a portion of an electronic component, determining the voltage being applied to the portion of the component, and determining a leakage power for the component portion based on a measured temperature and determined voltage for the portion of the component. The method also includes measuring a temperature for another portion of the component, determining the voltage being applied to the other component portion, and determining a leakage power for the other component portion based on the measured temperature and determined voltage for the other portion of the component. The method also includes summing the leakage power for the portion with the leakage power for the other portion of the component.
There is an industry push toward reducing power consumption in computer systems. Some government bodies even require energy compliant computing systems. The need for reducing power consumption of computers is especially keen for battery-operated mobile computing systems, such as laptops and notebook personal computers. Because the power source of mobile computers accounts for a significant percentage of the bulk and weight of the device, attempts have been made since the advent of laptops to reduce their power consumption.
In addition, there is an ever-constant push in the computing industry to deliver computing systems having increased performance. As microprocessors and other components within a computer system become faster and smaller, thermal management becomes an important factor in preventing device and component overheating or failure. Mobile computers, such as laptop and notebook computers, are not immune to the ever-constant push to deliver higher-performing systems. In mobile computing environments, thermal management is even a more important factor since the components are packed into a smaller housing. In other words, the heat generated is concentrated within the smaller housing and must be managed more effectively to prevent device component or failure. The amount of power consumed is related to the amount of heat generated by a computing system. Generally, the higher the amount of power consumed, the more heat that will be generated.
In order to effectively perform power management and thermal management in a computing system, the total power comsumption for selected components must be determined or estimated as accuarately as possible. The amount of active power used by a component cannot be used alone to project the total energy dissapated by a component or device, such as a microprocessor. Power comsumption includes not only the active power used by a component or device, but also includes the leakage power consumed by a component or device. Leakage power results from leakage current. Leakage current is inherent in devices or components that include transistors. Leakage current is current that conducts through a transistor even when the transistor is supposed to be off. In most circuit configurations, leakage current is undesirable because it consumes power without producing useful work. Leakage power consumption is inherent in semiconductor physics and is a product of the design methods used to create high speed processors. Leakage power consumption is caused by a voltage gradient across a junction within a semiconductor chip that causes current flow.
Currently, high performance devices are experiencing larger leakage currents as a percentage of total current consumption because of the greater number of transistors, with each transistor having a larger leakage current. The development of high performance devices or components, such as microprocessors, has led to increased leakage power consumption because higher frequency devices employ smaller transistors in larger numbers than ever before. The smaller the transistor channel length and oxide thickness, the greater the leakage power consumption.
BRIEF DESCRIPTION OF THE DRAWINGS
In the following detailed description of the preferred embodiments, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which some embodiments of the invention may be practiced. It is understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention.
It should be noted that the information handling system or computer system 100 described above is one example embodiment of a computer system. Other computer systems can include multiple central processing units and multiple memory units.
In some example embodiments, the information handling-system or computer system 100 is equipped with a power management program. Many mobile computer systems implement a power management program to conserve power and extend battery life as consumers generally prefer mobile computing systems with longer battery life. Desktop computers and other computers also may implement a power management program. In a computing system 100 that implements a power management program, one or more of the various devices or components of the computer system 100 are power management enabled. Any device or component of the computer system 100 can be power management enabled. For example, the central processing unit 104, the random access memory 132 and the read only memory 134 can be power management enabled. A video card, which is an interface between the central processing unit and a monitor, can also be power management enabled. Another peripheral device that can be power management enabled is a printer. In other words, one or more of the devices or components of the information handling system or computer system 100 include provisions through which a power management enabled operating system can put some or all of these devices or components into low-to-no function power saving modes. The devices or components are brought back to the full function normal power consumption mode of operation when the devices or components are needed.
Examples of these computer systems include ACPI compliant systems equipped with Windows 95® or later (available from Microsoft Corp. of Redmond, Wash.). ACPI compliant means compliance with the Advanced Configuration and Power Interface specification, revision 1.0 or later, available from Intel Corp. of Santa Clara, Calif., a co-developer of the specification, and assignee of the present application.
In order to most effectively execute a power management program for the computer system 100, an accurate estimation or determination of the power consumption of at least one of the devices or components of the information handling system or computer system 100 is necessary. Generally, the total amount of power used by a device or component includes active power used by a component or device, and also includes leakage power consumed by a component or device. The active power is the amount of power used when the component or device is active or operating. Leakage power results from leakage current. Leakage current is inherent in devices or components that include transistors. Leakage current is current that conducts through a transistor even when the transistor is supposed to be off. Leakage current consumes power without producing useful work. As a result, the amount of active power used by a component cannot be used alone to project the total energy dissipated by a component or device, such as a microprocessor. Power comsumption includes not only the active power used by a component or device, but also includes the leakage power consumed by a component or device.
Leakage power for a die or device that includes a plurality of transistors is a function of the voltage applied to the device, also known as supply voltage, and the die or device temperature. The functional relationship can be stated generally as follows:
PLEAK=f(Vn,Tm)
PLEAK is the amount of power that is dissipated due to leakage current at a given time. The amount of energy that is dissipated over a span of time is the summation of the various PLEAK values at the various times. The functional relationship can be stated generally as follows:
ELEAK=Σf(Vn,Tm)
During the operation of a die or device, the temperature of the die or device varies continuously. For example, the voltage applied to a central processing unit varies over time due to the varying current demand in the processor and due to dynamic voltage scaling for power and thermal management. The die temperature of the central processing unit varies as a function of the active power and leakage power dissipated by the central processing unit, as well as the type of workload. In addition to having various voltages applied to a component and having fluctuating temperatures on the die or device, the die or device can have areas that tend to operate at higher temperatures than other areas of the die or device. These areas are generally known as hot spots. Thus, the amount of leakage power varies continously over time and also varies with respect to the area of the die or device. To estimate or determine the leakage power associated with a particular component or device, the temperature and voltage values must be measured on the component or device.
The voltage being applied to the component or device 200 is measured by the voltage sensor 220. In some embodiments, the voltage sensor 220 is off the device or component 200. As shown in
The voltage applied to the various portions 201, 202, 203, 204 of the component or device 250 is measured by the various voltage sensors 260, 262, 264, 266. In some embodiments, the voltage sensors 260, 262, 264, 266 are off the device or component 250. In other embodiments, the voltage sensors 260, 262, 264, 266 are on the die or device or component 250. The voltage sensors 260, 262, 264, 266 are measure the voltage of a portion of the device or component with respect to a reference voltage. As shown in
Once it is determined which range the present voltage is within and what range the present temperature is within. The leakage power is merely read from the appropriate cell. For example, if the present voltage is within the voltage range labeled VR6 and the present temperature input to the multiplier and accumulator 510 is within the temperature range TR1, the value for the power leakage from cell 561 is read from the lookup table 560. Other portions of the component or device are similarity measured and the table lookup 560 is used to produce the appropriate power leakage value. The power leakage value associated with each of the cells is computed at the time of reset of the component or device. At the reset time the microcode computes the Pleak for each pair of voltage ranges VR1, VR2, VR3, VR4, VR5, VR6 and temperature ranges TR1, TR2, TR3, TR4, TR5. These values then populate the cells, such as cell 561.
At every sample time, the voltage and temperature will be read and used to index the lookup table 560. The data return from the lookup table is accumulated into the leakage readout register 520. If the implementation supports multiple temperature inputs corresponding to different sections of the die or component or device, the accumulator 510 performs the following math: Pleak=where x is the number of temperature inputs available on the die. The scalar needs to comprehend the number of temperature inputs. A simple approximation to calculate K will be to calculate it based on the measure of leakage energy on silicon and dividing it by the number of temperature inputs. This approximation assumes that the die is divided into equal sections and one thermal sensor or temperature sensor determines the temperature of each section. If the implementation allows for programming of multiple scalars, unequal sections of the die can be allowed. The output of the accumulator 510 when filled with energy values is the accumulated energy. The average leakage power, in this case, is determined by dividing the accumulated energy by the time interval over which the energy was summed.
In another example embodiment, the table is filled with power values. When the table is filled with power values the accumulator can be eliminated. The instantaneous leakage power is read directly from the table. An accumulator can be used if the table is filled with power values to find the average leakage power. If an accumulator is present, the average leakage is calculated by dividing the accumulator output by the number of leakage power samples taken.
In another example embodiment, the values for leakage power are calculated on-the-fly. This particular embodiment is set to be a more dynamic solution. In this particular embodiment, the microprocessor, or central processing unit 104 has a portion 105 (shown in
In still another embodiment of the invention, a microcontroller which off the semiconductor associated with CPU 104, is provided. The dedicated microcontroller performs the lower level, less intensive housekeeping tasks. The microcontroller can also perform on-the-fly calculations of the leakage power for each of the sections 201, 202, 203, 204 (shown in
A system includes a component, a voltage sensor for sensing a voltage being applied to the component, and a device for determining a leakage power. The component further includes a first temperature sensor positioned to sense a temperature associated with a first selected portion of the component, and a second temperature sensor positioned to sense a temperature associated with a second portion of the component. The device for determining a leakage power determines leakage power for the first portion of the component based on the first sensed temperature and the sensed voltage for the first portion of the component, and for the second portion of the component based on the second sensed temperature and the sensed voltage for the second portion of the component. The device for determining leakage power further includes a memory. The memory stores a value of the leakage power associated with a first portion of the component, and a value of the leakage power associated with a second portion of the component. The system also includes an accumulator for summing the determined leakage power of the first portion of the component, and the determined leakage power for the second portion of the component. The system also includes an output register for storing an accumulated value of the leakage power from a component.
It is understood that the above description is intended to be illustrative, and not restrictive. Many other embodiments will be apparent to those of skill in the art upon reviewing the above description. The scope of the invention should be, therefore, determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.
Claims
1. A method comprising:
- segmenting a component into various portions;
- measuring a temperature for each portion of the component; and
- determining a leakage power for each portion based on the measured temperature for each portion of the component.
2. The method of claim 1, further comprising determining the voltage being applied to each portion, wherein determining the leakage power for each portion is based on the determined voltage and the measured temperature.
3. The method of claim 1, further comprising accumulating the leakage power for each portion of the component to determine a leakage power for the component.
4. The method of claim 2 wherein determining the leakage power further comprises:
- setting a plurality of voltage ranges;
- setting a plurality of temperature ranges; and
- calculating a value of leakage power for various combinations of voltage ranges and temperature ranges.
5. The method of claim 4, wherein calculating a value of leakage power for various combinations of voltage ranges and temperature ranges is done at selected times during the operation of the component.
6. The method of claim 4, wherein calculating a value of leakage power for various combinations of voltage ranges and temperature ranges is done at reset, the method further comprising placing the calculated values for the various combinations of voltage ranges and temperature ranges in a memory device lookup table.
7. The method of claim 4, wherein calculating a value of leakage power for various combinations of voltage ranges and temperature ranges is done at reset, the method further comprising placing the calculated values for the various combinations of voltage ranges and temperature ranges in a lookup table.
8. The method of claim 1, wherein segmenting a component into various portions includes segmenting the component into substantially equal portions.
9. The method of claim 1, wherein segmenting a component into various portions includes segmenting the component into unequal portions.
10. The method of claim 1, wherein segmenting a component into various portions includes segmenting the component into portions that tend toward higher temperatures than other portions of the component.
11. A machine accessible medium to store a set of instructions that when executed, perform a method comprising:
- measuring a temperature for a first portion of the component;
- determining the voltage being applied to the first portion of the component; and
- determining a leakage power for the first portion of the component based on the measured temperature and determined voltage for the first portion of the component.
12. The medium of claim 11, wherein the method further comprises:
- measuring a temperature for a second portion of the component; and
- determining the voltage being applied to the second portion of the component.
13. The medium of claim 12, wherein the method further comprises determining a leakage power for the portion of the second component based on the measured temperature and determined voltage for the second portion of the component.
14. The medium of claim 13, wherein the method further comprises accumulating the leakage power for the first portion of the component and the second portion of the component.
15. The medium of claim 14, wherein accumulating the leakage power for the first portion of the component and the second portion of the component is included in determining a leakage power for the component.
16. The medium of claim 14, wherein the method further comprises sending the accumulated leakage power to a readout register.
17. The medium of claim 14 for performing the method on a plurality of components associated with a computer system.
18. The medium of claim 11, wherein determining a voltage being applied to the portion of the component includes sensing a voltage value for the first portion of the component.
19. The medium of claim 11, wherein determining a voltage being applied to the first portion of the component includes sensing a voltage value applied to the component.
20. The medium of claim 11, wherein measuring the temperature of a portion of the component includes measuring the temperature of the first portion of the component.
21. The medium of claim 12, wherein measuring the temperature of the first portion of the component includes:
- sensing the temperature on the first portion; and
- sensing the temperature on the second portion of the component.
22. The medium of claim 11 wherein determining the leakage power further comprises:
- selecting a plurality of voltage ranges;
- selecting a plurality of temperature ranges; and
- calculating a value of leakage power for a selected combination of a voltage range and a temperature range.
23. The medium of claim 11 wherein determining the leakage power further comprises:
- determining the voltage applied to the first portion at a given time;
- determining the temperature of the first portion at the given time; and
- calculating a value of leakage power for a selected combination of a voltage and temperature.
24. A semiconductor device comprising:
- a first temperature sensor positioned to sense a temperature associated with a first selected portion of the semiconductor device; and
- a second temperature sensor positioned to sense a temperature associated with a second portion of the semiconductor device.
25. The semiconductor device of claim 24 further comprising a sensor to sense a voltage being applied to the semiconductor device.
26. The semiconductor device of claim 24 further comprising:
- a first sensor to sense a voltage being applied to a first selected portion of the semiconductor device; and
- a second sensor to sense a voltage being applied to a second selected portion of the semiconductor device.
27. A system comprising:
- a component further comprising: a first temperature sensor positioned to sense a temperature associated with a first selected portion of the component; and a second temperature sensor positioned to sense a temperature associated with a second portion of the component;
- a voltage sensor to sense a voltage being applied to the component; and
- a device to determine a leakage power for the first portion of the component based on the first sensed temperature and the sensed voltage for the first portion of the component; and the second portion of the component based on the second sensed temperature and the sensed voltage for the second portion of the component.
28. The system of claim 27 wherein the device to determine leakage power further comprises a memory, wherein the memory stores a value of the leakage power associated with a first portion of the component, and a value of the leakage power associated with a second portion of the component.
29. The system of claim 27 further comprising an accumulator to sum the leakage power of the first portion of the component, and the leakage power for the second portion of the component.
30. The system of claim 29 further including an output register to store a value of the leakage power from a component, the value of the leakage power to include the leakage power of the first portion of the component, and the leakage power for the second portion of the component.
Type: Application
Filed: Jun 30, 2005
Publication Date: Jan 4, 2007
Inventors: Sanjeev Jahagirdar (Folsom, CA), Jose Allarey (Davis, CA), Varghese George (Folsom, CA)
Application Number: 11/173,147
International Classification: G01R 31/02 (20060101);