一种提取电路寄生参数的方法
【专利摘要】本发明涉及一种提取电路寄生参数的方法,其包括:建立芯片级集成电路的三维模型;对该三维模型进行逻辑操作并设置该三维模型中的层参量;设置电流流入/流出位置,编辑运行条件和监视进度,使得三维模型建立和芯片电路寄生参数提取自动化;开始仿真该芯片电路,并提取相应的芯片电路寄生参数。将计算所得的寄生参数,反馈到集成电路设计过程,可以更加准确地估计该芯片电路的延时,从而避免实际延时与预计延时相差较大的情况。确保芯片的工作频率能够达到额定运行状态,并且该芯片能够正常工作。
【专利说明】一种提取电路寄生参数的方法
【技术领域】
[0001]本发明涉及分析芯片级集成电路的【技术领域】,特别是涉及一种频率在5GHz以下、精度要求高并且包含电感参量的芯片级集成电路的寄生参数提取方法。
【背景技术】
[0002]随着集成电路工艺节点的不断缩小,器件结构也推陈出新,集成电路设计中的寄生效应除了对芯片的信号完整性,可靠性造成影响外,对信号时序、噪音和功耗方面的影响也不断增大。因此,在进行寄生参数提取时,提取参数要求得精度越来越高。相比于传统
2.5维几何图形提取的方法,利用场求解器直接对3维电路结构进行全波电磁场仿真,求解出的寄生参数精度更高。但当电路规模较大时,全波场求解花费的时间成本也是相当高的。因此,对提取精度和提取时间的两方面折衷后,采用Q3D extractor对3维电路结构的电场和磁场分别建立方程求解的准静态电磁场仿真提取寄生参数的方法,既能提高提取精度,也使仿真时间不至于过长。另外,采用分布式计算,超级计算机等技术也大大提高了其运算能力和速度,使得追求更高的精度成为可能。
[0003]中国专利申请CN 103164572 A公开了一种用于集成电路互连线寄生电容的建模方法。所述的建模方法为:针对一个给定互连线结构,用有限元法求其寄生电容的一阶、二阶敏感度,建立对应的二阶寄生电容基础表达式,并用所述表达式计算设计尺寸参数有效范围内若干计算点的寄生电容初值,再用有限元场求解器直接算出这些计算点的寄生电容值,把相同点的这两个电容值相减,得到一系列误差值,用这些误差值拟合出一个误差修正表达式,把此误差修正表达式叠加到之前得到的二阶寄生电容基础表达式上,最终得到所述互连线结构更为精确的寄生电容表达式。然而,此发明的建模方法所针对的对象是集成电路中的任一互连线结构,然后通过有限元场求解器计算若干计算点之间的寄生电容,即经过正交验证后的计算点之间的寄生电容,各个元器件之间以及各互连线之间的连接所造成的寄生参数误差通过修正误差来避免,由此得到的寄生电容表达式的误差将取决于修正误差的精度;另外,此发明只能够应用于提取寄生电容的情况,各元器件之间的派生电感以及集成电路的寄生电感则不能通过此方法所得的计算公式来确定。
【发明内容】
[0004]本发明的目的在于提供一种在较短的时间内提取更高精度的芯片级寄生参数的方法。具体地,本发明可以通过建立一套适用于Q3D接口的Python脚本,可针对不同工艺、不同结构的集成电路物理设计提取寄生参数,可操作性和可重复性强。
[0005]本发明的目的可以通过一种提取电路寄生参数的方法来实现,具体包括以下步骤:
[0006](I)根据芯片电路的物理设计,读取该芯片电路的二维版图;
[0007](2)根据该二维版图以及该电路的高度和/或厚度信息,建立相对应的芯片电路的三维模型,其中该芯片电路的各元器件在该三维模型中表示为若干不同的层;
[0008](3)对该三维模型执行逻辑操作并赋予属性参量;
[0009](4)根据该物理设计,设置该三维模型的电流流入/流出位置;
[0010](5)启动场求解器,仿真该芯片电路的运行情况,并提取该芯片电路的寄生参数。
[0011]在一实施例中,步骤(3)中的该逻辑操作包括平移该层、扩展该层、逻辑相交/相减该层的重叠部分、以及合并同类型的该层。
[0012]在一实施例中,步骤(3)中的该逻辑操作包括根据该物理设计,在该三维模型中添加相对应的介质层和钝化层。
[0013]在一实施例中,步骤(3)中的该属性参量根据该芯片电路的导体材质进行赋值。
[0014]在一实施例中,步骤(4)中的该电流流入/流出位置为该芯片电路的输入/输出引线。
[0015]在一实施例中,步骤(5)中的该寄生参数包括电容矩阵、所测导体的电感、电阻,所述寄生参数构成等效电路模型。
[0016]在一实施例中,该方法进一步包括:设置仿真模拟过程的运行条件和监视进度,该芯片电路根据该运行条件自动建立相应的三维模型并开始仿真模拟过程,根据该监视进度检查所述仿真模拟过程是否存在错误;若该仿真模拟过程发生错误时,该场求解器自动发出错误警报,并输出当前计算结果和错误位置。
【专利附图】
【附图说明】
[0017]图1是根据本发明实施例的方法流程图。
【具体实施方式】
[0018]下面将结合附图以及具体实施方法来详细说明本发明,在本发明的示意性实施及说明用来解释本发明,但并不作为对本发明的限定。
[0019]如图1所示,在步骤I中,使用者可以根据芯片级集成电路的具体物理设计,读取该芯片电路的二维版图文件。在本实施例中,由于GDS文件是集成电路版图设计中最常用的用语言描述图形数据的文件格式,因此GDS文件作为标准单元模型而被读取。其中,标准单元是指IC半定制设计中的已经经过验证的逻辑单元电路,例如与非门电路、加法器电路等。更复杂的芯片级集成电路则可采用不同的标准单元搭建而成,在设计芯片级集成电路的版图时,可以通过合理组合标准单元的GDS,从而得到所需的芯片电路二维版图GDS文件。另外,GDS文件还可以包括该芯片级集成电路的不同掩膜层的二维版图信息。
[0020]在步骤2中,使用者可根据芯片电路的高度和/或厚度信息,在各个二维版图GDS文件的基础上,建立相对应的芯片电路的三维模型。在本实施例中,可以将芯片电路的高度和/或厚度信息制作成Layer mapping, tech文件,其中该高度和/或厚度信息在该Layermapping, tech文件中表示为相对应的层高度和/或厚度,然后Layer mapping, tech文件与⑶S文件一起导入场求解器中,即可得到芯片电路的初步三维模型。
[0021]在本实施例中,选用Q3D Extractor作为有限元场求解器,其属于准静态的电磁场仿真软件,即其仿真结果只在特定的频率范围内是准确的,其中有限元法是其中一种常用的计算Maxwell方程组数值的方法;另外,本发明在提取电路寄生参数时,还会对Maxwell方程组进行简化处理。因此,可以确定在本实施例中Q3D的适用频率上限为5GHz。当一并导Λ⑶S文件和Layer mapping, tech文件时,首先导入⑶S文件,然后根据Layer mapping,tech文件的文本信息,有条件地将关联变量从Layer mapping, tech文件传递到⑶S文件,从而得到芯片电路的初步三维模型。
[0022]上述初步三维模型并不包括芯片电路的介质层和钝化层等。在步骤3中,可以使用场求解器Q3D添加相对应的介质层和钝化层等。
[0023]通过这种设置,可以得到更接近实际的芯片电路结构的三维模型,使得在后续的仿真步骤中,当芯片电路处于运行状态时,Q3D可以利用仿真度高的三维模型计算得出更精确的电路寄生参数。
[0024]由于上述初步三维模型是基于⑶S 二维版图文件和Layer mapping, tech文件中的高度和/或厚度信息简单形成的三维模型,在该三维模型中,芯片电路中的一部分元器件可能会产生失真、干涉、相离等现象。当三维模型存在错误时,场求解器Q3D不能进行仿真。在步骤4中,使用者可以使用Q3D对该三维模型中的各个层进行逻辑操作,例如:当元器件的尺寸与设计要求不符时,可以扩展该层;当元器件之间发生相离时,可以平移该层;当元器件之间发生干涉时,可以根据实际情况,对发生干涉的元器件执行相交/相减操作;当紧贴的或发生干涉的元器件是同类型元器件时,可以根据实际情况合并同类型元器件。
[0025]在步骤5中,可以使用场求解器Q3D为导体层设置材质参量。考虑到不同的导体材质具有不同的导电率,在计算电路寄生参数时,导电层的导电率是非常重要的参量。利用Q3D建立芯片电路的三维模型时,可以对该三维模型中的各个层赋值,即为各个层设置相对应的导体材质。
[0026]在步骤6中,根据该芯片电路的物理设计,可以定义电流流入位置和电流流出位置。该芯片电路可包括一个或多个输入/输出引线。这意味着,该芯片电路可能具有至少一种有效电连接方式,并且当该芯片电路以不同的电连接方式进行连接时,电流流经其内部的电路结构也会不同,也就是说,该芯片电路以不同的电连接方式连接到电源时,其所起的等效电阻作用及其内部衍生的寄生参数也会不同。因此,在进行仿真模拟之前,有必要定义电流流入位置和电流流出位置。一般地,可以根据实际的电连接方式,将电流流入位置设置为source,电流流出位置为sink。
[0027]在步骤7中,启动场求解器Q3D,仿真该芯片电路的运行情况,并提取该芯片电路的寄生参数。在仿真过程中,仿真该三维模型可模拟得到该芯片电路的正常运行状态,其中模拟的运行条件和监视进度可以通过程序,例如python程序语言脚本,进行设置和/或限定。另外,还可以使用python,实现芯片电路二维|旲型建立和芯片电路寄生参数提取的自动化。
[0028]在一实施例中,首先将source和sink的位置输入到python程序脚本,同时在该python程序脚本中编辑电源、频率、监视进度如运行时间、计算精度、迭代次数等,然后开始运行场求解器Q3D的仿真功能,Q3D即可计算该芯片电路在特定运行条件下的寄生参数,例如电容矩阵、所测导体的电感、电阻等,还可以输出由这些寄生参数构成的等效电路模型。
[0029]另外,在python程序脚本中编辑监视进度,还可以检查在仿真过程中,该芯片电路是否出现运行错误。通过监察一定的对象,Q3D可以根据python程序脚本中的条件语句,判定该芯片电路是否发生错误,并且一旦错误发生,Q3D可立即停止仿真,输出当前的寄生参数计算结果、发生错误的位置,以便于使用者根据输出数据分析该三维模型中的错误并进行修正。
[0030]由于场求解器Q3D使用有限元分析方法来计算芯片级集成电路的寄生参数,并且考虑到本发明的目的在于提供闻精度的芯片电路寄生参数,控制Q3D所提取的电路寄生参数的误差范围相当重要。有限元分析方法会首先根据激励频率,自动划分自适应网格并计算结构参量矩阵;然后根据使用者设置的参量,自动搜寻分析对象中场值梯度最大的区域,将该区域进一步细化划分。完成划分之后,Q3D才会计算电路寄生参数、计算并分析误差值、细化划分网格并重新迭代,最终得到符合精度要求的最终计算结果。
[0031]其中,在自适应划分网格以及细分划分网格的过程中,可以通过设置以下参数,以控制Q3D提取电路寄生参数的计算结果精度:
[0032](I)误差百分比(Percent Error):
[0033]误差百分比是确定自适应算法停止的标准,用来控制所期望的求解精度。在每一步的自适应求解过程中,Q3D会计算所有参数矩阵,并且会对当前矩阵和上一步所计算的矩阵进行误差计算。只有当误差满足要求时,才停止自适应算法,否则将再继续划分网格。例如,当前矩阵中求解归一化后的参数矩阵为5?,则有如下表达式:
【权利要求】
1.一种提取电路寄生参数的方法,具体包括以下步骤: (1)根据芯片电路的物理设计,读取所述芯片电路的二维版图; (2)根据所述二维版图以及所述电路的高度和/或厚度信息,建立相对应的芯片电路的三维模型,其中所述芯片电路的各元器件在所述三维模型中表示为若干不同的层; (3)对所述三维模型执行逻辑操作并赋予属性参量; (4)根据所述物理设计,设置所述三维模型的电流流入/流出位置; (5)启动场求解器,仿真所述芯片电路的运行情况,并提取所述芯片电路的寄生参数。
2.根据权利要求1所述的方法,其特征在于,所述步骤(3)中的所述逻辑操作包括平移所述层、扩展所述层、逻辑相交/相减所述层的重叠部分、以及合并同类型的所述层。
3.根据权利要求1所述的方法,其特征在于,所述(3)中的所述逻辑操作包括根据所述物理设计,在所述三维模型中添加相对应的介质层和钝化层。
4.根据权利要求1所述的方法,其特征在于,所述(3)中的所述属性参量根据所述芯片电路的导体材质进行赋值。
5.根据权利要求1所述的方法,其特征在于,所述(4)中的所述电流流入/流出位置为所述芯片电路的输入/输出引线。
6.根据权利要求1所述的方法,其特征在于,所述(5)中的所述寄生参数包括电容矩阵、所测导体的电感、电阻,所述寄生参数构成等效电路模型。
7.根据权利要求1所述的方法,进一步包括: 设置仿真模拟过程的运行条件和监视进度; 所述芯片电路根据所述运行条件自动建立相应的三维模型并开始仿真模拟过程; 根据所述监视进度检查所述仿真模拟过程是否存在错误,若所述仿真模拟过程发生错误时,所述场求解器自动发出错误警报,并输出当前计算结果和错误位置。
【文档编号】G06T17/00GK104133955SQ201410361292
【公开日】2014年11月5日 申请日期:2014年7月25日 优先权日:2014年7月25日
【发明者】粟涛, 陈弟虎, 王政集 申请人:中山大学