A method for determining full chip leakage power first estimates leakage power and dynamic power for each circuit macro. The power supply voltage to each macro is first assumed to be nominal. The power dissipation for each macro is modeled as a current source whose value is the estimated power divided by the nominal power supply voltage. The power distribution network is modeled as a resistive grids. The thermal environment of the ic and its electronic package are modeled as multi dimensional grids of thermal elements. Algebraic multi-grid (AMG) methods are used to calculate updated circuit macro voltages and temperatures. The macro voltages and temperatures are updated and updated leakage and dynamic power dissipation are calculated. Iterations are continued until leakage power converges to a final value.

Patent
   6842714
Priority
Aug 22 2003
Filed
Aug 22 2003
Issued
Jan 11 2005
Expiry
Aug 22 2023
Assg.orig
Entity
Large
46
3
EXPIRED
1. A method for determining total leakage power for an integrated circuit (ic) having a plurality of circuit macros, comprising the steps of:
a) estimating a present total macro power for each of said plurality of circuit macros;
b) calculating a macro temperature for each of said plurality of circuit macros in response to said present total macro power using a multi-dimensional thermal model for a thermal structure for removing heat from said ic;
c) calculating a macro voltage for each of said plurality of circuit macros in response to a current drawn by each of said macros using a multi-dimensional electrical model for a power distribution structure for delivering power from a power supply to said ic, wherein a value of said current is set as a function of said total macro power;
d) calculating a present leakage power for each of said circuit macros in response to a corresponding macro temperature and macro voltage;
e) calculating a present dynamic power for each of said plurality of said circuit macros in response to a corresponding macro temperature and macro voltage;
f) calculating said present total macro power for each of said plurality of circuit macros in response to said present leakage power and said present dynamic power; and
g) repeating steps b) through f) if said present leakage power has not converged to a final leakage power and stopping if said present leakage power has converged to said final leakage power for each of said plurality of circuit macros.
12. A computer program product for determining leakage power for an integrated circuit (ic) having a plurality of circuit macros, said computer program product embodied in a machine readable medium, including programming for a processor, said computer program comprising a program of instructions for performing the program steps of:
a) receiving an estimated present total macro power for each of said plurality of circuit macros;
b) calculating a macro temperature for each of said plurality of circuit macros in response to said present total macro power using a multi-dimensional thermal model for a thermal structure for removing heat from said ic;
c) calculating a macro voltage for each of said plurality of circuit macros in response to a current drawn by each of said macros using a multi-dimensional electrical model for a power distribution structure for delivering power from a power supply to said ic, wherein a value of said current is set as a function of said total macro power;
d) calculating a present leakage power for each of said circuit macros in response to a corresponding macro temperature and macro voltage;
e) calculating a present dynamic power for each of said plurality of said circuit macros in response to a corresponding macro temperature and macro voltage;
f) calculating said present total macro power for each of said plurality of circuit macros in response to said present leakage power and said present dynamic power; and
g) repeating steps b) through f) if said present leakage power has not converged to a final leakage power and stopping if said present leakage power has converged to said final leakage power for each of said plurality of circuit macros.
2. The method of claim 1 further comprising the step of adding said total macro power of each of said circuit macros generating said total leakage power.
3. The method of claim 1 wherein a macro voltage at each of said plurality of circuit macros is set to a nominal voltage during the step of estimating said total macro power.
4. The method of claim 1, wherein said current through said power distribution network has a value corresponding to said present total macro power divided by said macro voltage.
5. The method of claim 1, wherein said multi-dimensional power distribution model comprises a grid network having a multiplicity of circuit nodes coupled together with said resistor.
6. The method of claim 5, wherein said multi-dimensional power distribution network comprises three spatial dimensions.
7. The method of claim 1, wherein said multi-dimensional thermal model for removing heat from said ic comprises a thermal model for said ic, a thermal model for thermally coupling said ic to a corresponding electronic packaging and a thermal model for thermally coupling said ic to a corresponding heat sink.
8. The method of claim 7, wherein said thermal model for said ic, said thermal model for thermally coupling said ic to a corresponding electronic packaging, and said thermal model for thermally coupling said ic to a corresponding heat sink, wherein each model comprises a grid network having a multiplicity of nodes coupled together with thermal resistor elements.
9. The method of claim 1, wherein said macro temperature for each of said plurality of circuit macros is calculated using a linear solver to solve sets of equations defining said multi-dimensional thermal model.
10. The method of claim 1, wherein said macro voltage for each of said plurality of circuit macros is calculated using a linear solver to solve sets of equations defining said multi-dimensional power distribution network.
11. The method of claim 1, wherein said present leakage power for each of said plurality of circuit macros is calculated using a circuit analysis program having data relating leakage power as a function of process parameters, power supply voltage, circuit configurations, temperature, and logic states.
13. The computer program product of claim 12 further comprising the step of adding said total macro power of each of said circuit macros generating said total leakage power.
14. The computer program product of claim 12 wherein a macro voltage at each of said plurality of circuit macros is set to a nominal voltage during the step of estimating said total macro power.
15. The computer program product of claim 12, wherein said current through said power distribution network has a value corresponding to said present total macro power divided by said macro voltage.
16. The computer program product of claim 12, wherein said multi-dimensional power distribution model comprises a grid network having a multiplicity of circuit nodes coupled together with said resistor.
17. The computer program product of claim 16, wherein said multi-dimensional power distribution network comprises three spatial dimensions.
18. The computer program product of claim 12, wherein said multi-dimensional thermal model for removing heat from said ic comprises a thermal model for said ic, a thermal model for thermally coupling said ic to a corresponding electronic packaging and a thermal model for thermally coupling said ic to a corresponding heat sink.
19. The computer program product of claim 18, wherein said thermal model for said ic, said thermal model for thermally coupling said ic to a corresponding electronic packaging, and said thermal model for thermally coupling said ic to a corresponding heat sink, wherein each model comprises a grid network having a multiplicity of nodes coupled together with thermal resistor elements.
20. The computer program product of claim 12, wherein said macro temperature for each of said plurality of circuit macros is calculated using a linear solver to solve sets of equations defining said multi-dimensional thermal model.
21. The computer program product of claim 12, wherein said macro voltage for each of said plurality of circuit macros is calculated using a linear solver to solve sets of equations defining said multi-dimensional power distribution network.
22. The computer program product of claim 12, wherein said present leakage power for each of said plurality of circuit macros is calculated using a circuit analysis program having data relating leakage power as a function of process parameters, power supply voltage, circuit configurations, temperature, and logic states.

