任何芯片要工作,必须满足一个温度范围,这个温度是指硅片上的温度,通常称之为结温(junction temperature)。
ALTERA的FPGA分为商用级(commercial)和工业级(induatrial)两种,商用级的芯片可以正常工作的结温范围为0~85摄氏度,而工业级芯片的范围是-40~100摄氏度。在实际电路中,我们必须保证芯片的结温在其可以承受的范围之内。
随着芯片的功耗越来越大,在工作的时候就会产生越来越多的热量。如果要维持芯片的结温在正常的范围以内,就需要采取一定的方法使得芯片产生的热量迅速发散到环境中去。
学过中学物理的人都知道,热量传递主要采用三种方法,即传导、对流和辐射,芯片向外散热同样是采用这几种方式。
下图所示为一个芯片散热的简化模型。图中芯片产生的热量主要传给芯片外封装,如果没有贴散热片,就由芯片封装外壳直接散布到环境中去;如果加了散热片,热量就会由芯片的外封装通过散热片胶传到散热片上,再由散热片传到环境中。一般来说,散热片的表面积都做的相当大,与空气的接触面就大,这样有利于传热。在平时的实践中已经发现,绝大多数散热片都是黑色的,由于黑色物体容易向外辐射热量,这样也有利于热量向外散发。而且散热片表面的风速越快,散热越好。
简化的芯片热流模型
除此之外,有一小部分热量经过芯片衬底传导到芯片的焊锡球上,再经由PCB把热量散步到环境中。由于这部分热量所占的比例比较小,所以在下面讨论芯片封装和散热片的热阻时就忽略了这一部分。
首先需要理解“热阻(thermal resistance)”的概念,热阻是描述物体导热的能力,热阻越小,导热性越好,反之越差,这一点有点类似电阻的概念。
从芯片的硅片到环境的热阻,假设所有的热量都最终由散热片散布到环境中,这样可以得到一个简单的热阻模型,如下图:
带散热片的芯片散热模型
从硅片到环境的总热阻称为JA,因此满足:
JA=JC+CS+SA
JC是指芯片到外封装的热阻,一般由芯片供应商提供;CS是指芯片外封装到散热片的热阻,如果散热片采用导热胶附着在芯片表面,这个热阻就是指导热胶的热阻,一般由导热胶供应商提供;SA是指散热片到环境的热阻,一般由散热片厂家给出这个热阻值,这个热阻值是随着风速的提高而降低的,厂家通常会给出不同风速情况下的热阻值。
芯片的封装本身就是作为一个散热装置。如果芯片没有加散热片,JA就是硅片经过外封装,再到环境中的热阻值,这个值显然要大于有散热片是的JA值。这个值取决于芯片本身封装的特性,一般由芯片厂家提供。
下图显示为ALTERA的STRATIX IV器件的封装热阻。其中给出了各种风速下的芯片的JA值,这些值可以用来计算无散热器时的情况。另外,其中的JC是用来计算带散热片时的总JA值。
StraTIx iv器件封装的热阻
假设硅片消耗的功率是P,则:
TJ(结温)=TA+P*JA
需要满足TJ不能超过芯片允许的最大的结温,再根据环境温度和芯片实际消耗的功率,可以计算出对JA最大允许的要求。
JAMax=(TJMax - TA)/P TA(环境温度)
如果芯片封装本身的JA大于这个值,那么必须考虑给芯片加合适的散热装置,以降低芯片到环境的有效JA值,防止芯片过热。
在实际的系统中,部分热量也会从PCB散出,如果PCB层数多,面积较大,也是非常有利于散热的。