Power dissipation directly affects the performance and reliability of modern integrated circuits. A microprocessor designer, for example, may model this power dissipation with respect to a high level micro-architecture, a register transfer level, and an actual implementation of the microprocessor. According to conventional methods for modeling power dissipation, source-to-drain leakage power is characterized as a constant depending only on a process corner of the subject integrated circuit. These methods typically neglect any dependence of leakage power on temperature as insignificant.
Integrated circuit 110 comprises core 110, temperature sensor 120, lookup table 130, power regulation circuit 140 and comparator 150. The positions and relative sizes of functional blocks 110 through 150 do not necessarily reflect any particular implementation. According to some embodiments, one or more of functional blocks 110 through 150 may share active or passive electrical elements amongst each other.
Core 110 may comprise an execution engine to execute processor-executable program code. Such execution may illicit desired behavior from circuit 100, which may include internal state changes as well the driving of desired signals to external pins (not shown) of circuit 100. Circuit 100 may store program code “on-chip” for low-level operations such as one or more processes described herein.
Memory 160 may be in communication with one or more external pins and may provide processor-executable program code to integrated circuit 100 according to some embodiments. Memory 160 may comprise any type of memory for storing data, including but not limited to a Single Data Rate Random Access Memory (SDR-RAM), a Double Data Rate Random Access Memory (DDR-RAM), or a Programmable Read Only Memory (PROM).
Initially, at 210, a spatial power map associated with an integrated circuit is determined. The spatial power map is based on an architecture of the circuit. Determination of the spatial power map at 210 may proceed according to any suitable system that is or becomes known. For example, some conventional systems receive an electronic “floorplan” of the integrated circuit, statistical historic studies of prior integrated circuits, and process data, and generate a three-dimensional map illustrating power consumption at various locations throughout the integrated circuit. The map typically reflects active power, gate power, and source-to-drain leakage power.
Next, at 220, a spatial thermal map associated with an integrated circuit is generated based on the spatial power map generated at 210. The spatial thermal map may indicate average operational temperatures at various points of the integrated circuit. Again, current or future conventional methods for generating such a thermal map may be employed at 220.
A spatial leakage power map is determined at 230 based on the spatial thermal map generated at 220. According to some embodiments, the spatial leakage power map reflects source-to-drain leakage power at various locations of the integrated circuit. The leakage power may be modeled as follows:
P
sdleak2
=P
sdleak1
e
(β(T2−T1),
where β is obtained from process data simulations. The following table illustrates values of β generated by SPICE measurements using a minimum square fit method, with Vdd=1.1V, T=25 to 150 degrees C., and a PTTTT skew on conventional microprocessor fabrication process.
As shown, β may vary depending on process corner. Accordingly, several spatial leakage power maps corresponding to respective process corners may be generated at 230.
At 240, it is determined whether the spatial leakage power map is substantially convergent. Convergence in this context may indicate that a difference between the most-recently determined spatial thermal map and a previously-determined thermal map is less than a predetermined threshold. Some embodiments therefore require flow to return to 220 and continue as described above to generate a second spatial thermal map for comparison against a first spatial thermal map at 240. Flow continues to cycle between 220, 230 and 240 until the most-recently determined spatial thermal map is determined to be substantially convergent.
One or more leakage power shutdown temperatures are determined at 250 based on the spatial leakage power map. The determination at 250 may be based on the direct proportionality of temperature to total power, written as Tj=Ta+Θ (Source-Drain Leakage Power+Gate Leakage Power+Active Power). Assuming that Y1=Tj and Y2=Ta+Θ, the function Y=Y1−Y2 may be defined. The function Y has one minimum and no maximums. Moreover, if the minimum is less than 0, either one solution (i.e., a converging case) or two solutions (i.e., a diverging case) exists.
A temperature of an integrated circuit is determined at 410. The temperature may be determined by an on-chip temperature sensor such as temperature sensor 120, which may comprise a digital thermometer or any other type of sensor that is or becomes known. The sensor may measure the temperature at a particular location of the integrated circuit at which temperature and leakage power are of concern.
At 420, it is determined whether the temperature is proximate to a thermal divergence temperature. As described above with respect to the leakage power shutdown temperature, the thermal divergence temperature may be a temperature at which the continued application of supply power may cause a runaway temperature condition. Accordingly, the thermal divergence temperature may be determined for a particular location of the integrated circuit as described above with respect to the leakage power shutdown temperature.
The thermal divergence temperature may be stored on-chip (e.g., in lookup table 130) after manufacture of the integrated circuit. In some embodiments, several thermal divergence temperatures are stored on-chip and one of the stored temperatures is flagged to indicate its applicability to the particular integrated circuit. Such an arrangement may allow a manufacturer to customize process 400 in view of a process corner or intended use of the integrated circuit.
Comparator 130 may compare the determined temperature to the thermal divergence temperature at 420. Comparator 130 may indicate TRUE if the measured temperature is less than but sufficiently proximate to the thermal divergence temperature. Comparator 130 may be an element of core 110. Flow returns to 410 if the determined temperature is not proximate to the thermal divergence temperature.
Flow proceeds to 430 if the determination at 420 is affirmative. At 430, it is determined if the integrated circuit is active. The determination at 430 may be intended to determine if the measured temperature is primarily due to active power or leakage power. The determination may be based on communication with the operating system, internal performance counters of the integrated circuit, etc. If the integrated circuit is active, flow continues to 440 to hand control to other temperature control processes. Such control may comprise reducing operational frequency, supply power, workload, etc.
If it is determined that the integrated circuit is not active, a temperature of the integrated circuit is again determined at 450, and this temperature is compared against the thermal divergence point at 460. If the measured temperature is less than the thermal divergence point, flow returns to 420 to determine whether to determine whether the temperature of the integrated circuit is still proximate to the thermal divergence temperature and flow continues as described above.
If the measured temperature is greater than the thermal divergence point at 460, power to the integrated circuit is disabled at 470. Disabling the power is intended to prevent a runaway temperature condition. The power may be disabled by operating power regulation circuit 140 to reduce or eliminate power supplied to all or a portion of integrated circuit 100. The power may be disabled at 470 by instructing an off-chip voltage regulator (not shown) to stop power delivery to integrated circuit 100.
The several embodiments described herein are solely for the purpose of illustration. Therefore, persons in the art will recognize from this description that other embodiments may be practiced with various modifications and alterations.