The present invention relates in general to methods and algorithms for determining the full chip leakage power of an integrated circuit (IC).

With continuous shrinking of minimal feature size, leaky current is expected to become a major challenge for future complementary metal oxide silicon (CMOS) designs. Although each is about 10% of total chip power for the current generation of CMOS technology, the number is expected to rise to 50% for next generation techniques. The increasing leakage current not only poses a problem for battery powered devices, such as mobile and hand-held electronics, it is increasingly critical for active operation as it is becoming a higher percentage of total power.

Most of the leakage estimation and reduction techniques have focused on sub-threshold leakage due to the lowering of the power supply voltage and the accompanying reduction of the threshold voltage. With the reduction of the gate oxide thickness, the gate leakage current can no longer be ignored. Gate leakage is on a trend to become comparable to the sub-threshold leakage. An accurate full chip leakage estimation needs to consider both gate and sub-threshold leakage.

There are various methods that have been used to estimate the full chip leakage; for example, a linear regression model may estimate full chip leakage based on the gate count in the application specific integrated circuit (ASIC) environments. It is known that the leakage current has strong dependency on the environmental factors, such as device channel temperature, power supply voltage and workload. However, most methods for determining leakage have not taken these parameters into consideration. The dependency of leakage on temperature has an order somewhat greater than linear, for example, a 30° C. change in temperature may affect the leakage by 30%. The dependency of leakage on power supply voltage is exponential; a 20% fluctuation in Vdd may affect the leakage power by more than a factor of two.

Chip designers use empirical methods to estimate leakage power, which assumes a uniform temperature and Vdd distribution across the whole chip. However, in today's complex industrial designs, both temperature and Vdd fluctuations have very strong locality, i.e., they are not uniform across the chip. The exact amount of the fluctuations at certain locations depends on the distribution of the transistors and decoupling capacitors, the workload, as well as the quality of the power grid and package design. Empirical methods in full chip leakage estimation are too simplistic, and thus inaccurate.

Therefore, there is a need for a method for determining the leakage power of a full chip IC that considers the effects of temperature and voltage distribution across the IC.

A method for determining the full chip leakage power of an IC begins by making an estimate of the leakage power as well as the dynamic power for circuit macros (hereinafter defined) or macros making up the IC. Using these estimates, each macro's power is modeled as a current source whose value is set to the power of the macro divided by the nominal power supply voltage. The voltage and ground distribution grids delivering power to the macros are modeled as a grid matrix of resistor elements. Package power distribution may be modeled as resistive grids or by networks or resistors and inductors. A linear matrix solver, such as the algebraic multi-grid (AMG) method, is used to calculate an actual voltage for each circuit macro using the thermal resistance models for the electronic package as well as resistor matrix models for the voltage and ground grids.

Since circuit macro power dissipation, leakage as well as dynamic, may be dependent on the local temperature of the circuit macros, the thermal characteristics of the IC, including its electronic packaging and its heat sink design, are also modeled using heat equations and a matrix of thermal elements. A linear matrix solver is used to calculate local temperatures for the circuit macros. Using the calculated voltage for each macro, leakage and dynamic power for the macro are determined using estimated macro workloads, switching factors, as well as the calculated local temperatures. Since temperature and power dissipation are cross dependent, the process is iterated. Each iteration is tested for convergence to determine when to stop the calculation process, and the final values for leakage power are used in the IC design process.

The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of the invention will be described hereinafter which form the subject of the claims of the invention.

For a more complete understanding of the present invention, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:

FIG. 1 is a flow diagram of method steps used in embodiments of the present invention;

FIG. 2 is a block diagram of power distribution network modeling used in embodiments of the present invention;

