CN114218888B - 一种集成电路版图电流密度超标区域标定方法及系统 - Google Patents

一种集成电路版图电流密度超标区域标定方法及系统 Download PDF

Info

Publication number
CN114218888B
CN114218888B CN202210161308.9A CN202210161308A CN114218888B CN 114218888 B CN114218888 B CN 114218888B CN 202210161308 A CN202210161308 A CN 202210161308A CN 114218888 B CN114218888 B CN 114218888B
Authority
CN
China
Prior art keywords
grid
current density
current
grid cell
layer
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
CN202210161308.9A
Other languages
English (en)
Other versions
CN114218888A (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 CN202210161308.9A priority Critical patent/CN114218888B/zh
Publication of CN114218888A publication Critical patent/CN114218888A/zh
Application granted granted Critical
Publication of CN114218888B publication Critical patent/CN114218888B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Architecture (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本申请公开了一种集成电路版图电流密度超标区域标定方法及系统,属于集成电路电磁场分析技术领域,包括:对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度;基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元;基于标识的电流密度超标的网格单元,采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域,同时针对每个连通的网格单元区域,设置没有邻居网格单元的网格单元对应的边作为所述连通的网格单元区域的边界。本申请解决了集成电路版图形状复杂时,传统电流密度标定方法不再有效,电流密度超标区域不能精确标定问题,有助于大规模集成电路版图优化和整改。

Description

一种集成电路版图电流密度超标区域标定方法及系统
技术领域
本申请属于集成电路电磁场分析技术领域,具体涉及一种集成电路版图电流密度超标区域标定方法及系统。
背景技术
随着通信技术的发展,超大规模集成电路的研究与发展已逐渐展开。为了提高电子设备的性能,缩小体积,降低成本,当下生产现状是将晶体管与其他元器件以及线路都集成在一小块半导体基片上。为了实现更多的功能,目前超大规模集成电路有几层到上百层结构,每层结构极其复杂,并集成数千万甚至数亿的晶体管,且都具有从厘米级到目前最新的纳米级多尺度结构。如此复杂的结构,也给其电磁场分析带来了难题。
由于集成电路中有数千万到数亿个晶体管同时工作,其消耗的功率急剧增加,这个增加的功率可通过提高输入电压或输入电流来实现,但由于晶体管密度增加,晶体管的P-N节间距随之减小,从而晶体管的耐压值也随之降低,因此,随着超大规模集成电路的晶体管数量的增加,对集成电路的输入电压逐渐下降,但提供给集成电路的电流却是急剧增加。这个电流可达数十安培到上百安培,这个大电流通常由几百到上千个引脚来供电。由于有数百到上千个引脚分摊上百安培的大电流,因此每个引脚的电流得到了有效的降低,然而,这个上百安培的大电流需要通过各层的集成电路版图从电源输入端传输到工作的芯片,因此集成电路版图电源层上的电流密度是一个需要重点关注的问题。
针对具有多尺度结构的集成电路版图,需要采用电磁场数值计算方法计算其电流密度分布,然后,根据具体制备工艺对应的版图上允许承载的最大电流密度,根据计算的电流密度分布标定出电流密度超标的区域,最终基于超标区域对集成电路版图设计进行优化和整改,直到设计的版图达到工作要求。
目前,针对集成电路版图上电流密度超标区域的标定通常为矩形区域标定,这种标定方法针对早期结构简单的版图形状是有效的,能够从标定的区域很快识别出电流密度超标位置,从而对设计的版图进行优化和整改,但随着集成电路版图形状越来越复杂,原来的标定方法不再有效,具体表现在,存在大量的弯曲的带状版图多边形,如果这种多边形上的电流密度超标,按照传统的标定方法,则将包括整个带状版图多边形的超标的矩形区域都包括进来,这个矩形区域内部还包含了大量不超标的版图多边形,因此这个标定基本是无效的,并不能从标定的区域精准获取有用信息。
发明内容
为解决现有技术中的不足,本申请提出了一种集成电路版图电流密度超标区域标定方法及系统。
第一方面,本申请提出一种集成电路版图电流密度超标区域标定方法,包括如下步骤:
对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度;
基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元;
基于标识的电流密度超标的网格单元,采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域,同时针对每个连通的网格单元区域,设置没有邻居网格单元的网格单元对应的边作为所述连通的网格单元区域的边界。
所述对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度,包括如下步骤:
将多层集成电路直流电场的三维模型简化为多层直流电场二维模型,并对多层直流电场二维模型的各层集成电路版图进行网格剖分;
对所述多层直流电场二维模型形成的微分方程对应的泛函在剖分的网格单元上进行离散,取极值并令极值为零得到有限元刚度矩阵方程组,对所述有限元刚度矩阵方程组进行求解,得到集成电路每层平板上的电位分布;
根据所述集成电路每层平板上的电位分布,计算场域的电流密度分布,即每层版图中网格单元的电流密度。
所述将多层集成电路直流电场的三维模型简化为多层直流电场二维模型,具体计算如下:
多层集成电路直流电场的三维模型是指所述多层直流电场二维模型中电导率
Figure 480402DEST_PATH_IMAGE001
、电位u的分布均为三维空间坐标(x,y,z)的函数,即:
Figure 831618DEST_PATH_IMAGE002
Figure 203736DEST_PATH_IMAGE003
,其满足以下方程(1)及边界条件(2):
Figure 603494DEST_PATH_IMAGE004
(1)
Figure 184648DEST_PATH_IMAGE005
(2)
式(2)中,
Figure 503502DEST_PATH_IMAGE006
为第一类边界,n为第二类边界的法向,
Figure 904528DEST_PATH_IMAGE007
为电位u在第一类边界
Figure 576818DEST_PATH_IMAGE006
上的值,用
Figure 58484DEST_PATH_IMAGE008
表示,
Figure 502234DEST_PATH_IMAGE009
为外部电路的体电流密度。
针对所述多层集成电路直流电场的三维模型,建立各层集成电路直流电场二维模型的泛函:
Figure 311927DEST_PATH_IMAGE010
(3)
式中,所述h为金属层的厚度,
Figure 115804DEST_PATH_IMAGE011
为网格单元e的电导率;
Figure 202709DEST_PATH_IMAGE012
为网格单元e的电位;
Figure 66629DEST_PATH_IMAGE013
为网格单元e的面,
Figure 318879DEST_PATH_IMAGE014
为外部激励产生的表面电流密度,所述I(u)为泛函,
Figure 926447DEST_PATH_IMAGE015
表示网格单元e的棱边;
所述基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元;包括步骤如下:
基于网格单元,利用场域的电流密度分布公式,计算得到所有层的每个网格单元的电流密度;
对所有层的每个网格单元,判断其电流密度是否大于预设的电流密度阈值,如果大于所述阈值,则设置所述网格单元的热点状态为HOT,如果小于等于所述阈值,则设置热点状态为COLD。
所述采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域包括如下步骤:
步骤S3.1:设置当前处理的热点区域为i=1,设置当前热点区域集合H为空,当前外围网格单元集合F为空,设置当前处理层序号为layer=1;
步骤S3.2:对当前第layer层的所有网格单元,计算各网格单元的邻居网格单元;设置当前处理的网格单元v=1,设置当前电流密度最大值Jmax为0;设置当前标定边界集合Bi为空;设置当前第layer层的所有网格单元处理状态为FRESH;
步骤S3.3:检查第v个网格单元的状态;
步骤S3.3.A:如果所述第v个网格单元的处理状态为DONE,或热点状态为COLD,设置v=v+1,转入步骤S3.4;
步骤S3.3.B:比较所述第v个网格单元的电流密度Jv与当前电流密度最大值Jmax,Jv>Jmax,则更新Jmax,使得Jmax=Jv;Jv<=Jmax,则Jmax不变;
步骤S3.3.B.1:将所述第v个网格单元加入到当前外围网格单元集合F中去;
步骤S3.3.B.2:判断集合F是否为空,如果集合F为空,将当前Jmax作为当前热点区域Hi的最大电流密度,当前标定边界集合Bi作为当前热点区域Hi的标定边界,增加Hi到集合H,重置当前电流密度最大值Jmax为0,设置i=i+1,设置当前标定边界集合Bi为空,设置当前热点区域集合H为空,设置v=v+1,转入步骤S3.4;
步骤S3.3.B.3:如果集合F不为空,取出集合F中的任一个网格单元p,并把所述网格单元p从集合F中删除;
步骤S3.3.B.4:判断所述网格单元p的处理状态,如果所述网格单元p的处理状态为DONE,转入步骤S3.3.B.2;
步骤S3.3.B.5:找到网格单元p的Nbr个邻居网格单元p1,p2,pk,...pNbr
Figure 258071DEST_PATH_IMAGE016
,k表示网格单元p的第k个棱边,Nbr为网格单元p的棱边总个数,pk表示共用网格单元p的第k条棱边的邻居网格单元,设置所述网格单元p的处理状态为DONE,k=1;
步骤S3.3.B.6:判断pk是否等于零,当pk等于零, 表示没有与所述网格单元p的第k条棱边共用棱边的网格单元,将所述网格单元p第k条棱边加入到当前标定边界集合Bi中去,转入步骤S3.3.B.10;
步骤S3.3.B.7:判断pk处理状态, 如果pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.8:判断pk的热点状态, 如果pk的热点状态为COLD,将所述网格单元p的第k条棱边加入到当前标定边界集合Bi中去,设定pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.9:将pk加入到当前外围网格单元集合F中去,比较pk的电流密度与当前电流密度最大值Jmax大小,如果pk的电流密度不大于当前电流密度最大值Jmax,Jmax不更新,如果pk的电流密度大于当前电流密度最大值Jmax,更新Jmax为pk的电流密度;
步骤S3.3.B.10:设置k=k+1,判断k是否大于Nbr,若k大于Nbr则转入步骤S3.3.B.2,k若不大于Nbr,则转到步骤S3.3.B.6;
步骤S3.4:比较v与当前第layer层的网格单元数量的大小,如果v<当前第layer层的网格单元数量,转入步骤S3.3;
步骤S3.5:设置layer=layer+1;
步骤S3.6:比较layer与集成电路总层数的大小,如果layer<=集成电路总层数,转入步骤S3.2;
步骤S3.7:退出流程,算法结束;
所述网格单元为任一形状组成的单元。
第二方面,本申请提出一种集成电路版图电流密度超标区域标定系统,包括:电流密度计算模块、网格单元标识模块、超标区域边界标定模块, 所述电流密度计算模块、网格单元标识模块、超标区域边界标定模块依次顺序相连接;
所述电流密度计算模块,用于对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度;
所述网格单元标识模块,用于基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元;
所述超标区域边界标定模块,用于基于标识的电流密度超标的网格单元,采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域,同时针对每个连通的网格单元区域,设置没有邻居网格单元的网格单元对应的边作为所述连通的网格单元区域的边界。
所述电流密度计算模块,包括电场模型简化单元、电位计算单元、电流密度计算单元,各单元依次连接;
所述电场模型简化单元用于将多层集成电路直流电场的三维模型简化为多层直流电场二维模型,并对多层直流电场二维模型的各层集成电路版图进行网格剖分;
所述电位计算单元用于对所述多层直流电场二维模型形成的微分方程对应的泛函在剖分的网格单元上进行离散,取极值并令极值为零得到有限元刚度矩阵方程组,对所述有限元刚度矩阵方程组进行求解,得到集成电路每层平板上的电位分布;
所述电流密度计算单元用于根据所述集成电路每层平板上的电位分布,计算场域的电流密度分布,即每层版图中网格单元的电流密度。
所述网格单元标识模块,包括网格单元电流密度计算单元、网格单元状态判定单元;所述网格单元电流密度计算单元、网格单元状态判定单元依次顺序相连接;
所述网格单元电流密度计算单元用于基于网格单元,利用场域的电流密度分布公式,计算得到所有层的每个网格单元的电流密度:
所述网格单元状态判定单元用于对所有层的每个网格单元,判断其电流密度是否大于预设的电流密度阈值,如果大于所述阈值,则设置所述网格单元的热点状态为HOT,如果小于等于所述阈值,则设置热点状态为COLD。
所述超标区域边界标定模块,包括邻居搜索算法单元;
所述邻居搜索算法单元是通过如下步骤进行边界标定的:
步骤S3.1:设置当前处理的热点区域为i=1,设置当前热点区域集合H为空,当前外围网格单元集合F为空,设置当前处理层序号为layer=1;
步骤S3.2:对当前第layer层的所有网格单元,计算各网格单元的邻居网格单元;设置当前处理的网格单元v=1,设置当前电流密度最大值Jmax为0;设置当前标定边界集合Bi为空;设置当前第layer层的所有网格单元处理状态为FRESH;
步骤S3.3:检查第v个网格单元的状态;
步骤S3.3.A:如果所述第v个网格单元的处理状态为DONE,或热点状态为COLD,设置v=v+1,转入步骤S3.4;
步骤S3.3.B:比较所述第v个网格单元的电流密度Jv 与当前电流密度最大值Jmax,Jv>Jmax,则更新Jmax,使得Jmax=Jv;Jv<=Jmax,则Jmax不变;
步骤S3.3.B.1:将所述第v个网格单元加入到当前外围网格单元集合F中去;
步骤S3.3.B.2:判断集合F是否为空,如果集合F为空,将当前Jmax作为当前热点区域Hi的最大电流密度,当前标定边界集合Bi作为当前热点区域Hi的标定边界,增加Hi到集合H,重置当前电流密度最大值Jmax为0,设置i=i+1,设置当前标定边界集合Bi为空,设置当前热点区域集合H为空,设置v=v+1,转入步骤S3.4;
步骤S3.3.B.3:如果集合F不为空,取出集合F中的任一个网格单元p,并把所述网格单元p从集合F中删除;
步骤S3.3.B.4:判断所述网格单元p的处理状态,如果所述网格单元p的处理状态为DONE,转入步骤S3.3.B.2;
步骤S3.3.B.5:找到网格单元p的Nbr个邻居网格单元p1,p2,pk,...pNbr
Figure 105941DEST_PATH_IMAGE017
,k表示网格单元p的第k个棱边,Nbr为网格单元p的棱边总个数,pk表示共用网格单元p的第k条棱边的邻居网格单元,设置所述网格单元p的处理状态为DONE,k=1;
步骤S3.3.B.6:判断pk是否等于零,当pk等于零, 表示没有与所述网格单元p的第k条棱边共用棱边的网格单元,将所述网格单元p第k条棱边加入到当前标定边界集合Bi中去,转入步骤S3.3.B.10;
步骤S3.3.B.7:判断pk处理状态, 如果pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.8:判断pk的热点状态,如果pk的热点状态为COLD,将所述网格单元p的第k条棱边加入到当前标定边界集合Bi中去,设定pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.9:将pk加入到当前外围网格单元集合F中去,比较pk的电流密度与当前电流密度最大值Jmax大小,如果pk的电流密度不大于当前电流密度最大值Jmax,Jmax不更新,如果pk的电流密度大于当前电流密度最大值Jmax,更新Jmax为pk的电流密度;
步骤S3.3.B.10:设置k=k+1,判断k是否大于Nbr,若k大于Nbr则转入步骤S3.3.B.2,k若不大于Nbr,则转到步骤S3.3.B.6;
步骤S3.4:比较v与当前第layer层的网格单元数量的大小,如果v<当前第layer层的网格单元数量,转入步骤S3.3;
步骤S3.5:设置layer=layer+1;
步骤S3.6:比较layer与集成电路总层数的大小,如果layer<=集成电路总层数,转入步骤S3.2;
步骤S3.7:退出流程,算法结束。
本申请所达到的有益效果:
本申请解决了集成电路版图形状复杂时,传统电流密度标定方法不再有效,电流密度超标区域不能精确标定问题,有助于大规模集成电路版图优化和整改。
附图说明
图1为本申请实施例的一种集成电路版图电流密度超标区域标定方法流程图;
图2为本申请实施例的计算每层版图中网格单元的电流密度流程图;
图3为本申请实施例的标识出电流密度超标的网格单元流程图;
图4(a)为边界流程图中a区域图;图4(b)为边界流程图中b区域图;图4(c)为边界流程图中c区域图;
图5为本申请实施例的集成电路版图某层的局部网格剖分与热点三角形单元分布图;
图6热点区域采用传统标定方法标定效果图;
图7热点区域采用本发明精确标定方法的标定效果图;
图8为本申请实施例的一种集成电路版图电流密度超标区域标定系统原理框图。
具体实施方式
下面结合附图对本申请作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本申请的保护范围。
第一方面,本申请提出一种集成电路版图电流密度超标区域标定方法,如图1所示,包括如下步骤:
步骤S1:对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度;
步骤S2:基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元;
步骤S3:基于标识的电流密度超标的网格单元,采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域,同时针对每个连通的网格单元区域,设置没有邻居网格单元的网格单元对应的边作为所述连通的网格单元区域的边界,所述连通的网格单元区域即为超标区域。
考虑到多层集成电路封装的板尺寸远大于板的厚度和板间距,可以认为,直流电场在板的厚度方向是不变的,由此将所述多层集成电路直流电场的三维模型简化为多层直流电场二维模型;所述多层集成电路也可包括多层超大规模集成电路。
所述步骤S1中计算每层版图中网格单元的电流密度,如图2所示,主要包括以下步骤:
步骤S1.1:将多层集成电路直流电场的三维模型简化为多层直流电场二维模型,并对多层直流电场二维模型的各层集成电路版图进行网格剖分;
多层集成电路直流电场的三维模型是指所述多层直流电场二维模型中电导率
Figure 624647DEST_PATH_IMAGE018
、电位u的分布均为三维空间坐标(x,y,z)的函数,即:
Figure 770327DEST_PATH_IMAGE019
Figure 300665DEST_PATH_IMAGE020
,其满足以下方程(1)及边界条件(2):
Figure 975229DEST_PATH_IMAGE021
(1)
Figure 574706DEST_PATH_IMAGE022
(2)
式(2)中,
Figure 274809DEST_PATH_IMAGE006
为第一类边界,n为第二类边界的法向,
Figure 908922DEST_PATH_IMAGE007
为电位u在第一类边界
Figure 36278DEST_PATH_IMAGE006
上的值,用
Figure 535435DEST_PATH_IMAGE008
表示,
Figure 22917DEST_PATH_IMAGE023
为外部电路的体电流密度。
针对所述多层集成电路直流电场的三维模型,建立各层集成电路直流电场二维模型的泛函:
Figure 59006DEST_PATH_IMAGE024
(3)
式中,所述h为金属层的厚度,
Figure 13056DEST_PATH_IMAGE025
为网格单元e的电导率;
Figure 587126DEST_PATH_IMAGE026
为网格单元e的电位;
Figure 894610DEST_PATH_IMAGE027
为网格单元e的面,
Figure 972156DEST_PATH_IMAGE028
为外部激励产生的表面电流密度,所述I(u)为泛函,
Figure 706894DEST_PATH_IMAGE015
表示网格单元e的棱边;
步骤S1.2:对所述多层直流电场二维模型形成的微分方程对应的泛函在剖分的网格单元上进行离散,取极值并令极值为零得到有限元刚度矩阵方程组,对所述有限元刚度矩阵方程组进行求解,得到集成电路每层平板上的电位分布;
步骤S1.3:根据所述集成电路每层平板上的电位分布,计算场域的电流密度分布,即每层版图中网格单元的电流密度:
Figure 237102DEST_PATH_IMAGE029
(4)
式中,J为电流密度,E为电场强度,
Figure 145015DEST_PATH_IMAGE030
为电导率,
Figure 77068DEST_PATH_IMAGE031
为梯度算子,u为求解的电位场;
所述步骤S2中基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元,如图3所示,主要步骤如下:
步骤S2.1:基于网格单元,利用场域的电流密度分布公式,计算得到所有层的每个网格单元的电流密度;
所述网格单元为包括三角形、凸四边形等任一形状组成的单元。
本领域技术人员通常采用三角形单元或者凸四边形单元作为网格单元进行实施,但以其它形状作为网格单元,是本申请技术人员自然能想到的,其它公式推导过程本申请不再赘述,故无论以何种形状作为网格单元均属于本申请的保护范围,现以三角形单元作为网格单元实施具体计算如下:
Figure 904078DEST_PATH_IMAGE032
(5)
式中,
Figure 937893DEST_PATH_IMAGE033
为第e个单元第m个顶点的电位,N m 为网格单元的形状函数。其中,
Figure 565009DEST_PATH_IMAGE034
Figure 164618DEST_PATH_IMAGE036
为网格单元的面积,a m , b m , c m 为网格单元顶点坐标相关的系数。
Figure 896951DEST_PATH_IMAGE037
式中,(x m y m ),m=1,2,3为网格单元三个顶点的坐标。
以凸四边形单元作为网格单元,其计算公式如下:
对于凸四边形单元,首先,采用坐标变换,将任意凸四边形变换到4个顶点坐标分别为(ξ 1,η 1)=(-1,-1), (ξ 2,η 2)= (1,-1), (ξ 3,η 3)= (1,1), (ξ 4,η 4)= (-1,1)的标准矩形,其网格单元的电流密度计算公式如下:
Figure 932909DEST_PATH_IMAGE038
(6)
式中,
Figure 120307DEST_PATH_IMAGE039
为第e个单元第m个顶点的电位,N m 为四边形单元的形状函数,其中,
Figure 964636DEST_PATH_IMAGE040
Jac为从坐标系(x,y)变换到坐标系(ξ,η)的坐标变换矩阵:
Figure 539973DEST_PATH_IMAGE041
(7)
(Jac)-1为Jac的逆矩阵。
步骤S2.2:对所有层的每个网格单元,判断其电流密度是否大于预设的电流密度阈值,如果大于所述阈值,则设置所述网格单元的热点状态为HOT,如果小于等于所述阈值,则设置热点状态为COLD。
所述步骤S3中为了标定当前电流密度超标的网格单元所组成热点区域的边界,设立规则为:记所有热点状态为HOT的网格单元存入的集合为热点区域集合H,记当前热点区域集合H中,至少有一个邻居网格单元为0或邻居网格单元的热点状态为COLD的网格单元组成的集合为外围网格单元集合F,记标定当前热点区域的边界形成的集合为边界集合B中,将连通的网格单元区域的电流密度最大值设置为Jmax,将每层版图的层序号设置为layer;网格单元t的第k个(k=1,2,…Nbr)邻居网格单元定义为共用网格单元t第k个棱边的网格单元,通常先对当前层的所有网格单元进行编号(编号从1开始),则网格单元的邻居编号对应邻居网格单元编号。例如网格单元为三角形单元t情况下,若其编号为10,其周围三个三角形单元的编号分别为1、4、8,那么第10个三角形单元的三个邻居网格单元分别为1、4、8,且编号为1、4、8的三角形单元均有一个共同的邻居三角形单元10。如果三角形单元t第k个棱边不存在与之共用棱边的三角形单元,那么该三角形单元t的第k个邻居三角形单元定义为0。
由此所述步骤S3,具体包括如下步骤:
步骤S3.1:设置当前处理的热点区域为i=1,设置当前热点区域集合H为空,当前外围网格单元集合F为空,设置当前处理层序号为layer=1;
步骤S3.2:对当前第layer层的所有网格单元,计算各网格单元的邻居网格单元;设置当前处理的网格单元v=1,设置当前电流密度最大值Jmax为0;设置当前标定边界集合Bi为空;设置当前第layer层的所有网格单元处理状态为FRESH;
步骤S3.3:检查第v个网格单元的状态;
步骤S3.3.A:如果所述第v个网格单元的处理状态为DONE,或热点状态为COLD,设置v=v+1,转入步骤S3.4;
步骤S3.3.B:如果所述第v个网格单元的热点状态为HOT,且所述网格单元的处理状态为FRESH,比较所述第v个网格单元的电流密度Jv 与当前电流密度最大值Jmax,Jv>Jmax,则更新Jmax,使得Jmax=Jv;Jv<=Jmax,则Jmax不变;
步骤S3.3.B.1:将所述第v个网格单元加入到当前外围网格单元集合F中去;
步骤S3.3.B.2:判断集合F是否为空,如果集合F为空,将当前Jmax作为当前热点区域Hi的最大电流密度,当前标定边界集合Bi作为当前热点区域Hi的标定边界,增加Hi到集合H,重置当前电流密度最大值Jmax为0,设置i=i+1,设置当前标定边界集合Bi为空,设置当前热点区域集合H为空,设置v=v+1,转入步骤S3.4;
步骤S3.3.B.3:如果集合F不为空,取出集合F中的任一个网格单元p,并把所述网格单元p从集合F中删除;
步骤S3.3.B.4:判断所述网格单元p的处理状态,如果所述网格单元p的处理状态为DONE,转入步骤S3.3.B.2;
步骤S3.3.B.5:找到网格单元p的Nbr个邻居网格单元p1,p2,pk,...pNbr
Figure 469752DEST_PATH_IMAGE016
,k表示网格单元p的第k个棱边,Nbr为网格单元p的棱边总个数,pk表示共用网格单元p的第k条棱边的邻居网格单元,设置所述网格单元p的处理状态为DONE,k=1;
步骤S3.3.B.6:判断pk是否等于零,当pk等于零, 表示没有与所述网格单元p的第k条棱边共用棱边的网格单元,将所述网格单元p第k条棱边加入到当前标定边界集合Bi中去,转入步骤S3.3.B.10;
步骤S3.3.B.7:判断pk处理状态, 如果pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.8:判断pk的热点状态, 如果pk的热点状态为COLD,将所述网格单元p的第k条棱边加入到当前标定边界集合Bi中去,设定pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.9:将pk加入到当前外围网格单元集合F中去,比较pk的电流密度与当前电流密度最大值Jmax大小,如果pk的电流密度不大于当前电流密度最大值Jmax,Jmax不更新,如果pk的电流密度大于当前电流密度最大值Jmax,更新Jmax为pk的电流密度;
步骤S3.3.B.10:设置k=k+1,判断k是否大于Nbr,若k大于Nbr则转入步骤S3.3.B.2,k若不大于Nbr,则转到步骤S3.3.B.6;
步骤S3.4:比较v与当前第layer层的网格单元数量的大小,如果v<当前第layer层的网格单元数量,转入步骤S3.3;
步骤S3.5:设置layer=layer+1;
步骤S3.6:比较layer与集成电路总层数的大小,如果layer<=集成电路总层数,转入步骤S3.2;
步骤S3.7:退出流程,算法结束。
现以三角形单元作为网格单元,具体实施方法如下:
首先设立规则为:记所有热点状态为HOT的三角形单元存入的集合为热点区域集合H,记当前热点区域集合H中,至少有一个邻居三角形单元为0或邻居三角形单元的处理状态为FRESH的三角形单元组成的集合为外围三角形单元集合F,记标定当前热点区域的边界形成的集合为边界集合B中,将连通的三角形单元区域的电流密度最大值设置为Jmax,将每层版图的层序号设置为layer;三角形单元t的第k个(k=1,2,3)邻居三角形单元定义为共用三角形单元t第k个棱边的三角形单元,通常先对当前层的所有三角形单元进行编号(编号从1开始),则三角形单元的邻居三角形单元编号对应邻居三角形单元编号,如三角形单元t的编号为10,其周围三个三角形单元的编号分别为1、4、8,那么第10个三角形单元的三个邻居三角形单元分别为1、4、8,且编号为1、4、8的三角形单元均有一个共同的邻居三角形单元10。如果三角形单元t第k个棱边不存在与之共用棱边的三角形单元,那么该三角形单元t的第k个邻居三角形单元定义为0。
由此所述步骤S3;如图4(a)、图4(b)、图4(c),因该流程图过大故将其分为三个部分,具体包括如下步骤:
步骤S3.1:设置当前处理的热点区域为i=1,设置当前热点区域集合H为空,当前外围三角形单元集合F为空,设置当前处理层序号为layer=1;
步骤S3.2:对当前第layer层的所有三角形单元,计算各三角形单元的邻居三角形单元;设置当前处理的三角形单元v=1,设置当前电流密度最大值Jmax为0;设置当前标定边界集合Bi为空;设置当前第layer层的所有三角形单元处理状态为FRESH;
步骤S3.3:检查第v个三角形单元的状态;
步骤S3.3.A:如果所述第v个三角形单元的处理状态为DONE,或热点状态为COLD,设置v=v+1,转入步骤S3.4;
步骤S3.3.B:如果所述第v个三角形单元的热点状态为HOT,且所述三角形单元的处理状态为FRESH,比较所述第v个三角形单元的电流密度Jv 与当前电流密度最大值Jmax,Jv>Jmax,则更新Jmax,使得Jmax=Jv;Jv<=Jmax,则Jmax不变;
步骤S3.3.B.1:将所述第v个三角形单元加入到当前外围三角形单元集合F中去;
步骤S3.3.B.2:判断集合F是否为空,如果集合F为空,将当前Jmax作为当前热点区域Hi的最大电流密度,当前标定边界集合Bi作为当前热点区域Hi的标定边界,增加Hi到集合H,重置当前电流密度最大值Jmax为0,设置i=i+1,设置当前标定边界集合Bi为空,设置当前热点区域集合H为空,设置v=v+1,转入步骤S3.4;
步骤S3.3.B.3:如果集合F不为空,取出集合F中的任一个三角形单元p,并把所述三角形单元p从集合F中删除;
步骤S3.3.B.4:判断所述三角形单元p的处理状态,如果所述三角形单元p的处理状态为DONE,转入步骤S3.3.B.2;
步骤S3.3.B.5:若所述三角形单元p的处理状态为FRESH,找到三角形单元p的邻居三角形单元pk,设置k=1,k表示三角形单元p的第k个棱边,pk表示共用三角形单元p第k条棱边的邻居三角形单元,设置所述三角形单元p的处理状态为DONE;
步骤S3.3.B.6:判断pk是否等于零,当pk等于零,表示没有与所述三角形单元p的第k条棱边共用棱边的三角形单元,将所述三角形单元p第k条棱边加入到当前标定边界集合Bi中去,转入步骤S3.3.B.10;
步骤S3.3.B.7:当pk不等于零,判断pk处理状态, 如果pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.8:若pk的处理状态为FRESH,判断pk的热点状态, 如果pk的热点状态为COLD,将所述三角形单元p的第k条棱边加入到当前标定边界集合Bi中去,设定pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.9:如果pk热点状态为HOT,将pk加入到当前外围三角形单元集合F中去,比较pk的电流密度与当前电流密度最大值Jmax大小,如果Pk的电流密度不大于当前电流密度最大值Jmax,Jmax不更新,如果pk的电流密度大于当前电流密度最大值Jmax,更新Jmax为pk的电流密度;
步骤S3.3.B.10:设置k=k+1,判断k是否大于3,若k大于3则转入步骤S3.3.B.2,k若不大于3,则转到步骤S3.3.B.6;
步骤S3.4:比较v与当前第layer层的三角形单元数量的大小,如果v<当前第layer层的三角形单元数量,转入步骤S3.3;
步骤S3.5:如果v=当前第layer层的三角形单元数量,设置layer=layer+1;
步骤S3.6:比较layer与集成电路总层数的大小,如果layer<=集成电路总层数,转入步骤S3.2;
步骤S3.7:如果layer>集成电路总层数,退出流程,算法结束。
采用如上所述的方法进行标定,得到结果如图5所示的一个集成电路版图某层的局部网格剖分示意图,阴影部分的三角形单元的状态为HOT,没有阴影的三角形单元的状态为COLD,作为对比图图6为常规的采用矩形方框标定的电流密度超标区域,从图6中可以看出,采用常规标定方法包括了许多COLD区域,其标定结果是不准确的。图7为采用本申请的方法标定的电流密度超标的区域,从图7中能够准确标定电流密度超标区域。
第二方面,本申请提出一种集成电路版图电流密度超标区域标定系统,如图8所示,包括:电流密度计算模块、网格单元标识模块、超标区域边界标定模块; 所述电流密度计算模块、网格单元标识模块、超标区域边界标定模块依次顺序相连接;
所述电流密度计算模块,用于对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度;
所述网格单元标识模块,用于基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元;
所述超标区域边界标定模块,用于基于标识的电流密度超标的网格单元,采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域,同时针对每个连通的网格单元区域,设置没有邻居网格单元的网格单元对应的边作为所述连通的网格单元区域的边界。
所述电流密度计算模块,包括电场模型简化单元、电位计算单元、电流密度计算单元;各单元依次连接;
所述电场模型简化单元用于将多层集成电路直流电场的三维模型简化为多层直流电场二维模型,并对多层直流电场二维模型的各层集成电路版图进行网格剖分;
所述电位计算单元用于对所述多层直流电场二维模型形成的微分方程对应的泛函在剖分的网格单元上进行离散,取极值并令极值为零得到有限元刚度矩阵方程组,对所述有限元刚度矩阵方程组进行求解,得到集成电路每层平板上的电位分布;
所述电流密度计算单元用于根据所述集成电路每层平板上的电位分布,计算场域的电流密度分布,即每层版图中网格单元的电流密度。
所述网格单元标识模块,包括网格单元电流密度计算单元、网格单元状态判定单元;所述网格单元电流密度计算单元、网格单元状态判定单元依次顺序相连接;
所述网格单元电流密度计算单元用于基于网格单元,利用场域的电流密度分布公式,计算得到所有层的每个网格单元的电流密度;
所述网格单元状态判定单元用于对所有层的每个网格单元,判断其电流密度是否大于预设的电流密度阈值,如果大于所述阈值,则设置所述网格单元的热点状态为HOT,如果小于等于所述阈值,则设置热点状态为COLD。
所述超标区域边界标定模块,包括邻居搜索算法单元;
所述邻居搜索算法单元是通过如下步骤进行边界标定的:
步骤S3.1:设置当前处理的热点区域为i=1,设置当前热点区域集合H为空,当前外围网格单元集合F为空,设置当前处理层序号为layer=1;
步骤S3.2:对当前第layer层的所有网格单元,计算各网格单元的邻居网格单元;设置当前处理的网格单元v=1,设置当前电流密度最大值Jmax为0;设置当前标定边界集合Bi为空;设置当前第layer层的所有网格单元处理状态为FRESH;
步骤S3.3:检查第v个网格单元的状态;
步骤S3.3.A:如果所述第v个网格单元的处理状态为DONE,或热点状态为COLD,设置v=v+1,转入步骤S3.4;
步骤S3.3.B:如果所述第v个网格单元的热点状态为HOT,且所述网格单元的处理状态为FRESH,比较所述第v个网格单元的电流密度Jv 与当前电流密度最大值Jmax,Jv>Jmax,则更新Jmax,使得Jmax=Jv;Jv<=Jmax,则Jmax不变;
步骤S3.3.B.1:将所述第v个网格单元加入到当前外围网格单元集合F中去;
步骤S3.3.B.2:判断集合F是否为空,如果集合F为空,将当前Jmax作为当前热点区域Hi的最大电流密度,当前标定边界集合Bi作为当前热点区域Hi的标定边界,增加Hi到集合H,重置当前电流密度最大值Jmax为0,设置i=i+1,设置当前标定边界集合Bi为空,设置当前热点区域集合H为空,设置v=v+1,转入步骤S3.4;
步骤S3.3.B.3:如果集合F不为空,取出集合F中的任一个网格单元p,并把所述网格单元p从集合F中删除;
步骤S3.3.B.4:判断所述网格单元p的处理状态,如果所述网格单元p的处理状态为DONE,转入步骤S3.3.B.2;
步骤S3.3.B.5:找到网格单元p的Nbr个邻居网格单元p1,p2,pk,...pNbr
Figure 444530DEST_PATH_IMAGE016
,k表示网格单元p的第k个棱边,Nbr为网格单元p的棱边总个数,pk表示共用网格单元p的第k条棱边的邻居网格单元,设置所述网格单元p的处理状态为DONE,k=1;
步骤S3.3.B.6:判断pk是否等于零,当pk等于零,表示没有与所述网格单元p的第k条棱边共用棱边的网格单元,将所述网格单元p第k条棱边加入到当前标定边界集合Bi中去,转入步骤S3.3.B.10;
步骤S3.3.B.7:判断pk处理状态, 如果pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.8:判断pk的热点状态, 如果pk的热点状态为COLD,将所述网格单元p的第k条棱边加入到当前标定边界集合Bi中去,设定pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.9:将pk加入到当前外围网格单元集合F中去,比较pk的电流密度与当前电流密度最大值Jmax大小,如果pk的电流密度不大于当前电流密度最大值Jmax,Jmax不更新,如果pk的电流密度大于当前电流密度最大值Jmax,更新Jmax为pk的电流密度;
步骤S3.3.B.10:设置k=k+1,判断k是否大于Nbr,若k大于Nbr则转入步骤S3.3.B.2,k若不大于Nbr,则转到步骤S3.3.B.6;
步骤S3.4:比较v与当前第layer层的网格单元数量的大小,如果v<当前第layer层的网格单元数量,转入步骤S3.3;
步骤S3.5:设置layer=layer+1;
步骤S3.6:比较layer与集成电路总层数的大小,如果layer<=集成电路总层数,转入步骤S3.2;
步骤S3.7:退出流程,算法结束。
显然,本发明的上述实例仅仅是为清楚地说明本发明所做的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,凡是属于本发明的技术方案所引申出的显而易见的变化或变动仍处于本发明的保护范围之列。

Claims (8)

1.一种集成电路版图电流密度超标区域标定方法,其特征在于,包括以下步骤:
对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度;
基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元;
基于标识的电流密度超标的网格单元,采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域,同时针对每个连通的网格单元区域,设置没有邻居网格单元的网格单元对应的边作为所述连通的网格单元区域的边界;
所述采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域,包括如下步骤:
记所有热点状态为HOT的网格单元存入的集合为热点区域集合H,记集合H中,至少有一个邻居网格单元为0或邻居网格单元的热点状态为COLD的网格单元组成的集合为外围网格单元集合F;
步骤S3.1:设置当前处理的热点区域为i=1,设置当前热点区域集合H为空,当前外围网格单元集合F为空,设置当前处理层序号为layer=1;
步骤S3.2:对当前第layer层的所有网格单元,计算各网格单元的邻居网格单元;设置当前处理的网格单元v=1,设置当前电流密度最大值Jmax为0;设置当前标定边界集合Bi为空;设置当前第layer层的所有网格单元处理状态为FRESH;
步骤S3.3:检查第v个网格单元的状态;
步骤S3.3.A:如果所述第v个网格单元的处理状态为DONE,或热点状态为COLD,设置v=v+1,转入步骤S3.4;
步骤S3.3.B:比较所述第v个网格单元的电流密度Jv 与当前电流密度最大值Jmax,Jv>Jmax,则更新Jmax,使得Jmax=Jv;Jv<=Jmax,则Jmax不变;
步骤S3.3.B.1:将所述第v个网格单元加入到当前外围网格单元集合F中去;
步骤S3.3.B.2:判断集合F是否为空,如果集合F为空,将当前Jmax作为当前热点区域Hi的最大电流密度,当前标定边界集合Bi作为当前热点区域Hi的标定边界,增加Hi到集合H,重置当前电流密度最大值Jmax为0,设置i=i+1,设置当前标定边界集合Bi为空,设置当前热点区域集合H为空,设置v=v+1,转入步骤S3.4;
步骤S3.3.B.3:如果集合F不为空,取出集合F中的任一个网格单元p,并把所述网格单元p从集合F中删除;
步骤S3.3.B.4:判断所述网格单元p的处理状态,如果所述网格单元p的处理状态为DONE,转入步骤S3.3.B.2;
步骤S3.3.B.5:找到网格单元p的Nbr个邻居网格单元p1,p2,pk,...pNbr
Figure DEST_PATH_IMAGE001
,k表示网格单元p的第k个棱边,Nbr为网格单元p的棱边总个数,pk表示共用网格单元p的第k条棱边的邻居网格单元,设置所述网格单元p的处理状态为DONE,k=1;
步骤S3.3.B.6:判断pk是否等于零,当pk等于零, 表示没有与所述网格单元p的第k条棱边共用棱边的网格单元,将所述网格单元p第k条棱边加入到当前标定边界集合Bi中去,转入步骤S3.3.B.10;
步骤S3.3.B.7:判断pk处理状态, 如果pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.8:判断pk的热点状态, 如果pk的热点状态为COLD,将所述网格单元p的第k条棱边加入到当前标定边界集合Bi中去,设定pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.9:将pk加入到当前外围网格单元集合F中去,比较pk的电流密度与当前电流密度最大值Jmax大小,如果pk的电流密度不大于当前电流密度最大值Jmax,Jmax不更新,如果pk的电流密度大于当前电流密度最大值Jmax,更新Jmax为pk的电流密度;
步骤S3.3.B.10:设置k=k+1,判断k是否大于Nbr,若k大于Nbr则转入步骤S3.3.B.2,k若不大于Nbr,则转到步骤S3.3.B.6;
步骤S3.4:比较v与当前第layer层的网格单元数量的大小,如果v<当前第layer层的网格单元数量,转入步骤S3.3;
步骤S3.5:设置layer=layer+1;
步骤S3.6:比较layer与集成电路总层数的大小,如果layer<=集成电路总层数,转入步骤S3.2;
步骤S3.7:退出流程,算法结束。
2.根据权利要求1所述的集成电路版图电流密度超标区域标定方法,其特征在于,所述对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度,包括如下步骤:
将多层集成电路直流电场的三维模型简化为多层直流电场二维模型,并对多层直流电场二维模型的各层集成电路版图进行网格剖分;
对所述多层直流电场二维模型形成的微分方程对应的泛函在剖分的网格单元上进行离散,取极值并令极值为零得到有限元刚度矩阵方程组,对所述有限元刚度矩阵方程组进行求解,得到集成电路每层平板上的电位分布;
根据所述集成电路每层平板上的电位分布,计算场域的电流密度分布,即每层版图中网格单元的电流密度。
3.根据权利要求2所述的集成电路版图电流密度超标区域标定方法,其特征在于,所述将多层集成电路直流电场的三维模型简化为多层直流电场二维模型,具体计算如下:
多层集成电路直流电场的三维模型是指所述多层直流电场二维模型中电导率
Figure 929745DEST_PATH_IMAGE002
、电位u的分布均为三维空间坐标(x,y,z)的函数,即:
Figure DEST_PATH_IMAGE003
Figure 31623DEST_PATH_IMAGE004
,其满足以下方程(1)及边界条件(2):
Figure DEST_PATH_IMAGE005
(1)
Figure 201574DEST_PATH_IMAGE006
(2)
式(2)中,
Figure 550778DEST_PATH_IMAGE008
为第一类边界,n为第二类边界的法向,
Figure DEST_PATH_IMAGE009
为电位u在第一类边界
Figure 755363DEST_PATH_IMAGE008
上的值,用
Figure 781088DEST_PATH_IMAGE010
表示,
Figure DEST_PATH_IMAGE011
为外部电路的体电流密度;
针对所述多层集成电路直流电场的三维模型,建立各层集成电路直流电场二维模型的泛函:
Figure 939799DEST_PATH_IMAGE012
(3)
式中,所述h为金属层的厚度,
Figure DEST_PATH_IMAGE013
为网格单元e的电导率;
Figure 794491DEST_PATH_IMAGE014
为网格单元e的电位;
Figure DEST_PATH_IMAGE015
为网格单元e的面,
Figure 869895DEST_PATH_IMAGE016
为外部激励产生的表面电流密度,所述I(u)为泛函,
Figure DEST_PATH_IMAGE017
表示网格单元e的棱边。
4.根据权利要求1所述的集成电路版图电流密度超标区域标定方法,其特征在于,所述基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元,包括步骤如下:
基于网格单元,利用场域的电流密度分布公式,计算得到所有层的每个网格单元的电流密度;
对所有层的每个网格单元,判断其电流密度是否大于预设的电流密度阈值,如果大于所述阈值,则设置所述网格单元的热点状态为HOT,如果小于等于所述阈值,则设置热点状态为COLD。
5.根据权利要求1所述的集成电路版图电流密度超标区域标定方法,其特征在于,所述网格单元为任一形状组成的单元。
6.一种集成电路版图电流密度超标区域标定系统,其特征在于,所述系统包括:电流密度计算模块、网格单元标识模块、超标区域边界标定模块;所述电流密度计算模块、网格单元标识模块、超标区域边界标定模块依次顺序相连接;
所述电流密度计算模块,用于对集成电路版图进行网格剖分,采用电磁场数值计算方法,计算每层版图中网格单元的电流密度;
所述网格单元标识模块,用于基于每层版图中网格单元的电流密度,标识出电流密度超标的网格单元;
所述超标区域边界标定模块,用于基于标识的电流密度超标的网格单元,采用邻居搜索方法标识出连通的网格单元,形成连通的网格单元区域,同时针对每个连通的网格单元区域,设置没有邻居网格单元的网格单元对应的边作为所述连通的网格单元区域的边界;
所述超标区域边界标定模块,包括邻居搜索算法单元;
所述邻居搜索算法单元是通过如下步骤进行超标区域边界标定的:
步骤S3.1:设置当前处理的热点区域为i=1,设置当前热点区域集合H为空,当前外围网格单元集合F为空,设置当前处理层序号为layer=1;
步骤S3.2:对当前第layer层的所有网格单元,计算各网格单元的邻居网格单元;设置当前处理的网格单元v=1,设置当前电流密度最大值Jmax为0;设置当前标定边界集合Bi为空;设置当前第layer层的所有网格单元处理状态为FRESH;
步骤S3.3:检查第v个网格单元的状态;
步骤S3.3.A:如果所述第v个网格单元的处理状态为DONE,或热点状态为COLD,设置v=v+1,转入步骤S3.4;
步骤S3.3.B:比较所述第v个网格单元的电流密度Jv 与当前电流密度最大值Jmax,Jv>Jmax,则更新Jmax,使得Jmax=Jv;Jv<=Jmax,则Jmax不变;
步骤S3.3.B.1:将所述第v个网格单元加入到当前外围网格单元集合F中去;
步骤S3.3.B.2:判断集合F是否为空,如果集合F为空,将当前Jmax作为当前热点区域Hi的最大电流密度,当前标定边界集合Bi作为当前热点区域Hi的标定边界,增加Hi到集合H,重置当前电流密度最大值Jmax为0,设置i=i+1,设置当前标定边界集合Bi为空,设置当前热点区域集合H为空,设置v=v+1,转入步骤S3.4;
步骤S3.3.B.3:如果集合F不为空,取出集合F中的任一个网格单元p,并把所述网格单元p从集合F中删除;
步骤S3.3.B.4:判断所述网格单元p的处理状态,如果所述网格单元p的处理状态为DONE,转入步骤S3.3.B.2;
步骤S3.3.B.5:找到网格单元p的Nbr个邻居网格单元p1,p2,pk,...pNbr
Figure 489357DEST_PATH_IMAGE001
,k表示网格单元p的第k个棱边,Nbr为网格单元p的棱边总个数,pk表示共用网格单元p的第k条棱边的邻居网格单元,设置所述网格单元p的处理状态为DONE,k=1;
步骤S3.3.B.6:判断pk是否等于零,当pk等于零, 表示没有与所述网格单元p的第k条棱边共用棱边的网格单元,将所述网格单元p第k条棱边加入到当前标定边界集合Bi中去,转入步骤S3.3.B.10;
步骤S3.3.B.7:判断pk处理状态, 如果pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.8:判断pk的热点状态, 如果pk的热点状态为COLD,将所述网格单元p的第k条棱边加入到当前标定边界集合Bi中去,设定pk的处理状态为DONE,转入步骤S3.3.B.10;
步骤S3.3.B.9:将pk加入到当前外围网格单元集合F中去,比较pk的电流密度与当前电流密度最大值Jmax大小,如果pk的电流密度不大于当前电流密度最大值Jmax,Jmax不更新,如果pk的电流密度大于当前电流密度最大值Jmax,更新Jmax为pk的电流密度;
步骤S3.3.B.10:设置k=k+1,判断k是否大于Nbr,若k大于Nbr则转入步骤S3.3.B.2,k若不大于Nbr,则转到步骤S3.3.B.6;
步骤S3.4:比较v与当前第layer层的网格单元数量的大小,如果v<当前第layer层的网格单元数量,转入步骤S3.3;
步骤S3.5:设置layer=layer+1;
步骤S3.6:比较layer与集成电路总层数的大小,如果layer<=集成电路总层数,转入步骤S3.2;
步骤S3.7:退出流程,算法结束。
7.根据权利要求6所述的集成电路版图电流密度超标区域标定系统,其特征在于,所述电流密度计算模块,包括电场模型简化单元、电位计算单元、电流密度计算单元;所述电场模型简化单元、电位计算单元、电流密度计算单元依次顺序相连接;
所述电场模型简化单元用于将多层集成电路直流电场的三维模型简化为多层直流电场二维模型,并对多层直流电场二维模型的各层集成电路版图进行网格剖分;
所述电位计算单元用于对所述多层直流电场二维模型形成的微分方程对应的泛函在剖分的网格单元上进行离散,取极值并令极值为零得到有限元刚度矩阵方程组,对所述有限元刚度矩阵方程组进行求解,得到集成电路每层平板上的电位分布;
所述电流密度计算单元用于根据所述集成电路每层平板上的电位分布,计算场域的电流密度分布,即每层版图中网格单元的电流密度。
8.根据权利要求6所述的集成电路版图电流密度超标区域标定系统,其特征在于,所述网格单元标识模块,包括网格单元电流密度计算单元、网格单元状态判定单元;所述网格单元电流密度计算单元、网格单元状态判定单元依次顺序相连接;
所述网格单元电流密度计算单元用于基于网格单元,利用场域的电流密度分布公式,计算得到所有层的每个网格单元的电流密度:
所述网格单元状态判定单元用于对所有层的每个网格单元,判断其电流密度是否大于预设的电流密度阈值,如果大于所述阈值,则设置所述网格单元的热点状态为HOT,如果小于等于所述阈值,则设置热点状态为COLD。
CN202210161308.9A 2022-02-22 2022-02-22 一种集成电路版图电流密度超标区域标定方法及系统 Active CN114218888B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210161308.9A CN114218888B (zh) 2022-02-22 2022-02-22 一种集成电路版图电流密度超标区域标定方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210161308.9A CN114218888B (zh) 2022-02-22 2022-02-22 一种集成电路版图电流密度超标区域标定方法及系统

Publications (2)

Publication Number Publication Date
CN114218888A CN114218888A (zh) 2022-03-22
CN114218888B true CN114218888B (zh) 2022-05-10

Family

ID=80709248

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210161308.9A Active CN114218888B (zh) 2022-02-22 2022-02-22 一种集成电路版图电流密度超标区域标定方法及系统

Country Status (1)

Country Link
CN (1) CN114218888B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116451643B (zh) * 2023-06-12 2023-08-25 北京智芯仿真科技有限公司 一种用于集成电路供电网络诊断定位的方法和系统
CN116522854B (zh) * 2023-07-05 2023-09-01 北京智芯仿真科技有限公司 多供电系统的集成电路仿真模型生成与计算方法及系统
CN117828908B (zh) * 2024-03-06 2024-05-24 苏州易来科得科技有限公司 反应电流密度的计算方法,应用,装置,电子设备和计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103268635A (zh) * 2013-05-15 2013-08-28 北京交通大学 一种几何网格场景模型的分割及语义标注方法
CN110688820A (zh) * 2019-12-10 2020-01-14 北京唯智佳辰科技发展有限责任公司 一种集成电路电源网络层版图热点的检测方法及装置
CN112044074A (zh) * 2020-09-04 2020-12-08 网易(杭州)网络有限公司 对非玩家角色寻路的方法、装置、存储介质及计算机设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6424933B1 (en) * 2000-03-17 2002-07-23 Vicinity Corporation System and method for non-uniform scaled mapping

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103268635A (zh) * 2013-05-15 2013-08-28 北京交通大学 一种几何网格场景模型的分割及语义标注方法
CN110688820A (zh) * 2019-12-10 2020-01-14 北京唯智佳辰科技发展有限责任公司 一种集成电路电源网络层版图热点的检测方法及装置
CN112044074A (zh) * 2020-09-04 2020-12-08 网易(杭州)网络有限公司 对非玩家角色寻路的方法、装置、存储介质及计算机设备

Also Published As

Publication number Publication date
CN114218888A (zh) 2022-03-22

Similar Documents

Publication Publication Date Title
CN114218888B (zh) 一种集成电路版图电流密度超标区域标定方法及系统
CN109360185B (zh) 一种版图测试图形提取方法、装置、设备及介质
JP3686367B2 (ja) パターン形成方法および半導体装置の製造方法
US8316327B2 (en) Methods of optical proximity correction
EP2926364B1 (en) Metal density distribution for double pattern lithography
CN114357941B (zh) 一种集成电路版图电流密度超标区域优化方法及系统
US12068305B2 (en) Multiple fin height integrated circuit
US11270057B1 (en) Semiconductor device including regions for reducing density gradient effect and method of forming the same
CN114357942A (zh) 基于间断有限元法的集成电路互连线寄生电容提取方法
CN117852481B (zh) 一种集成电路版图网表信息的快速确定方法及系统
CN110187611B (zh) 一种晶圆上曝光区域的排布方法
CN118013796A (zh) 一种基于温度场重建法的多芯片并联模块快速热建模方法
US11657202B2 (en) Aware variable fill pattern generator
CN211628000U (zh) 一种光罩
CN101315647B (zh) 优化硅片中芯片布局的方法和装置
CN100592494C (zh) 修正接触孔金属覆盖层布图设计的方法
CN104050309B (zh) 主图案和切割图案的布局优化
CN210776174U (zh) 组合光罩
US7100129B1 (en) Hierarchical gcell method and mechanism
US11468656B2 (en) Hierarchical graph-based domain selection algorithm to improve diversity
CN104918412B (zh) 一种电路板的布局方法及装置
CN106021703A (zh) 版图设计中的权重线宽的提取方法
CN117556777B (zh) 芯片的三维建模方法、装置、电子设备及存储介质
JP3959212B2 (ja) マスクパターン補正方法とそれを用いた露光用マスク
US20240347458A1 (en) Semiconductor device and method of manufacturing the same

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