一种寄生参数提取方法与流程

文档序号:11262048阅读:540来源:国知局
一种寄生参数提取方法与流程

本发明是申请号码为201510015007.5,申请日为2015年1月13日,申请类型为发明,申请名称为一种基于马尔科夫转移矩阵库的寄生电阻提取方法的分案申请。

本发明涉及寄生参数提取领域,尤其涉及一种寄生参数提取方法。



背景技术:

互联线寄生参数提取是当今集成电路设计中非常重要的一个环节。集成电路设计者通过寄生参数提取工具软件得到集成电路中互联线上的电阻、电容等寄生参数,再以此来得到该集成电路的时延和功耗,来判断其设计是否在功能、频率和功耗方面达到要求,是否需要对原设计进行改动和优化。事实上,当今的集成电路设计需要多次的设计或设计优化,其寄生参数提取和时延功耗分析才能达到最初的标准,开始进行流片即芯片生产。

22纳米甚至更先进的芯片工艺流程给互联线寄生参数提取带来了巨大的挑战,使集成电路设计者更难设计出更快速,更低功耗的芯片。这个挑战的根源在于寄生参数提取的eda软件:22纳米工艺流程中的硅片上的各种效应,更高的时钟频率,更大的电路版图和三维集成电路使寄生参数提取软件在精确度、可靠度和运行时间上都有巨大的麻烦。集成电路设计者不得不通过增加其设计的冗余度来应对以上的问题,以保证其设计的可靠性,但这样就降低了设计出的芯片的时钟频率,增加了芯片的功耗。

关于提取寄生电阻参数,传统寄生电阻提取方法分为两类:

1.运用数值方法细分网线,直接求解网线上的稳恒电流场;

2.根据工艺流程生成模型及该模型下的电阻库,再划分电路设计中的网线,利用电阻库对具体的电路设计进行提取。

传统方法1对每个设计的每条网线都要求解稳恒电流场,计算量巨大,特别是网线比较大时。对于当今真实的集成电路设计,无法用此方法在实用的时间进行提取。

传统方法2在每个工艺流程下生成、构造模型及电阻库,再利用电阻库提取真实设计中的电阻。电阻库中的端口或者是真实提取中的端口,或者是网线被划分部分的整个交界面。端口的电位必须是均匀的,而网线被划分部分的交界面上的电位不一定均匀,这就造成了误差。而本发明可以将端口划分成多个边界元,允许同一端口上不同的边界元的电位不等,减小交界面电位不均匀所带来的误差。

审查员在第一次审查意见通知书中提出:由孙泽武等在《复旦学报(自然科学版)》第1期发表的《考虑悬浮哑元的结构化随机行走电容提取算法》公开了一种考虑悬浮哑元的结构化随机行走电容提取算法,并具体提出了一种基于随机行走的寄生电容提取算法,利用区域分解技术,将哑元区域划分为多个子区域,通过对具有相同结构的标准子区域建立宏模型,并计算马尔可夫转移矩阵,利用转移概率实现哑元区域内的“行走”,以提取寄生电容。虽然寄生电容和寄生电阻都属于寄生参数,但是该文章没有公开如何将电阻模型生成马尔可夫转移矩阵的具体内容,因此寄生电容的提取方法并不能解决提取寄生电阻的技术问题。



技术实现要素:

针对现有技术之不足,本发明提出一种基于马尔可夫转移矩阵(markovtransitionmatrix)库的寄生电阻提取方法,以提高新工艺制程下的精确度和可靠性,满足目前集成电路设计所面临的更高要求。

一种基于马尔可夫转移矩阵库的寄生电阻提取方法,方法包括以下步骤:

由模型模板和工艺参数文件构造电阻模型;

由电阻模型生成马尔可夫转移矩阵;

存储同一工艺制程下的各个电阻模型的马尔可夫转移矩阵至马尔可夫转移矩阵库中;和

