论文部分内容阅读
芯片热分析是高性能超大规模集成电路设计过程中非常重要的一个环节。在芯片设计的sign-off阶段和电路设计优化阶段都需要进行准确高效的热分析。在芯片设计的sign-off阶段需要进行全芯片级热分析来来验证芯片的性能和可靠性。此外,在电路设计优化阶段,对不同功耗分布情况进行准确高效的热分析同样是不可或缺的。现有的研究工作主要是通过对芯片热模型进行体积元离散化,然后将该问题转换为一个线性方程组。通过求解该线性方程组,可以获得整个芯片上各点的温度值。然而,有时候只需要重点关注芯片上局部的少量热点,而不需要对芯片进行全芯片级热分析。为了进行准确的芯片热分析,有必要考虑芯片封装中散热部件的影响。本文对用于金字塔型芯片热模型的混合随机行走算法进行了深入研究,并且提出了混合随机行走算法对应的芯片热分析模型。其中混合随机行走算法结合了基于网格的一般随机行走(the Generic Random Walk)算法和基于长方体转移区域的悬浮随机行走(the Floating Random Walk)算法的优点,不仅可以计算少量局部热点,而且大幅度的减少了随机行走算法的运行时间。为了加快混合随机行走算法的计算效率,本文对芯片热模型中的纽曼边界(the Neumann boundary)条件和对流边界(the Convective boundary)条件等复杂边界条件进行了处理。最终,本文在多核系统环境下采用多线程技术实现了混合随机行走算法的并行化,进一步提高了该算法的计算速度。通过对几组芯片测试用例进行数值实验,验证了该混合随机行走算法相对于基于网格的一般随机行走算法的准确性与效率。从实验中可以看出,在保证计算结果准确性的前提下,混合随机行走算法相较于基于网格一般随机行走算法获得了15.9X的加速比。添加对纽曼边界条件处理的混合随机行走算法相较于一般随机行走算法获得了30.1X的加速比。同时添加对纽曼边界条件和对流边界条件处理的混合随机行走算法相较于一般随机行走算法获得了44.4X的加速比。在6-core CPU的Linux服务器环境中,在创建6个线程的条件下,该并行的混合随机行走算法相较于串行版本的混合随机行走算法获得了5X左右的加速比。