一种基于脚本语言的过孔尺寸和间距自动修正的方法技术

技术编号:38567123 阅读:14 留言:0更新日期:2023-08-22 21:04
本发明专利技术公开了一种基于脚本语言的过孔尺寸和间距自动修正的方法,涉及电子设计自动化EDA技术领域,通过编写设置版图中过孔尺寸和间距自动修正的脚本,然后将编写好的脚本放入版图设计软件中,执行该脚本就能实现过孔的尺寸和间距自动修正。采用本发明专利技术,使得经过缩放或者应用了错误规则的版图上过孔阵列的尺寸和间距能够符合版图设计规则检查DRC的要求,并且一次性自动修正版图库中所有含过孔的单元。元。元。

【技术实现步骤摘要】
一种基于脚本语言的过孔尺寸和间距自动修正的方法


[0001]本专利技术涉及集成电路设计领域,具体涉及一种基于脚本语言的过孔尺寸和间距自动修正的方法。

技术介绍

[0002]Virtuoso是楷登(Cadence)系列产品中用于版图设计的工具,对于版图设计工程师,在对部分电路模块的版图进行缩放处理后,会出现大量DRC错误待处理。经过分析发现,版图尺寸被缩放后,金属线之间的距离违反了DRC最小间距的规则,需要修正金属线和过孔的尺寸和间距。其中,过孔的DRC错误数量众多并且具有极高的重复性,如果设计人员采用手动的方式进行修改,会耗费大量的时间,并且在手工修改过程中很难避免人为疏忽的问题。同时,过孔在版图上一般呈现阵列式分布,设计人员采取手工处理过孔的方式无法保证过孔对齐,从而导致版图上过孔分布杂乱无序,影响金属线的布局和版图的美观。因此,为了节省工作时间和提高工作效率,设计人员可以运用EDA系统提供的脚本语言,实现在过孔排列整齐的条件下其尺寸和间距的自动修正。

技术实现思路

[0003]本专利技术的目的是针对上述技术问题,提出一种解决办法即一种基于脚本语言的过孔尺寸和间距自动修正的方法,该方法可以实现过孔尺寸和间距的自动修正以满足版图设计规则,并且可以一次性自动修正版图库中所有含过孔的单元。操作方便快捷,直接在版图设计软件中运行脚本即可,相比于手工修改,节省了大量的工作时间,提高了版图设计师的工作效率。。
[0004]实现本专利技术目的的具体技术方案是:
[0005]一种基于脚本语言的过孔尺寸和间距自动修正的方法,该方法包括:
[0006]在版图的设计中,编写设置版图中过孔尺寸和间距自动修正的脚本,采用导入函数将该脚本导入Cadence即楷登的全局管理窗口(Command Interpreter Window,CIW)工具台中,按下回车键执行该脚本;
[0007]脚本在运行时,自动打开库中的一个单元,判断该单元是否存在待修改的过孔阵列,然后对存在待修改的过孔阵列的单元进行修正;
[0008]程序运行完毕后,经过缩放或者应用了错误规则的版图上过孔阵列的尺寸和间距被修正成功,并且输出含被修改过孔阵列的单元名的文本(TXT)格式修改报告;其中:
[0009]所述编写设置版图中过孔尺寸和间距自动修正的脚本,具体包括:
[0010](1)利用单元打开函数(dbOpenCellView),获取库中单元的身份识别号ID信息,并打开该单元;
[0011](2)依靠过孔层次的指示符~>定位出打开的单元中的过孔阵列;若该单元不包含过孔阵列,则继续打开库中下一个单元;
[0012](3)针对存在过孔阵列的单元,采用边界盒(bBox)函数获取阵列中所有过孔的左
下角坐标(x
i1
,y
i1
)和右上角坐标(x
i2
,y
i2
);
[0013](4)利用条件语句判断本单元中过孔的尺寸和间距是否满足DRC的要求;若该单元过孔阵列满足DRC的要求,则继续打开库中下一个单元;
[0014](5)采用排序函数对获取阵列中得到的所有的x
i1
、x
i2
、y
i1
、y
i2
进行排序,利用比较函数得到最小左下角坐标值(x
i1min
,y
i1min
)和最大右上角坐标值(x
i2max
,y
i2max
);
[0015](6)将(x
i1min
,y
i1min
),(x
i2max
,y
i2max
)取平均值计算得到过孔阵列的中心坐标点(x
o
,y0);
[0016](7)利用去重函数CCFunique将步骤(4)中获取的过孔阵列坐标值的列表(list)变量去除重复值;
[0017](8)利用统计变量个数函数length统计过孔阵列坐标值的list变量个数,从而得出过孔阵列的行数和列数;
[0018](9)不采用逐个修改过孔的方式,利用删除函数dbDelete删除原过孔阵列;
[0019](10)根据步骤(6)获取的中心坐标点(x
o
,y0)、步骤(8)获取的过孔阵列的行数和列数以及DRC要求的过孔尺寸和间距,利用dbCreate函数创建出新的过孔阵列,使该单元中新建的过孔阵列符合DRC规则要求;
[0020](11)经过修改的单元处于未保存且待编辑的模式,采用保存函数dbSave保存单元图;
[0021](12)利用打印函数printIn将含有被修改过孔阵列的单元名称打印至TXT修改格式报告中;
[0022](13)利用关闭函数dbClose关闭自动修正过孔尺寸和间距的程序。
[0023]步骤(4)中所述利用条件语句判断本单元中过孔的尺寸和间距是否满足(Design Rule Check,DRC)的要求,具体包括:
[0024](a)利用边界盒(bBox)函数获取过孔阵列中每一个过孔的左下角坐标(x
i1
,y
i1
)、右上角坐标(x
i2
,y
i2
),编辑公式x
(i+1)1

