论文部分内容阅读
物理设计中插入缓冲单元(缓冲器buffer、反相器inverter、延时单元delay cell)是修复时序违例的常用方法。由于设计流程中修复扫描路径与功能数据路径时序违例独立进行,导致扫描路径与功能数据路径中会重复插入缓冲单元,引起设计的单元密度过高,导致一些时序优化无法进行,同时增大设计的面积和功耗,带来IR-drop隐患。时序优化与设计中的缓冲单元相互影响,该问题成为当前集成电路物理设计中面临的一大难题。本文通过复用功能数据路径上缓冲单元的方法修复扫描路径保持时间违例,降低缓冲单元的插入数目。本文主要研究工作及贡献如下:1.研究分析扫描路径和功能数据路径时序优化方法的特点,提出一种通过复用功能数据路径上缓冲单元修复扫描路径保持时间违例的方法,该方法不仅优化了扫描路径的保持时间时序而且降低了缓冲单元插入数目。2.为避免因复用单元增加建立时间违例的功能数据路径,本文提出一种确定单元最大输出负载电容的算法。然后根据确定的最大输出负载电容以及当前互连线的金属密度确定互连线的最大长度。3.对因连接关系改变引起单元输出负载电容过大的情况,本文通过在该单元附近插入缓冲器或延时单元降低该单元的输出负载电容,同时根据确定的互连线的最大长度确定可以插入单元的区域。4.用tcl脚本完成上述方法的自动实现,简易方便地将该方法应用到后端流程中。5.本文研究工作已成功应用到工程项目中,结果表明应用该方法比不应用该方法,设计的单元数目平均降低9.15%,最大可降低11.27%。在同样测试激励的情况下,平均可降低1.31%的功耗,最大可降低2.26%。