Today virtually all serious thermal analysis and design calculations for electronic packages are performed using various commercial flow and thermal conduction codes. Nonetheless, there are still many instances, especially in the early phases of a project, when the thermal engineer finds it advantageous to perform so called “back of the envelope” calculations without resorting to such codes. For example the calculation may be as simple as using a two element series resistance model to determine the relative merit of improving either the internal or external thermal resistance of a circuit module.
Figure 1. Example of a thermal resistance network for a single chip module with a thermal grease pad between chip and cap.
Beyond this a more detailed model may be created to obtain a preliminary estimate of overall thermal resistance from chip to cooling fluid considering multiple thermal resistances and heat flow paths. As long as the model is comprised only of parallel and series thermal resistances it is readily reducible to a single overall or equivalent thermal resistance. However, this is sometimes not the case, as in the example shown in Figure 1. In this example a layer of thermal paste is used to provide an alternative heat flow path bridging the gap from the chip to the package cap. In Figure 2, the resistances from Figure 1 that are in series have been added together to form resistances R_{a}, R_{b}, R_{e} and R_{d}. Without the thermal paste layer, the thermal resistance across the gap, R_{12}, is so large as to effectively make R_{a} infinite taking it out of the picture as a heat flow path and thereby reducing the thermal resistance network to a seriesparallel combination of resistances. With the thermal paste layer in place, the magnitude of R_{12} is substantially reduced so that the heat flow path through R_{a} cannot be ignored. It should be evident by inspection of Figure 2, that in this latter case the thermal network cannot be further reduced as a seriesparallel combination of resistances. Those readers who recall their DC circuits course may recognize that in this particular case a YΔ transformation could be used to convert the resistance network into a seriesparallel combination. However, this will not be done here, as the object of this article is to illustrate how a matrix algebra method may be used to solve for the overall thermal resistance.
Figure 2. Simplified thermal resistance network representing module shown in Figure 1.
Using a matrix algebra method it is possible to calculate the temperature at each node for a given chip heat load and then the total thermal resistance from chip junction to air. To do this it is first necessary to write a heat balance equation for each temperature node. The heat balance equation is simply an algebraic statement that under steadystate conditions the heat flowing into a node is equal to the heat flowing out of the node. Although, we generally think in terms of thermal resistances, it will be more convenient here to write the necessary heat balance equations in the form of thermal conductances. The heat flow from one node to another node is given by
where thermal conductance, K, is simply the reciprocal of thermal resistance, R, and ΔT is the temperature difference between the nodes.
For node T_{1}, which represents the temperature on the device side of the chip, the heat balance equation is,
q = K_{a} × (T_{1} – T_{2} ) + K_{b} × (T_{1} – T_{3 }) (2)
where q is the chip heat load and K_{a} and K_{b} are the thermal conductances associated with thermal resistances R_{a} and R_{b}. In other words, equation (2) is an algebraic way of stating that the heat dissipated by the chip and entering node T_{1} is equal to the sum of the heat leaving node T_{1} and flowing through thermal conductances K_{a} and K_{b} to nodes T_{2} and T_{3} respectively. This statement is analogous to Kirchoff’s Current Law which states that the sum of currents into a junction is equal to the sum of currents out of the junction. The next step is to rearrange equation (2) so that the thermal conductances are grouped together multiplying unknown temperature variables T_{1}, T_{2} and T_{3} respectively on one side of the equals sign and the known constant term, q, is placed on the other side of the equals sign as follows,
(K_{a} + K _{b} ) × T_{1} – K _{a} × T_{2} – K _{b} × T_{3} = q (2a)
In a similar fashion the heat balance equation for node 2 may be written as,
K_{a} × (T_{1} – T_{2} ) + K _{e} × (T_{3} – T_{2} ) = K _{c} × (T_{2} – T_{air} ) (3)
and again after rearranging, equation (3) becomes
−K_{a} × T_{1} + (K _{a} + K _{e} + K _{c} ) × T_{2} – K _{e} × T_{3} = K _{c} × T_{air} (3a)
In this instance, the constant term on the righthand side of equation (3a) is the product of thermal conductance K_{c} and the temperature, T_{air}, of the cooling air.
Finally for node 3, the heat balance equation is
K _{b} × (T_{1} – T_{3} ) = K _{d} × (T_{3} – T_{air} ) + K _{e} × (T_{3} – T_{2} ) (4)
and after rearranging (4) we obtain
– K _{b} × T_{1} – K _{e} ×T_{2} + (K _{b} + K _{d} + K _{e} )×T_{3} = K _{d} ×T_{air} (4a)
with the product of thermal conductance K_{d} and air temperature, T_{air}, as the constant term on the righthand side of equation (4a).
Now for the matrix part of the method. For those readers who have studied linear algebra and matrices, you may skip this paragraph and go to the next one. For those who are unfamiliar with matrices or remember a matrix algebra course in the past with some degree of displeasure, please do not abandon me now but keep reading. For the matter at hand, all that you really need to know is that matrices are a mathematical way of representing simultaneous linear algebra equations in a compact fashion! Equations (2a), (3a) and (4a) are simply a set of simultaneous linear algebra equations that can be expressed as
K_{11}T_{1} + K_{12}T_{2} + K_{13}T_{3} = b_{1 }(5a)
K_{21}T_{1} + K_{22}T_{2} + K_{23}T_{3} = b_{2} (5b)
K_{31}T_{1} + K_{32}T_{2} + K_{33}T_{3} = b_{3} (5c)
Where the coefficients K_{11}, K_{12} . . . . K_{33}, are the signed combinations of thermal conductance terms multiplying temperature variables T_{1}, T_{2}, and T_{3} on the leftside of equations (2a), (2b) and (2c) and constants b_{1} , b_{2} , and b_{3} are the constant terms on the rightside of the equations. In matrix notation these same equations can be compactly represented as
K • T = b (6)
Now to solve a matrix equation such as (6) for the temperature variable T, all we need to do is multiply the constant vector b by the matrix inverse, K^{1}, of the coefficient matrix K,
K^{1} • b = T (10)
Of course the obvious question a reader may ask is — “How do I calculate the inverse matrix K^{1} “? The curt answer might be — “If I have to tell you, you won’t want to bother”. Fortunately, you don’t have to calculate it on your own. Many computational aids such as MathCAD [1], Matlab [2] and EXCEL [3] and others can be used to obtain the matrix inverse of the coefficient matrix and multiply it times the constant vector to obtain the desired solution vector.
Now returning to our example problem, the rearranged heat balance equations (2a), (3a) and (4a) can be expressed in matrix form as
and the solution for the temperature at each of the nodes may be expressed in matrix form as
Table 1. Values of Individual Thermal Resistances.

Table 2. Values of Thermal Resistance and Corresponding Thermal Conductance

To provide a numerical illustration of the solution, the example values of thermal resistance given in Table 1 for each part of the thermal paths were used. Individual thermal resistances were combined as shown in Figure 2 to calculate thermal resistances R_{a}, R_{b}, R_{c}, R_{d} and R_{e}, and their corresponding thermal conductances K_{a}, K_{b}, K_{c}, K_{d} and K_{e}. The values obtained are shown in Table 2 and were used in equation (12) to obtain the numerical values in equation (13)
and multiplying the constant vector by the inverse of the coefficient matrix we obtain the temperature at each of the three nodes:
A chip heat load of 1 watt and an air temperature of 25 °C were used to obtain the results shown in equation (14). These values may now be along used with the chip temperature, T_{1}, obtained above to determine the total package thermal resistance to air,
Although the problem presented here as an example, only involved the solution of three simultaneous equations, the same method can be readily extended to more involved thermal networks resulting in many more simultaneous equations. As such it is powerful tool for conducting preliminary thermal calculations before turning to commercial codes for detailed thermal analyses.
References