论文部分内容阅读
随着集成电路制造工艺的快速发展和便携式产品的广泛应用,S℃的设计规模和复杂度不断增长,使得芯片的功耗急剧增加,导致芯片发热量增加和可靠性的下降,并降低了便携式设备的电池使用时间。功耗已成为SoC设计者所面临的首要问题之一。多电压设计是近年来提出的一种新的物理级功耗优化方法,被认为是应对今后SoC功耗挑战最有效也最有前途的方法之一,但同时对电路的时序、结构及后续的布局布线等产生重大影响,这给原有的芯片设计增加了极大的复杂性。 本文针对基于多电压的SoC低功耗设计方法,从布图规划、多电压的分配、电压岛构建、线长优化和电压降优化等方面开展研究,提出了若干较有效的优化设计算法,并采用标准的MCNC和GSRC电路进行测试。论文的研究工作主要包括以下几个部分: 1.快速有效的布图规划算法是实现多电压设计方法的前提。针对面向软模块固定边框布图问题,基于NPE表示,提出一种基于形状曲线相加算法和插值技术的方法来获得其最优的布图实现;针对软模块布图苛刻的固定边框约束,提出一种基于IAD算子的后布图优化方法对SA所得布图解进行后优化。实验结果表明所提出方法不仅可实现100%的布图成功率,同时可获得极低的空白面积率和较优的线长。 2.针对当前多电压布图算法效率不高的问题,提出了一种先分配电压再进行布图规划的多电压设计流程。为提高算法速度,采用基于枚举和形状曲线相加的方法来获得电压岛的布图,避免了对电压岛及其内部模块进行多次的布图规划。为减少矩形电压岛带来的线长开销,在流程中对线长进行了多级的优化。实验结果表明所提出方法在算法速度和空白面积率等方面有一定优势。 3.在后布图阶段针对两种不同模块时序处理下的多电压分配问题进行了研究。为使电压分配之后形成电压岛,提出了一种改进的电源网络复杂性度量方法。在分配方法上,针对不考虑芯片整体时序的多电压分配问题,提出了一种基于遗传算法的多电压分配方法,同时对功耗、电源网络复杂性及电平移位器的数目进行优化。针对时序约束下的多电压分配问题,提出了一种基于整数线性规划的方法,对功耗和电源网络进行协同优化,并控制插入电平移位器的数目。此外,我们还根据连线两端不同的电压差插入不同延时和功耗的电平移位器,使得功耗获得进一步降低。 4.针对多电压设计所带来的线长增加问题,结合可切分布图的特点,提出了一种在后布图阶段同时考虑模块交换、模块翻转和空白面积再分配来降低线长的方法,并将其构建为一个线性规划模型。和已有方法相比,所提出方法增加了模块交换这一操作,增加了线长的优化空间。实验结果表明所提出方法可以在保持面积不变的情况下获得较大程度的线长改进,并且运行时间在可接受的范围之内。 5.针对SoC设计中日趋明显的电压降问题,提出了一种电压降驱动的布图规划方法,在布图迭代过程中考虑电压降因素,引导布图算法产生较低电压降的布图。为避免精确却极为耗时的电压降计算,采用了所有模块到芯片电源引脚的加权距离和作为电压降成本函数。同时,对给定的可切分布图,提出一种基于LP的方法,该方法通过优化芯片供电引脚的位置和布图中空白面积的分布来减少模块P/G pin与芯片供电引脚之间的距离,从而有效降低各个模块上产生的电压降。实验结果验证了该方法的有效性。