利用马尔可夫转移矩阵库提取该工艺制程下的集成电路设计中的寄生电阻。

其中,马尔可夫转移矩阵满足的充分必要条件为:

所有元素都是非负的;并且每行元素之和为1;对角元为0。

其中,电阻模型生成马尔可夫转移矩阵的步骤包括:

将指定的电阻模型边界划分为若干边界元;

将电阻模型中的端口和模型边界元都作为端口,计算电阻模型中的端口和/或模型边界元的边界电导矩阵;和

转换边界电导矩阵为马尔可夫转移矩阵。

其中,模型边界元为导体内部与其它模型相邻边界的边界元。

其中,电阻模型包括金属层两端口模型、金属层一端口模型、金属层三端口模型、金属层连通孔模型、金属层一端口连通孔模型和通孔模型。

其中,转换边界电导矩阵为马尔可夫转移矩阵的步骤包括:利用公式转换边界电导矩阵为马尔可夫转移矩阵,其中m是马尔可夫转移矩阵,是边界电导矩阵,i是与边界电导矩阵同维的单位矩阵,是对矩阵取对角运算,是对取对角运算后的边界电导矩阵求逆。

其中,利用马尔可夫转移矩阵库提取该工艺制程下的集成电路设计中的寄生电阻的步骤包括:

读入相应工艺制程的马尔可夫转移矩阵库;

读入及翻译集成电路版图中的全部或部分网线并将每一条读入的互联网线划分为若干条子网线;

读入与每个子网线相对应的工艺制程的马尔可夫转移矩阵;和

由马尔可夫转移矩阵计算出端口间的电导

从而取端口间的电导的倒数为网线的寄生电阻。

其中,由马尔可夫转移矩阵计算出端口间的电导,从而取端口间的电导的倒数为网线的寄生电阻的步骤包括:

设定第一端口的电位为0v,第二端口的电位为1v,其他端口为自然表面;

由与第一端口连接的形体块对应的马尔可夫转移矩阵得到从与第一端口相邻的始发边界元跳转至其相邻边界元的概率;

根据跳转至其相邻边界元的概率,随机选择跳转的目标边界元;

以始发边界元为原点开始跳转并以目标边界元为下一个原点根据其对应的跳转概率不停跳转直至跳转到第一端口或第二端口上停止;

重复以始发边界元为原点的跳转步骤多次;

统计以第一端口为终点的次数n1,统计以第二端口为终点的次数n2;

根据始发边界元对应的边界电导矩阵得到第一端口与始发边界元之间的电导

计算第一端口与第二端口之间的电导即第一端口的电流

取第一端口与第二端口之间的电导的倒数为第一端口与第二端口之间的电阻

其中,所述读入及翻译集成电路版图中的全部或部分网线并将每一条读入的互联网线划分为若干条子网线的步骤中包括:

转化集成电路版图为内部按空间区域索引的数据格式。

其中,所述读入及翻译集成电路版图中的全部或部分网线并将每一条读入的互联网线划分为若干条子网线的步骤中包括:

由集成电路设计版图和对应工艺制程下的工艺参数文件共同得到实际硅片上的电路板图。

其中,读入及翻译集成电路版图的步骤中包括:转化集成电路版图为内部按空间区域索引的数据格式。

本发明的技术效果

本发明利用马尔可夫转移矩阵库和运用随机漫步法进行寄生电阻参数提取的方法都是严格基于麦克斯韦方程的变体形式,可以完全控制计算过程中的误差,保证了精度与可靠性。本发明中一个工艺流程只建立一次马尔可夫转移矩阵库,绝大部分的计算过程在建库时进行,而不是在使用随机漫步法计算并提取寄生参数时进行,故能达到非常高的效率。本发明的马尔可夫转移矩阵库与模型匹配法里面的寄生参数库不同,本发明的模型为基本的导体或端口,能够覆盖电路中所有可能出现的情况;而模型匹配法必须要考虑多个导体之间的耦合关系,模型的组合复杂,无法以可实际接受的数量的模型来覆盖所有可能出现的电路版图情况。

