CFD Software

So, you want to predict component temperatures do you? Part IV

Next stop on the avenue of package thermal modelling is 2 resistor CTMs (compact thermal models). Specifically Theta_jb and Theta_jc, the thermal resistance between junction and board and junction and case respectively. Unlike their lowly 1R cousins these two resistances do not purport to include the effects of the package environment (well almost not) as such they should in theory be more BCI (boundary condition independent) and thus more accurate.  O how we wish they were….

JEDEC recently ratified and published the standard that describes the experimental derivation of both 2R resistances. To get the resistance the heat experiences as it goes from the junction to the case top, a large cold plate of known temperature is plonked on the top of the package, know the consumed power, know the cold plate temperature. measure the junction temperature and with Theta_jc = (Tj-Tc)/Power, you get the resistance, et voila. To get the resistance the heat experiences as it goes from the junction down to the board you use what is known as the ring cold plate test (I like it, sounds medieval, maybe sister to the iron maiden?). This puts a coldplate in a ring shape down on to the surface of the board with the component sitting in the middle. It is intended to be so cold so as to attract all the heat down into the board. A little different in that the temperature at the component/board interface (Tb) is not assumed to be the nearby ring cold plate temperature, instead it is measured on the board surface 1mm away from the middle/side of the package. As before, you can get Theta_jb = (Tj-Tb)/Power.

Before I go any further it would be remiss of me not to mention that our FloTHERM family of simulation tools can do all this numerically for you, specifically FloTHERM.PACK as John Parry has covered in his recent blog entry.

2R, sounds good, two parameters that characterise the thermal performance of a package, do not include the effects of the environment (apart from that heat flow path between the periphery of the package and the 1mm away Tb measuring point) and therefore could well be used to predict component temperature, especially in a full 3D CFD model. For some packages in theory yes, this is true.

“Jeesh, there you go again,  just explain how it is, what packages exactly… why are you English all so obtuse?”

Sorry, it’s safer to be somewhat non-committal in such circumstances.  We English haven’t got where we are today by being decisive don’t you know….

2rOK, so if in reality a package really does just have two dominant heat flow paths (nothing more complex) then abstracting its thermal behaviour to two equivalent thermal resistances will be acceptable and therefore acceptably accurate.

I’m now going to take a couple of different packages, run a detailed model in a wind tunnel type environment, use the wonderful FloTHERM.PACK to derive the 2R equivalent (FloTHERM.PACK automatically runs the detailed package in the two test environments described above, reports the resulting Theta_jc and Theta_jb values AND provides that 2R model in FloTHERM format (pdml) that can be imported into the SAME environment and solved to enable a comparison). If all goes well the 2R model should produce the same results as the detailed model.

Let’s start with a cavity down CBGA package:

cavitydown_cbga

Here is the heat flux distribution, showing the heat leave the die (red) on it’s way to the board and the air, only half the package is shown for clarity, it’s symmetric, I’m allowed to do that:

heatflux-cbga

Heat goes up, across the spreader (top), stiffener (middle) and slab (bottom) and then  most goes down out through the solder ball array. (For those heat flux literate (heat fluxerate?) people out there you might notice (as prompted by continuity) that the vectors don’t get smaller as the heat spreads, I’ve used the ‘no scaling’ option in the Visual Editor to make them all the same length for clarity).

When replaced with the 2R equivalent the resulting junction temperature rise is only 4% different when compared to the detailed equivalent. Not bad!! :) For this package type and construction a 2R model does a good job at mimicking the actual heat flow paths and resistances of the actual component.

Let’s look at another package type, an MQFP (metric quad flat pack) with the encapsulant semi-transparent so you can see the die etc.:

mqfp

The individual leads are lumped together with an adjustment made to the (orthotropic) thermal conductivity to replicate the effects of there being air AND leads in that region. A common enough modelling methodology and something that FloTHERM.PACK does for you automatically, accurate and saves computational grid, neat.

Again, let’s look at the heat flux leaving the die, again, 1/2 the package shown for clarity:

mqfp_heat_flux

The even more heat fluxerate amongst you will notice that not all heat flux vectors are shown, I’ve clipped off the really small ones for clarity and am also now showing the vector lengths proportional to the heat flux value, longer = more heat per unit area.

Heat goes up through the encapsulant, down through the air in the stand off gap as well as quite a lot going through the leadframe (well it would what with the leadframe having such a low resistance/high thermal conductivity).

Again, replace with the 2R equivalent, solve in the same environment and now the difference in junction temperature rise detailed vs. 2R = 32%. Really very bad, not even vaguely useful.

Is the difference because one package is peripheral leaded resulting in effectively 3 heat flow paths, one up, two down? Maybe. Is it due to the much bigger thickness of the package, something about the environment, the different foot print size or die/body ratio? Possibly.

The point is it’s not obvious, sometimes 2R works well as a predictive metric, other times it doesn’t. We could have put a lot of effort into finding correlations that would indicate a priori when a 2R representation will be acceptably accurate and when it wouldn’t be.  However, that would have been like polishing a broken mirror. Instead we headed an EU funded research project to derive a method to derive a more advance CTM that would truly be BCI (boundary condition independent), having good accuracy  for all packages in any environment. It is now know as the DELPHI approach, recently ratified by JEDEC and has been supported by FloTHERM.PACK for a number of years. More on that next time!

8th November, Tel Aviv, Israel.