FIG. 3 is a block diagram of a thermal distribution model used in embodiments of the present invention;

FIG. 4 is a diagram that illustrates a relationship between leakage current and temperature and power supply voltage for both modeled and measured cases;

FIG. 5 is a diagram illustrating circuit blocks and their leakage variation ration for the case of both voltage and temperature dependencies;

FIG. 6 is a diagram illustrating circuit macros and their leakage variation ration for the case of voltage dependence;

FIG. 7 is a diagram illustrating circuit macros and their leakage variation ration for the case of temperature dependence;

FIG. 8 is a diagram illustrating the convergence of the leakage power after five calculation iterations; and

FIG. 9 is a data processing system suitable for practicing embodiments of the present invention.

In the following description, numerous specific details are set forth to provide a thorough understanding of the present invention. However, it will be obvious to those skilled in the art that the present invention may be practiced without such specific details. In other instances, well-known circuits may be shown in block diagram form in order not to obscure the present invention in unnecessary detail. For the most part, details concerning timing, data formats within communication protocols, and the like have been omitted inasmuch as such details are not necessary to obtain a complete understanding of the present invention and are within the skills of persons of ordinary skill in the relevant art.

Refer now to the drawings wherein depicted elements are not necessarily shown to scale and wherein like or similar elements are designated by the same reference numeral through the several views. In the following, a convergence of an iteration means that the variable being calculated differs from a previously calculated value by a known, small percentage, for example, a few percent depending on the accuracy desired. In the following, a group of logic circuits that perform a certain function may be referred to as a circuit macro or simply a macro.

Multi-grid methods are state-of-the art linear matrix solver techniques used to solve large systems of linear equations Ax=b, where A∈Rnxn and x,b∈Rn. This system can be represented as a graph of n nodes where an edge (i,j) represents a non-zero coefficient. The basic idea of the multi-grid method is to define a hierarchy of grids, for example, coarse to fine. Each node at the coarser grid level represents a set of nodes at the finer level. Coefficients at some grid level i are derived from coefficients at grid level i+1 (prolongation) or from coefficients at grid level i−1 (restriction). The grid hierarchy is traversed in V or W-cycles. On each level of the hierarchy an iterative solver is used.

This solver usually is referred to as the “smoother”. The error function b−Ax may be considered as a superposition of sine waves of different wavelengths. Multi-grid theory states that the smoother does a good job of reducing those components of the error function whose wavelength is short with respect to the grid width while it is unable to reduce long wavelength components. The iterative solver alone therefore is unable to achieve convergence.

Multi-grid methods only run a number of iterations of the smoother that is sufficient to reduce the short wavelength components. Since a wavelength that is long with respect to the fine grid is short with respect to some coarser grid, traversal of the grid hierarchy and application of the smoother reduces all components of the error function. To achieve convergence, it is mandatory that an exact solution is computed at the coarsest grid level. Since the number of nodes at the coarsest grid level typically is very small, a direct solver like Gauβ-Seidel may be used to determine the solution.

As an example, coarse grids may be determined from fine grids by omitting every second node in each direction. If the grid does not have such a regular structure (which corresponds to a band structure in matrix A), the situation is more complex. In geometric multi-grid methods, coarse grids are determined based on geometry information (such as grid spacing) alone. In contrast, algebraic multi-grid takes into account coefficient values, too. Multi-grid theory states that the “smoother” reduces error components in the direction of strong coefficients. A coefficient is said to be strong if its absolute value is close to the maximum absolute value of all coefficients of that node. Therefore, coarsening should proceed into the strong coefficient direction. An algebraic multi-grid (AMG) solver is the key component of CFX-TfC, an industrial Computer Fluid Dynamics (CFD) package that has been parallelized within the scope of the project, “Software Engineering Methods for Parallel Applications in Scientific Computing” (SEMPA). In addition, an object-oriented re-design of AMG has been completed in the SEMPA project. CFX-Tfc is an industrial CFD package developed and marketed by AEA Technology GmbH. CFX-TfC solves the Navier-Stokes equations in three dimensional space. The software may be applied to a wide range of problems.

The method of the present invention utilizes linear solver methods to arrive a solution using iteration. The process starts with an estimate for the total power for each circuit macro. Multi-dimensional models of the power distribution network and the heat transfer network are then used to converge to an actual leakage power for the circuit macros. Once the voltage drops and temperature variations at each macro are known, the originally estimated power is adjusted, for both dynamic and leakage components determining leakage power. However, power grid voltage drops and temperature changes also depend on circuit power consumption (both dynamic and leakage power), which in turn is the source of the voltage and temperature variation. A complete analysis of this nonlinear coupling behavior often requires a Newton-Raphson iteration, which may not be practical for current large scale integrated circuits (ICs). The present invention uses iteration-based linear solvers (e.g., AMG) to generate sufficient accuracy at a significantly improved computational efficiency.