附图说明

图1是基于马尔可夫转移矩阵库的寄生电阻提取方法的流程图;

图2是金属层两端口模型的示意图;

图3是金属层一端口模型的示意图;

图4是金属层三端口模型的示意图;

图5是金属层连通孔模型的示意图;

图6是金属层一端口连通孔模型的示意图;

图7是通孔模型的示意图;

图8是集成电路局部俯视图;

图9是第一金属层上的形体块俯视图;

图10是第二金属层上的形体块俯视图;和

图11是通孔层上的形体块俯视图。

附图标记列表

1:形体块12:形体块23:形体块3

4:形体块45:形体块56:形体块6

7:形体块78:形体块89:形体块9

10:形体块1011:形体块1112:形体块12

13:形体块1314:形体块1415:形体块15

16:形体块1617:第一端口18:第二端口

19:第三端口20:第一金属层21:始发边界元

30:第二金属层40:通孔层

具体实施方式

下面结合附图进行详细说明。

图1是基于马尔可夫转移矩阵库的寄生电阻提取方法的流程图。一种基于马尔可夫转移矩阵库的寄生电阻提取方法如图1所示,包括以下步骤:

由模型模板和工艺参数文件构造电阻模型;

由所述电阻模型生成马尔可夫转移矩阵;

存储同一工艺制程下的各个电阻模型的马尔可夫转移矩阵至马尔可夫转移矩阵库中;和

利用马尔可夫转移矩阵库提取该工艺制程下的集成电路设计中的寄生电阻。

具体地,将集成电路模型模板和工艺参数文件的工艺特征尺寸的数据读入或输入计算机扫描程序,构造成电阻模型。计算电阻模型的边界电导矩阵并将其转化为马尔可夫转移矩阵,每一个电阻模型对应一个马尔可夫转移矩阵;存储同一工艺制程下的各个电阻模型的马尔可夫转移矩阵至马尔可夫转移矩阵库中;利用马尔可夫转移矩阵库按照一定的方法步骤提取集成电路版图中的寄生电阻。

在本发明中,工艺参数文件一般由集成电路生产商提供,是描述某个集成电路工艺制程下导体、介质的几何与物理特征等相关参数的文件。每一个集成电路工艺制程对应一个工艺参数文件。集成电路工艺制程是指集成电路的精细度。精度越高,生产工艺越先进,例如28纳米工艺制程、22纳米工艺制程。工艺制程的纳米是指ic内电路与电路之间的距离,密度愈高的ic电路设计,意味着在同样大小面积的ic中,可以拥有密度更高、功能更复杂的电路设计。

其中,马尔可夫转移矩阵满足的充分必要条件为:

所有元素都是非负的,并且每行元素之和为1,对角元为0。

一般情况下,马尔可夫转移矩阵需要满足的条件为:矩阵所有元素都是非负的,并且各行元素之和等于1,各元素用概率表示,在一定条件下是互相转移的。而在本发明中,马尔可夫转移矩阵还必须满足的条件为:矩阵的对角元为0。

其中,电路模型生成马尔可夫转移矩阵的步骤包括:

将指定的模型边界划分为若干边界元;

将模型中的端口和模型边界元都作为端口,计算模型中的端口和/或模型边界元的边界电导矩阵;和

转换边界电导矩阵为马尔可夫转移矩阵。

一个电阻模型为一块导体,其表面被视为端口的边界元或自然表面。模型边界元是导体内部与其它模型的边界相邻的边界元。在任何时候,自然表面上没有垂直于表面的电流,即没有法向电流。在数值计算中,没有法向电流的自然表面被称为纽曼边界元或自然边界元,为导体与介质之间的边界元。本发明将指定的模型边界划分为若干边界元,允许同一个端口的边界元的电位不等,减小了交界面电位不均匀所导致的误差。

