一种集成电路物理验证的密度计算方法及系统与流程

文档序号:37219407发布日期:2024-03-05 15:13阅读:28来源:国知局
一种集成电路物理验证的密度计算方法及系统与流程

本发明涉及本发明涉及集成电路的物理验证,特别涉及一种集成电路物理验证的密度计算方法及系统。


背景技术:

1、在集成电路(integrated circuit,ic)设计制造中,物理验证是确保芯片设计的物理完整性、可制造性和可靠性的关键步骤。密度检查属于物理验证的一类特殊规则检查,密度过高或过低区域将会对器件模型的一致性造成影响,影响芯片的良率,因此需要进行密度计算。物理验证中的密度计算是指在一定范围内计算电路元件的面积占比,用于评估芯片布局中的电路元件密度,获得不同区域的密度分布情况,以此来进行密度检查,优化电路设计。

2、密度计算在实际芯片设计中有很多约束条件,例如:约束密度计算范围、有效区域的面积、图形的宽度、图形的间距等,这些约束都可以定制化操作,具有可扩展性。目前主流的物理设计和验证工具包括cadence pvs,synopsys icv,mentor calibre等,以mentorcalibre工具为例,其物理验证语言svrf(standard verification rule format)通过定义关键字density的语法并传入相关参数描述密度计算,并借助复杂密度计算表达式体现部分约束,表达式的各个组成部分功能含义隐晦,涉及内置函数、逻辑判断、数值计算等内容,需要用户自行分析,虽然理论上可扩展性强,但对于普通用户来说,晦涩难懂,实际情况下难以实现扩展,以t28工艺节点下使用svrf描述的规则po.dn.3为例,规则含义为:芯片的局部最小密度大于等于10%(规则中变量po_dn_3=0.1),内容如图1:

3、针对规则po.dn.3的各部分具体分析如下:

4、(1)确定密度计算的范围:规则的输入层为all_poly,排除层为exc,输入层去除排除层得到有效的密度计算范围;

5、(2)排除层的操作:排除层exc放缩(fill操作)后得到层exc_m,b1表示忽略exc_m内的部分图形(图形自身有窄缝或图形间具有窄缝),b为放大b1;

6、(3)density语法和各类定制化约束:定义密度检查方式和部分约束,密度表达式用于判断计算结果是否满足密度值约束,包含4个组成部分,每部分的功能分析如下:

7、“!area(b)”表示判断排除层放大后的覆盖情况约束;

8、“~(area(a)-po_dn_3_e*po_dn_3_e)*!!(area(a)-po_dn_3_e*

9、po_dn_3_e)”表示判断区域a的面积约束;

10、“area(n)/area(d)”表示计算去除排除层后的密度值e_density;

11、“!~(area(all_poly)/area(chip)-po_dn_3)+!(area(all_poly)

12、/area(chip)-po_dn_3)]”表示判断原始密度i_density是否满足约束。

13、(4)图形宽度约束:判断图形的宽度是否满足约束。

14、针对上述分析,现有的密度计算存在以下缺点:

15、密度计算的算法流程缺乏直观性:规则描述采用面向过程的方式,难以直观理解密度计算的算法流程,约束的描述位置分散,对于约束的判断顺序缺乏直观性;

16、规则描述语言晦涩难懂:密度计算方式借助数学表达式判断约束,对于用户而言理解困难;另外,规则中使用了大量的关键字和中间变量,需要联系上下文,寻找前后的对应关系才能推断每行描述的具体含义,进一步增加了规则理解的难度;

17、规则编写可维护性不强:在用户界面实现算法流程,虽然理论上易于实现扩展性,较为灵活,但这种编写方式和含义的对用户来说理解困难,规则的维护难度较大。


技术实现思路

1、本发明的目的在于提供一种集成电路物理验证的密度计算方法及系统,从而解决现有技术中密度计算的流程不够直观、计算方式晦涩难懂的技术问题。

2、本发明实施例中,提供了一种集成电路物理验证的密度计算方法,其包括:

3、对密度的计算流程进行梳理,得到标准化的密度计算流程;

4、为每一个步骤中可能出现的约束条件定义对应的选项,并采用相应的指令来表达所述选项;

5、读取用户输入的指令集,根据用户设置的约束条件进行密度计算。

6、本发明实施例中,所述标准化的密度计算流程包括:

7、确定全局密度计算范围和局部密度计算方式;

8、计算当前窗口的密度;

9、判断当前窗口的密度是否满足密度约束,若不满足则直接输出违例窗口。

10、本发明实施例中,计算当前窗口的密度,包括:

11、判断是否存在排除层,

12、若不存在排除层,则当前窗口的密度为原始密度;

13、若存在排除层,则前窗口的密度为去除排除层后的密度。

14、本发明实施例中,判断当前窗口的密度是否满足密度约束,包括:

15、若不存在排除层,则采用原始密度来判断当前窗口是否满足约束;

16、若存在排除层,首先需要判断排除层是否满足设定的约束条件,若不满足,则退出密度计算,若满足,则需要判断是否存在原始密度判断选项,若存在,则需要同时判断原始密度和去除排除层后的密度是否同时满足密度约束,若不存在,则只需判断去除排除层后的密度是否满足密度约束

17、本发明实施例中,排除层是否满足设定的约束条件,包括:

18、判断是否满足有效区域的面积约束,若不满足,则结束密度计算流程,否则判断是否满足图形的宽度约束,若不满足,则结束密度计算流程,否则判断是否满足排除层放大后的覆盖约束,若不满足,则结束密度计算流程,否则计算当前窗口的密度。

19、本发明实施例中,密度计算中涉及到的约束条件对应的选项包括:

20、-global_region:全局密度计算范围,其子选项包括:

21、-inside_of:需计算的范围,和-exclude:不计算的范围;

22、-local_region:指定局部密度计算方式;

23、-fill_exclude:排除层的扩展操作,其子选项包括:

24、-remain_area:有效区域的面积约束、-with_width:图形的宽度约束、-full_covered_by_size_up:覆盖约束;

25、-use_idensity:原始密度检查选项,指定密度检查时需要额外计算并判断原始密度i_density是否满足密度约束。

26、本发明实施例中,还提供了一种集成电路物理验证的密度计算系统,其在对集成电路进行物理验证时,采用上述的集成电路物理验证的密度计算方法。

27、与现有技术先比较,采用本发明的集成电路物理验证的密度计算方法,从算法层面出发,重新梳理密度计算过程,设计了一套清晰的密度计算流程实现各类复杂约束,并在算法中提供良好可扩展性;从规则描述语言出发,使用对用户友好的描述形式表达密度计算,以window为对象,使用选项形式描述密度计算中window对象可能出现属性或行为,用户仅需要在用户语言界面根据自身需求修改选项设置,避免了其他描述方法晦涩难懂的冗余表达;采用选项的形式,直观的描述密度计算中涉及的约束,并通过子选项的方式提供一定的扩展性,在内部算法中实现选项形式的密度计算流程,根据不同选项的设置执行对应的算法流程,以此来查找存在密度违例的window,相较于现有技术的方法,本发明提出的密度计算解决方案无论是从内部算法层面还是外部用户使用层面,都更加简洁直观,增强了规则的可读性和规则编写的可维护性,降低了用户的学习时间和学习成本。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1