Various chip level power grid methodologies de-couple the linear (power grid) and nonlinear portion (switching devices, e.g., transistors) of the whole system as follows: First, the total power of each macro comprising nonlinear devices is estimated assuming perfect power supply voltages (Vdd and ground). Usually the average workload with reasonable switching factor is used to calculate the total power. An average leakage power can also be calculated for each circuit macro or macro. Next, independent current sources, used to represent power dissipated by each macro, are applied to the power grid. The values of the current sources are set as: total power/Vdd (at each macro). Based on this methodology, the general power distribution network may be modeled as follows:

Leakage power estimation may only consider the DC voltage drops across the whole chip. Therefore, the entire power distribution network may be reduced to multiple layers of close-coupled meshes of resistor elements. If more accuracy is desired, a resistive package model may be attached between the top level metal layer and ideal voltage sources modeling the voltage regulator. The power distribution network, therefore, becomes a large scale linear circuit 200 as a shown in FIG. 2, in which the electronic package 202, Vdd grid 203, and ground (Gnd 207) are each represented by large resistive meshes illustrated by exemplary resistors 206 and 210 for the two grids respectively. The power supply (not shown) is represented by a voltage source 201 generating nominal voltage (Vnom) 211. The electronic packaging 202 represents the power distribution network that delivers the voltage Vpkg 204 across the Vdd grid 203 and the Gnd grid 207. The macro voltage potentials 205 (V1-Vn) and ground potentials 208 (G1-Gn) determine the local voltages which are across each macro represented by current sources 209 (M1-Mn).

Because of circuit density, a typical power distribution network may have millions of nodes. Since the power distribution model may have such a large number of nodes, traditional numerical analysis methods may easily exceed memory capacity or the process of computing a solution may become extremely slow.

In embodiments of the present invention, the iterative algebraic multi-grid (AMG) linear solver is used. AMG works directly on matrix stamps and hierarchically creates a coarsened grid with a reduced number of nodes. Solving the node equations for the coarsened grid results in an exact solution which may be attained very efficiently. The solution at the most coarse grid is then mapped back to the fine grid wherein a restricted number of iterations reduce the high frequency error components produced during the reduction and interpolation process. Using AMG, a power grid with multi-million nodes may be solved within a couple of minutes. An explanation of this method may be found on the Internet (Luksch, Peter. “Algebraic Multigrid,” via Internet at www.bode.cs.tum.edu/Par/appls/apps/amg.html).

Given the voltage solution at every grid point and the set of power supply voltage and ground nodes that each circuit macro are attached to, an average “compression” voltage between the power supply voltage and ground voltage for each circuit macro may be determined. The leakage power of each macro may be updated using this voltage drop value to determine the voltage across each circuit macro. The leakage power is updated based on a leakage model according to embodiments of the present invention explained in detail in the following sections.

Dynamic power dissipation for each circuit macro also changes as the macro's Vdd changes due to drops in the resistive voltage and ground grids. Total power, which is the sum of dynamic power and leakage power, also affects the local temperature for each macro. Depending on the desired accuracy for an analysis, the dynamic power may be assumed to be independent of temperature. In embodiments of the present invention, the following simple mathematical model is used to update the dynamic power when Vdd changes.
PS=PSO·(1+2ΔV/Vdd+(ΔV/Vdd)2)

However, it is understood that using temperature dependent dynamic power calculations is within the scope of the present invention.

FIG. 3 is a block diagram of a multi-dimensional thermal model 300 of an IC and its heat sinks 312 and electronic substrate packaging 302. The IC in FIG. 3 comprises multiple metal and inner layer dielectrics (ILDs) 303, various macros shown as heat sources 304-307, silicon-on-insulator (SOI) layer 308, and silicon substrate 310. Packaging C4's solder balls are the primary conduction path for heat flow 301 from heat sources 304-307 through metal and ILD layers 303. Likewise, heat sinks 312 conduct heat flow 311 from the back side of the IC (opposite circuit side) that is attached to the heat sinks 312.

Similar to power grid analysis, the electrical (power) and thermal simulations may be coupled to compute the chips thermal profile. A general 3D thermal analysis involves solving the following heat conduction equation: ρ c p Γ ( x , y , z , t ) t = [ k ( x , y , z , T ) ( x , y , z , t ) ] + g ( x , y , z , t ) ( 1 )
Equation (1) is subject to the general boundary condition: k ( x , y , z , t ) T ( x , y , z , t ) n i + h i T ( x , y , z , t ) = f i ( x , y , z ) ( 2 )
In Equation (2), T is the temperature, g is the power density of heat sources, k is the thermal conductivity, and ρ is a density of the material, cp is a specific heat, hi is heat transfer coefficient on the boundary, fi(x, y, z) is a function of position and n is the outward direction normal to the surface i. In steady state analysis, T t = 0.
Also within the range of working temperature, the thermal conductivity of various materials and inside an IC (silicon, silicon dioxide, metals and interlayer dielectrics (ILDs)) may be regarded as constants, therefore, Equation (1) becomes:
k∇2T(x,y,z)+g(x,y,z)=0  (3)
In Equation (3), g(x, y, z) is the power density of devices at the surface of the silicon layer, including both the dynamic and the leakage power dissipations.

Depending on the type of electronic packaging (and location of heat sinks) and the surrounding environment, the following three types of chip boundary conditions may be derived from Equation (2):