本发明电路模型包括金属层两端口模型、金属层一端口模型、金属层三端口模型、金属层连通孔模型、金属层一端口连通孔模型和通孔模型。电阻模型为一类长方体,在当今很多工艺下其横截面是梯形,因此该模型不是严格意义的长方体。电阻模型的一个端口被划分成了4个端口边界元,但在具体实施时可视精度要求将端口划分成更多的边界元。

图2示出了金属层两端口模型,金属层两端口模型被视为端口的边界元在长方体两端。图3示出了金属层一端口模型,金属层一端口模型被视为端口的边界元在长方体的一端。图4示出了金属层三端口模型,金属层三端口模型被视作端口的边界元在长方体两端,和另一垂直于衬底的表面。图5示出了金属层连通孔模型,金属层连通孔模型被视作端口的边界元在长方体两端,和一个平行于衬底的表面即金属层连接通孔的表面。图6示出了金属层一端口连通孔模型,金属层一端口连通孔模型被视作端口的边界元在长方体一端,和一个平行于衬底的表面即金属层连接通孔的表面。图7示出了通孔模型,通孔模型被视作端口的边界元在长方体上下两端平行于衬底的表面。

每一类模型在不同的金属层或通孔层,取不同的几何参数,则有若干电阻模型。几何参数包括长方体的长、宽和高,由于长方体的高度由工艺决定,因此不同长方体的高度是一个共同的参数。同一个工艺流程下所有不同类的、在不同金属层或通孔层的和取不同几何参数的电阻模型组成一个集合,即为电导参数。

本发明将电阻模型中的端口和模型边界元都作为端口,计算电阻模型中的端口和/或模型边界元的边界电导矩阵,模型边界元不包括纽曼边界元。

具体地,设定边界元和自然边界上的电压或法向电流,设定被视作端口的边界元i上电压为1v,设定其他边界元上电压为0v,模型的自然表面上的法向电流为0;模型内部的电导参数由工艺流程确定,运用有限元、边界元、有限差分等数值方法求解空间的稳恒电流场,从而得到各边界元上的法向电流,例如得到边界元j上的法向电流ij,即电导。电导为该边界元电阻的倒数。

本发明中,边界电导矩阵用表示,具体定义是,矩阵的维度等于被视作端口的边界元的个数,那么边界电导矩阵中第i行第j列的元素在数值上等于边界元j的电导。因此,边界电导矩阵由各边界元的电导组成。

利用公式转换边界电导矩阵为马尔可夫转移矩阵,其中m是马尔可夫转移矩阵,是边界电导矩阵,i是与边界电导矩阵同维的单位矩阵,是对矩阵取对角运算,是对取对角运算后的边界电导矩阵求逆。得到的马尔可夫转移矩阵m完全满足本发明定义的马尔可夫转移矩阵的充分必要条件:所有元素都是非负的,并且每行元素之和为1,对角元为0。

得到电阻模型对应的马尔可夫转移矩阵后,存储同一工艺制程下的马尔可夫转移矩阵至该工艺制程的马尔可夫转移矩阵库中。

利用马尔可夫转移矩阵库提取寄生电阻。利用马尔可夫转移矩阵库提取该工艺制程下的集成电路设计中的寄生电阻的步骤包括:

读入相应工艺制程的马尔可夫转移矩阵库;

读入及翻译集成电路版图中的全部或部分网线并将每一条读入的互联网线划分为若干条子网线;

读入与每个子网线相对应的工艺制程的马尔可夫转移矩阵;和

由马尔可夫转移矩阵计算出端口间的电导

从而取端口间的电导的倒数为网线的寄生电阻。

首先,读入相应工艺制程下的马尔可夫转移矩阵库。然后,将标准格式例如lef/def格式、gdsii格式等的集成电路版图读入或输入计算机,翻译并转化该集成电路版图中的全部或部分网线为内部按空间区域索引的数据结构格式以便更有效的提取寄生参数。

