CN112052641A - 大规模集成电路版图非结构网格偏心中点生成方法和系统 - Google Patents
大规模集成电路版图非结构网格偏心中点生成方法和系统 Download PDFInfo
- Publication number
- CN112052641A CN112052641A CN202010912374.6A CN202010912374A CN112052641A CN 112052641 A CN112052641 A CN 112052641A CN 202010912374 A CN202010912374 A CN 202010912374A CN 112052641 A CN112052641 A CN 112052641A
- Authority
- CN
- China
- Prior art keywords
- edge
- eroded
- vertex
- lost
- triangle
- 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.)
- Granted
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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明涉及一种大规模集成电路版图非结构网格偏心中点生成方法和系统。该大规模集成电路版图非结构网格偏心中点生成方法和系统,通过采用偏心中点恢复法对丢失边进行恢复,采用偏心中点消除法消除被侵蚀的边。在丢失边的恢复过程中嵌套有被侵蚀边的消除,在被侵蚀边的消除过程中嵌套有丢失边的恢复,以保证消除所有丢失的边和被侵蚀的边。并且,针对丢失的边和被侵蚀的边生成的偏心中点形成的夹角正好为预先设定的定义三角形质量的三角形的最小角阈值,以使得在保证生成的网格质量满足要求的同时,减少网格节点,以能够在提高数值计算的速度的同时,减小计算内存。
Description
技术领域
本发明涉及电路版图非结构网格剖分领域,特别是涉及一种超大规模集成电路复杂版图非结构网格偏心中点生成方法和系统。
背景技术
非结构网格剖分广泛用于许多领域,如复杂电气结构的电磁场数值计算、三维重建、计算机图形学等领域。在多层超大规模集成电路的后端验证电磁场仿真方面,非结构网格剖分更是起到非常重要的作用,因为多层超大规模集成电路的电源层通常具有非常复杂的走线和版图,传统的传输线法或有限差分法无法处理尺度范围为厘米级到纳米级的多尺度结构的集成电路,这就需要采用非结构网格精准识别并采用高质量网格单元剖分超大规模集成电路的版图区域,进而采用电磁场数值计算方法计算得到电磁场在超大规模集成电路的分布。
针对超大规模集成电路版图的特点,可采用二维非结构三角形网格将每层版图及不同层之间的耦合区域进行网格剖分。由于版图结构异常复杂,因此在对版图区域进行网格剖分时,既需要高质量的三角形网格单元,又需要尽可能少的节点和网格单元。在现有技术中,三角形的质量被定义为:三角形外接圆的半径与最短边的长度之比。这个比值越大,三角形质量越差。通常,设定一个比值的阈值,在这个比值大于该阈值时,认为这个三角形的质量未达到要求,需要进一步插入新的节点进行细分,以改善三角形单元的质量。由于定义的三角形单元质量的比值等于1/(2sinθmin),这里θmin为三角形的最小角,因此也可以通过三角形的最小角定义三角形单元的质量,与比值阈值对应的,定义三角形的质量达到要求的三角形的最小角阈值为θthreshold,如果三角形的最小角小于最小角阈值θthreshold,认为这个三角形的质量未达到要求。
现有技术中,生成二维的Delaunay三角剖分的方法包括消除网格剖分中丢失或被侵蚀的边及改善网格单元质量两个步骤。如果存在丢失或被侵蚀的边,传统算法会将边的中点插入当前的Delaunay三角剖分中,并将该边分为两个子边,重复操作直到不存在丢失或被侵蚀的边。这里丢失的边指:这个边定义了集成电路版图的边界,但这个边却不在三角形网格中(不是三角形网格任一三角形单元的边)。而被侵蚀的边则是指:如果以这个边为直径的圆包含某些其他网格节点,那么这个边称为被侵蚀的边(被所包含的网格节点侵蚀)。在判断不存在丢失或被侵蚀的边后,再次通过插入新的节点以改善网格剖分中三角形单元的质量。
基于传统的这一算法可以发现,在消除网格剖分中丢失或被侵蚀的边的过程中,不论是什么情况,都一律重复的在丢失或被侵蚀的边的中点插入新的节点到网格中去,将该边一分为二,直到不存在丢失或被侵蚀的边。
以上这些算法特征,虽然能确保消除网格剖分中丢失或被侵蚀的边,但在后续生成高质量二维非结构三角形网格过程中,会导致在某些局部区域生成过于密集的网格的问题,使得数值计算需要更多的计算时间和更大的内存的同时,其精度却不会有显著的提高。
因此,提供一种能够减少高质量二维非结构三角形网格生成的网格节点,以在提高数值计算的速度的同时,减小计算内存的大规模集成电路版图非结构网格偏心中点生成方法或系统,是本领域亟待解决的技术难题。
发明内容
本发明的目的是提供一种能够减少高质量二维非结构三角形网格生成的网格节点,在提高数值计算的速度的同时,减小计算内存的大规模集成电路版图非结构网格偏心中点生成方法和系统。
为实现上述目的,本发明提供了如下方案:
一种大规模集成电路版图非结构网格偏心中点生成方法,包括:
获取待识别超大规模集成电路版图中包含多个顶点的多个多边形;
采用Delaunay三角剖分算法形成以多边形顶点为网格节点的Delaunay三角形网格;
确定是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交;若存在,则判定与所述三角形的边相交的所述多边形的边为丢失边;否则,则判定所述多边形的边为恢复边;
采用偏心中点恢复法对所述丢失边进行恢复;
在恢复丢失边的过程中确定所述恢复边的直径圆是否包含其他Delaunay三角形网格节点,且确定所述多边形恢复边的左三角形是否为质量差的三角形;若所述多边形恢复边的直径圆包含其他Delaunay三角形网格节点,且所述多边形恢复边的左三角形为质量差的三角形,则判定所述恢复边为被侵蚀的边;所述多边形边的左三角形为存在这样一个三角形,该多边形边同时为该三角形的边且该边的方向与该三角形的边的方向相同;所述质量差的三角形为该三角形的外接圆的半径与其最短边的长度之比大于设定阈值的三角形,或为三角形的最小角小于设定的最小角阈值的三角形;
采用偏心中点消除法消除所述被侵蚀的边;
返回确定所述是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交的三角形的步骤,直至所述多个多边形中所有的丢失边被恢复,所有的被侵蚀的边被消除。
优选的,所述采用偏心中点恢复法对所述丢失边进行恢复,具体包括:
从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点;
在所述丢失边上按设定条件确定偏心中点O;所述设定条件为:所述偏心中点O使得∠COB等于所述设定的最小角阈值θthreshold;
判断所述第一Delaunay三角形网格是否存在丢失边;若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复。
优选的,所述若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复,具体包括:
若存在丢失边,则将所有所述第一Delaunay三角形网格中的丢失边添加到丢失边集合中;
从所述丢失边集合中调取一丢失边,并执行从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所述丢失边集合中的所有丢失边均被恢复。
优选的,所述采用偏心中点消除法消除所述被侵蚀的边,具体包括:
在被侵蚀的边上找到偏心中点O′,使得∠A′O′C′=θthreshold;其中,θthreshold为所述设定的最小角阈值;
判断所述第二Delaunay三角形网格是否存在被侵蚀的边;若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除。
优选的,所述若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除,具体包括:
若存在被侵蚀的边,则将所有所述第二Delaunay三角形网格中的被侵蚀的边添加到侵蚀边集合中;
从所述侵蚀边集合中调取一被侵蚀的边,并执行确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所述侵蚀边集合中的所有被侵蚀的边均被消除。
一种大规模集成电路版图非结构网格偏心中点生成系统,包括:
获取模块,用于获取待识别超大规模集成电路版图中包含多个顶点的多个多边形;
Delaunay三角形网格生成模块,用于采用Delaunay三角剖分算法形成以多边形顶点为网格节点的Delaunay三角形网格;
第一确定模块,用于确定是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交的三角形;若存在,则判定与所述三角形的边相交的所述多边形的边为丢失边;否则,则判定所述多边形的边为恢复边;
丢失边恢复模块,用于采用偏心中点恢复法对所述丢失边进行恢复;
第二确定模块,用于在恢复丢失边的过程中确定所述恢复边的直径圆是否包含其他Delaunay三角形网格节点,且用于确定所述恢复边的左三角形为质量差的三角形;若所述恢复边的直径圆包含其他Delaunay三角形网格节点,且所述恢复边的左三角形为质量差的三角形,则判定所述恢复边为被侵蚀的边;所述多边形边的左三角形为存在这样一个三角形,该多边形边同时为该三角形的边且该边的方向与该三角形的边的方向相同;所述质量差的三角形为该三角形的外接圆的半径与其最短边的长度之比大于设定阈值的三角形,或者三角形的最小角小于设定的最小角阈值的三角形;
被侵蚀边消除模块,用于采用偏心中点消除法消除所述被侵蚀的边;
循环模块,用于返回确定所述是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交的三角形的步骤,直至所述多个多边形中所有的丢失边被恢复,所有的被侵蚀的边被消除。
优选的,所述丢失边恢复模块,具体包括:
顶点确定单元,用于从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点;
第一偏心中点确定单元,用于在所述丢失边上按设定条件确定偏心中点O;所述设定条件为:所述偏心中点O使得∠COB等于所述设定的最小角阈值θthreshold;
第一Delaunay三角形网格形成单元,用于将所述偏心中点O插入到所述丢失边上,形成新的多边形边和同时将偏心中点O采用Delaunay三角剖分算法插入到所述Delaunay三角形网格中,形成第一Delaunay三角形网格;
第二判断单元,用于判断所述第一Delaunay三角形网格是否存在丢失边;若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复。
优选的,所述第二判断单元,具体包括:
丢失边添加子单元,用于若存在丢失边,则将所有所述第一Delaunay三角形网格中的丢失边添加到丢失边集合中;
丢失边恢复子单元,用于从所述丢失边集合中调取一丢失边,并执行从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所述丢失边集合中的所有丢失边均被恢复。
优选的,所述被侵蚀边消除模块,具体包括:
第二偏心中点确定单元,用于在被侵蚀的边上确定偏心中点O′,使得∠A′O′C′=θthreshold;其中,θthreshold为所述设定的最小角阈值;
第二Delaunay三角形网格形成单元,用于将所述偏心中点O′插入到所述被侵蚀的边上,形成新的边和同时将所述偏心中点O′采用Delaunay三角剖分算法插入到所述Delaunay三角形网格中,形成第二Delaunay三角形网格;
第四判断单元,用于判断所述第二Delaunay三角形网格是否存在被侵蚀的边;若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除。
优选的,所述第四判断单元,具体包括:
被侵蚀边添加子单元,用于若存在被侵蚀的边,则将所有所述第二Delaunay三角形网格中的被侵蚀的边添加到侵蚀边集合中;
被侵蚀边消除子单元,用于从所述侵蚀边集合中调取一被侵蚀的边,并执行确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所述侵蚀边集合中的所有被侵蚀的边均被消除。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明提供的大规模集成电路版图非结构网格偏心中点生成方法和系统,通过采用偏心中点恢复法对丢失边进行恢复,采用偏心中点消除法消除被侵蚀的边。并且,在丢失边的恢复过程中嵌套有被侵蚀边的消除,在被侵蚀边的消除过程中嵌套有丢失边的恢复,以使得在保证生成网格精确度的同时,减少网格节点,以能够在提高数值计算的速度的同时,减小计算内存。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的大规模集成电路版图非结构网格偏心中点生成方法的流程图;
图2为本发明实施例中最近点选择原理示意图;
图3为本发明实施例中插入偏心中点后的Delaunay三角形网格的结构示意图;
图4为本发明实施例所选被侵蚀的边的偏心中点的第一位置示意图;
图5为本发明实施例所选被侵蚀的边的偏心中点的第二位置示意图;
图6为本明提供的大规模集成电路版图非结构网格偏心中点生成系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种能够减少网格节点,在提高数值计算的速度的同时,减小计算内存的大规模集成电路版图非结构网格偏心中点生成方法和系统。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
对于多层超大规模集成电路,在通过数值计算方法对其电磁场进行高精度的求解时,需要对该版图进行高质量的网格剖分。集成电路版图通常通过多边形进行描述,对于版图内的金属区域,采用正向(逆时针方向)多边形进行描述,而对于版图内的绝缘区域,则采用负向(顺时针方向)多边形进行描述。网格剖分的任务,则是将这些正向多边形采用一种或多种小尺寸单元进行不重叠、无空隙的分割。单元尺寸越小,分割的单元越接近理想形状(二维:正三角形、正方形。三维:正四面体、立方体等),基于这种分割单元的数值计算精度越高。对于结构复杂的集成电路版图区域,通常采用非结构网格进行网格剖分。首先,采用Delaunay方法对描述集成电路版图的多边形进行初始网格剖分,以多边形的所有顶点为初始网格节点,采用Delaunay方法将这些多边形的顶点逐一加入到Delaunay三角形网格中去。
基于上述原理,本发明提供了一种大规模集成电路版图非结构网格偏心中点生成方法,如图1所示,该大规模集成电路版图非结构网格偏心中点生成方法,包括:
步骤100:获取待识别超大规模集成电路版图中包含多个顶点的多个多边形。
步骤101:采用Delaunay三角剖分算法形成以多边形顶点为网格节点的Delaunay三角形网格。
步骤102:确定所述是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交;若存在,则判定与所述三角形的边相交的所述多边形的边为丢失边;否则,则判定所述多边形的边为恢复边。
步骤103:采用偏心中点恢复法对所述丢失边进行恢复。
步骤104:在恢复丢失边的过程中确定所述恢复边的直径圆是否包含其他Delaunay三角形网格节点,且确定所述恢复边的左三角形是否为质量差的三角形;若所述恢复边的直径圆包含其他Delaunay三角形网格节点,且所述恢复边的左三角形为质量差的三角形,则判定所述恢复边为被侵蚀的边。所述多边形边的左三角形为存在这样一个三角形,该多边形边同时为该三角形的边且该边的方向与该三角形的边的方向相同(如所述多边形P任意边e的左三角形为包含该边e且三角形边e的方向与多边形P边e的方向相同的三角形)。所述质量差的三角形为该三角形的外接圆的半径与其最短边的长度之比大于设定阈值的三角形,或为三角形的最小角小于设定的最小角阈值的三角形。
步骤105:采用偏心中点消除法消除所述被侵蚀的边。
步骤106:返回确定所述是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交的步骤,直至所述多个多边形中所有的丢失边被恢复,所有的被侵蚀的边被消除。
在采用Delaunay方法生成三角形网格时,版图多边形的所有顶点都加入到三角形网格中,但版图多边形的边不一定都是三角形的边,即存在这样的版图多边形的边,其与至少一个三角形的边相交,这样导致三角形将跨越至少两个不同的区域,这是网格剖分中不允许出现的情形。因此,需要采取适当的手段消除这种三角形,恢复不是三角形边的多边形的边(丢失的边)为三角形的边。可采用插入新的网格节点的方法恢复多边形的边,传统方法是在丢失边的中点插入新的网格节点,将这个网格节点加入到现有三角形网格中去,形成新的三角形网格,同时,原来丢失的边也被这个中点分为两条边,后面只需判断细分的边是否为丢失的边即可。这个过程一种重复直到所有多边形的边都为网格中三角形的边,即不存在丢失的边。
但是基于传统方法在后续生成高质量二维非结构三角形网格过程中,会导致局部区域生成过于密集的网格的问题,本发明为了解决这一问题,提供了一种偏心中点恢复法,在上述步骤103中,采用该偏心中点恢复法对丢失边进行恢复的过程,具体包括:
从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点。
确定与所述丢失边相交的边的所有顶点中与所述丢失边的所述第一顶点A或所述第二顶点B距离最近的顶点,作为最近点C,如果交换第一顶点A和所述第二顶点B的位置使得如图2所示,边的直径圆包含顶点C和顶点D,顶点C离边的顶点B最近,所以选顶点C为最近的顶点。图2中,多边形的边用粗线表示。
在所述丢失边上按设定条件确定偏心中点O。所述设定条件为:所述偏心中点O使得∠COB等于所述设定的最小角阈值θthreshold。
判断所述第一Delaunay三角形网格是否存在丢失边。若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复。
上述步骤“若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复”,优选包括:
若存在丢失边,则将所有所述第一Delaunay三角形网格中的丢失边添加到丢失边集合中。
从所述丢失边集合中调取一丢失边,并执行从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所述丢失边集合中的所有丢失边均被恢复。
在对求解区域进行网格剖分时,需要网格单元质量达到一定要求,因为质量差的三角形会使得数值计算生成的求解矩阵条件数变大,矩阵接近奇异,直接使得求解误差增大。采用上述恢复丢失边的步骤,虽然可以消除集成电路版图多边形丢失的边,保证所有多边形的边都是网格剖分中三角形单元的边,但是,在恢复丢失边的过程中,可能还存在质量差的三角形,因此,必须消除这些质量差的三角形,以保证数值计算的精度。
通常在传统方法中,是采用在质量差的三角形附近插入新的节点的方式,将新的节点插入到现有网格中去,即采用Delaunay准则,使得新节点附近的三角形顶点都与新的节点相连形成新的三角形,从而消除这个质量差的三角形。
应用Delaunay准则的前提,是现有三角形网格符合Delaunay准则,即所有三角形的外接圆不严格包含任意三角形的顶点,严格来说所有多边形的边也适用这个准则。反过来讲,如果某个恢复边的直径圆包含某个三角形的顶点,则这个恢复边不符合Delaunay准则,需要插入新的节点消除这种边。传统方法定义这种边为被侵蚀的边,然而,本发明认为这种定义过于宽松,这个定义使得更多的恢复边被选中为被侵蚀的边,导致插入更多冗余的节点。基于这一缺陷,本发明重新定义被侵蚀的边为:如果恢复边的直径圆包含其它网格节点,且恢复边的左三角形为质量差的三角形,则该边为被侵蚀的边,这里多边形P任意边e的左三角形为包含该边e且三角形边e的方向与多边形P边e的方向相同的三角形。基于这一定义,本发明提供了一种偏心中点消除法,以消除被侵蚀的边。
采用该偏心中点消除法消除所述被侵蚀的边的过程,具体包括:
在被侵蚀的边上找到偏心中点O′,使得∠A′O′C′=θthreshold。其中,θthreshold为所述设定的最小角阈值。
判断线段和间的关系。若则将被侵蚀的边的中点作为新的偏心中点O′,若则所确定的偏心中点O′位置不变。如图4所示,∠A′O1C′=θthreshold,但因此取O′为被侵蚀的边的中点。图5中,∠A′O1C′=θthreshold,且则取O1为被侵蚀的边的偏心中点。其中,E和D均为被侵蚀边周围的三角网格顶点。
判断所述第二Delaunay三角形网格是否存在被侵蚀的边。若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除。
上述过程中,若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除这一步骤,可以优选包括:
若存在被侵蚀的边,则将所有所述第二Delaunay三角形网格中的被侵蚀的边添加到侵蚀边集合中。
从所述侵蚀边集合中调取一被侵蚀的边,并执行确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所述侵蚀边集合中的所有被侵蚀的边均被消除。
基于本发明公开的上述丢失边的恢复和被侵蚀边的消除过程,本发明提供的大规模集成电路版图非结构网格偏心中点生成方法,还可以包括:
1)收集所有丢失边的集合为lost,收集所有被侵蚀的边的集合为enroach。
3)采用上述公开的偏心中点恢复法恢复所有丢失边,集合lost为空。
4)按上述公开的偏心中点消除法消除所有被侵蚀的边,集合enroach为空。
5)如果集合lost非空,转入步骤2),否则结束。
对应于上述提供的大规模集成电路版图非结构网格偏心中点生成方法,本发明还提供了一种大规模集成电路版图非结构网格偏心中点生成系统,如图6所示,该系统包括:
获取模块1,用于获取待识别超大规模集成电路版图中包含多个顶点的多个多边形。
Delaunay三角形网格生成模块2,用于采用Delaunay三角剖分算法形成以多边形顶点为网格节点的Delaunay三角形网格。
第一确定模块3,用于确定所述Delaunay三角形网格是否存在至少一条边与所述多边形的边相交。若存在,则判定所述多边形与所述三角形相交的边为丢失边。
丢失边恢复模块4,用于采用偏心中点恢复法对所述丢失边进行恢复。
第二确定模块5,用于在恢复过程中确定所述Delaunay三角形网格中各恢复边的直径圆是否包含其他网格节点,且恢复边的左三角形为质量差的三角形。若所述Delaunay三角形网格中各恢复边的直径圆包含其他网格节点,且恢复边的左三角形为质量差的三角形,则判定所述恢复边为被侵蚀的边。所述质量差的三角形为该三角形的外接圆的半径与其最短边的长度之比大于设定阈值的三角形,或者三角形的最小角小于设定的最小角阈值的三角形。
被侵蚀边消除模块6,用于采用偏心中点消除法消除所述被侵蚀的边。
循环模块7,用于返回确定所述Delaunay三角形网格是否存在至少一条边与所述多边形边相交的步骤,直至所述多个多边形中所有的丢失边被恢复,所有的被侵蚀的边被消除。
作为本发明的一优选实施例,上述丢失边恢复模块4具体包括:
顶点确定单元,用于从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点。
第一偏心中点确定单元,用于在所述丢失边上按设定条件确定偏心中点O。所述设定条件为:所述偏心中点O使得∠COB等于所述设定的最小角阈值θthreshold。
第一Delaunay三角形网格形成单元,用于将所述偏心中点O插入到所述丢失边上,形成新的多边形边和同时将偏心中点O采用Delaunay三角剖分算法插入到所述Delaunay三角形网格中,形成第一Delaunay三角形网格。
第二判断单元,用于判断所述第一Delaunay三角形网格是否存在丢失边。若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复。
优选的,上述第二判断单元具体包括:
丢失边添加子单元,用于若存在丢失边,则将所有所述第一Delaunay三角形网格中的丢失边添加到丢失边集合中。
丢失边恢复子单元,用于从所述丢失边集合中调取一丢失边,并执行从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所述丢失边集合中的所有丢失边均被恢复。
作为本发明的另一优选实施例,上述被侵蚀边消除模块6具体包括:
第二偏心中点确定单元,用于在被侵蚀的边上确定偏心中点O′,使得∠A′O′C′=θthreshold。其中,θthreshold为所述设定的最小角阈值。
第二Delaunay三角形网格形成单元,用于将所述偏心中点O′插入到所述被侵蚀的边上,形成新的边和同时将所述偏心中点O′采用Delaunay三角剖分算法插入到所述Delaunay三角形网格中,形成第二Delaunay三角形网格。
第四判断单元,用于判断所述第二Delaunay三角形网格是否存在被侵蚀的边。若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除。
优选的,第四判断单元,具体包括:
被侵蚀边添加子单元,用于若存在被侵蚀的边,则将所有所述第二Delaunay三角形网格中的被侵蚀的边添加到侵蚀边集合中。
被侵蚀边消除子单元,用于从所述侵蚀边集合中调取一被侵蚀的边,并执行确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所述侵蚀边集合中的所有被侵蚀的边均被消除。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种大规模集成电路版图非结构网格偏心中点生成方法,其特征在于,包括:
获取待识别超大规模集成电路版图中包含多个顶点的多个多边形;
采用Delaunay三角剖分算法形成以多边形顶点为网格节点的Delaunay三角形网格;
确定是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交;若存在,则判定与所述三角形的边相交的所述多边形的边为丢失边;否则,则判定所述多边形的边为恢复边;
采用偏心中点恢复法对所述丢失边进行恢复;
在恢复丢失边的过程中确定所述恢复边的直径圆是否包含其他Delaunay三角形网格节点,且确定所述恢复边的左三角形是否为质量差的三角形;若所述恢复边的直径圆包含其他Delaunay三角形网格节点,且所述恢复边的左三角形为质量差的三角形,则判定所述恢复边为被侵蚀的边;所述多边形边的左三角形为存在这样一个三角形,该多边形边同时为该三角形的边且该边的方向与该三角形的边的方向相同;所述质量差的三角形为该三角形的外接圆的半径与其最短边的长度之比大于设定阈值的三角形,或为三角形的最小角小于设定的最小角阈值的三角形;
采用偏心中点消除法消除所述被侵蚀的边;
返回确定所述是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交的步骤,直至所述多个多边形中所有的丢失边被恢复,所有的被侵蚀的边被消除。
2.根据权利要求1所述的大规模集成电路版图非结构网格偏心中点生成方法,其特征在于,所述采用偏心中点恢复法对所述丢失边进行恢复,具体包括:
从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点;
在所述丢失边上按设定条件确定偏心中点O;所述设定条件为:所述偏心中点O使得∠COB等于所述设定的最小角阈值θthreshold;
判断所述第一Delaunay三角形网格是否存在丢失边;若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复。
3.根据权利要求2所述的大规模集成电路版图非结构网格偏心中点生成方法,其特征在于,所述若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复,具体包括:
若存在丢失边,则将所有所述第一Delaunay三角形网格中的丢失边添加到丢失边集合中;
从所述丢失边集合中调取一丢失边,并执行从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所述丢失边集合中的所有丢失边均被恢复。
4.根据权利要求1所述的大规模集成电路版图非结构网格偏心中点生成方法,其特征在于,所述采用偏心中点消除法消除所述被侵蚀的边,具体包括:
在被侵蚀的边上找到偏心中点O′,使得∠A′O′C′=θthreshold;其中,θthreshold为所述设定的最小角阈值;
判断所述第二Delaunay三角形网格是否存在被侵蚀的边;若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除。
5.根据权利要求4所述的大规模集成电路版图非结构网格偏心中点生成方法,其特征在于,所述若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除,具体包括:
若存在被侵蚀的边,则将所有所述第二Delaunay三角形网格中的被侵蚀的边添加到侵蚀边集合中;
从所述侵蚀边集合中调取一被侵蚀的边,并执行确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所述侵蚀边集合中的所有被侵蚀的边均被消除。
6.一种大规模集成电路版图非结构网格偏心中点生成系统,其特征在于,包括:
获取模块,用于获取待识别超大规模集成电路版图中包含多个顶点的多个多边形;
Delaunay三角形网格生成模块,用于采用Delaunay三角剖分算法形成以多边形顶点为网格节点的Delaunay三角形网格;
第一确定模块,用于确定是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交;若存在,则判定与所述三角形的边相交的所述多边形的边为丢失边;否则,则判定所述多边形的边为恢复边;
丢失边恢复模块,用于采用偏心中点恢复法对所述丢失边进行恢复;
第二确定模块,用于在恢复丢失边的过程中确定所述恢复边的直径圆是否包含其他Delaunay三角形网格节点,且用于确定所述恢复边的左三角形是否为质量差的三角形;若所述恢复边的直径圆包含其他Delaunay三角形网格节点,且所述恢复边的左三角形为质量差的三角形,则判定所述恢复边为被侵蚀的边;所述质量差的三角形为该三角形的外接圆的半径与其最短边的长度之比大于设定阈值的三角形,或为三角形的最小角小于设定的最小角阈值的三角形;
被侵蚀边消除模块,用于采用偏心中点消除法消除所述被侵蚀的边;
循环模块,用于返回确定所述是否存在至少一条多边形的边与所述Delaunay三角形网格的边相交的步骤,直至所述多个多边形中所有的丢失边被恢复,所有的被侵蚀的边被消除。
7.根据权利要求6所述的大规模集成电路版图非结构网格偏心中点生成系统,其特征在于,所述丢失边恢复模块,具体包括:
顶点确定单元,用于从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点;
第一偏心中点确定单元,用于在所述丢失边上按设定条件确定偏心中点O;所述设定条件为:所述偏心中点O使得∠COB等于所述设定的最小角阈值θthreshold;
第一Delaunay三角形网格形成单元,用于将所述偏心中点O插入到所述丢失边上,形成新的多边形边和同时将偏心中点O采用Delaunay三角剖分算法插入到所述Delaunay三角形网格中,形成第一Delaunay三角形网格;
第二判断单元,用于判断所述第一Delaunay三角形网格是否存在丢失边;若存在丢失边,则返回从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所有丢失边被恢复。
8.根据权利要求7所述的大规模集成电路版图非结构网格偏心中点生成系统,其特征在于,所述第二判断单元,具体包括:
丢失边添加子单元,用于若存在丢失边,则将所有所述第一Delaunay三角形网格中的丢失边添加到丢失边集合中;
丢失边恢复子单元,用于从所述丢失边集合中调取一丢失边,并执行从所述丢失边的第一顶点A和第二顶点B分别出发,找到与所述丢失边相交的边的所有顶点的步骤,直至所述丢失边集合中的所有丢失边均被恢复。
9.根据权利要求6所述的大规模集成电路版图非结构网格偏心中点生成系统,其特征在于,所述被侵蚀边消除模块,具体包括:
第二偏心中点确定单元,用于在被侵蚀的边上确定偏心中点O′,使得∠A′O′C′=θthreshold;其中,θthreshold为所述设定的最小角阈值;
第二Delaunay三角形网格形成单元,用于将所述偏心中点O′插入到所述被侵蚀的边上,形成新的边和同时将所述偏心中点O′采用Delaunay三角剖分算法插入到所述Delaunay三角形网格中,形成第二Delaunay三角形网格;
第四判断单元,用于判断所述第二Delaunay三角形网格是否存在被侵蚀的边;若存在被侵蚀的边,则返回确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所有被侵蚀的边被消除。
10.根据权利要求9所述的大规模集成电路版图非结构网格偏心中点生成系统,其特征在于,所述第四判断单元,具体包括:
被侵蚀边添加子单元,用于若存在被侵蚀的边,则将所有所述第二Delaunay三角形网格中的被侵蚀的边添加到侵蚀边集合中;
被侵蚀边消除子单元,用于从所述侵蚀边集合中调取一被侵蚀的边,并执行确定所述被侵蚀的边的直径圆中与所述被侵蚀的边的第一顶点A′或第二顶点B′距离最近的一顶点C′的步骤,直至所述侵蚀边集合中的所有被侵蚀的边均被消除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010912374.6A CN112052641B (zh) | 2020-09-03 | 2020-09-03 | 大规模集成电路版图非结构网格偏心中点生成方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010912374.6A CN112052641B (zh) | 2020-09-03 | 2020-09-03 | 大规模集成电路版图非结构网格偏心中点生成方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112052641A true CN112052641A (zh) | 2020-12-08 |
CN112052641B CN112052641B (zh) | 2021-03-30 |
Family
ID=73607225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010912374.6A Active CN112052641B (zh) | 2020-09-03 | 2020-09-03 | 大规模集成电路版图非结构网格偏心中点生成方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112052641B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114330215A (zh) * | 2022-03-14 | 2022-04-12 | 北京智芯仿真科技有限公司 | 一种快速处理集成电路版图走线的电磁仿真方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130219103A1 (en) * | 2012-02-17 | 2013-08-22 | Netronome Systems, Inc. | Configurable Mesh Data Bus In An Island-Based Network Flow Processor |
CN106980730A (zh) * | 2017-03-31 | 2017-07-25 | 福州大学 | 基于直接求解技术的vlsi标准单元布局方法 |
US20180203962A1 (en) * | 2014-09-04 | 2018-07-19 | Synopsys, Inc. | Exponentially Fitted Approximation for Anisotropic Semiconductor Equations |
CN109949420A (zh) * | 2019-02-15 | 2019-06-28 | 山东师范大学 | 适用于GPU的Delaunay三角剖分网格细化方法、GPU及系统 |
CN110674615A (zh) * | 2019-12-06 | 2020-01-10 | 北京唯智佳辰科技发展有限责任公司 | 一种集成电路版图多边形自适应简化处理方法及装置 |
CN110675502A (zh) * | 2019-11-26 | 2020-01-10 | 北京唯智佳辰科技发展有限责任公司 | 多层集成电路版图多边形对齐和简化处理方法及装置 |
CN110689569A (zh) * | 2019-12-10 | 2020-01-14 | 北京唯智佳辰科技发展有限责任公司 | 集成电路版图场域识别与网格细分处理方法及装置 |
CN111428435A (zh) * | 2019-01-09 | 2020-07-17 | 中国科学院微电子研究所 | 一种集成电路版图功耗优化方法及装置 |
-
2020
- 2020-09-03 CN CN202010912374.6A patent/CN112052641B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130219103A1 (en) * | 2012-02-17 | 2013-08-22 | Netronome Systems, Inc. | Configurable Mesh Data Bus In An Island-Based Network Flow Processor |
US20180203962A1 (en) * | 2014-09-04 | 2018-07-19 | Synopsys, Inc. | Exponentially Fitted Approximation for Anisotropic Semiconductor Equations |
CN106980730A (zh) * | 2017-03-31 | 2017-07-25 | 福州大学 | 基于直接求解技术的vlsi标准单元布局方法 |
CN111428435A (zh) * | 2019-01-09 | 2020-07-17 | 中国科学院微电子研究所 | 一种集成电路版图功耗优化方法及装置 |
CN109949420A (zh) * | 2019-02-15 | 2019-06-28 | 山东师范大学 | 适用于GPU的Delaunay三角剖分网格细化方法、GPU及系统 |
CN110675502A (zh) * | 2019-11-26 | 2020-01-10 | 北京唯智佳辰科技发展有限责任公司 | 多层集成电路版图多边形对齐和简化处理方法及装置 |
CN110674615A (zh) * | 2019-12-06 | 2020-01-10 | 北京唯智佳辰科技发展有限责任公司 | 一种集成电路版图多边形自适应简化处理方法及装置 |
CN110689569A (zh) * | 2019-12-10 | 2020-01-14 | 北京唯智佳辰科技发展有限责任公司 | 集成电路版图场域识别与网格细分处理方法及装置 |
Non-Patent Citations (2)
Title |
---|
ZHANGHONG TANG ET AL.: "Adaptive polygon simplification basing on Delaunay triangulation and its application in high speed PCBs and IC packages simulation", 《2011 IEEE INTERNATIONAL CONFERENCE ON MICROWAVE TECHNOLOGY & COMPUTATIONAL ELECTROMAGNETICS》 * |
苑淑华: "基于多面体网格的集成电路寄生参数提取", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114330215A (zh) * | 2022-03-14 | 2022-04-12 | 北京智芯仿真科技有限公司 | 一种快速处理集成电路版图走线的电磁仿真方法及装置 |
CN114330215B (zh) * | 2022-03-14 | 2022-05-10 | 北京智芯仿真科技有限公司 | 一种快速处理集成电路版图走线的电磁仿真方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112052641B (zh) | 2021-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111767688B (zh) | 集成电路版图多边形非结构网格自适应细分方法和系统 | |
CN111581776A (zh) | 一种基于几何重建模型的等几何分析方法 | |
CN112765695B (zh) | 支撑体生成方法、3d打印机、计算机装置及存储介质 | |
CN116229015B (zh) | 一种基于2N-Tree带附面层的贴体笛卡尔网格生成方法 | |
CN114161711B (zh) | 3d打印文件的生成方法、装置、计算机设备及存储介质 | |
CN112149336B (zh) | 三维集成电路电磁仿真高质量网格快速生成方法及装置 | |
CN108647399A (zh) | 一种组合曲面的偏置方法 | |
CN112052641B (zh) | 大规模集成电路版图非结构网格偏心中点生成方法和系统 | |
CN111222202B (zh) | 一种基于虚拟试验平台的船体网格自动划分方法 | |
CN116402979A (zh) | 一种三维模型面片轻量化处理方法、装置及电子设备 | |
CN113715338A (zh) | 三维模型的切片方法、打印方法及相关设备 | |
CN115270500A (zh) | 一种布尔求差运算方法、装置及电子设备 | |
CN108389263A (zh) | 面向边界元方法求解计算的iges面网格快速生成方法 | |
CN117852481B (zh) | 一种集成电路版图网表信息的快速确定方法及系统 | |
Zhang et al. | Adaptive generation of hexahedral element mesh using an improved grid-based method | |
CN114283244A (zh) | 一种基于gpu的八叉树布尔运算加速求交方法 | |
CN115330971B (zh) | 一种面向渲染性能优化的几何模型轻量化方法 | |
TWI406189B (zh) | 點雲三角網格面構建方法 | |
JP2001022961A (ja) | 非一様ボリュームモデルからの同位相面生成方法 | |
CN108460192A (zh) | 一种物理场有限元计算中不协调网格的处理方法 | |
CN114147971A (zh) | 一种3d打印文件的生成方法、装置、设备及存储介质 | |
CN114637958A (zh) | 一种图形图像的圆角变换算法及系统 | |
CN113591208A (zh) | 一种基于舰船特征提取的超大模型轻量化方法及电子设备 | |
CN112258654A (zh) | 模型抽壳方法、终端设备及计算机可读存储介质 | |
Koelman | An approach to modelling internal shapes of ships to support collaborative development |
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 |