CN114330213B - 一种基于版图多边形走线的自动识别转换方法及装置 - Google Patents

一种基于版图多边形走线的自动识别转换方法及装置 Download PDF

Info

Publication number
CN114330213B
CN114330213B CN202210245199.9A CN202210245199A CN114330213B CN 114330213 B CN114330213 B CN 114330213B CN 202210245199 A CN202210245199 A CN 202210245199A CN 114330213 B CN114330213 B CN 114330213B
Authority
CN
China
Prior art keywords
unit
polygon
edge
routing
layout
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
Application number
CN202210245199.9A
Other languages
English (en)
Other versions
CN114330213A (zh
Inventor
王芬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Wisechip Simulation Technology Co Ltd
Original Assignee
Beijing Wisechip Simulation Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Wisechip Simulation Technology Co Ltd filed Critical Beijing Wisechip Simulation Technology Co Ltd
Priority to CN202210245199.9A priority Critical patent/CN114330213B/zh
Publication of CN114330213A publication Critical patent/CN114330213A/zh
Application granted granted Critical
Publication of CN114330213B publication Critical patent/CN114330213B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本申请提出一种基于版图多边形走线的自动识别转换方法及装置,其中方法包括:针对版图中任一多边形,识别多边形中符合条件的带状区域,并将带状区域转换为走线;将转换为走线的带状区域从多边形中去除,对去除带状区域的多边形进行网格剖分;采用有限元法针对剖分后的网格剖分单元建立其电位场的矩阵方程组;将原有的走线以及转换后的走线均等效为带电阻的电路支路,将电路支路耦合到电位场矩阵方程组并求解,获得各节点电位以及各支路电流;反算出走线上任一点的电流密度以及任一点的电位。所述装置包括:走线识别模块、网格剖分模块、方程组建立模块、求解模块、电流电压反算模块。本申请解决了因众多的网格单元,影响稀疏矩阵求解速度的问题。

Description

一种基于版图多边形走线的自动识别转换方法及装置
技术领域
本申请属于集成电路版图电磁仿真技术领域,具体涉及一种基于版图多边形走线的自动识别转换方法及装置。
背景技术
随着通信技术的发展,超大规模集成电路的研究与发展已逐渐展开。为了提高电子设备的性能,缩小体积,降低成本,将晶体管与其他元器件以及线路都集成在一小块半导体基片上。为了实现更多的功能,超大规模集成电路有几层到上百层结构,每层结构极其复杂,集成数千万甚至数亿的晶体管,对数千万、数亿个分布在各层的元器件提供稳定、达标的电压是集成电路电源设计首先需要考虑的问题,在此基础上,还需要保证集成电路电源层各处的电流密度不能过大,否则会导致局部过热,直至电路板烧毁。为此,需要针对设计的超大规模集成电路的电位分布和电流分布进行仿真计算,以针对电压降和电流密度超标的区域进行设计上的整改,避免因为设计失误带来损失。在集成电路元器件分布越来越密集的情况下,集成电路的覆铜版图也因为不同网络的不同元器件的连接形成的走线被裁剪成非常复杂的几何图形,现阶段的传统方法是需要将这些复杂的几何图形离散成形状简单的网格单元,再基于这些网格单元进行数值计算以获得形状复杂的版图的电位分布和电流分布。
随着集成电路制备的工艺水平越来越高,对覆铜层进行刻蚀所允许的走线和缝隙的宽度越来越小,达到纳米级,这就对集成电路电源层的设计和仿真计算提出了更高要求和更大的挑战,因为走线越细,带来的直流压降越大,因此需要设计更多的支路分流以降低这个直流压降,同时,走线越细以及走线越来越多,这就对数值计算所需要的网格单元离散提出了更高的挑战,从整个板尺寸的厘米级到最小尺寸的纳米级,针对跨度达7个数量级的多尺度复杂结构的网格剖分一方面会带来数千万、数亿的网格单元,另一方面也给基于网格剖分带来的超大规模稀疏矩阵求解提出了挑战。
针对集成电路版图中众多的网格单元,如何进行稀疏矩阵求解,进而快速地得到电路的电位分布和电流分布,是现阶段需要解决的技术问题。
发明内容
本申请提出一种基于版图多边形走线的自动识别转换方法及装置,将版图中符合条件的带状多边形区域自动识别出来并转换为走线,针对走线用电路的方法进行处理,最后通过场路耦合的方法求解整个场域,以解决因众多的网格单元,影响稀疏矩阵求解速度的问题。
第一方面,本申请提出一种基于版图多边形走线的自动识别转换方法,包括如下步骤:
针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线;
将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元;
采用有限元法针对所述剖分后的网格剖分单元建立其电位场的矩阵方程组;
将原有的走线以及转换后的走线均等效为带电阻的电路支路,将所述电路支路耦合到电位场的矩阵方程组并进行求解,获得各节点电位以及各支路电流;
反算出原有的走线以及转换后的走线上任一点的电流密度以及任一点的电位。
所述针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线,包括如下步骤:
步骤S1.1:针对版图中任一多边形P进行简化,设置集合{Es}用来保存简化后的多边形P的平行边对,并设置集合{Es}的初始状态为空;
步骤S1.2:将所述简化后的多边形P的所有边,按长度从大到小进行排序,并保存到集合{E}中;
步骤S1.3:判断集合{E}中边的数量是否大于3,如果集合{E}中边的数量不大于3,则转入步骤S1.8;否则,设置i=1,从集合{E}中取出最长边E1并将其从集合{E}中去除,设边E1的左端点为AE,边E1的右端点为BE
步骤S1.4:设置i=i+1,如果i大于集合{E}中边的数量,转入步骤S1.3,否则,在集合{E}中取出边Ei,判断E1与Ei是否平行;如果E1与Ei不平行,则重新执行步骤S1.4,其中,Ei为集合{E}中第i条边;
步骤S1.5:如果E1与Ei平行,计算边E1和Ei的重叠长度
Figure 861466DEST_PATH_IMAGE001
步骤S1.6:比较
Figure 156443DEST_PATH_IMAGE002
与第二阈值
Figure 946545DEST_PATH_IMAGE003
之间的大小,如果不满足
Figure 28770DEST_PATH_IMAGE004
,则转入步骤S1.4;所述
Figure 329564DEST_PATH_IMAGE005
为事先定义的走线宽长比的最大第二阈值,
Figure 915266DEST_PATH_IMAGE006
为点AE到边Ei的距离;
步骤S1.7:将Ei从集合{E}中去除,将平行边对(E1,Ei)保存在集合{Es}中,转入步骤S1.3;
步骤S1.8:判断集合{Es}是否为空,如果集合{Es}为空,针对所述版图中任一多边形P的处理结束,退出;否则,将集合{Es}中的所有平行边对之间的重叠区域转换为走线,针对版图多边形P的处理结束,退出。
所述针对版图中任一多边形P进行简化,包括:当多边形P的任意两条相邻边的夹角大于
Figure 407427DEST_PATH_IMAGE007
时,将多边形P的任意两条相邻边合并为一条边,直到多边形P的任意两条相邻边的夹角均小于等于
Figure 399785DEST_PATH_IMAGE008
时,停止简化,得到简化后的多边形P,其中,
Figure 471646DEST_PATH_IMAGE009
为预定义的角度第一阈值。
所述E1与Ei平行定义为:如果满足
Figure 962056DEST_PATH_IMAGE010
,则认为边E1与边Ei平行,其中,
Figure 687436DEST_PATH_IMAGE011
为点AE到边Ei的距离,
Figure 42456DEST_PATH_IMAGE012
为点BE到边Ei的距离,
Figure 652429DEST_PATH_IMAGE013
为事先定义的距离第三阈值。
所述计算边E1和Ei的重叠长度
Figure 478302DEST_PATH_IMAGE014
,包括:将边E1投影到边Ei形成一条线段,边E1和边Ei的端点在投影的线段上形成4个顶点,4个顶点从左到右或从下到上依次为A、M、U、D,则4个顶点的中间两个顶点M和U之间的线段定义为边E1在边Ei投影后的重叠线段,重叠线段的长度定义为边E1和Ei的重叠长度
Figure 46687DEST_PATH_IMAGE015
;中间两个顶点M和U为在边E1上投影形成顶点N和V。
所述将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元,包括如下步骤:
基于边E1和边Ei的相互投影形成的4个顶点M、N、V、U构成矩形区域,该矩形区域称为走线,如果走线左边存在多边形区域,将左边的多边形区域通过顶点M和顶点N截断,形成新的多边形区域,如果走线右边存在多边形区域,将右边的多边形区域通过顶点U和顶点V截断,形成新的多边形区域,新的多边形区域不包括四个顶点M、N、U、V包含的区域;
确定所述走线两端端点在所述版图多边形P中的位置,将所述位置设置为固定点;如果走线左边存在多边形区域,则顶点M和顶点N的中点为左边的固定点,如果走线右边存在多边形区域,则顶点U和顶点V的中点为右边的固定点,如果走线左边或右边不存在多边形区域,则该端点上与其他层连接的过孔的中心或与外部电路连接的节点为相应的固定点;
对所述新的多边形区域连同所述固定点进行网格剖分,得到剖分后的网格剖分单元。
第二方面,本申请提出一种基于版图多边形走线的自动识别转换装置,包括:走线识别模块、网格剖分模块、方程组建立模块、求解模块、电流电压反算模块;
所述走线识别模块、网格剖分模块、方程组建立模块、求解模块、电流电压反算模块依次顺序相连接;
走线识别模块用于针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线;
所述网格剖分模块用于将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元;
所述方程组建立模块用于采用有限元法针对所述剖分后的网格剖分单元建立其电位场的矩阵方程组;
所述求解模块用于将将原有的走线以及转换后的走线均等效为带电阻的电路支路,将所述电路支路耦合到电位场的矩阵方程组并进行求解,获得各节点电位以及各支路电流;
所述电流电压反算模块用于反算出原有的走线以及转换后的走线上任一点的电流密度以及任一点的电位。
所述走线识别模块,包括:第一单元、第二单元、第三单元、第四单元、第五单元、第六单元、第七单元、第八单元;
所述第一单元、第二单元、第三单元、第四单元、第五单元、第六单元、第七单元、第八单元依次顺序相连接,所述第三单元与第八单元相连接;所述第六单元与第四单元相连接;第七单元与第三单元相连接;
所述第一单元用于针对版图中任一多边形P进行简化,设置集合{Es}用来保存简化后的多边形P的平行边对,并设置集合{Es}的初始状态为空;
所述第二单元用于将所述简化后的多边形P的所有边,按长度从大到小进行排序,并保存到集合{E}中;
所述第三单元用于判断集合{E}中边的数量是否大于3,如果集合{E}中边的数量不大于3,则转入第八单元;否则,设置i=1,从集合{E}中取出最长边E1并将其从集合{E}中去除,设边E1的左端点为AE,边E1的右端点为BE
所述第四单元用于设置i=i+1,如果i大于集合{E}中边的数量,转入第三单元,否则,在集合{E}中取出边Ei,判断E1与Ei是否平行;如果E1与Ei不平行,则重新执行所述第四单元,其中,Ei为集合{E}中第i条边;
所述第五单元用于如果E1与Ei平行,计算边E1和Ei的重叠长度
Figure 420162DEST_PATH_IMAGE016
所述第六单元用于比较
Figure 161722DEST_PATH_IMAGE017
与第二阈值
Figure 546829DEST_PATH_IMAGE003
之间的大小,如果不满足
Figure 817273DEST_PATH_IMAGE018
,则转入第四单元;所述
Figure 81DEST_PATH_IMAGE005
为事先定义的走线宽长比的最大第二阈值,
Figure 810911DEST_PATH_IMAGE019
为点AE到边Ei的距离;
所述第七单元用于将Ei从集合{E}中去除,将平行边对(E1,Ei)保存在集合{Es}中,转入第三单元;
所述第八单元用于判断集合{Es}是否为空,如果集合{Es}为空,针对所述版图中任一多边形P的处理结束,退出;否则,将集合{Es}中的所有平行边对之间的重叠区域转换为走线,针对版图多边形P的处理结束,退出。
第三方面,本申请提出一种电子设备,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其被存储在所述存储器中并被配置为由所述一个或多个处理器加载和运行以便执行所述的基于版图多边形走线的自动识别转换方法。
第四方面,本申请提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面或者第一方面任一可能的实现方式所述的基于版图多边形走线的自动识别转换方法。
有益技术效果:
本申请提出一种基于版图多边形走线的自动识别转换方法及装置,能够识别走线并行的带状区域,并将其并转换为走线,针对此类走线用电路的方法进行处理,最后通过场路耦合的方法求解整个场域,以解决因众多的网格单元,影响稀疏矩阵求解速度的问题。
附图说明
图1为本申请实施例的一种基于版图多边形走线的自动识别转换方法流程图;
图2为本申请实施例的多边形简化示意图;
图3为本申请实施例的将转换为走线的带状区域从版图多边形中去除示意图;
图4为本申请实施例的分段插值示意图;
图5为本申请实施例的一种基于版图多边形走线的自动识别转换装置原理框图。
具体实施方式:
下面结合附图对本申请作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本申请的保护范围。
在集成电路版图设计中,虽然整体上版图的形状极其复杂和不规则,但其设计却按一定的规则进行,其中一条常识性的规则为:集成电路版图中距离较近的走线尽可能平行,这个规则可以尽可能减小走线之间的相互干扰。近似平行的走线也使得被裁剪的覆铜层也变得近似平行,在走线较为密集的情况下,被裁剪后剩下的覆铜层在走线位置的形状也和走线一样,即形成了细长带状的覆铜层,如果也将这些细长带状的覆铜层看作走线,并与版图中已有的走线进行相同的处理,这将很大程度的简化集成电路版图复杂结构的网格剖分和电位、电流分布的计算。
第一方面,本申请提出一种基于版图多边形走线的自动识别转换方法,如图1所示,包括:
步骤S1:针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线;
步骤S2:将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元;
步骤S3:采用有限元法针对所述剖分后的网格剖分单元建立其电位场的矩阵方程组;
步骤S4:将原有的走线以及转换后的走线均等效为带电阻的电路支路,将所述电路支路耦合到电位场的矩阵方程组并进行求解,获得各节点电位以及各支路电流;
步骤S5:反算出原有的走线以及转换后的走线上任一点的电流密度以及任一点的电位。
所述针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线,包括如下步骤:
步骤S1.1:针对版图中任一多边形P进行简化,设置集合{Es}用来保存简化后的多边形P的平行边对,并设置集合{Es}的初始状态为空;
步骤S1.2:将所述简化后的多边形P的所有边,按长度从大到小进行排序,并保存到集合{E}中;
步骤S1.3:判断集合{E}中边的数量是否大于3,如果集合{E}中边的数量不大于3,则转入步骤S1.8;否则,设置i=1,从集合{E}中取出最长边E1并将其从集合{E}中去除,设边E1的左端点为AE,边E1的右端点为BE
步骤S1.4:设置i=i+1,如果i大于集合{E}中边的数量,转入步骤S1.3,否则,在集合{E}中取出边Ei,判断E1与Ei是否平行;如果E1与Ei不平行,则重新执行步骤S1.4,其中,Ei为集合{E}中第i条边;
步骤S1.5:如果E1与Ei平行,计算边E1和Ei的重叠长度
Figure 112842DEST_PATH_IMAGE016
步骤S1.6:比较
Figure 226291DEST_PATH_IMAGE002
与第二阈值
Figure 807314DEST_PATH_IMAGE003
之间的大小,如果不满足
Figure 64245DEST_PATH_IMAGE004
,则转入步骤S1.4;所述
Figure 47114DEST_PATH_IMAGE005
为事先定义的走线宽长比的最大第二阈值,
Figure 862623DEST_PATH_IMAGE020
为点AE到边Ei的距离;
步骤S1.7:将Ei从集合{E}中去除,将平行边对(E1,Ei)保存在集合{Es}中,转入步骤S1.3;
步骤S1.8:判断集合{Es}是否为空,如果集合{Es}为空,针对所述版图中任一多边形P的处理结束,退出;否则,将集合{Es}中的所有平行边对之间的重叠区域转换为走线,针对版图多边形P的处理结束,退出。
所述针对版图中任一多边形P进行简化,包括:当多边形P的任意两条相邻边的夹角大于
Figure 104511DEST_PATH_IMAGE007
时,将多边形P的任意两条相邻边合并为一条边,直到多边形P的任意两条相邻边的夹角均小于等于
Figure 522722DEST_PATH_IMAGE008
时,停止简化,得到简化后的多边形P,其中,
Figure 969884DEST_PATH_IMAGE009
为预定义的角度第一阈值。
举例说明具体过程,如图2所示为任一多边形P,其中
Figure 983059DEST_PATH_IMAGE021
设置为10
Figure 538674DEST_PATH_IMAGE022
,A’H’与H’G’为两条相邻的边,因为A’H’与H’G’的夹角大于
Figure 635943DEST_PATH_IMAGE023
Figure 563710DEST_PATH_IMAGE024
,故,将A’H’与H’G’合并为A’G’,同理可以将F’E’与E’D’合并为F’D’,将A’B’与B’C’合并为A’C’。
所述E1与Ei平行定义为:如果满足
Figure 845656DEST_PATH_IMAGE010
,则认为边E1与边Ei平行,其中,
Figure 999819DEST_PATH_IMAGE011
为点AE到边Ei的距离,
Figure 166358DEST_PATH_IMAGE012
为点BE到边Ei的距离,
Figure 384849DEST_PATH_IMAGE013
为事先定义的距离第三阈值。
所述计算边E1和Ei的重叠长度
Figure 509800DEST_PATH_IMAGE014
,包括:将边E1投影到边Ei形成一条线段,边E1和边Ei的端点在投影的线段上形成4个顶点,4个顶点从左到右或从下到上依次为A、M、U、D,则4个顶点的中间两个顶点M和U之间的线段定义为边E1在边Ei投影后的重叠线段,重叠线段的长度定义为边E1和Ei的重叠长度
Figure 682418DEST_PATH_IMAGE015
;中间两个顶点M和U为在边E1上投影形成顶点N和V。
所述将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元,包括如下步骤:
如图3所示,基于边E1和边Ei的相互投影形成的4个顶点M、N、V、U构成矩形区域,该矩形区域称为走线。图3中,走线左边存在多边形区域,将左边的多边形区域通过顶点M和顶点N截断,形成新的多边形区域P1P2P3P4P5AENM,同时,走线右边也存在多边形区域,将右边的多边形区域通过顶点U和顶点V截断,形成新的多边形区域UVBEP6P7P8P9P10,可以看出,新的多边形区域不包括四个顶点M、N、U、V包含的区域;
确定所述走线两端端点在所述版图多边形P中的位置,将所述位置设置为固定点;图3中,走线左边存在多边形区域,则顶点M和顶点N的中点为左边的固定点,同时,走线右边存在多边形区域,则顶点U和顶点V的中点为右边的固定点,如果走线左边或右边不存在多边形区域,则该端点上与其他层连接的过孔的中心或与外部电路连接的节点为相应的固定点;
收集所述包含新的多边形区域P1P2P3P4P5AENM连同所述固定点(即顶点M和顶点N的中点)、所述新的多边形区域UVBEP6P7P8P9P10连同所述固定点(即顶点U和顶点V的中点)的所有版图多边形,统一进行网格剖分,得到剖分后的网格剖分单元。
如果走线左边或右边不存在多边形区域,以该端点上与其他层连接的过孔的中心或与外部电路连接的节点为相应的固定点,此时在走线左边或右边仅得到固定点,故不需要收集多边形区域进行网格剖分,但所述固定点可以通过过孔与其他层相连的多边形区域相连,或者通过节点与外部电路连接。
根据剖分后的网格剖分单元采用步骤S3~步骤S5继续进行处理,得到原有的走线以及转换后的走线上任一点的电流密度以及任一点的电位,其中网格剖分单元可针对单层集成电路,也可以针对多层集成电路,具体详述如下:
步骤S3:采用有限元法针对所述剖分后的网格剖分单元建立其电位场的矩阵方程组;如下式所示:
Figure 246123DEST_PATH_IMAGE025
(1)
式中K为有限元刚度矩阵,u为网格节点的电位向量,b为与外部激励产生的表面电流密度相关的右端项;
其中Kb具体计算步骤如下:
步骤S3.1:对于集成电路的电源网络,其网络上的直流电源在覆铜层的电流形成直流电场模型;
由于集成电路的结构为多层带复杂版图形状的覆铜层和介质形成的三维多层结构,因此需要计算的集成电路模型为多层集成电路的三维直流电场模型,此时,直流电场模型中电导率
Figure 319122DEST_PATH_IMAGE026
、电位u的分布均为三维空间坐标(x,y,z)的函数,即:
Figure 110579DEST_PATH_IMAGE027
,该三维直流电场模型的函数满足以下方程(2):
Figure 269028DEST_PATH_IMAGE028
(2)
及边界条件(3):
Figure 137889DEST_PATH_IMAGE029
(3)
式中,
Figure DEST_PATH_IMAGE030
为第一类边界,n为第二类边界的法向,
Figure 127711DEST_PATH_IMAGE031
表示电位u在第一类边界
Figure 328885DEST_PATH_IMAGE030
上的值,用
Figure 69570DEST_PATH_IMAGE032
表示,
Figure 381603DEST_PATH_IMAGE033
为外部电流源的体电流密度;
步骤S3.2:多层超大规模集成电路中实际PCB板或芯片封装的板尺寸远大于金属层的厚度,将多层集成电路的三维直流场问题简化为二维直流场问题;由此可以建立各层集成电路直流电场二维模型的泛函(4):
Figure 632456DEST_PATH_IMAGE034
(4)
式中,所述I(u)为泛函,t为金属层的厚度,
Figure 99471DEST_PATH_IMAGE035
为网格单元e的电导率,
Figure 701354DEST_PATH_IMAGE036
为网格单元e的电位,
Figure 742096DEST_PATH_IMAGE037
为网格单元e的面积,
Figure 644193DEST_PATH_IMAGE038
为外部激励产生的表面电流密度,
Figure 452749DEST_PATH_IMAGE039
表示网格单元e的边;
步骤S3.3对所述泛函(4)取极值并令极值为0,即可获得有限元法形成的矩阵方程组(1),
其中,b为与外部激励产生的表面电流密度相关的右端项,即为泛函(4)中的
Figure 276348DEST_PATH_IMAGE040
而有限元方程组(1)的左端K矩阵则为泛函(4)中的:
Figure 25124DEST_PATH_IMAGE041
步骤S4:将原有的走线以及转换后的走线均等效为带电阻的电路支路,将所述电路支路耦合到电位场的矩阵方程组并进行求解,获得各节点电位以及各支路电流,具体包括步骤如下:
步骤S4.1:设走线的端点O和S对应的固定点在网格节点中的编号为nO和nS,其对应的电位为u(n O )和u(n S );建立走线的端点O和S之间的电路方程,如下式(5)所示:
Figure 47306DEST_PATH_IMAGE042
(5)
式中,I OS为经过走线OS的电流,l OS 为走线OS的长度,
Figure 964447DEST_PATH_IMAGE043
为走线所在覆铜层的电导率,w为走线的宽度和d为走线所在覆铜层的厚度,如图4所示。
步骤S4.2将走线OS之间的电路方程加入到原来的矩阵方程组,形成修改的矩阵方程,如下式(6)所示:
Figure 229337DEST_PATH_IMAGE044
(6)
式中,K u 为有限元法形成的与节点电位相关的矩阵,a uI 为节点电位u(n O )和u(n S )与支路电流的关联矩阵,其为
Figure 516224DEST_PATH_IMAGE045
的矩阵,第nO和nS个元素为1,其余元素为0,其中n为有限元节点电位未知量的个数,也是矩阵K u 的维数。
对于单条走线OS来说,与原有的矩阵方程组相比,增加了一个方程,同时也增加了一个未知量I OS
步骤S4.3当有多条走线作以上相同转换时,原始方程组形成以下通用的修改的矩阵方程组(7):
Figure 330596DEST_PATH_IMAGE046
(7)
式中K u 为与节点电位相关的矩阵,A uI 为节点电位与支路电流的关联矩阵,K I 为与支路电流相关的矩阵,其中A uI 为多个a uI 按行组合而成,其组合的顺序为处理走线的顺序,矩阵大小为
Figure 543272DEST_PATH_IMAGE047
,m为待处理的走线数量,K I 为对角阵,矩阵大小为
Figure 633807DEST_PATH_IMAGE048
,第i个元素为-R i,这里R i为第i条走线的电阻,I为走线电流的未知量形成的列向量。
步骤S4.4求解所述通用的修改的矩阵方程组,获得各节点电位以及各支路电流,所述支路电流即为所述走线的电流。
步骤S5:反算出原有的走线以及转换后的走线上任一点的电流密度以及任一点的电位。具体过程详述如下:
由于假设了走线电流密度分布均匀,则可反算出走线上任一点p的电流密度
Figure 691761DEST_PATH_IMAGE049
为式(8)所示:
Figure 111373DEST_PATH_IMAGE050
(8)
同时反算出走线上的中线上任一点p的电位
Figure 730835DEST_PATH_IMAGE051
为式(9)所示:
Figure 547481DEST_PATH_IMAGE052
(9)
其中,l Op 为中线上p到O沿中线的长度,l OS 为中线上S到O沿中线的长度,w为走线的宽度,d为走线覆铜的厚度。所述走线的中线采用以下方法获得:针对多条直走线段连成的走线,相邻直走线段的轮廓线的交点称为拐点,根据所述走线上的所有拐点对连成的线段对走线进行分割,将所述走线分为W段,对每个所述走线段,连接所述走线段的一端的边的中点和所述走线段另一端的边的中点形成每个走线段的中线,连接所有走线段的中线形成所述走线的中线。
走线上任一点的电位根据走线上的中线上的电位采用分段插值法计算求值。
在具体实施中,对每个走线段进行插值,本实施例,如图4所示,走线段的一端的边为ZQ,点Z、Q为边ZQ的两个顶点,边ZQ的中点为O,另一端边的中点为S,以走线OS命名此走线,点C、G位于走线OS拐角位置处,为走线OS的一对拐角对,连线CG的中点为F,根据此拐角对对走线OS分割,得到走线段OF,所述走线段OF另一端的边即为CG,边CG的顶点即为C、G,
Figure 205865DEST_PATH_IMAGE053
走线段OF所形成的区域ZCGQ的中线为OF。
由于走线长度远大于走线宽度,例如走线长度为1cm,宽度为
Figure 496294DEST_PATH_IMAGE054
,假设在长度上的压降为0.1V,即u(OS)=0.1V,且由于走线上的电流沿走线中线流动,因此走线上的电压沿中线的下降速度远大于沿宽度方向的下降速度,即走线宽度上的压降远小于1
Figure 581931DEST_PATH_IMAGE055
,因此,可近似认为u(ZQ)=u(n O )u(CG)=
Figure 178216DEST_PATH_IMAGE056
,其中
Figure 250077DEST_PATH_IMAGE056
为中线上点F的电位,u(ZQ)表示边ZQ上任意点的电位,u(CG)表示边CG上任意点的电位,l OF为中线OF的长度。所述中点F位置的电位
Figure 283761DEST_PATH_IMAGE056
可通过下式计算得出:
Figure 182709DEST_PATH_IMAGE057
(10)
那么走线ZCGQ区域其他位置H的电位采用插值法计算求值,计算如下:
过H作与ZC平行的直线,与ZQ交点为H1,与CG交点为H2,则:
Figure 833002DEST_PATH_IMAGE058
(11)
其中,
Figure 334653DEST_PATH_IMAGE059
为ZCGQ区域其他位置H的电位,
Figure 98210DEST_PATH_IMAGE060
为H与H1之间连线的长度,
Figure 27114DEST_PATH_IMAGE061
为H1与H2之间连线的长度;
同理可以求出走线OS其他走线段任意点的电位;
当走线不存在拐点时,即
Figure 774490DEST_PATH_IMAGE062
计算过程同上,此时由实际计算求值结果可认为走线上任一点电位等于过此点与中线垂直的中线位置的电位。
第二方面,本申请提出一种基于版图多边形走线的自动识别转换装置,如图5所示,包括:走线识别模块、网格剖分模块、方程组建立模块、求解模块、电流电压反算模块;
所述走线识别模块、网格剖分模块、方程组建立模块、求解模块、电流电压反算模块依次顺序相连接;
走线识别模块用于针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线;
所述网格剖分模块用于将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元;
所述方程组建立模块用于采用有限元法针对所述剖分后的网格剖分单元建立其电位场的矩阵方程组;
所述求解模块用于将将原有的走线以及转换后的走线均等效为带电阻的电路支路,将所述电路支路耦合到电位场的矩阵方程组并进行求解,获得各节点电位以及各支路电流;
所述电流电压反算模块用于反算出原有的走线以及转换后的走线上任一点的电流密度以及任一点的电位。
所述走线识别模块,包括:第一单元、第二单元、第三单元、第四单元、第五单元、第六单元、第七单元、第八单元;
所述第一单元、第二单元、第三单元、第四单元、第五单元、第六单元、第七单元、第八单元依次顺序相连接,所述第三单元与第八单元相连接;所述第六单元与第四单元相连接;第七单元与第三单元相连接;
所述第一单元用于针对版图中任一多边形P进行简化,设置集合{Es}用来保存简化后的多边形P的平行边对,并设置集合{Es}的初始状态为空;
所述第二单元用于将所述简化后的多边形P的所有边,按长度从大到小进行排序,并保存到集合{E}中;
所述第三单元用于判断集合{E}中边的数量是否大于3,如果集合{E}中边的数量不大于3,则转入第八单元;否则,设置i=1,从集合{E}中取出最长边E1并将其从集合{E}中去除,设边E1的左端点为AE,边E1的右端点为BE
所述第四单元用于设置i=i+1,如果i大于集合{E}中边的数量,转入第三单元,否则,在集合{E}中取出边Ei,判断E1与Ei是否平行;如果E1与Ei不平行,则重新执行所述第四单元,其中,Ei为集合{E}中第i条边;
所述第五单元用于如果E1与Ei平行,计算边E1和Ei的重叠长度
Figure 870710DEST_PATH_IMAGE016
所述第六单元用于比较
Figure 82248DEST_PATH_IMAGE002
与第二阈值
Figure 650895DEST_PATH_IMAGE003
之间的大小,如果不满足
Figure 416726DEST_PATH_IMAGE004
,则转入第四单元;所述
Figure 791338DEST_PATH_IMAGE005
为事先定义的走线宽长比的最大第二阈值,
Figure 326224DEST_PATH_IMAGE006
为点AE到边Ei的距离
所述第七单元用于将Ei从集合{E}中去除,将平行边对(E1,Ei)保存在集合{Es}中,转入第三单元;
所述第八单元用于判断集合{Es}是否为空,如果集合{Es}为空,针对所述版图中任一多边形P的处理结束,退出;否则,将集合{Es}中的所有平行边对之间的重叠区域转换为走线,针对版图多边形P的处理结束,退出。
第三方面,本申请提出一种电子设备,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其被存储在所述存储器中并被配置为由所述一个或多个处理器加载和运行以便执行所述的基于版图多边形走线的自动识别转换方法。
第四方面,本申请提出一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面或者第一方面任一可能的实现方式所述的基于版图多边形走线的自动识别转换方法。
本发明申请人结合说明书附图对本发明的实施示例做了详细的说明与描述,但是本领域技术人员应该理解,以上实施示例仅为本发明的优选实施方案,详尽的说明只是为了帮助读者更好地理解本发明精神,而并非对本发明保护范围的限制,相反,任何基于本发明的发明精神所作的任何改进或修饰都应当落在本发明的保护范围之内。

Claims (8)

1.一种基于版图多边形走线的自动识别转换方法,其特征在于,包括如下步骤:
针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线;
将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元;
采用有限元法针对所述剖分后的网格剖分单元建立其电位场的矩阵方程组;
将原有的走线以及转换后的走线均等效为带电阻的电路支路,将所述电路支路耦合到电位场的矩阵方程组并进行求解,获得各节点电位以及各支路电流;
反算出原有的走线以及转换后的走线上任一点的电流密度以及任一点的电位;
所述针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线,包括如下步骤:
步骤S1.1:针对版图中任一多边形P进行简化,设置集合{Es}用来保存简化后的多边形P的平行边对,并设置集合{Es}的初始状态为空;
步骤S1.2:将所述简化后的多边形P的所有边,按长度从大到小进行排序,并保存到集合{E}中;
步骤S1.3:判断集合{E}中边的数量是否大于3,如果集合{E}中边的数量不大于3,则转入步骤S1.8;否则,设置i=1,从集合{E}中取出最长边E1并将其从集合{E}中去除,设边E1的左端点为AE,边E1的右端点为BE
步骤S1.4:设置i=i+1,如果i大于集合{E}中边的数量,转入步骤S1.3,否则,在集合{E}中取出边Ei,判断E1与Ei是否平行;如果E1与Ei不平行,则重新执行步骤S1.4,其中,Ei为集合{E}中第i条边;
步骤S1.5:如果E1与Ei平行,计算边E1和Ei的重叠长度
Figure DEST_PATH_IMAGE002
步骤S1.6:比较
Figure DEST_PATH_IMAGE004
与第二阈值
Figure DEST_PATH_IMAGE006
之间的大小,如果不满足
Figure DEST_PATH_IMAGE008
,则转入步骤S1.4;所述
Figure DEST_PATH_IMAGE010
为事先定义的走线宽长比的最大第二阈值,
Figure DEST_PATH_IMAGE012
为点AE到边Ei的距离;
步骤S1.7:将Ei从集合{E}中去除,将平行边对(E1,Ei)保存在集合{Es}中,转入步骤S1.3;
步骤S1.8:判断集合{Es}是否为空,如果集合{Es}为空,针对所述版图中任一多边形P的处理结束,退出;否则,将集合{Es}中的所有平行边对之间的重叠区域转换为走线,针对版图多边形P的处理结束,退出。
2.如权利要求1所述的基于版图多边形走线的自动识别转换方法,其特征在于,所述针对版图中任一多边形P进行简化,包括:当多边形P的任意两条相邻边的夹角大于
Figure DEST_PATH_IMAGE014
时,将多边形P的任意两条相邻边合并为一条边,直到多边形P的任意两条相邻边的夹角均小于等于
Figure DEST_PATH_IMAGE016
时,停止简化,得到简化后的多边形P,其中,
Figure DEST_PATH_IMAGE018
为预定义的角度第一阈值。
3.如权利要求1所述的基于版图多边形走线的自动识别转换方法,其特征在于,所述E1与Ei平行定义为:如果满足
Figure DEST_PATH_IMAGE020
,则认为边E1与边Ei平行,其中,
Figure DEST_PATH_IMAGE022
为点AE到边Ei的距离,
Figure DEST_PATH_IMAGE024
为点BE到边Ei的距离,
Figure DEST_PATH_IMAGE026
为事先定义的距离第三阈值。
4.如权利要求1所述的基于版图多边形走线的自动识别转换方法,其特征在于,所述计算边E1和Ei的重叠长度
Figure DEST_PATH_IMAGE028
,包括:将边E1投影到边Ei形成一条线段,边E1和边Ei的端点在投影的线段上形成4个顶点,4个顶点从左到右或从下到上依次为A、M、U、D,则4个顶点的中间两个顶点M和U之间的线段定义为边E1在边Ei投影后的重叠线段,重叠线段的长度定义为边E1和Ei的重叠长度
Figure DEST_PATH_IMAGE029
;中间两个顶点M和U为在边E1上投影形成顶点N和V。
5.如权利要求1所述的基于版图多边形走线的自动识别转换方法,其特征在于,所述将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元,包括如下步骤:
基于边E1和边Ei的相互投影形成的4个顶点M、N、V、U构成矩形区域,该矩形区域称为走线,如果走线左边存在多边形区域,将左边的多边形区域通过顶点M和顶点N截断,形成新的多边形区域,如果走线右边存在多边形区域,将右边的多边形区域通过顶点U和顶点V截断,形成新的多边形区域,新的多边形区域不包括四个顶点M、N、U、V包含的区域;
确定所述走线两端端点在所述版图多边形P中的位置,将所述位置设置为固定点;如果走线左边存在多边形区域,则顶点M和顶点N的中点为左边的固定点,如果走线右边存在多边形区域,则顶点U和顶点V的中点为右边的固定点,如果走线左边或右边不存在多边形区域,则该端点上与其他层连接的过孔的中心或与外部电路连接的节点为相应的固定点;
对所述新的多边形区域连同所述固定点进行网格剖分,得到剖分后的网格剖分单元。
6.一种基于版图多边形走线的自动识别转换装置,其特征在于,包括:走线识别模块、网格剖分模块、方程组建立模块、求解模块、电流电压反算模块;
所述走线识别模块、网格剖分模块、方程组建立模块、求解模块、电流电压反算模块依次顺序相连接;
走线识别模块用于针对版图中任一多边形P,识别所述多边形P中符合条件的带状区域,并将所述带状区域转换为走线;
所述网格剖分模块用于将转换为走线的带状区域从多边形P中去除,对去除带状区域的多边形P进行网格剖分,得到剖分后的网格剖分单元;
所述方程组建立模块用于采用有限元法针对所述剖分后的网格剖分单元建立其电位场的矩阵方程组;
所述求解模块用于将原有的走线以及转换后的走线均等效为带电阻的电路支路,将所述电路支路耦合到电位场的矩阵方程组并进行求解,获得各节点电位以及各支路电流;
所述电流电压反算模块用于反算出原有的走线以及转换后的走线上任一点的电流密度以及任一点的电位;
所述走线识别模块,包括:第一单元、第二单元、第三单元、第四单元、第五单元、第六单元、第七单元、第八单元;
所述第一单元、第二单元、第三单元、第四单元、第五单元、第六单元、第七单元、第八单元依次顺序相连接,所述第三单元与第八单元相连接;所述第六单元与第四单元相连接;第七单元与第三单元相连接;
所述第一单元用于针对版图中任一多边形P进行简化,设置集合{Es}用来保存简化后的多边形P的平行边对,并设置集合{Es}的初始状态为空;
所述第二单元用于将所述简化后的多边形P的所有边,按长度从大到小进行排序,并保存到集合{E}中;
所述第三单元用于判断集合{E}中边的数量是否大于3,如果集合{E}中边的数量不大于3,则转入第八单元;否则,设置i=1,从集合{E}中取出最长边E1并将其从集合{E}中去除,设边E1的左端点为AE,边E1的右端点为BE
所述第四单元用于设置i=i+1,如果i大于集合{E}中边的数量,转入第三单元,否则,在集合{E}中取出边Ei,判断E1与Ei是否平行;如果E1与Ei不平行,则重新执行所述第四单元,其中,Ei为集合{E}中第i条边;
所述第五单元用于如果E1与Ei平行,计算边E1和Ei的重叠长度
Figure DEST_PATH_IMAGE031
所述第六单元用于比较
Figure DEST_PATH_IMAGE004A
与第二阈值
Figure 732769DEST_PATH_IMAGE006
之间的大小,如果不满足
Figure DEST_PATH_IMAGE008A
,则转入第四单元;所述
Figure DEST_PATH_IMAGE010A
为事先定义的走线宽长比的最大第二阈值,
Figure DEST_PATH_IMAGE012A
为点AE到边Ei的距离;
所述第七单元用于将Ei从集合{E}中去除,将平行边对(E1,Ei)保存在集合{Es}中,转入第三单元;
所述第八单元用于判断集合{Es}是否为空,如果集合{Es}为空,针对所述版图中任一多边形P的处理结束,退出;否则,将集合{Es}中的所有平行边对之间的重叠区域转换为走线,针对版图多边形P的处理结束,退出。
7.一种电子设备,其特征在于,该电子设备包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其被存储在所述存储器中并被配置为由所述一个或多个处理器加载和运行以便执行权利要求1至5中任一项所述的基于版图多边形走线的自动识别转换方法。
8.一种计算机可读存储介质,其特征在于,
其上存储有计算机程序,该程序能够被处理器加载和运行以执行权利要求1至5中任一项所述的基于版图多边形走线的自动识别转换方法。
CN202210245199.9A 2022-03-14 2022-03-14 一种基于版图多边形走线的自动识别转换方法及装置 Active CN114330213B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210245199.9A CN114330213B (zh) 2022-03-14 2022-03-14 一种基于版图多边形走线的自动识别转换方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210245199.9A CN114330213B (zh) 2022-03-14 2022-03-14 一种基于版图多边形走线的自动识别转换方法及装置

Publications (2)

Publication Number Publication Date
CN114330213A CN114330213A (zh) 2022-04-12
CN114330213B true CN114330213B (zh) 2022-06-14

Family

ID=81033227

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210245199.9A Active CN114330213B (zh) 2022-03-14 2022-03-14 一种基于版图多边形走线的自动识别转换方法及装置

Country Status (1)

Country Link
CN (1) CN114330213B (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3562975B2 (ja) * 1998-09-29 2004-09-08 株式会社東芝 集積回路設計方法及び集積回路設計装置
US8352890B2 (en) * 2009-02-06 2013-01-08 Chapman David C Method for reading polygon data into an integrated circuit router
CN110675502B (zh) * 2019-11-26 2020-04-03 北京唯智佳辰科技发展有限责任公司 多层集成电路版图多边形对齐和简化处理方法及装置
CN110689569B (zh) * 2019-12-10 2020-06-30 北京唯智佳辰科技发展有限责任公司 集成电路版图场域识别与网格细分处理方法及装置
CN114021517A (zh) * 2021-12-09 2022-02-08 芯和半导体科技(上海)有限公司 一种集成电路版图仿真方法、计算机设备和存储介质

Also Published As

Publication number Publication date
CN114330213A (zh) 2022-04-12

Similar Documents

Publication Publication Date Title
CN111898330A (zh) 基于多层次并行策略的集成电路电磁响应计算方法及装置
Dai Post-route optimization for improved yield using a rubber-band wiring model
CN114330215B (zh) 一种快速处理集成电路版图走线的电磁仿真方法及装置
JPH08212249A (ja) グラフ分割化システム
CN111881641A (zh) 多进程自适应分配的多层超大规模集成电路场路耦合方法
TWI643082B (zh) 一種佈線出一解決路徑之方法及系統
CN107066681A (zh) 集成电路和制造集成电路的计算机实现方法
CN111931458A (zh) 基于混合阶有限元的三维集成电路电磁场计算方法及装置
CN112131774B (zh) 用于集成电路三棱柱网格剖分的混合阶有限元方法及装置
US11637098B2 (en) Pin modification for standard cells
CN109426693B (zh) 开发电子器件的架构设计和制造电子器件的系统及方法
Chen et al. Global and detailed routing
CN111814422B (zh) 集成电路电磁仿真多重网格法的插值矩阵构造方法及装置
CN114330214B (zh) 一种包含走线的集成电路快速高精度计算的方法及装置
CN114330213B (zh) 一种基于版图多边形走线的自动识别转换方法及装置
CN112149336B (zh) 三维集成电路电磁仿真高质量网格快速生成方法及装置
Abboud et al. Mathematical methods for physical layout of printed circuit boards: an overview
US20200175130A1 (en) Constructing VIA Meshes for High Performance Routing on Silicon Chips
CN112307709B (zh) 系统级集成电路直流压降的端口等效并行分析方法及系统
CN114741217A (zh) 网络结构容错性确定方法、装置、设备及存储介质
JP2521041B2 (ja) 集積回路における配線方法
Chen et al. Routing for manufacturability and reliability
Liu et al. Substrate topological routing for high-density packages
JP2001237412A (ja) 半導体集積回路解析装置とその解析方法並びに解析方法を記録した記録媒体
CN116776813B (zh) 集成电路制造刻蚀效应建模方法、装置、设备及存储介质

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