读入及翻译集成电路版图中的全部或部分网线并将每一条读入的互联网线划分为若干条子网线的步骤包括:

由集成电路设计版图和对应工艺制程下的工艺参数文件共同得到实际硅片上的电路板图。

在比较新的集成电路工艺制程下,由于众多硅片生产时的物理效应,最终硅片上的版图与设计者的版图可能会不同,例如导线的宽度、厚度及形状都会发生变化。因此,在读入设计者的电路板图后,需要根据工艺特征考虑硅片上的效应,由集成电路设计版图和对应工艺制程下的工艺参数文件共同得到实际硅片上的电路板图。读入并翻译实际硅片上的电路版图中的全部或部分网线为内部按空间区域索引的数据结构格式。将每一条读入的互联网线划分为若干条子网线,由多个计算机内核或多台计算机并行对各个子网线提取对应工艺制程的马尔可夫转移矩阵,以便减少提取寄生电阻的总时间。所有集成电路版图的子网线都是直接或间接通过其边界相连的,因此其对应的马尔可夫转移矩阵都可以链接在一起。任一子网线上的边界元转移到其余一边界元或端口的概率都可以通过相应的马尔可夫转移矩阵计算出来。统计在该概率中从初始边界元回到端口对即第一端口和第二端口的跳转次数得到第一端口的法向电流,即第一端口与第二端口之间的电导,该电导的倒数为第一端口与第一端口之间的电阻。

具体地,寄生电阻的提取是分别针对集成电路中每一条网线的每一个端口对来进行的。电路设计者也可指定只提取电路中一条或一部分网线,网线的端口对也不必是所有端口对的组合。因此问题简化成对一条网线的一对端口间的电阻提取算法的多次重复。

将待提取电阻的网线分割成多个形体块,每一个形体块是一个类长方体,只在一个金属层或通孔层中。此外,被分割出的形体块分别对应在该工艺制程下生成马尔可夫转移矩阵库时定义好的电阻模型。例如,有两个相对的面连接同层其它形体块或端口的形体块对应图2所示的金属层两端口模型,有一个面连接同层其它形体块或端口的形体块对应图3所示的金属层一端口模型,有三个面连接它同层形体块或端口的形体块对应图4所示的金属层三端口模型,有两个面连接其它同层形体块或端口并连接一个通孔的形体块对应图5所示的金属层连通孔模型,有一个面连接它同层形体块或端口并连接一个通孔的形体块对应图6所示的金属层一端口连通孔模型,在通孔层中的形体块对应图7所示的通孔模型。形体块之间的共同边界和端口面对应于电阻模型的边界,划分形体块之间的边界和端口为边界元。若划分出的两个边界元属于共同的形体块,则称这两个边界元“相邻”。

提取网线的两个端口即第一端口和第二端口之间的寄生电阻,需要转化为计算两端口之间的电导,即电阻的倒数。设定第一端口的电位为0,第二端口的电位为1伏特,而其它所有端口都视作自然表面,第一端口与第二端口之间的电导在数值上等于通过第一端口或第二端口的电流。

设连接第一端口的形体块为形体块1,形体块1与其它一个或多个形体块相连。形体块1上有的边界元在第一端口上,有的边界元是与第一端口上的边界元相邻的相邻边界元,相邻边界元与其它形体块相连且不在第一端口上。从一个不在第一端口上但与第一端口相邻的边界元开始,由与形体块1或其相连的形体块对应的马尔可夫转移矩阵可得到从该边界元跳转到其相邻边界元的概率。根据跳转目标的概率,随机选择跳转的目标边界元。若上一步跳转到的目标边界元在第一端口或第二端口上,则停止跳转,记录跳转的最终端口。否则以上一步跳转到的边界元为起点,由该边界元所在的形体块对应的马尔可夫转移矩阵得到跳转到其相邻边界元的概率,并且在此概率上随机选择跳转的目标边界元。重复这一步,直到跳转到第一端口或第二端口。

