1 定制RC端角
本节主要包括RC端角的定制流程、实现、以及评估.
1.1 定制流程及实现
设计RC端角定制流程如图1所示.
首先需要创建RC端角下的工艺描述文件ITF(Interconnect Technology File)文件,该文件主要用于描述互连线工艺参数设置以及建立受制造工艺影响的互连线模型.该描述文件并不能直接用于互连线寄生参数的提取,需要将其转化成寄生参数提取工具能识别的工艺文件,如Star RC-XT可识别的.nxtgrd文件以及QRC可识别的qrcTechFile.如果在转换工艺描述文件的过程中报出错误的信息,需要根据错误信息重新修改工艺描述文件.如果没有错误信息,寄生参数提取工具就可以根据生成的工艺文件对设计版图进行寄生参数的提取,并输出存储有该端角下互连线的电阻R和电容C的文件.静态时序分析工具PT就可以读取芯片中整个互连网络的寄生参数R和C并计算出互连线的延时信息,然后结合器件的延时信息进行时序分析.
1.1.1 创建工艺描述文件
先进的IC需要6层或者更多的金属布线层,每层之间由绝缘介质隔开.工艺描述文件ITF文件主要包括以下内容:
①每层金属线的最小宽度和最小间距;
②每层金属线的厚度;
③相邻两层金属间的介质厚度;
④每层金属的电阻率;
⑤金属层间绝缘介质的介电常数;
⑥通孔和接触孔的定义,包括通孔所连接的顶层金属和底层金属以及通孔的电阻等;
⑦扩散层的厚度和电阻率.
1.1.2 转换工艺描述文件
工艺描述文件不能直接用于寄生参数的提取,需要将其转换成寄生参数提取工具能够识别的文件,如Star RC-XT工具可识别工艺文件.nxtgrd文件.ITF文件到.nxtgrd文件的转换,可以直接使用如下命令行.
grdgenxo
如果只是对ITF文件进行更新,可以使用如下命令行对初始的ITF文件进行增量式的更新.
grdgenxo-inc-old_itf
1.1.3 RC端角的实现
在集成电路中,互连线电阻与导线宽度和厚度成反比;互连线电容与导线宽度和厚度成正比,与层间绝缘介质厚度和线间距成反比.因此5种RC端角工艺参数有以下特点:
①cbest端角下的互连线电容最小,cworst端角下的互连线电容最大;
②rcbest端角下的互连线电阻最小,rcworst端角下的互连线电阻最大.
由于层间绝缘介质厚度只影响互连线电容,因此为了使定制的RC端角可以覆盖这5种RC端角,可以适当地调整层间绝缘介质厚度.所以,依据rcbest端角rcworst端角下互连线工艺参数设置,分别向下或向上调整层间绝缘介质厚度,使得rccustom_max端角在互连线电阻达到最大的同时互连线电容也尽可能的大,rccustom_min端角在互连线电阻达到最小的同时互连线电容也尽可能的小.
采用图1所示的RC端角定制流程,本文分别在rcbest端角rcworst端角下互连线工艺参数设置的基础上,向上和向下调整层间绝缘介质厚度20%,定制出rccustom_max和rccustom_min两个端角.
为了验证rccustom_max和rccustom_min这两个定制的RC端角的效果,使用Star RC-XT分别提取20 ~300 μm不等长度的互连线在各个RC端角下的互连线寄生参数值,然后通过工具PT计算出互连线延时,结果分别如图2,图3和图4所示.
从图中可以看出,rccustom_max端角下的互连线的电阻电容值都是最差的,且互连线延时最大;而rccustom_min端角下的互连线的电阻电容值都是最小的,且互连线延时最小.
1.2 RC端角评估
以实际工程项目中的设计模块X1为测试用例,来评估定制的两个RC端角(rccustom_max, rccustom_min)对其他端角的覆盖情况.其中,X1模块长850 μm,宽400 μm,寄存器6 063个,总单元数目30 784个,且该设计模块为route阶段优化之后的设计.在时序分析时,时序路径违反很大程度上受到时钟偏差和串扰的影响,因此,在测试的过程中需要减小时钟偏差和串扰的影响,特别是时钟偏差的影响,故对测试电路,使用理想时钟进行时序检查且不考虑串扰的影响.
评估定制RC端角好坏的一个重要的指标就是覆盖率,而且要求覆盖端角下的时序要比被覆盖端角下的时序更差.
假设被检查模块在端角1下的违反路径为集合A,在端角2下的违反路径为集合B,集合B中的路径
也在集合A中存在的违反路径为集合C,集合A中的路径在集合B中也存在的违反路径为集合D.则
端角1对端角2的覆盖率为:
P1v2=count(C)/count(B).(1)
端角2对端角1的覆盖率为:
P2v1=count(D)/count(A).(2)
在测试电路中使用如表1所示的端角进行多端角时序检查.每个端角用小括号里面的Ci(i=1,…,16)代替,其中C1~C6以及C8~C15为signoff端角组合,C7和C16为定制端角组合.
首先,分析建立时间检查时各个端角之间的覆盖情况,如表2所示.
然后,分析保持时间检查时各个端角的覆盖情况.进行保持时间检查时,设计模块X1在C1~C6六个端角没有保持时间违反,故只需分析C8~C16端角下保持时间违反路径间的相互覆盖情况,结果如表3所示.
相关专题:华北煤炭医学院 山东行政学院学报投稿