x
i1
、y
(i+1)1

y
i1
得到每个过孔的尺寸与过孔间距之和d1、d2;
[0025](b)将(a)中获取的d1、d2分别利用比较函数和DRC要求的过孔尺寸与间距之和作比较;采用条件语句和与函数来判断d1、d2是否同时满足要求;若d1、d2同时满足要求,即输出为1,该单元中过孔阵列满足DRC的要求;若d1、d2有一个不满足要求,即输出为0,该单元中过孔阵列需要被修正。
[0026]步骤(6)中所述将(x
i1min
,y
i1min
),(x
i2max
,y
i2max
)取平均值计算可得过孔阵列的中心坐标点(x
o
,y0),具体包括:
[0027]将x
i2max
、x
i1min
以及y
i2max
、y
i1min
利用减法运算符得到整个过孔阵列的长度和宽度,然后利用整除运算符将获得的长度、宽度分别除以2,即获取到过孔阵列的中心坐标点(x
o
,y0)。
[0028]步骤(8)中所述得出过孔阵列的行数和列数,具体包括:
[0029](a)利用去重函数CCFunique去除坐标点列表list中重复储存的所有x
i
、y
i
的坐标;
[0030](b)由于统计变量个数函数统计的x
i
中同时包含过孔阵列中每本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于脚本语言的过孔尺寸和间距自动修正的方法,其特征在于,该方法包括:在版图的设计中,编写设置版图中过孔尺寸和间距自动修正的脚本,采用导入函数将该脚本导入Cadence即楷登的全局管理窗口CIW工具台中,按下回车键执行该脚本;脚本在运行时,自动打开库中的一个单元,判断该单元是否存在待修改的过孔阵列,然后对存在待修改的过孔阵列的单元进行修正;运行完毕后,经过缩放或者应用了错误规则的版图上过孔阵列的尺寸和间距被修正成功,并且输出含被修改过孔阵列的单元名的文本TXT格式修改报告;其中:所述编写设置版图中过孔尺寸和间距自动修正的脚本,具体包括:(1)利用单元打开函数dbOpenCellView,获取库中单元的身份识别号ID信息,并打开该单元;(2)依靠过孔层次的指示符~>定位出打开的单元中的过孔阵列;若该单元不包含过孔阵列,则继续打开库中下一个单元;(3)针对存在过孔阵列的单元,采用边界盒bBox函数获取阵列中所有过孔的左下角坐标(x
i1
,y
i1
)和右上角坐标(x
i2
,y
i2
);(4)利用条件语句判断本单元中过孔的尺寸和间距是否满足DRC的要求;若该单元过孔阵列满足DRC的要求,则继续打开库中下一个单元;(5)采用排序函数对获取阵列中得到的所有的x
i1
、x
i2
、y
i1
、y
i2
进行排序,利用比较函数得到最小左下角坐标值(x
i1min
,y
i1min
)和最大右上角坐标值(x
i2min
,y
i2min
);(6)将(x
i1min
,y
i1min
),(x
i2max
,y
i2max
)取平均值计算得到过孔阵列的中心坐标点(x
o
,y0);(7)利用去重函数CCFunique将步骤(4)中获取的过孔阵列坐标值的列表list变量去除重复值;(8)利用统计变量个数函数length统计过孔阵列坐标值的list变量个数,从而得出过孔阵列的行数和列数;(9)不采用逐个修改过孔的方式,利用删除函数dbDelete删除原过孔阵列;(10)根据步骤(6)获取的中心坐标点(x
o
,y0)、步骤(8)获取的过孔阵列的行数和列数以及DRC要求的过孔尺寸和间距,利用创建函数dbCreate创建出新的过孔阵列,使该单元中新建的过孔阵列符合DRC规则要求;(11)经...

【专利技术属性】
技术研发人员:谢雨欣朱丹玥谢妙兴
申请(专利权)人:上海昭能坤信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1