多次从与第一端口相邻的边界元开始,重复多次跳转,统计最终跳转到第一端口的次数n1和跳转到第二端口的次数n2,跳转的总始发次数为n1+n2。

由马尔可夫转移矩阵的定义和其与边界电导矩阵的关系可得,在满足电阻端口的设定情况下,在n1+n2足够大时,无限接近与第一端口相邻的始发边界元的电位。

由与第一端口相邻的边界电导矩阵可得第一端口与其相邻的边界元之间的电导通过第一端口的电流就是即为第一端口与第二端口之间的电导。

于是第一端口与第二端口之间的寄生电阻被提取出,即为电导的倒数

实施例

图8是集成电路局部俯视图,图9是第一金属层上的形体块俯视图,图10是第二金属层上的形体块俯视图,图11是通孔层上的形体块俯视图。

如图8所示为的集成电路局部俯视图,图中包括第一金属层20、第二金属层30、通孔层40、第一端口17、第二端口18、第三端口19和网线被划分的16个形体块,形体块的编号为1~16。其中,形体块1~8、第一端口17和第二端口18在第一金属层20上,形体块9~13在第二金属层30上,形体块14~16在通孔层40上。在16个形体块中,如图9、图10和图11所示,第一金属层20上的形体块1、3、4、8和第二金属层上的形体块12对应的模型属于金属层两端口模型类;第一金属层20上的形体块10对应的模型属于金属层一端口模型类;第一金属层20上的形体块2对应的模型属于金属层三端口模型类;第一金属层20上的形体块5、6、7和第二金属层30上的形体块9、11、13对应的模型属于金属层一端口连通孔模型类;通孔层40上的形体块14、15、16对应的模型属于通孔模型类。

与第一端口17相邻的是形体块1,与第一端口17上相邻的边界元在形体块1与形体块2的交界面上,称之为始发边界元21。由始发边界元21出发,由形体块1和形体块2对应的马尔可夫转移矩阵得到从始发边界元21跳转到其相邻边界元的概率,其相邻边界元包括第一端口17上的边界元、形体块2与形体块3或形体块4交界面上的边界元。在该概率中不断重复随机跳转到其相邻的边界元上的步骤,直到跳转到第一端口17或第二端口18的边界元上,记录跳转的终结端口,又回到始发边界元21,开始下一轮的跳转序列。

设定第一端口17的电位为0v,第二端口18的电位为1v。在跳转序列足够多的情况下,由终结到第一端口17和第二端口18的次数得到或近似得到始发边界元21的电位。由形体块1对应的电阻模型的边界电导矩阵得到始发边界元21与第一端口17之间的电导,再由始发边界元21与第一端口17之间的电导求得此时第一端口17的法向电流,法向电流在数值上等于第一端口17和第二端口18之间的电导。第一端口17和第二端口18之间的电阻为所得电导的倒数。

本发明将电阻模型端口划分成多个边界元,允许同一个电阻模型端口上不同的边界元的电位不等,减小了交界面电位不均匀导致的误差;本发明能够覆盖电路中所有可能出现的情况,可以完全控制计算过程中的误差,保证了精度与可靠性;本发明对一个工艺制程只建立一次马尔可夫转移矩阵库,绝大部分的计算过程在建库时进行,在提取寄生电阻时缩短了提取时间,能达到非常高的效率。

需要注意的是,上述具体实施例是示例性的,本领域技术人员可以在本发明公开内容的启发下想出各种解决方案,而这些解决方案也都属于本发明的公开范围并落入本发明的保护范围之内。本领域技术人员应该明白,本发明说明书及其附图均为说明性而并非构成对权利要求的限制。本发明的保护范围由权利要求及其等同物限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1