A finite difference technique is often applied to solve above heat conduction Equation (3) with particular boundary conditions. Accordingly, an equivalent thermal resisted network may be constructed. If the thermal conductivity is k, then the typical thermal resistance of a cube with a volume dx·dy·dz in the direction x is: R i = dx kdydz
Likewise the resistance at the convective boundary with heat transfer coefficients hb is: R b = 1 h b dydz

Based on the above equations, a full chip thermal model may be constructed which includes all the layers as well as the heat sink and controlled collapse circuit connects (C4's). For a typical commercial chip, the size of the problem needed for the thermal solution may also be quite large. Embodiments of the present invention employ AMG solver to solve the thermal model to obtain local temperatures for each circuit macro.

While a full three dimensional (3D) chip model may result in a huge system of equations, various simplification techniques have been developed to simplify the analysis while still maintaining a sufficient amount of accuracy for the temperature solution at the silicon (device) layer, wherein the temperature variations are to be used to estimate individual circuit macro leakage power. A summary of the simplification techniques applied to the chips structure shown in FIG. 3 is as follows:

Similar to the case for calculating power supply voltage distribution, assuming a temperature at each volume on the device layer, an average temperature variation among all volumes to which a circuit macro is attached may be obtained. The total leakage power of this macro is updated according to this temperature value and based on a leakage model described in the following section.

To create an accurate leakage model with respect to temperature and supply voltage fluctuation, “Simulation Program with Integrated Circuit Emphasis” (SPICE) is used to simulate standard cells with accurate Berkeley Simulation (BSIM) and Silicon On Insulator (SOI) device models. Both Isub and Igate are included in the simulation. Each cell is simulated at different temperature and supply voltages and the average leakage each temperature Vdd node is calculated. It has been determined that the Vdd dependency of the leakage power is exponential while the leakage power temperature dependency has an order greater than linear. Power supply voltage variations across the chip are typically no more than 20% or 30% of the nominal power supply voltage. Hence, even though the dependency of power supply on leakage is exponential, it can be modeled as a polynomial around its nominal value. Embodiments of the present invention use a second-order polynomial to mathematically model the dependency of leakage power on local power supply voltage variation. The coefficients of the polynomial are calculated by regression. The mathematical model may be in the form of: I leak ( Δ T , Δ V ) I leak ( 0 , 0 ) = 1 + a 1 · Δ T = a 2 · ( Δ T ) 2 + b 1 · Δ V + b 2 · ( Δ V ) 2 + c 2 · ( Δ T ) ( Δ V ) ( 4 )

For different standard cells, the coefficients in the mathematical model (4) may be slightly different, but observation has shown the differences are very small. Mathematical model (4) has been verified using all ISCAS benchmark C17 circuits and a graphical representation of the verifications are shown in FIG. 4 where normalized leakage 401 is plotted as a function of percentage change 406. In FIG. 4, the line style used to plot Vdd measured 402, Vdd modeled 403, temperature measured 404 and temperature modeled 405 is shown in the legend. The combined plots (measured and modeled) of leakage as a function of Vdd (407) and leakage as a function of temperature (408) are also shown. FIG. 4 clearly shows the exponential dependency of the leakage on Vdd and the near linear dependency of leakage on temperature as stated earlier. The data graphed in FIG. 4 also shows that the disclosed model is quite accurate in a given range of fluctuations.

FIG. 1 is a flow diagram of method steps used in embodiments of the present invention. In step 101, the leakage power (LP) for the macros making up an integrated circuit (IC) are estimated using a nominal power supply voltage and nominal temperature at all macros. In step 102, the dynamic power (DP) for the macros are estimated again using a nominal power supply voltage and nominal temperature at all macros. In step 103, the total power (TP) for each macro is determined by adding DP and LP as estimated for each macro. Then in step 104, the TP determined in step 103 is compared to a previous TP determined in a previous pass through step 103. If two successive TPs are close in value (e.g., within a few percent), then the iteration may be considered as converged. In the first iteration, there is no previous TP, therefore, there is no convergence. In step 105, a test is done to determine if the calculated LP is considered as converged. If convergence is established, then in step 106 the analysis may be terminated. If there is no convergence, then in step 107 additional calculations are completed.

In step 107, a new macro power supply voltage for each macro is computed using a linear solver (e.g., AMG) applied to the multiple dimensional electrical resistive grid model for the power distribution network on the IC. For this calculation, each macro is represented as a current source whose value is equal to the previous TP (for first pass it is the estimated total power) for the particular macro divided by the previous power supply voltage (for the first pass it is the nominal power supply voltage. Likewise in step 108 local temperatures are calculated using a linear solver (e.g., AMG) applied to the multi-dimensional thermal resistive grid models for the IC, the heat sink, and the electrical packaging. In step 108 all of the macros become heat sources dissipating LP and DP. The multi-dimensional thermal model is then to calculate the local temperatures for each macro. In step 109, a new value for LP for each macro is computed using the macro power supply voltages and local temperatures determined in steps 107 and 108, respectively. The LP for each macro is dependent on both temperature and voltage. Likewise, in step 109, a new value for DP for each macro is computed using the macro power supply voltages and local temperatures determined in steps 107 and 108, respectively. The DP for each macro generally is dependent on both temperature and voltage, however, it may be considerably more dependent on voltage than on temperature. The computed LP and DP from steps 109 and 110 are saved and a branch is taken back to step 103 where steps 103, 104, 105 and 107-110 are repeated again until the test in step 105 indicates that the LP converges in which case step 106 is executed to stop the analysis.

The following presents the analysis results of several industry chips using embodiments of the present invention. The leakage estimation flow, along with the power grid and thermal simulation engine, has been implemented using the C++ programming language. All the experiments are run on the Intel Pentium III 700 MHz machine with 4 GB memory, running Linux® Operating System (OS).

TABLE 1
Runtime performance and memory usage of our power grid
and thermal analysis engine. IR is power grid analysis and TH
represents thermal analysis.
Matrix # analysis CPU Mem
size non-zeros type (sec) (GB)
0.17 M 1.12 M TH 82.13 0.45
0.27 M 1.76 M TH 139.17 0.61
0.63 M 3.11 M IR 88.39 0.46
1.74 M 8.89 M IR 293.58 1.3
2.73 M 13.9 M IR 438.1 2.1

The CPU time and memory usage of the power grid and thermal analysis tool according to embodiments of the present invention are shown for several chips that are listed in Table 1.

The next two designs (chip 1 and chip 2) are based on the 0.13 μm commercial CMOS SOI technology. Chip 1 has approximately 160K macros, with the size of around 8 mm by 8 mm. The initial total chip power is 48W, out of which 9.6W (20%) is roughly estimated as leakage power. Chip 2 is the CPU core of a microprocessor design. Chip 2 occupies 2.5 mm by 4.7 mm with a total power of 5.6W, out of which approximately 1.2W is leakage power. The nominal power supply voltage for each chip is 1.2 volts and 1.0 volts, respectively. A total change of leakage power due to temperature and voltage variation for both chips are listed in the following Table 2:

TABLE 2
Leakage variation after 1 iteration.
ΔV ΔT Δleakage
chip (mv) (° C.) (W)
1 min: −4 min: −4.2 −1.850
max: −184 max: +25.4
2 min: 0 min: −9.5 −0.136
max: −41 max: +4.1

The power supply voltage drops and the temperature distribution across chip 1 may be plotted as 3D distributions. Typical variation ranges from 3% to 15% of Vdd have been determined. Across the chip, the temperature variation (compared to the reference temperature at heat sinks) may range from 0.8° C. to 30.3° C. These 3D distribution plots may be used to identify “hot” spots in terms of both power supply voltage and temperature variations indicating high power density regions.

Applying the leakage power/thermal (LPT) model, according to embodiments of the present invention, the leakage power is updated based on the average supply voltage and temperature changes to each functional circuit macro. Using embodiments of the present invention, it has been observed that after one iteration the calculated leakage power of each circuit macro may become less than the estimated initial leakage power value; the leakage power ratio of estimated initial leakage power to calculated leakage power is less than one. As the leakage ratio deviates from one, the more the actual leakage power ratio varies from the initial estimation.

FIGS. 5, 6, and 7 show the distribution of macros and their leakage variation ratio defined by the ratio of updated leakage power to its corresponding, initial estimate for the three following cases: both voltage and temperature dependent (LPT), individual voltage dependent (LV) and individual temperature dependent (LT). FIG. 5 graphs numbers of macros 501 versus the ratio of updated leakage power to its corresponding, initial estimate (503) with both voltage and temperature dependencies. Distributions 502 are bar graphs centered on their particular ration value. FIG. 6 graphs numbers of macros 601 versus the ratio of updated leakage power to its corresponding, initial estimate (603) with only voltage dependency. Distributions 602 are bar graphs centered on their particular ration value. FIG. 7 graphs numbers of macros 701 versus the ratio of updated leakage power to its corresponding, initial estimate (703) with only temperature dependency. Distributions 702 are bar graphs centered on their particular ration value.

A comparison of the diagrams in FIGS. 5, 6, and 7 illustrates that the leakage power depends more on the power supply voltage variation than on the temperature variation, which confirms the applicability of a simple analytical estimation suggested earlier. The dependency of both power supply voltage and temperature variations is closely correlated and the overall effect shows that the actual leakage power is lower than the initial estimate.

Plotting the calculated leakage power variation distribution across exemplary chip 1 would clearly show that the large leakage power variation regions correspond to “hot” spots as identified in the voltage and temperature profiles, respectively. Similar plots and observations may be made for the exemplary chip 2. Although two chips may be designed and implemented in the same technology, they may have completely different leakage profiles. This implies that simply using the number of gates to estimate differences in two chip designs would not adequately account for the differences found using embodiments of the present invention.

TABLE 3
Comparison among various leakage estimation models for chip 1.
ΔV ΔT Total
Methods (mv) (° C.) leakage (W)
LPT min: −4 min: −4/2 7.75
max: −184 max: +25.3
LP min: −4 n/a 7.77
max: −184
LT n/a min: −4.2 9.63
max: +25.3
EMP −120 0 5.31

Table 3 shows total leakage various estimation methods after one iteration of update from the initial value. In these methods, the leakage power of each circuit macro is updated based on the power supply voltage and the temperature variation of each individual macro. For comparison reasons, results are listed for the traditional method using uniform voltage and temperature profiles. A uniform 10% Vdd drop and a uniform 85° C. profile (zero spatial temperature variation) across the chip is assumed and the numbers are listed as “EMP” in Table 3. Because it assumes a flat Vdd and temperature profile, it underestimates the full chip leakage by 30%.

FIG. 8 shows an update of leakage power 801 for each of five iterations (802) using embodiments of the present invention. The first iteration 803 reduces leakage by 19.2%. After the first iteration, which corrects the leakage by 19%, the rest of the iterations (e.g., 804) only fine tune the result within a 0.5%. Therefore, in many cases one iteration may provide sufficiently accurate results using embodiments of the present invention to calculate full chip leakage power for an IC.

A representative hardware environment for practicing the present invention is depicted in FIG. 9, which illustrates a typical hardware configuration of a workstation in accordance with the subject invention having central processing unit (CPU) 910 and a number of other units interconnected via system bus 912. The workstation shown in FIG. 9 includes random access memory (RAM) 914, read only memory (ROM) 916, and input/output (110) adapter 918 for connecting peripheral devices such as disk units 920 and tape drives 940 to bus 912, user interface adapter 922 for connecting keyboard 924, mouse 926, speaker 928, microphone 932, and/or other user interface devices such as a touch screen device (not shown) to bus 912, communication adapter 934 for connecting the workstation to a data processing network, and display adapter 936 for connecting bus 912 to display device 938. Cell library data for circuit macros may be stored in RAM 914 or in storage units 920 and 940. Circuit analysis and simulation programs may be run on CPU 934 to predetermine the leakage current dependencies of cells relative to process and environmental parameters. Likewise, CPU 934 may run a program to calculate the leakage currents for the macros according to embodiments of the present invention. In addition, CPU 934 may run software design programs that are used to design the circuit macros and partition them into circuit macros. The software design program may access leakage data obtained using embodiments of the present invention to direct a designer how leakage power is distributed across circuit macros. Data from these programs may be stored in RAM 914.

Although the present invention and its advantages have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the spirit and scope of the invention as defined by the appended claims.

Acar, Emrah, Devgan, Anirudh, Liu, Ying, Nassif, Sani R., Su, Haihua

Patent Priority Assignee Title
10031989, Nov 18 2014 GLOBALFOUNDRIES U S INC Integrated circuit performance modeling using a connectivity-based condensed resistance model for a conductive structure in an integrated circuit
10133836, Sep 21 2016 Cadence Design Systems, Inc.; Cadence Design Systems, INC Systems and methods for on-the-fly temperature and leakage power estimation in electronic circuit designs
10499112, Dec 17 2012 INTERDIGITAL CE PATENT HOLDINGS Robust digital channels
11164806, Dec 27 2006 Intel Corporation Temperature calculation based on non-uniform leakage power
6986112, Jul 28 2003 Bell Semiconductor, LLC Method of mapping logic failures in an integrated circuit die
7167806, Aug 17 2004 International Business Machines Corporation Method and system for measuring temperature and power distribution of a device
7340699, Jan 07 2004 Kabushiki Kaisha Toshiba Analysis apparatus for semiconductor LSI circuit electrostatic discharge by calculating inter-pad voltage between pads
7409655, Mar 31 2005 Kabushiki Kaisha Toshiba Method of designing semiconductor integrated circuit and apparatus for designing the same
7509596, Mar 13 2004 Samsung Electronics Co, Ltd. Power distribution network simulation method using variable reduction method
7600145, Oct 26 2005 Intel Corporation Clustered variations-aware architecture
7606693, Sep 12 2005 Cadence Design Systems, Inc. Circuit simulation with decoupled self-heating analysis
7765497, May 30 2003 Regents of the University of California, The Circuit network analysis using algebraic multigrid approach
7793239, Apr 24 2006 GLOBALFOUNDRIES Inc Method and system of modeling leakage
7814339, Jun 30 2006 TAHOE RESEARCH, LTD Leakage power estimation
8028211, Mar 29 2007 Integrated Device Technology, Inc.; Integrated Device Technology, inc Look-ahead built-in self tests with temperature elevation of functional elements
8103996, Jun 24 2008 Cadence Design Systems, Inc.; Cadence Design Systems, INC Method and apparatus for thermal analysis of through-silicon via (TSV)
8104006, Jan 31 2008 Cadence Design Systems, INC Method and apparatus for thermal analysis
8104007, Jun 24 2008 Cadence Design Systems, INC Method and apparatus for thermal analysis
8156460, Aug 28 2008 Samsung Electronics Co., Ltd. Method of estimating a leakage current in a semiconductor device
8200461, Sep 24 2009 Texas Instruments Incorporated Small-signal stability analysis at transient time points of integrated circuit simulation
8201113, Jul 25 2008 Cadence Design Systems, Inc.; Cadence Design Systems, INC Method and apparatus for multi-die thermal analysis
8438520, Aug 29 2011 GLOBALFOUNDRIES Inc Early decoupling capacitor optimization method for hierarchical circuit design
8504958, Jun 24 2008 Cadence Design Systems, Inc. Method and apparatus for thermal analysis
8543952, Jun 24 2008 Cadence Design Systems, Inc. Method and apparatus for thermal analysis of through-silicon via (TSV)
8566760, Jul 25 2008 Cadence Design Systems, Inc. Method and apparatus for multi-die thermal analysis
8626480, Oct 06 2009 GLOBALFOUNDRIES Inc Compact model for device/circuit/chip leakage current (IDDQ) calculation including process induced uplift factors
8689169, Jul 24 2010 Cadence Design Systems, INC Method, apparatus, and article of manufacture for providing in situ, customizable information in designing electronic circuits with electrical awareness
8694933, Jul 24 2010 Cadence Design Systems, INC Methods, systems, and articles of manufacture for implementing electronic circuit designs with simulation awareness
8694934, Jul 25 2008 Cadence Design Systems, Inc. Method and apparatus for multi-die thermal analysis
8694950, Jul 24 2010 Cadence Design Systems, INC Methods, systems, and articles of manufacture for implementing electronic circuit designs with electrical awareness
8701067, Jul 24 2010 Cadence Design Systems, INC Methods, systems, and articles of manufactures for implementing electronic circuit designs with IR-drop awareness
8739097, Sep 14 2012 Taiwan Semiconductor Manufacturing Company, Ltd. Method for placing decoupling capacitors
8762914, Jul 24 2010 Cadence Design Systems, INC Methods, systems, and articles of manufacture for constraint verification for implementing electronic circuit designs with electrical awareness
8782577, Jul 24 2010 Cadence Design Systems, INC Method, apparatus, and article of manufacture for providing in situ, customizable information in designing electronic circuits with electrical awareness
8929169, May 13 2014 SanDisk Technologies LLC Power management for nonvolatile memory array
9217771, Jan 14 2014 International Business Machines Corporation Method for breaking down hardware power into sub-components
9223925, Jul 24 2010 Cadence Design Systems, Inc. Methods, systems, and articles of manufacture for implementing electronic circuit designs with simulation awareness
9318406, Mar 22 2005 SEW-EURODRIVE GMBH & CO KG Device and method for determining the temperature of a heat sink
9330222, Jul 24 2010 Cadence Design Systems, INC Methods, systems, and articles of manufacture for implementing electronic circuit designs with electro-migration awareness
9336343, Feb 28 2014 International Business Machines Corporation Calculating circuit-level leakage using three dimensional technology computer aided design and a reduced number of transistors
9536026, Feb 28 2014 International Business Machines Corporation Calculating circuit-level leakage using three dimensional technology computer aided design and a reduced number of transistors
9639652, Oct 06 2009 TAIWAN SEMICONDUCTOR MANUFACTURING CO , LTD Compact model for device/circuit/chip leakage current (IDDQ) calculation including process induced uplift factors
9652026, Dec 21 2014 Qualcomm Incorporated System and method for peak dynamic power management in a portable computing device
9874917, Jan 04 2016 International Business Machines Corporation Adaptive power capping in a chip
9936226, Dec 17 2012 InterDigital Madison Patent Holdings, SAS Robust digital channels
9967966, Mar 22 2005 SEW-EURODRIVE GMBH & CO. KG Device and method for determining the temperature of a heat sink
Patent Priority Assignee Title
6721927, Mar 29 2002 GOOGLE LLC Substituting high performance and low power macros in integrated circuit chips
20030034825,
20030094661,
//////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Aug 20 2003ACAR, EMRAHInternational Business Machines CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0144320275 pdf
Aug 20 2003LIU, YINGInternational Business Machines CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0144320275 pdf
Aug 20 2003NASSIF, SANI R International Business Machines CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0144320275 pdf
Aug 20 2003SU, HAIHUAInternational Business Machines CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0144320275 pdf
Aug 21 2003DEVGAN, ANIRUDHInternational Business Machines CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0144320275 pdf
Aug 22 2003International Business Machines Corporation(assignment on the face of the patent)
Date Maintenance Fee Events
Nov 05 2004ASPN: Payor Number Assigned.
Jun 30 2008M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Jun 29 2012M1552: Payment of Maintenance Fee, 8th Year, Large Entity.
Aug 19 2016REM: Maintenance Fee Reminder Mailed.
Jan 11 2017EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
Jan 11 20084 years fee payment window open
Jul 11 20086 months grace period start (w surcharge)
Jan 11 2009patent expiry (for year 4)
Jan 11 20112 years to revive unintentionally abandoned end. (for year 4)
Jan 11 20128 years fee payment window open
Jul 11 20126 months grace period start (w surcharge)
Jan 11 2013patent expiry (for year 8)
Jan 11 20152 years to revive unintentionally abandoned end. (for year 8)
Jan 11 201612 years fee payment window open
Jul 11 20166 months grace period start (w surcharge)
Jan 11 2017patent expiry (for year 12)
Jan 11 20192 years to revive unintentionally abandoned end. (for year 12)