一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种集成电路中版图布局分解着色方法与流程

2023-01-14 10:50:53 来源:中国专利 TAG:


1.本发明涉及集成电路设计技术领域,具体涉及集成电路工业中多重光刻的版图分解技术领域,特别涉及一种集成电路中版图布局分解着色方法。


背景技术:

2.随着晶体管特征尺寸的不断缩小,可制造性已成为半导体行业亟待解决的问题。为了提高可制造性,各种分辨率增强技术被提出,多图形光刻技术(mpl)是提高可制造性的最实用的解决方案之一,且在工业上得到了广泛的应用。
3.mpl的核心问题是布局分解,即为布局上的每个特征分配一个或多个掩模以提高可印刷性,这个过程也被称为多重图版光刻分解(multiple patterning lithography decomposition,mpld)。
4.如果两个比最小着色距离更近的特征被分配到同一个掩膜上,就会产生冲突。为了减少冲突,可以插入缝合线,但缝合线的引入可能会在生产过程中造成损失。
5.因此,mpl的目标是找到冲突和缝线数量最少的掩模分配方案。给不同的特征分配掩模的过程也可以视作使用不同的颜色标记不同的特性。因此,mpl可转化为一种特殊的图着色问题,相应地,tpl可转化为一种特殊的3-着色问题,qpl可以转化为一种特殊的4-着色问题。mpl是np-完全问题,以往求解mpl的方法多采用整数线性规划(ilp)的方法或松弛法。
6.虽然ilp能够最优地解决问题,但其运行时间是指数级的。针对mpl布局分解问题提出的松弛法虽然加快了分解过程,但也相应地降低了解的质量。
7.因而,亟需一种能够加快分解过程同时保证解的质量的针对mpl布局分解问题的求解方案。


技术实现要素:

8.为了解决现有技术存在的不足,本发明的目的在于提供一种集成电路中版图布局分解着色方法,可以在较短的时间内获取质量较高的mpl布局分解方案。
9.为实现上述目的,本发明提供的集成电路中版图布局分解着色方法,包括以下步骤:
10.1)根据版图信息,构建无向布局图,根据无向布局图构建邻接矩阵;
11.2)输入冲突图和颜色数目,初始化分布种群,生成解种群,保存最佳二进制解作为最优解及其适应度的值;
12.3)对分布种群进行迭代求解,包括:
13.对上一求解轮次中的分布种群进行抽样,确定抽样分布种群和抽样解种群;
14.利用禁忌搜索算法对所述抽样解种群进行搜索,确定禁忌搜索的最优解;
15.比较所述禁忌搜索的最优解和上一轮次求解中的最优解,根据比较结果对最优解进行更新;
16.根据最优解的更新结果,对分布种群进行更新。
17.进一步地,所述步骤1)进一步包括,读取gds文件中各个特征的信息,构建无向图,在完成缝线插入后,构建带有虚线与实线的无向图,其中,用虚线连接的两个顶点指这两个顶点由缝线进行连接,两个特征的间距小于最小着色间距,则用实线标注。
18.进一步地,所述适应度表达式为:
[0019][0020][0021][0022]
其中,f(s)表示适应度,u,v表示两个顶点,α取0.1。
[0023]
进一步地,所述步骤3)中的禁忌搜索算法包括以下步骤:
[0024]
对禁忌列表进行初始化,其中,禁忌列表为一个k*n的矩阵,k表示颜色数,n表示顶点数,初始时,该矩阵为一个零矩阵;
[0025]
对于每一个x∈p,每次选择最佳合法的移动《v,i,j》;
[0026]
执行最佳合法移动,并用更新禁忌列表中的元素t
vi
更新为tl,其中tl=count 0.6(10*yc ys) r 1,yc是y中的冲突数,ys是y中的缝线数,y代表当前解决方案,r是[1,10]之间的随机整数,若有t
vj
》count,》count,被禁止,count用于记录禁忌搜索算法的迭代次数。
[0027]
进一步地,所述禁忌搜索算法的终止条件为禁忌搜索算法的迭代次数达到上限或得到无冲突无缝线的解。
[0028]
进一步地,所述最佳合法移动是指,合法移动所获得的解对应的适应度值最小的合法移动,所述合法移动记作《v,i,j》,其是指将顶点v的颜色i更改为颜色j,且要满足以下三个条件:(1)当顶点v的颜色为i时,v相关的冲突数和缝合线数之和不为0;(2)i≠j;(3)在禁忌列表中,给顶点v分配颜色j,这一行动不被禁止,除非执行《v,i,j》,i≠j,可以得到比x更好的解。
[0029]
进一步地,所述步骤3)进一步包括以下步骤:
[0030]
如果禁忌搜索的最优解优于当前最优解,则用禁忌搜索的最优解替换当前最优解;
[0031]
如果禁忌搜索的最优解劣于当前最优解,则保持当前最优解不变。
[0032]
更进一步地,所述步骤3)进一步包括,给定概率阈值p0,如果则利用开发策略更新分布种群的列;否则,根据勘探策略对分布种群的列进行更新。
[0033]
为实现上述目的,本发明还提供一种电子设备,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的程序,所述处理器运行所述程序时执行上述的集成电路中版图布局分解着色方法的步骤。
[0034]
为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述的集成电路中版图布局分解着色方法的步骤。
[0035]
本发明的一种集成电路中版图布局分解着色方法,与现有技术相比具有如下有益效果:本发明提出的一种新的针对布局分解的分布进化算法,其以一个个分布矩阵作为分布种群中的个体,以提升算法跳出局部最优解的能力,且本算法以禁忌搜索算法作为局部搜索算法,以提升算法的探索能力。
[0036]
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
[0037]
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
[0038]
图1为根据本发明的集成电路中版图布局分解着色方法流程图;
[0039]
图2(a)为根据本发明实施例的版图布局特征示意图;
[0040]
图2(b)为根据图2(a)中的特征的几何信息构建无向图示意图;
[0041]
图2(c)为向图2(b)中的无向图插入缝线后的示意图;
[0042]
图2(d)为给无向图的各个顶点分配颜色结果示意图。
具体实施方式
[0043]
下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
[0044]
应当理解,本发明的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
[0045]
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0046]
需要注意,本发明中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。“多个”应理解为两个或以上。
[0047]
术语
[0048]
多图案布局分解(mpld):给定1)一组多边形特征的布线布局;2)掩模板的数量k;3)最小冲突空间d;4)其他约束(如预着色约束)的目标是为每个特征指定一个或多个掩模板(如果启用了缝合),以使冲突成本和缝合成本的加权和最小化。
[0049]
着色(coloring):将设计图形分配给不同的掩模版的过程,不同的掩模版在eda工具中由不同的颜色表示。
[0050]
缝线(stitch):同一个图形因为某些设计规则冲突需要分配给两个掩模版,其不同颜色交接处称为缝线。
[0051]
冲突图(conflict graph):最小冲突空间内的两个图形之间将由一条边进行连接,除此之外,冲突图中的边还包括缝线,图中的顶点为各个图形,缝线会将一个图形分为多个图形,因此,随着缝线的插入,图中顶点数量会增加。
[0052]
冲突边(conflict edge):最小冲突空间内的两个图形,着同一种颜色,在对应的冲突图中,两个图形之间的连接边,即为冲突边。
[0053]
为了更好地理解本发明的技术方案,首先对于版图的布局分解过程进行简要介绍,布局分解过程包括以下步骤:
[0054]
(1)构建冲突图g;
[0055]
(2)简化冲突图g,得到一系列子图gi(i=1,...,n);
[0056]
(3)对于gi(i=1,...,n)插入所有候选缝线;
[0057]
(4)对gi(i=1,...,n)进行简化;
[0058]
(5)对gi(i=1,...,n)进行着色;
[0059]
(6)解的恢复。
[0060]
本发明的方法应用于第5步,用来对gi(i=1,

,n)进行着色以及减少其冲突边和缝线的数量。
[0061]
第5步的具体数学模型和相应的步骤为:
[0062]
本发明的算法对应的数学模型为:
[0063][0064][0065][0066]
以tpl中布局分解为例,我们对上述公式中的符号进行了解释,其中,s=(v1,v2,v3)表示将冲突图g的顶点分成3个集合v1,v2,v3,且每个集合中顶点着同一种颜色。{u,v}∈e表示冲突边e连接相邻顶点u,v,当u,v放入同一个顶点集合时,有δ
uv
=1,表示u,v着同一种颜色,否则δ
uv
=0,表示u,v着不同种颜色。
[0067]
f(s)表示3个集合中所有冲突边的数量,冲突边即此边连接的两个顶点着同一种颜色。
[0068]
{u,v}∈c表示缝线c连接两个顶点u,v,当u,v放入同一个顶点集合时,有c
uv
=0,表示u,v着同一种颜色,也意味着缝线c可以移除,否则δ
uv
=0,表示u,v着不同种颜色,这表示缝线c不可以移除。另外,α取0.1。
[0069]
由于mpl布局分解问题是一类特殊的图的2/3/4-着色问题,而在插入缝线的情况下,图的2/3/4-着色问题是一个np-难题,不能在多项式时间内进行求解。
[0070]
下面,将参考附图详细地说明本发明的实施例。
[0071]
实施例1
[0072]
图1为根据本发明的集成电路中版图布局分解着色方法流程图,下面将参考图1,对本发明的集成电路中版图布局分解着色方法进行详细描述。
[0073]
在步骤101,根据版图信息,构建无向布局图,根据无向布局图构建邻接矩阵。
[0074]
本发明实施例中,首先,读取gds文件中各个特征的信息,构建无向布局图,如图2中的(c)所示,在完成缝线插入后,构建带有虚线与实线的无向布局图,其中用虚线连接的两个顶点指这两个顶点由缝线进行连接,两个特征(特征对应于图1中的(a)的多边形)的间距小于最小着色间距,则用实线标注。接着,根据构造的无向布局图构建邻接矩阵。
[0075]
在步骤102,输入冲突图gi(i=1,

,n)和颜色数目k,初始化分布种群q,生成解种群p,保存最佳二进制解best和其适应度值f(best)。
[0076]
本发明实施例中,分布种群q进行1次至maxgen次求解,若种群q的规模为n,则表示分布种群q由n个分布矩阵构成,解种群p中每一个个体(p1,p2,

,pn)与分布种群q中每一个个体(q1,q2,

,qn)一一对应。p1,p2,

,pn分别为对q1,q2,

,qn进行采样得到的解。
[0077]
分布种群q初始化种群记作q(0),相应地,解种群记作p(0),利用适应度的表达式计算接种群p(0)的适应度,适应度表达式为:
[0078][0079][0080][0081]
将解种群p(0)保存为最佳二进制解best,其适应度保存为最佳适应度f(best)。
[0082]
针对k种颜色和n个顶点的着色方案,可由一个k
×
n的矩阵x=(x
i,j
)k×n表示,其中每一列仅有一个元素值为1。若x
i,j
=1,则表示第j个顶点用第i种颜色进行着色。
[0083]
了解了mpl的颜色分配方案的表示方式,本技术提出了如下的分布种群的概率模型:
[0084][0085]
且q中的每一个元素q
ij
(i=1,2,

,k)满足
[0086]
这样可表示将颜色i分配给顶点j的概率,并且q的第j列表示顶点j的颜色分配的概率分布。通过对q的每列进行次采样,我们始终可以获得图gi的n个顶点的颜色分配方案。
[0087]
dea-ppm通过部署解种群p={x1,x2,

,x
np
}和分布种群q={q1,q2,

,q
np
},在解空间和分布空间中同时执行搜索。
[0088]
在步骤103,对上一求解轮次中的分布种群进行抽样,确定抽样分布种群和抽样解种群。
[0089]
本发明实施例中,将上一轮次求解中的分布种群记作q(gen-1),令q(gen)’等于分
布种群q(gen-1);
[0090]
然后对q(gen)’进行抽样,可以得到相应的抽样解种群p(gen)’,具体的抽样方式为:对于q(gen)’中的任一分布矩阵,对其每列进行采样,获得抽样分布种群,进而可以获取对应于抽样分布种群的抽样解种群p(gen)’中的一个解。
[0091]
对于分布矩阵里面每一列元素的平方α
1n2
,α
2n2


,α
kn2
,利用轮盘赌的方式挑选这些平方数中的一个,若α
kn2
被挑选到,这意味着第n个顶点将着第k种颜色,对应的解的二进制矩阵中,第n列除了第k个元素取1,其余元素全为0,即表示第n个顶点着第k种颜色。上述根据分布矩阵的第n列为第n个顶点分配颜色过程即为采样操作。
[0092]
在步骤104,利用禁忌搜索算法对抽样解种群进行搜索和确定禁忌搜索的最优解。
[0093]
本发明实施例中,对抽样解种群(p(gen)’)执行禁忌搜索,并计算禁忌搜索的解的适应度,根据适应度确定禁忌搜索的最优解,记作b1。其中,适应度值越小表示解决方案越优。
[0094]
在本发明实施例中,禁忌搜索算法如下:
[0095]
首先,对禁忌列表进行初始化,其中,禁忌列表为一个k*n的矩阵,k表示颜色数,n表示顶点数,初始时,该矩阵为一个零矩阵。对于每一个x∈p,每次选择最佳合法的移动《v,i,j》。合法移动《v,i,j》指将顶点v的颜色i更改为颜色j,且要满足以下三个条件:(1)当顶点v的颜色为i时,v相关的冲突数和缝合线数之和不为0;(2)i≠j;(3)在禁忌列表中,给顶点v分配颜色j,这一行动不被禁止,除非执行《v,i,j》,i≠j,可以得到比x更好的解。
[0096]
最佳合法移动是指当前解y的所有合法移动中的最佳移动,举例说明:假设对于解y,其有m个合法移动,我们分别对y执行这m个移动,可以得到m个不同的解,并将这m个解分别记为{y1,y2,

,ym},若min{f(y1),f(y2),

,f(ym)}=f(yi),i∈{1,2,

,k},即第i个移动为最佳合法移动。即,合法移动所获得的解对应的适应度值最小的合法移动称作最佳合法移动。
[0097]
接下来,执行合法最佳移动,并用更新禁忌列表中的元素t
vi
更新为tl,其中tl=count 0.6(10*yc ys) r 1,yc是y中的冲突数,ys是y中的缝线数,r是[1,10]之间的随机整数。若有t
vj
》count,被禁止,其中,count用于记录禁忌搜索算法的迭代次数。值得注意的是,终止条件(1)为禁忌搜索算法的迭代次数达到上限或得到无冲突无缝线的解。
[0098]
在步骤105,比较禁忌搜索的最优解和上一轮次求解中的最优解,根据比较结果对最优解进行更新。
[0099]
本发明实施例中,比较禁忌搜索的最优解b1与当前最优解b,若b1优于b,则令b=b1,否则,不对b进行更新。
[0100]
在步骤106,根据最优解的更新结果,对分布种群进行更新。
[0101]
本发明实施例中,如果最优解进行了更新,则更新分布种群q(gen)’,得到新的分布种群q(gen);如果最优解未进行更新,则新的分布种群等于上一轮此求解中的分布种群。
[0102]
对分布种群进行更新时需要用更新策略,在对分布种群进行更新时,可以采用开发策略和勘探策略,其中,开发策略被用来执行局部开发。为了防止q(t)过早收敛,利用勘探策略对分布种群进行更新。
[0103]
给定概率阈值p0,如果则利用开发策略更新q的列;否则,将根据勘探策略对q的列进行更新,其中概率阈值p0取0.98。
[0104]
开发策略:为了开发q=(q
ij
)k×n的局部邻域,我们按(4)-(6)式对其进行更新。公式(4)对由调节参数α控制的分布矩阵q进行整体扰动。
[0105][0106]
然后进行如下正交变换:
[0107][0108]
其中
[0109][0110]
方程(5)将子向量(q
vj
,q
uj
)
t
逆时针旋转δθi,通过稍微调节(q
vj
,q
uj
)
t
来执行局部开发,其中u,v分别为最优解与当前解的第j个顶点所着的颜色,调节参数α为0.2,δθi为0.05π。
[0111]
勘探策略:为了防止q(t)过早收敛,本文按(7)-(8)式对q进行更新。首先,本文按式(7)降低获取当前最优解的概率,
[0112][0113]
其中,t
uj2
为乘上λ后的q
uj2
值,q
uj2
为第j个顶点着第u种颜色的概率。u为最优解的第j个顶点所着的颜色。
[0114]
然后,按式(8)对分布向量进行归一化。
[0115][0116]
迭代次数达到上限或获得无冲突无缝合线的解决方案时,停止迭代求解。
[0117]
本发明意在减少现有mpl布局分解过程中产生的缝线和冲突,以及提高mpl布局分解中的时间效率。由于mpl中布局分解问题是一个np-难题,传统的数学方法需要耗费巨大的时间,如ilp。在运行时间上,松弛法具有较高的时间效率,但其在解的质量上要远低于ilp。而本发明的积极效果就在于能在较短的时间内得到质量较高的解。
[0118]
实施例2
[0119]
下面结合一个具体示例,对于本发明的集成电路中版图布局分解着色方法进行详细说明。
[0120]
首先,按照步骤101,构建邻接矩阵,首先,读取gds文件中各个特征的信息,如图2(a)所示,构建无向图,如图2(b)所示,在完成缝线插入后,构建带有虚线与实线的无向图如图2(c)所示,其中用虚线连接的两个顶点指这两个顶点由缝线进行连接,两个特征的间距
小于最小着色间距,则用实线标注。接着,根据构造的无向图构建邻接矩阵。
[0121]
然后,按照步骤102-步骤106,构建解种群与分布种群,通过部署解种群p和分布种群q,可以在解空间和分布空间中同时执行搜索。利用分布矩阵具有跳出局部最优解的能力以及禁忌搜索算法较强的探索能力这些优点以迭代地更新最优解best,最终的着色结果如图2(d)所示。
[0122]
本发明适合mpl布局分解问题,其包括tpl以及qpl,针对这两种问题,只需将分布种群中颜色数分别设置为3、4即可。
[0123]
实施例3
[0124]
本发明实施例还提供了一种用于集成电路版图布局的分解着色的装置,包括存储器和处理器,存储器上储存有在处理器上运行的程序,处理器运行所述程序时执行上述集成电路中版图布局分解着色方法的步骤。
[0125]
实施例4
[0126]
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行上述的集成电路中版图布局分解着色方法的步骤,所述集成电路中版图布局分解着色方法参见前述部分的介绍,不再赘述。
[0127]
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献