CN114117998B - 一种集成电路版图焊盘及隔离垫片自适应确定方法及装置 - Google Patents
一种集成电路版图焊盘及隔离垫片自适应确定方法及装置 Download PDFInfo
- Publication number
- CN114117998B CN114117998B CN202210104275.4A CN202210104275A CN114117998B CN 114117998 B CN114117998 B CN 114117998B CN 202210104275 A CN202210104275 A CN 202210104275A CN 114117998 B CN114117998 B CN 114117998B
- Authority
- CN
- China
- Prior art keywords
- bonding pad
- pad
- polygon
- size
- center
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Architecture (AREA)
- Computer Networks & Wireless Communication (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请提出一种集成电路版图焊盘及隔离垫片自适应确定方法及装置,属于集成电路设计领域,方法包括:针对集成电路版图设计文件中的每个焊盘,搜索焊盘的中心所在的版图多边形;判断版图多边形的类型,如果版图多边形为覆铜多边形,则采用第一规则确定焊盘的尺寸以及焊盘对应的隔离垫片的尺寸;如果版图多边形为绝缘多边形,则采用第二规则确定焊盘的尺寸以及焊盘对应的隔离垫片的尺寸。所述装置包括:集成电路版图读取模块、网络获取模块、最小距离计算模块、多边形类型判断模块、第一规则模块、第二规则模块;本申请精确地确定了集成电路版图的焊盘及隔离垫片的尺寸大小,自动纠正矛盾的冗余设计,快速准确的改进超大规模集成电路的设计缺陷。
Description
技术领域
本申请属于集成电路设计领域,具体涉及一种集成电路版图焊盘及隔离垫片自适应确定方法及装置。
背景技术
随着通信技术的发展,超大规模集成电路的研究与发展已逐渐展开。为了提高电子设备的性能,缩小体积,降低成本,将晶体管与其他元器件以及线路都集成在一小块半导体基片上。为了实现更多的功能,超大规模集成电路有几层到上百层结构,每层结构极其复杂,集成数千万甚至数亿的晶体管,而集成电路层与层之间通过过孔连接。一方面,随着集成电路的元器件越来越密集,留给连接集成电路的过孔的可用空间越来越小;但另一方面,由于集成电路的元器件更密集,连接集成电路层与层之间的过孔却越来越多,留给非同一网络上的过孔上焊盘的空间越来越小,这就对集成电路的过孔的设计提出了严重挑战。
在集成电路设计过程中,如果存在非同一网络上的过孔穿过覆铜层,过孔在该覆铜层需要加一焊盘,同时需要在焊盘外围增加一个比焊盘更大的隔离垫片,以防焊盘和覆铜层短路,造成该过孔和覆铜层事实上位于同一个网络。
另一方面,在集成电路设计过程中,工程师往往采取冗余设计以防止这种短路发生。这个冗余设计体现在,一方面,对于这种非同一网络上的过孔穿过覆铜层时,都会在该覆铜层增加一个比焊盘更大的隔离垫片,另一方面,工程师也会预先在覆铜层过孔穿过的位置增加一个孔洞,这个孔洞大于过孔焊盘的尺寸,且进行这两种冗余设置的工程师可能不是同一个。
综上所述,精确确定集成电路版图焊盘及隔离垫片位置以及大小是目前比较迫切的需求,需要一种自动化自适应的确定方法。
发明内容
针对以上问题,基于根据集成电路的设计需求,在保证工程师冗余的设计规范的前提下,本申请提出一种集成电路版图焊盘及隔离垫片自适应确定方法及装置。
第一方面,本申请提出一种集成电路版图焊盘及隔离垫片自适应确定方法,包括如下步骤:
步骤S1:读取集成电路的版图设计文件;
步骤S2:针对所述集成电路版图设计文件中的每个焊盘H,获取其所在的网络NetH;
步骤S3:搜索焊盘H的中心所在的版图多边形P,计算所述版图多边形P与焊盘H的中心的最小距离dPH;
步骤S4:判断所述版图多边形P的类型为覆铜多边形或者绝缘多边形;
步骤S5:如果版图多边形P为覆铜多边形,则读取版图多边形P所在的网络NetP,根据网络NetH与网络NetP是否为同一个网络、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min差值之间大小、第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1与dPH-d1min差值之间大小,采用第一规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸,其中所述d1min为当前工艺水平下允许的覆铜的最小宽度,且d0>d0min;
步骤S6:如果版图多边形P为绝缘多边形,则根据第二规则中焊盘H对应的隔离垫片的最终设置尺寸dA2与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,采用第二规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸。
所述焊盘H的中心的定义为:如果所述焊盘H为圆盘,所述焊盘H的中心为圆盘的圆心,如果所述焊盘H为不规则形状的多边形,所述焊盘H的中心为所述不规则形状的多边形顶点的重心。
所述第一规则包括如下步骤:
步骤S5.1:判断网络NetH是否等于网络NetP;
步骤S5.2:如果NetH等于NetP,判断焊盘H是否存对应的隔离垫片,如果不存在隔离垫片,转入步骤S5.2B;
步骤S5.2A:如果存在隔离垫片,去掉其对应的隔离垫片,记录这个修改信息;
步骤S5.2B:比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2C:如果d0>dPH,继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2D:如果仍然满足d0min>dPH,则记录这个错误信息,针对焊盘H的处理结束;
步骤S5.2E:如果满足d0min<=dPH,则将焊盘H的尺寸d0修改为dPH,同时记录这个修改信息,针对焊盘H的处理结束;
步骤S5.2F:如果满足d0<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3:如果NetH不等于NetP,判断焊盘H是否存在对应的隔离垫片,如果存在隔离垫片,转入步骤S5.3B;
步骤S5.3A:如果不存在隔离垫片,增加其对应的隔离垫片,记录这个修改信息;
步骤S5.3B:比较dPH-d1min与焊盘H对应的隔离垫片的初始设置尺寸dA之间大小;所述d1min为当前工艺水平下允许的覆铜的最小宽度;
步骤S5.3C:如果dA<=dPH-d1min,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3D:如果dA>dPH-d1min,继续比较焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min之间大小;所述dAmin1=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸;
步骤S5.3E:如果满足dAmin1<=dPH-d1min,则将焊盘H的尺寸d0修改为d0= max(dPH-d1min-d2,d0min),将第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1修改为dA1=max(d0+d2min, dPH-d1min),同时记录这个修改信息,针对焊盘H的处理结束;所述dA1为第一规则中焊盘H对应的隔离垫片的最终设置尺寸;
步骤S5.3F:如果满足dAmin1>dPH-d1min,记录这个错误信息,针对焊盘H的处理结束。
所述第二规则包括如下步骤:
步骤S6.1:比较焊盘H对应的隔离垫片的初始尺寸dA与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.2:如果满足dA<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S6.3:如果满足dA>dPH,继续比较d0+d2min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.4:如果d0+d2min<=dPH,将焊盘H对应的隔离垫片的最终设置尺寸修改为dA2=dPH,记录这个修改信息,针对焊盘H的处理结束;
步骤S6.5:如果d0+d2min>dPH,则比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.6:如果满足d0<=dPH,转入步骤S6.9;
步骤S6.7:如果满足d0>dPH,则继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.8:如果满足d0min>=dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.9:如果满足d0min<dPH,则比较焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dAmin2=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸;
步骤S6.10:如果满足dAmin2>dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.11:如果满足dAmin2<=dPH,将焊盘H的尺寸d0修改为d0=d0min,对应的隔离垫片的最终设置尺寸dA2修改为dA2=dPH,同时记录这个修改信息,针对焊盘H的处理结束,其中,dA2为第二规则中焊盘H对应的隔离垫片的最终设置尺寸。
所述步骤S2中搜索焊盘H的中心(xH,yH)所在的版图多边形P的步骤包括:
步骤S2.1.1:对所有版图多边形P,计算多边形的范围(xmin,ymin)和(xmax,ymax),设置当前处理的多边形序号为i=1;所述xmin为多边形P所有顶点x坐标最小值,xmax为多边形P所有顶点x坐标最大值,ymin为多边形P所有顶点y坐标最小值,ymax为多边形P所有顶点y坐标最大值;
步骤S2.1.2:判断焊盘H的中心(xH,yH)是否在当前多边形范围外:如果满足xH<xmin或xH>xmax或yH<ymin或yH>ymax,则焊盘H的中心(xH,yH)在当前多边形范围外,否则焊盘H的中心(xH,yH)在当前多边形范围内;
步骤S2.1.3:如果焊盘H的中心(xH,yH)在当前多边形范围外,则转入步骤S2.1.5;
步骤S2.1.4:如果焊盘H的中心(xH,yH)在当前多边形范围内,采用射线法判断焊盘H的中心(xH,yH)是否在版图多边形Pi之内,如果焊盘H的中心(xH,yH)在版图多边形Pi之内,则返回版图多边形Pi,结束搜索退出;如果焊盘H的中心(xH,yH)在版图多边形Pi之外,则转入步骤S2.1.5;
步骤S2.1.5:设置i=i+1,比较i与多边形数量之间大小;
步骤S2.1.6:如果i>多边形数量,焊盘H的中心(xH,yH)不在任何多边形内,结束搜索退出,如果i<=多边形数量,转入步骤S2.1.2。
所述采用射线法判断焊盘H的中心(xH,yH)是否在版图多边形Pi之内,包括如下步骤:
以焊盘H的中心(xH,yH)为端点,水平向右作射线,统计该射线与版图多边形Pi的边的交点数;如果交点数为奇数,焊盘H的中心(xH,yH)在版图多边形Pi之内;如果交点数为偶数,焊盘H的中心(xH,yH)在版图多边形Pi之外。
步骤S2中计算版图多边形P与焊盘H的中心(xH,yH)的最小距离dPH的步骤包括:
步骤S2.2.1:对版图多边形P的每条边,从焊盘H的中心(xH,yH)向每条边作垂线,计算垂点,并判断垂点是否在边内;
步骤S2.2.2:对版图多边形P的每条边,如果垂点在边内,取垂点到焊盘H的中心(xH,yH)的距离作为边到焊盘H的中心(xH,yH)的距离;如果垂点在边外,分别计算两个顶点到焊盘H的中心(xH,yH)的距离,取这二者距离的最小值作为边到焊盘H的中心(xH,yH)的距离;
步骤S2.2.3:取所有边到焊盘H的中心(xH,yH)的距离的最小值作为版图多边形P与焊盘H的中心(xH,yH)的最小距离dPH。
第二方面,本申请提出一种集成电路版图焊盘及隔离垫片自适应确定装置,包括:包括:集成电路版图读取模块、网络获取模块、最小距离计算模块、多边形类型判断模块、第一规则模块、第二规则模块;
所述集成电路版图读取模块、网络获取模块、最小距离计算模块、多边形类型判断模块依次顺序相连接,所述多边形类型判断模块分别与所述第一规则模块、第二规则模块相连接;
所述集成电路版图读取模块用于读取集成电路的版图设计文件;
所述网络获取模块用于针对所述集成电路版图设计文件中的每个焊盘H,获取其所在的网络NetH;
所述最小距离计算模块用于搜索焊盘H的中心所在的版图多边形P,计算所述版图多边形P与焊盘H的中心的最小距离dPH;
所述多边形类型判断模块用于判断所述版图多边形P的类型为覆铜多边形或者绝缘多边形;
所述第一规则模块用于如果版图多边形P为覆铜多边形,则读取版图多边形P所在的网络NetP,根据网络NetH与网络NetP是否为同一个网络、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min差值之间大小、第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1与dPH-d1min差值之间大小,采用第一规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸,其中所述d1min为当前工艺水平下允许的覆铜的最小宽度,且d0>d0min;
所述第二规则模块用于如果版图多边形P为绝缘多边形,则根据第二规则中焊盘H对应的隔离垫片的最终设置尺寸dA2与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,采用第二规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸。
所述第一规则模块,包括如下步骤:
步骤S5.1:判断网络NetH是否等于网络NetP;
步骤S5.2:如果NetH等于NetP,判断焊盘H是否存对应的隔离垫片,如果不存在隔离垫片,转入步骤S5.2B;
步骤S5.2A:如果存在隔离垫片,去掉其对应的隔离垫片,记录这个修改信息;
步骤S5.2B:比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2C:如果d0>dPH,则说明设计的焊盘超出覆铜形成的版图多边形P,焊盘带来的覆铜有连通其他多边形的可能,继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2D:如果仍然满足d0min>dPH,则记录这个错误信息,针对焊盘H的处理结束;
步骤S5.2E:如果满足d0min<=dPH,则将焊盘H的尺寸d0修改为dPH,同时记录这个修改信息,针对焊盘H的处理结束;
步骤S5.2F:如果满足d0<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3:如果NetH不等于NetP,判断焊盘H是否存在对应的隔离垫片,如果存在隔离垫片,转入步骤S5.3B;
步骤S5.3A:如果不存在隔离垫片,增加其对应的隔离垫片,设置焊盘H对应的隔离垫片的初始尺寸为dA=d0+d2,记录这个修改信息;所述d2为用户设定的焊盘H对应的隔离垫片的绝缘间隙宽度,d2>d2min,所述d2min为当前工艺水平下允许的绝缘间隙的最小宽度;
步骤S5.3B:比较dPH-d1min与焊盘H对应的隔离垫片的初始设置尺寸dA之间大小;所述d1min为当前工艺水平下允许的覆铜的最小宽度;
步骤S5.3C:如果dA<=dPH-d1min,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3D:如果dA>dPH-d1min,说明隔离垫片带来的绝缘有破坏覆铜层连通的可能,继续比较焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min之间大小;所述dAmin1=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸;
步骤S5.3E:如果满足dAmin1<=dPH-d1min,则将焊盘H的尺寸d0修改为d0= max(dPH-d1min-d2,d0min),将第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1修改为dA1=max(d0+d2min, dPH-d1min),同时记录这个修改信息,针对焊盘H的处理结束;所述dA1为第一规则中焊盘H对应的隔离垫片的最终设置尺寸;
步骤S5.3F:如果满足dAmin1>dPH-d1min,记录这个错误信息,针对焊盘H的处理结束。
所述第二规则模块,包括如下步骤:
步骤S6.1:比较焊盘H对应的隔离垫片的初始尺寸dA与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dA=d0+d2为焊盘H对应的隔离垫片的初始设置尺寸;
步骤S6.2:如果满足dA<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S6.3:如果满足dA>dPH,继续比较d0+d2min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.4:如果d0+d2min<=dPH,将焊盘H对应的隔离垫片的最终设置尺寸修改为dA2=dPH,记录这个修改信息,针对焊盘H的处理结束;
步骤S6.5:如果d0+d2min>dPH,则比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.6:如果满足d0<=dPH,转入步骤S6.9;
步骤S6.7:如果满足d0>dPH,则继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.8:如果满足d0min>=dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.9:如果满足d0min<dPH,则比较焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dAmin2=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸;
步骤S6.10:如果满足dAmin2>dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.11:如果满足dAmin2<=dPH,将焊盘H的尺寸d0修改为d0=d0min,对应的隔离垫片的最终设置尺寸dA2修改为dA2=dPH,同时记录这个修改信息,针对焊盘H的处理结束,其中,dA2为第二规则中焊盘H对应的隔离垫片的最终设置尺寸。
有益技术效果:
本申请基于根据集成电路的设计需求,在保证工程师冗余的设计规范的前提下,首次提出一种集成电路版图焊盘及隔离垫片自适应确定方法及装置,本申请精确地确定了集成电路版图的焊盘及隔离垫片的尺寸大小,自动纠正矛盾的冗余设计,快速准确的改进超大规模集成电路的设计缺陷,避免了人工设计焊盘及隔离垫片时,无法针对每一个焊盘及隔离垫片执行一个复杂的判断流程。
附图说明
图1为本申请实施例的一种集成电路版图焊盘及隔离垫片自适应确定方法流程图;
图2为本申请实施例的第一规则流程图;
图3为本申请实施例的第二规则流程图;
图4为本申请实施例的搜索焊盘H的中心所在的版图多边形P流程图;
图5为本申请实施例的计算所述版图多边形P与焊盘H的中心的最小距离流程图;
图6为本申请实施例的一种集成电路版图焊盘及隔离垫片自适应确定装置原理框图;
图7为现有技术中集成电路的过孔与隔离垫片或孔洞示意图;
图8为现有技术中集成电路的近距离过孔与隔离垫片示意图;
图9为现有技术中集成电路的近距离过孔与孔洞示意图;
图10为现有技术中隔离垫片与孔洞区别示意图;
其中,1-焊盘,2-隔离垫片,3-孔洞,4-覆铜层、5-过孔。
具体实施方式:
下面结合附图对本申请作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本申请的保护范围。
在集成电路设计过程中,如果存在非同一网络上的过孔穿过覆铜层4,过孔5在该覆铜层4需要加一焊盘1,同时需要在焊盘1外围增加一个比焊盘1更大的隔离垫片2,以防焊盘1和覆铜层4短路,造成该过孔5和覆铜层4事实上位于同一个网络,如图7所示,此时的隔离垫片2是位于焊盘1的正下方,而当焊盘1被置于隔离垫片2上时,所形成的环形区域为孔洞3,为展示隔离垫片2与孔洞3区别,以及孔洞3形成的过程,如图10所示,其中孔洞3为剖面行形成的阴影区域,为环形区域。
另一方面,在集成电路设计过程中,工程师往往采取冗余设计以防止这种短路发生。这个冗余设计体现在,一方面,对于这种非同一网络上的过孔5穿过覆铜层4时,都会在该覆铜层4增加一个比焊盘1更大的隔离垫片2,另一方面,工程师也会预先在覆铜层4过孔5穿过的位置增加一个孔洞3,这个孔洞3大于过孔5焊盘1的尺寸,且进行这两种冗余设置的工程师可能不是同一个。图7所示的隔离垫片2与孔洞3大小相同。这种冗余设计可以最大可能的杜绝这种短路发生,但也会带来另一个问题,即通常根据习惯或者默认设置,将隔离垫片2的尺寸设置得过大,而这个习惯或者默认设置已经不适应集成电路非常密集的元器件布置,在这样的布置下,进行版图设计的工程师则根据元器件的布局,事先在过孔5穿过的位置增加了大小合适的孔洞3,以防止短路的发生。在这两个冗余设计的作用下,过孔5穿过覆铜层4的位置会出现这样一个孔洞3,这个孔洞3的大小是两个冗余设计产生的孔洞3的最大值。在过孔5附近空间足够的情况下,这个孔洞3不会产生大的影响,但如果过孔5非常密集,冗余的设计可能导致隔离垫片2破坏其周围本该连通的区域,造成本该连通的区域的断路。图8所示为两个距离很近的过孔5,工程师已经在过孔5穿过的位置增加了孔洞3,但另一方面,默认设置还有更大的隔离垫片2,隔离垫片2使得实际的效果如图9所示,与图8相比,两个过孔5中间的连通性有部分被破坏,图9中显示出其为2个隔离垫片2的重叠,但是其孔洞3为一个8字形的连通性区域。
本申请基于根据集成电路的设计需求,在保证工程师冗余的设计规范的前提下,首次提出一种集成电路版图焊盘及隔离垫片自适应确定方法及装置,该方法以网络来判断经过覆铜层4的过孔5是否需要增加隔离垫片2,如果不需要增加隔离垫片2,则自适应确定焊盘1大小,否则,根据周围的覆铜层4,自适应确定焊盘1和隔离垫片2的大小,在对用户设计的版图文件进行处理的同时,给用户返回两类信息,一类是修改信息,提示用户通过这样的修改可以使得版图文件正确工作;二类是错误信息,返回用户错误类型、错误焊盘1和隔离垫片2名称,以便用户对设计文件进行修改。这里的隔离垫片2和焊盘1可以是圆盘,也可以是其他不规则形状的多边形。
第一方面,本申请提出一种集成电路版图焊盘及隔离垫片自适应确定方法,如图1所示,包括如下步骤:
步骤S1:读取集成电路的版图设计文件;
步骤S2:针对所述集成电路版图设计文件中的每个焊盘H,获取其所在的网络NetH;
步骤S3:搜索焊盘H的中心所在的版图多边形P,计算所述版图多边形P与焊盘H的中心的最小距离dPH;
步骤S4:判断所述版图多边形P的类型为覆铜多边形或者绝缘多边形;
步骤S5:如果版图多边形P为覆铜多边形,则读取版图多边形P所在的网络NetP,根据网络NetH与网络NetP是否为同一个网络、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min差值之间大小、第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1与dPH-d1min差值之间大小,采用第一规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸,其中所述d1min为当前工艺水平下允许的覆铜的最小宽度,且d0>d0min;
步骤S6:如果版图多边形P为绝缘多边形,则根据第二规则中焊盘H对应的隔离垫片的最终设置尺寸dA2与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,采用第二规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸。
所述焊盘H的中心的定义为:如果所述焊盘H为圆盘,所述焊盘H的中心为圆盘的圆心,如果所述焊盘H为不规则形状的多边形,所述焊盘H的中心为所述不规则形状的多边形顶点的重心。
所述第一规则,如图2所示,包括如下步骤:
步骤S5.1:判断网络NetH是否等于网络NetP;
步骤S5.2:如果NetH等于NetP,判断焊盘H是否存对应的隔离垫片,如果不存在隔离垫片,转入步骤S5.2B;
步骤S5.2A:如果存在隔离垫片,去掉其对应的隔离垫片,记录这个修改信息;
步骤S5.2B:比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2C:如果d0>dPH,则说明设计的焊盘超出覆铜形成的版图多边形P,焊盘带来的覆铜有连通其他多边形的可能,继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2D:如果仍然满足d0min>dPH,则记录这个错误信息,针对焊盘H的处理结束;
步骤S5.2E:如果满足d0min<=dPH,则将焊盘H的尺寸d0修改为dPH,同时记录这个修改信息,针对焊盘H的处理结束;
步骤S5.2F:如果满足d0<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3:如果NetH不等于NetP,判断焊盘H是否存在对应的隔离垫片,如果存在隔离垫片,转入步骤S5.3B;
步骤S5.3A:如果不存在隔离垫片,增加其对应的隔离垫片,设置焊盘H对应的隔离垫片的初始尺寸为dA=d0+d2,记录这个修改信息;所述d2为用户设定的焊盘H对应的隔离垫片的绝缘间隙宽度,d2>d2min,所述d2min为当前工艺水平下允许的绝缘间隙的最小宽度;
步骤S5.3B:比较dPH-d1min与焊盘H对应的隔离垫片的初始设置尺寸dA之间大小;所述d1min为当前工艺水平下允许的覆铜的最小宽度;
步骤S5.3C:如果dA<=dPH-d1min,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3D:如果dA>dPH-d1min,说明隔离垫片带来的绝缘有破坏覆铜层连通的可能,继续比较焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min之间大小;所述dAmin1=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸;
步骤S5.3E:如果满足dAmin1<=dPH-d1min,则将焊盘H的尺寸d0修改为d0= max(dPH-d1min-d2,d0min),将第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1修改为dA1=max(d0+d2min, dPH-d1min),同时记录这个修改信息,针对焊盘H的处理结束;所述dA1为第一规则中焊盘H对应的隔离垫片的最终设置尺寸;
步骤S5.3F:如果满足dAmin1>dPH-d1min,记录这个错误信息,针对焊盘H的处理结束。
所述第二规则,如图3所示,包括如下步骤:
步骤S6.1:比较焊盘H对应的隔离垫片的初始尺寸dA与版图多边形P与焊盘H的中心的最小距离dPH之间大小;其中,dA=d0+d2为焊盘H对应的隔离垫片的初始设置尺寸;
步骤S6.2:如果满足dA<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S6.3:如果满足dA>dPH,则说明设计的焊盘H对应的隔离垫片超出绝缘形成的版图多边形P,隔离垫片带来的绝缘有破坏其他覆铜多边形的可能,继续比较d0+d2min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.4:如果d0+d2min<=dPH,将焊盘H对应的隔离垫片的最终设置尺寸修改为dA2=dPH,记录这个修改信息,针对焊盘H的处理结束;
步骤S6.5:如果d0+d2min>dPH,则比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.6:如果满足d0<=dPH,转入步骤S6.9;
步骤S6.7:如果满足d0>dPH,说明设计的焊盘超出绝缘形成的版图多边形P,焊盘带来的覆铜有连通其他多边形的可能,则继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.8:如果满足d0min>=dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.9:如果满足d0min<dPH,则比较焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dAmin2=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸;
步骤S6.10:如果满足dAmin2>dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.11:如果满足dAmin2<=dPH,将焊盘H的尺寸d0修改为d0=d0min,对应的隔离垫片的最终设置尺寸dA2修改为dA2=dPH,同时记录这个修改信息,针对焊盘H的处理结束,其中,dA2为第二规则中焊盘H对应的隔离垫片的最终设置尺寸。
如图4所示,步骤S2中搜索焊盘H的中心(xH,yH)所在的版图多边形P的步骤包括:
步骤S2.1.1:对所有版图多边形P,计算多边形的范围(xmin,ymin)和(xmax,ymax),设置当前处理的多边形序号为i=1;所述xmin为多边形P所有顶点x坐标最小值,xmax为多边形P所有顶点x坐标最大值,ymin为多边形P所有顶点y坐标最小值,ymax为多边形P所有顶点y坐标最大值;
步骤S2.1.2:判断焊盘H的中心(xH,yH)是否在当前多边形范围外;如果满足xH<xmin或xH>xmax或yH<ymin或yH>ymax,则焊盘H的中心(xH,yH)在当前多边形范围外,否则焊盘H的中心(xH,yH)在当前多边形范围内;
步骤S2.1.3:如果焊盘H的中心(xH,yH)在当前多边形范围外,则转入步骤S2.1.5;
步骤S2.1.4:如果焊盘H的中心(xH,yH)在当前多边形范围内,采用射线法判断焊盘H的中心(xH,yH)是否在版图多边形Pi之内,如果焊盘H的中心(xH,yH)在版图多边形Pi之内,则返回版图多边形Pi,结束搜索退出;如果焊盘H的中心(xH,yH)在版图多边形Pi之外,则转入步骤S2.1.5;
步骤S2.1.5:设置i=i+1,比较i与多边形数量之间大小;
步骤S2.1.6:如果i>多边形数量,焊盘H的中心(xH,yH)不在任何多边形内,结束搜索退出,如果i<=多边形数量,转入步骤S2.1.2。
所述采用射线法判断焊盘H的中心(xH,yH)是否在版图多边形Pi之内,包括如下步骤:
以焊盘H的中心(xH,yH)为端点,水平向右作射线,统计该射线与版图多边形Pi的边的交点数;如果交点数为奇数,焊盘H的中心(xH,yH)在版图多边形Pi之内;如果交点数为偶数,焊盘H的中心(xH,yH)在版图多边形Pi之外。
如图5所示,步骤S2中计算版图多边形P与焊盘H的中心(xH,yH)的最小距离dPH的步骤包括:
步骤S2.2.1:对版图多边形P的每条边,从焊盘H的中心(xH,yH)向每条边作垂线,计算垂点,并判断垂点是否在边内;
步骤S2.2.2:对版图多边形P的每条边,如果垂点在边内,取垂点到焊盘H的中心(xH,yH)的距离作为边到焊盘H的中心(xH,yH)的距离;如果垂点在边外,分别计算两个顶点到焊盘H的中心(xH,yH)的距离,取这二者距离的最小值作为边到焊盘H的中心(xH,yH)的距离;
步骤S2.2.3:取所有边到焊盘H的中心(xH,yH)的距离的最小值作为版图多边形P与焊盘H的中心(xH,yH)的最小距离dPH。
第二方面,本申请提出一种集成电路版图焊盘及隔离垫片自适应确定装置,如图6所示,包括:包括:集成电路版图读取模块、网络获取模块、最小距离计算模块、多边形类型判断模块、第一规则模块、第二规则模块;
所述集成电路版图读取模块、网络获取模块、最小距离计算模块、多边形类型判断模块依次顺序相连接,所述多边形类型判断模块分别与所述第一规则模块、第二规则模块相连接;
所述集成电路版图读取模块用于读取集成电路的版图设计文件;
所述网络获取模块用于针对所述集成电路版图设计文件中的每个焊盘H,获取其所在的网络NetH;
所述最小距离计算模块用于搜索焊盘H的中心所在的版图多边形P,计算所述版图多边形P与焊盘H的中心的最小距离dPH;
所述多边形类型判断模块用于判断所述版图多边形P的类型为覆铜多边形或者绝缘多边形;
所述第一规则模块用于如果版图多边形P为覆铜多边形,则读取版图多边形P所在的网络NetP,根据网络NetH与网络NetP是否为同一个网络、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min差值之间大小、第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1与dPH-d1min差值之间大小,采用第一规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸,其中所述d1min为当前工艺水平下允许的覆铜的最小宽度,且d0>d0min;
所述第二规则模块用于如果版图多边形P为绝缘多边形,则根据第二规则中焊盘H对应的隔离垫片的最终设置尺寸dA2与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,采用第二规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸。
所述第一规则模块,包括如下步骤:
步骤S5.1:判断网络NetH是否等于网络NetP;
步骤S5.2:如果NetH等于NetP,判断焊盘H是否存对应的隔离垫片,如果不存在隔离垫片,转入步骤S5.2B;
步骤S5.2A:如果存在隔离垫片,去掉其对应的隔离垫片,记录这个修改信息;
步骤S5.2B:比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2C:如果d0>dPH,则说明设计的焊盘超出覆铜形成的版图多边形P,焊盘带来的覆铜有连通其他多边形的可能,继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2D:如果仍然满足d0min>dPH,则记录这个错误信息,针对焊盘H的处理结束;
步骤S5.2E:如果满足d0min<=dPH,则将焊盘H的尺寸d0修改为dPH,同时记录这个修改信息,针对焊盘H的处理结束;
步骤S5.2F:如果满足d0<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3:如果NetH不等于NetP,判断焊盘H是否存在对应的隔离垫片,如果存在隔离垫片,转入步骤S5.3B;
步骤S5.3A:如果不存在隔离垫片,增加其对应的隔离垫片,设置焊盘H对应的隔离垫片的初始尺寸为dA=d0+d2,记录这个修改信息;所述d2为用户设定的焊盘H对应的隔离垫片的绝缘间隙宽度,d2>d2min,所述d2min为当前工艺水平下允许的绝缘间隙的最小宽度;
步骤S5.3B:比较dPH-d1min与焊盘H对应的隔离垫片的初始设置尺寸dA之间大小;所述d1min为当前工艺水平下允许的覆铜的最小宽度;
步骤S5.3C:如果dA<=dPH-d1min,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3D:如果dA>dPH-d1min,说明隔离垫片带来的绝缘有破坏覆铜层连通的可能,继续比较焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min之间大小;所述dAmin1=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸;
步骤S5.3E:如果满足dAmin1<=dPH-d1min,则将焊盘H的尺寸d0修改为d0= max(dPH-d1min-d2,d0min),将第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1修改为dA1=max(d0+d2min, dPH-d1min),同时记录这个修改信息,针对焊盘H的处理结束;所述dA1为第一规则中焊盘H对应的隔离垫片的最终设置尺寸;
步骤S5.3F:如果满足dAmin1>dPH-d1min,记录这个错误信息,针对焊盘H的处理结束。
所述第二规则模块,包括如下步骤:
步骤S6.1:比较焊盘H对应的隔离垫片的初始尺寸dA与版图多边形P与焊盘H的中心的最小距离dPH之间大小;其中,dA=d0+d2为焊盘H对应的隔离垫片的初始设置尺寸;
步骤S6.2:如果满足dA<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S6.3:如果满足dA>dPH,则说明设计的焊盘H对应的隔离垫片超出绝缘形成的版图多边形P,隔离垫片带来的绝缘有破坏其他覆铜多边形的可能,继续比较d0+d2min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.4:如果d0+d2min<=dPH,将焊盘H对应的隔离垫片的最终设置尺寸修改为dA2=dPH,记录这个修改信息,针对焊盘H的处理结束;
步骤S6.5:如果d0+d2min>dPH,则比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.6:如果满足d0<=dPH,转入步骤S6.9;
步骤S6.7:如果满足d0>dPH,说明设计的焊盘超出绝缘形成的版图多边形P,焊盘带来的覆铜有连通其他多边形的可能,则继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.8:如果满足d0min>=dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.9:如果满足d0min<dPH,则比较焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dAmin2=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸;
步骤S6.10:如果满足dAmin2>dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.11:如果满足dAmin2<=dPH,将焊盘H的尺寸d0修改为d0=d0min,对应的隔离垫片的最终设置尺寸dA2修改为dA2=dPH,同时记录这个修改信息,针对焊盘H的处理结束,其中,dA2为第二规则中焊盘H对应的隔离垫片的最终设置尺寸。
本发明申请人结合说明书附图对本发明的实施示例做了详细的说明与描述,但是本领域技术人员应该理解,以上实施示例仅为本发明的优选实施方案,详尽的说明只是为了帮助读者更好地理解本发明精神,而并非对本发明保护范围的限制,相反,任何基于本发明的发明精神所作的任何改进或修饰都应当落在本发明的保护范围之内。
Claims (5)
1.一种集成电路版图焊盘及隔离垫片自适应确定方法,其特征在于,包括如下步骤:
步骤S1:读取集成电路的版图设计文件;
步骤S2:针对所述集成电路版图设计文件中的每个焊盘H,获取其所在的网络NetH;
步骤S3:搜索焊盘H的中心所在的版图多边形P,计算所述版图多边形P与焊盘H的中心的最小距离dPH,所述焊盘H为圆盘,所述焊盘H的中心为圆盘的圆心;
步骤S4:判断所述版图多边形P的类型为覆铜多边形或者绝缘多边形;
步骤S5:如果版图多边形P为覆铜多边形,则读取版图多边形P所在的网络NetP,根据网络NetH与网络NetP是否为同一个网络、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min差值之间大小、第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1与dPH-d1min差值之间大小,采用第一规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸,其中所述d1min为当前工艺水平下允许的覆铜的最小宽度,且d0>d0min;
步骤S6:如果版图多边形P为绝缘多边形,则根据第二规则中焊盘H对应的隔离垫片的最终设置尺寸dA2与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,采用第二规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸;
所述第一规则包括如下步骤:
步骤S5.1:判断网络NetH是否等于网络NetP;
步骤S5.2:如果NetH等于NetP,判断焊盘H是否存对应的隔离垫片,如果不存在隔离垫片,转入步骤S5.2B;
步骤S5.2A:如果存在隔离垫片,去掉其对应的隔离垫片,记录这个修改信息;
步骤S5.2B:比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2C:如果d0>dPH,继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2D:如果仍然满足d0min>dPH,则记录这个错误信息,针对焊盘H的处理结束;
步骤S5.2E:如果满足d0min<=dPH,则将焊盘H的尺寸d0修改为dPH,同时记录这个修改信息,针对焊盘H的处理结束;
步骤S5.2F:如果满足d0<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3:如果NetH不等于NetP,判断焊盘H是否存在对应的隔离垫片,如果存在隔离垫片,转入步骤S5.3B;
步骤S5.3A:如果不存在隔离垫片,增加其对应的隔离垫片,设置焊盘H对应的隔离垫片的初始尺寸为dA=d0+d2,记录这个修改信息;所述d2为用户设定的焊盘H对应的隔离垫片的绝缘间隙宽度,d2>d2min,所述d2min为当前工艺水平下允许的绝缘间隙的最小宽度;
步骤S5.3B:比较dPH-d1min与焊盘H对应的隔离垫片的初始设置尺寸dA之间大小;所述d1min为当前工艺水平下允许的覆铜的最小宽度;
步骤S5.3C:如果dA<=dPH-d1min,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3D:如果dA>dPH-d1min,继续比较焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min之间大小;所述dAmin1=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸;
步骤S5.3E:如果满足dAmin1<=dPH-d1min,则将焊盘H的尺寸d0修改为d0= max(dPH-d1min-d2,d0min),将第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1修改为dA1=max(d0+d2min,dPH-d1min),同时记录这个修改信息,针对焊盘H的处理结束;所述dA1为第一规则中焊盘H对应的隔离垫片的最终设置尺寸;
步骤S5.3F:如果满足dAmin1>dPH-d1min,记录这个错误信息,针对焊盘H的处理结束;
所述第二规则包括如下步骤:
步骤S6.1:比较焊盘H对应的隔离垫片的初始尺寸dA与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dA=d0+d2为焊盘H对应的隔离垫片的初始设置尺寸;
步骤S6.2:如果满足dA<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S6.3:如果满足dA>dPH,继续比较d0+d2min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.4:如果d0+d2min<=dPH,将焊盘H对应的隔离垫片的最终设置尺寸修改为dA2=dPH,记录这个修改信息,针对焊盘H的处理结束;
步骤S6.5:如果d0+d2min>dPH,则比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.6:如果满足d0<=dPH,转入步骤S6.9;
步骤S6.7:如果满足d0>dPH,则继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.8:如果满足d0min>=dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.9:如果满足d0min<dPH,则比较焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dAmin2=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸;
步骤S6.10:如果满足dAmin2>dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.11:如果满足dAmin2<=dPH,将焊盘H的尺寸d0修改为d0=d0min,对应的隔离垫片的最终设置尺寸dA2修改为dA2=dPH,同时记录这个修改信息,针对焊盘H的处理结束,其中,dA2为第二规则中焊盘H对应的隔离垫片的最终设置尺寸。
2.如权利要求1所述的集成电路版图焊盘及隔离垫片自适应确定方法,其特征在于,所述步骤S2中搜索焊盘H的中心(xH,yH)所在的版图多边形P的步骤包括:
步骤S2.1.1:对所有版图多边形P,计算多边形的范围(xmin,ymin)和(xmax,ymax),设置当前处理的多边形序号为i=1;所述xmin为多边形P所有顶点x坐标最小值,xmax为多边形P所有顶点x坐标最大值,ymin为多边形P所有顶点y坐标最小值,ymax为多边形P所有顶点y坐标最大值;
步骤S2.1.2:判断焊盘H的中心(xH,yH)是否在当前多边形范围外:如果满足xH<xmin或xH>xmax或yH<ymin或yH>ymax,则焊盘H的中心(xH,yH)在当前多边形范围外,否则焊盘H的中心(xH,yH)在当前多边形范围内;
步骤S2.1.3:如果焊盘H的中心(xH,yH)在当前多边形范围外,则转入步骤S2.1.5;
步骤S2.1.4:如果焊盘H的中心(xH,yH)在当前多边形范围内,采用射线法判断焊盘H的中心(xH,yH)是否在版图多边形Pi之内,如果焊盘H的中心(xH,yH)在版图多边形Pi之内,则返回版图多边形Pi,结束搜索退出;如果焊盘H的中心(xH,yH)在版图多边形Pi之外,则转入步骤S2.1.5;
步骤S2.1.5:设置i=i+1,比较i与多边形数量之间大小;
步骤S2.1.6:如果i>多边形数量,焊盘H的中心(xH,yH)不在任何多边形内,结束搜索退出,如果i<=多边形数量,转入步骤S2.1.2。
3.如权利要求2所述的集成电路版图焊盘及隔离垫片自适应确定方法,其特征在于,所述采用射线法判断焊盘H的中心(xH,yH)是否在版图多边形Pi之内,包括如下步骤:
以焊盘H的中心(xH,yH)为端点,水平向右作射线,统计该射线与版图多边形Pi的边的交点数;如果交点数为奇数,焊盘H的中心(xH,yH)在版图多边形Pi之内;如果交点数为偶数,焊盘H的中心(xH,yH)在版图多边形Pi之外。
4.如权利要求1所述的集成电路版图焊盘及隔离垫片自适应确定方法,其特征在于,步骤S2中计算版图多边形P与焊盘H的中心(xH,yH)的最小距离dPH的步骤包括:
步骤S2.2.1:对版图多边形P的每条边,从焊盘H的中心(xH,yH)向每条边作垂线,计算垂点,并判断垂点是否在边内;
步骤S2.2.2:对版图多边形P的每条边,如果垂点在边内,取垂点到焊盘H的中心(xH,yH)的距离作为边到焊盘H的中心(xH,yH)的距离;如果垂点在边外,分别计算两个顶点到焊盘H的中心(xH,yH)的距离,取这二者距离的最小值作为边到焊盘H的中心(xH,yH)的距离;
步骤S2.2.3:取所有边到焊盘H的中心(xH,yH)的距离的最小值作为版图多边形P与焊盘H的中心(xH,yH)的最小距离dPH。
5.一种集成电路版图焊盘及隔离垫片自适应确定装置,其特征在于,包括:集成电路版图读取模块、网络获取模块、最小距离计算模块、多边形类型判断模块、第一规则模块、第二规则模块;
所述集成电路版图读取模块、网络获取模块、最小距离计算模块、多边形类型判断模块依次顺序相连接,所述多边形类型判断模块分别与所述第一规则模块、第二规则模块相连接;
所述集成电路版图读取模块用于读取集成电路的版图设计文件;
所述网络获取模块用于针对所述集成电路版图设计文件中的每个焊盘H,获取其所在的网络NetH;
所述最小距离计算模块用于搜索焊盘H的中心所在的版图多边形P,计算所述版图多边形P与焊盘H的中心的最小距离dPH,所述焊盘H为圆盘,所述焊盘H的中心为圆盘的圆心;
所述多边形类型判断模块用于判断所述版图多边形P的类型为覆铜多边形或者绝缘多边形;
所述第一规则模块用于如果版图多边形P为覆铜多边形,则读取版图多边形P所在的网络NetP,根据网络NetH与网络NetP是否为同一个网络、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min差值之间大小、第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1与dPH-d1min差值之间大小,采用第一规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸,其中所述d1min为当前工艺水平下允许的覆铜的最小宽度,且d0>d0min;
所述第二规则模块用于如果版图多边形P为绝缘多边形,则根据第二规则中焊盘H对应的隔离垫片的最终设置尺寸dA2与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小、当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小、焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,采用第二规则确定焊盘H的尺寸以及焊盘H对应的隔离垫片的尺寸;
所述第一规则模块,包括如下步骤:
步骤S5.1:判断网络NetH是否等于网络NetP;
步骤S5.2:如果NetH等于NetP,判断焊盘H是否存对应的隔离垫片,如果不存在隔离垫片,转入步骤S5.2B;
步骤S5.2A:如果存在隔离垫片,去掉其对应的隔离垫片,记录这个修改信息;
步骤S5.2B:比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2C:如果d0>dPH,继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S5.2D:如果仍然满足d0min>dPH,则记录这个错误信息,针对焊盘H的处理结束;
步骤S5.2E:如果满足d0min<=dPH,则将焊盘H的尺寸d0修改为dPH,同时记录这个修改信息,针对焊盘H的处理结束;
步骤S5.2F:如果满足d0<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3:如果NetH不等于NetP,判断焊盘H是否存在对应的隔离垫片,如果存在隔离垫片,转入步骤S5.3B;
步骤S5.3A:如果不存在隔离垫片,增加其对应的隔离垫片,设置焊盘H对应的隔离垫片的初始尺寸为dA=d0+d2,记录这个修改信息;所述d2为用户设定的焊盘H对应的隔离垫片的绝缘间隙宽度,d2>d2min,所述d2min为当前工艺水平下允许的绝缘间隙的最小宽度;
步骤S5.3B:比较dPH-d1min与焊盘H对应的隔离垫片的初始设置尺寸dA之间大小;所述d1min为当前工艺水平下允许的覆铜的最小宽度;
步骤S5.3C:如果dA<=dPH-d1min,不需要进行任何操作,针对焊盘H的处理结束;
步骤S5.3D:如果dA>dPH-d1min,继续比较焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸dAmin1与dPH-d1min之间大小;所述dAmin1=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第一最小尺寸;
步骤S5.3E:如果满足dAmin1<=dPH-d1min,则将焊盘H的尺寸d0修改为d0= max(dPH-d1min-d2,d0min),将第一规则中焊盘H对应的隔离垫片的最终设置尺寸dA1修改为dA1=max(d0+d2min,dPH-d1min),同时记录这个修改信息,针对焊盘H的处理结束;所述dA1为第一规则中焊盘H对应的隔离垫片的最终设置尺寸;
步骤S5.3F:如果满足dAmin1>dPH-d1min,记录这个错误信息,针对焊盘H的处理结束;
所述第二规则模块,包括如下步骤:
步骤S6.1:比较焊盘H对应的隔离垫片的初始尺寸dA与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dA=d0+d2为焊盘H对应的隔离垫片的初始设置尺寸;
步骤S6.2:如果满足dA<=dPH,不需要进行任何操作,针对焊盘H的处理结束;
步骤S6.3:如果满足dA>dPH,继续比较d0+d2min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.4:如果d0+d2min<=dPH,将焊盘H对应的隔离垫片的最终设置尺寸修改为dA2=dPH,记录这个修改信息,针对焊盘H的处理结束;
步骤S6.5:如果d0+d2min>dPH,则比较焊盘H的尺寸d0与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.6:如果满足d0<=dPH,转入步骤S6.9;
步骤S6.7:如果满足d0>dPH,则继续比较当前工艺水平下允许的焊盘的最小尺寸d0min与版图多边形P与焊盘H的中心的最小距离dPH之间大小;
步骤S6.8:如果满足d0min>=dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.9:如果满足d0min<dPH,则比较焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸dAmin2与版图多边形P与焊盘H的中心的最小距离dPH之间大小,其中,dAmin2=d0min+d2min为焊盘H对应的隔离垫片在当前工艺水平下允许的第二最小尺寸;
步骤S6.10:如果满足dAmin2>dPH,记录这个错误信息,针对焊盘H的处理结束;
步骤S6.11:如果满足dAmin2<=dPH,将焊盘H的尺寸d0修改为d0=d0min,对应的隔离垫片的最终设置尺寸dA2修改为dA2=dPH,同时记录这个修改信息,针对焊盘H的处理结束,其中,dA2为第二规则中焊盘H对应的隔离垫片的最终设置尺寸。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210104275.4A CN114117998B (zh) | 2022-01-28 | 2022-01-28 | 一种集成电路版图焊盘及隔离垫片自适应确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210104275.4A CN114117998B (zh) | 2022-01-28 | 2022-01-28 | 一种集成电路版图焊盘及隔离垫片自适应确定方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114117998A CN114117998A (zh) | 2022-03-01 |
CN114117998B true CN114117998B (zh) | 2022-04-29 |
Family
ID=80361809
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210104275.4A Active CN114117998B (zh) | 2022-01-28 | 2022-01-28 | 一种集成电路版图焊盘及隔离垫片自适应确定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114117998B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115600549B (zh) * | 2022-11-30 | 2023-04-25 | 北京智芯仿真科技有限公司 | 基于网格剖分确定集成电路版图设计缺陷的精准检测方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6259963B1 (en) * | 1997-10-07 | 2001-07-10 | Nec Corporation | Equipment, method and computer program product for determining positions of inspection terminals on printed wiring board |
US7062741B1 (en) * | 2003-01-23 | 2006-06-13 | Altera Corporation | Wire bond padring bond pad checker program |
CN102663169A (zh) * | 2012-03-21 | 2012-09-12 | 领佰思自动化科技(上海)有限公司 | 集成电路版图设计规则检查的方法及其系统 |
CN112066934A (zh) * | 2020-09-16 | 2020-12-11 | 深圳市一博科技股份有限公司 | 一种检查pcb板同层过孔盘相交或重孔问题的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4425044B2 (ja) * | 2004-04-13 | 2010-03-03 | 新光電気工業株式会社 | 半導体パッケージにおける自動配線方法および装置ならびに自動識別装置 |
-
2022
- 2022-01-28 CN CN202210104275.4A patent/CN114117998B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6259963B1 (en) * | 1997-10-07 | 2001-07-10 | Nec Corporation | Equipment, method and computer program product for determining positions of inspection terminals on printed wiring board |
US7062741B1 (en) * | 2003-01-23 | 2006-06-13 | Altera Corporation | Wire bond padring bond pad checker program |
CN102663169A (zh) * | 2012-03-21 | 2012-09-12 | 领佰思自动化科技(上海)有限公司 | 集成电路版图设计规则检查的方法及其系统 |
CN112066934A (zh) * | 2020-09-16 | 2020-12-11 | 深圳市一博科技股份有限公司 | 一种检查pcb板同层过孔盘相交或重孔问题的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114117998A (zh) | 2022-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8312408B2 (en) | Method and design system for semiconductor integrated circuit | |
CN114117998B (zh) | 一种集成电路版图焊盘及隔离垫片自适应确定方法及装置 | |
US7949982B2 (en) | Semiconductor integrated circuit design system, semiconductor integrated circuit design method, and computer readable medium | |
US6467070B2 (en) | Design support apparatus for semiconductor devices | |
CN107787122B (zh) | 电路板线路补偿方法和装置 | |
US6769106B2 (en) | Method of wiring semiconductor integrated circuit, semiconductor integrated circuit, and computer product | |
CN111025841B (zh) | 一种优化金属线光学邻近修正工艺窗口的方法 | |
CN115587569B (zh) | 芯片版图的设计规则检查方法、系统及存储介质 | |
CN116546750A (zh) | 一种pcb板自动掏铜的方法 | |
CN111290219B (zh) | 测量晶圆套刻精度的方法和设备、计算机可读存储介质 | |
JP2001060212A (ja) | パターンデータ密度検査装置及び密度検査方法並びにパターンデータ密度検査プログラムが記憶された記録媒体 | |
US20080209367A1 (en) | Reliability design method | |
US20090243121A1 (en) | Semiconductor integrated circuit and layout method for the same | |
CN107908873B (zh) | 一种高速线跨参考平面的检查方法及装置 | |
CN101458723B (zh) | 测试结构版图的形成方法及系统、测试结构的形成方法 | |
JP5583332B2 (ja) | スルーホール配置装置およびスルーホール配置方法 | |
TWI262572B (en) | Electrical address verification method and electrical testing method of failure analysis of semiconductor device structure | |
CN114722768B (zh) | 一种芯片虚拟部件设计方法及其装置 | |
CN111444668B (zh) | 一种对待测阵列中的晶体管逐个进行版图布线的方法 | |
JP3740387B2 (ja) | 平坦化パターン自動生成方法 | |
CN111737946B (zh) | 一种依据轨道的交互式布线方法 | |
JP4514742B2 (ja) | 銅充填後微孔の凹みまたは凸起の分析方法 | |
JP3466289B2 (ja) | 半導体装置 | |
JP4004511B2 (ja) | 平坦化パターン自動生成方法 | |
CN110677996A (zh) | 一种基于Allegro软件的隔离盘设计方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |