CN103544332B - 一种基于密度梯度热点聚类和局部求解的哑元综合方法 - Google Patents

一种基于密度梯度热点聚类和局部求解的哑元综合方法 Download PDF

Info

Publication number
CN103544332B
CN103544332B CN201210246483.4A CN201210246483A CN103544332B CN 103544332 B CN103544332 B CN 103544332B CN 201210246483 A CN201210246483 A CN 201210246483A CN 103544332 B CN103544332 B CN 103544332B
Authority
CN
China
Prior art keywords
density
window
grid
gradient
constraint
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
CN201210246483.4A
Other languages
English (en)
Other versions
CN103544332A (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.)
Fudan University
Original Assignee
Fudan University
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 Fudan University filed Critical Fudan University
Priority to CN201210246483.4A priority Critical patent/CN103544332B/zh
Publication of CN103544332A publication Critical patent/CN103544332A/zh
Application granted granted Critical
Publication of CN103544332B publication Critical patent/CN103544332B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明属于半导体可制造性设计领域中针对铜互连哑元金属填充的技术,具体涉及一种考虑密度梯度约束的哑元综合优化求解方法。本发明方法在哑元综合过程中同时施加密度上下限约束和密度梯度约束,并且最小化哑元插入数量。本发明方法比较完整地考虑了哑元填充对化学机械抛光、光刻等工艺偏差的抑制作用。本发明方法基于覆盖线性规划、热点聚类分组及线性规划局部求解方法求解考虑梯度约束的哑元综合问题,将问题的时间复杂度降低为O(n2logn),和已有方法相比较好地实现了计算精度和执行效率的折中,为大规模哑元综合问题的求解提供了可行方法。

Description

一种基于密度梯度热点聚类和局部求解的哑元综合方法
技术领域
本发明属于半导体可制造性设计领域中针对铜互连哑元金属填充的技术,具体涉及一种考虑密度梯度约束,并利用基于梯度热点聚类分组和局部求解技术的哑元综合优化方法。
背景技术
集成电路产业的发展是推动社会信息化进步的重要驱动力。随着集成电路制造工艺进入纳米尺度,越来越严重的工艺偏差影响芯片的性能和成品率。化学机械抛光(CMP:Chemical Mechanical Planarization)和光刻等工艺产生的制造偏差明显地表现出对版图图形的依赖(Pattern Dependent)。CMP工艺会在硅片表面产生碟陷(Dishing)和侵蚀(Erosion)缺陷[1,2],这些缺陷导致的不平整性(Nonuniformity)一方面会使互连线在高度方向上产生偏差,而另一方面会影响后续工艺中的光刻聚焦和成像质量进而使互连线的横向尺寸发生偏差。碟陷和侵蚀缺陷的产生主要依赖于版图图形的密度、线宽和线距等特征。此外,光刻过程中还会出现因掩模版受热导致扭曲变形的现象(PID:Pattern InducedDistortion),它会对光刻成像的横向尺寸产生影响。PID不仅与图形密度相关,而且与密度梯度直接相关[3,4]。
哑元填充是解决与版图图形相关的可制造性设计问题的重要技术之一。哑元填充通过在原有设计版图上添加没有电学功能的单元来改变版图上图形的密度分布,从而改善CMP抛光后芯片表面的平整度,如图1所示。哑元单元可以是简单的矩形,也可以是考虑了化学机械抛光、光刻或者其他工艺因素后,经过精心设计的图形[5-7]。根据对寄生电容和电路稳定性的不同要求,哑元单元可以选择连接到固定电位或者浮空[8]。由于哑元填充对化学机械抛光和光刻等工艺具有良好的改进效果,且不会显著增加工艺步骤和制造成本,因而被广泛采用。在不影响电路性能的情况下,如何在版图中合适的位置添加适量的哑元以减小制造偏差,提高芯片成品率,已成为以提升可制造性设计和成品率为中心的新一代电路设计方法学的关键问题之一。
哑元填充包括三个基本步骤:密度分析、哑元综合和哑元分配。首先,密度分析将芯片版图划分为均匀的网格(Tile)和窗口(Window),统计出各个网格内图形的密度和周长等特征参数,计算出可用于填充哑元的空白区域,称为填充余量(Slack),并由此计算出窗口密度等信息;其次,哑元综合根据不同的约束条件和优化目标,计算每个网格内应填充的哑元数量;最后,哑元分配(dummy assignment)选择合适的哑元单元图形、排列方式,按照哑元综合得到的网格中应插入的哑元数量,将哑元插入到版图中的具体位置上。其中,哑元填充技术的核心是哑元综合。
在考虑版图图形密度的哑元综合方面已经有大量研究工作。Kahng[9]和Tian[10]分别提出了最小化密度偏差和最小化哑元插入数量的线性规划(LP:Linear Programming)方法。线性规划方法可以给出该问题的最优解,但其时间复杂度为O(n3)n为变量数,即全芯片版图上划分的网格数目。对于大规模问题,线性规划方法计算开销非常大。例如,对于一个10mm×10mm尺寸的版图,若网格尺寸为20um×20um,则变量数目高达2.5×105,计算时间理论上约需3.8万小时。因此,为了求解大规模哑元综合问题,产生了一些启发式(Heuristic)方法[11,12],它们一般是基于蒙特卡罗(Monte-Carlo)方法或贪婪算法。启发式方法求解速度快,但求解精度较差,往往会导致过多的哑元插入。文献[13]在覆盖线性规划(CLP:Covering Linear Programming)及其快速近似算法的基础上提出了一种最小化哑元插入数量的高效算法。该算法将求解的时间复杂度降至O(n2logn),并从理论上保证了求解精度,但CLP是一种特殊的线性规划方法,它对约束条件的形式有着严苛的要求,无法处理本专利中涉及的梯度约束条件。
随着工艺节点的特征尺寸不断降低,密度梯度作为二阶因素在光刻、热应力处理等工艺环节展现出日益重要的影响[19]。虽然EDA业界已经在实践中尝试处理梯度因素的影响,但是针对梯度因素的哑元综合方法研究尚处于起步阶段。文献[15]首次提出针对密度梯度问题的哑元综合优化方法。但该方法将密度梯度约束施加在网格上,这与传统哑元填充算法中密度约束施加在窗口上的方法不一致。窗口密度是对网格密度的某种加权平均,它近似刻画着具有临近效应的物理模型。该方法将梯度约束施加在网格上,虽然极大地简化了哑元填充问题,但却部分丧失了物理内涵。而且从效果上看,该方法由于缺乏对哑元插入数量的控制导致哑元插入过多。另外,文献[16]提出一种与梯度约束相似的类李氏(Lipchitz-like)约束的哑元综合方法,但是该方法同样没有考虑哑元插入数量的限制,并且仍然采用传统线性规划方法进行求解,因此计算复杂度高。
更进一步,现有的哑元综合算法中,一般假设图形的密度和密度梯度热点(即违反梯度约束的区域)是随机分布的,尚未考虑版图图形分布的特点。但事实上,芯片中的互连线设计有明显的规律,例如在某层金属层上,金属线的走向基本是一致的。这些规律导致梯度热点会集中出现在某些特定局部区域,例如金属线的边界上,而不是随机分布。因此,初步的哑元填充后,一般可消除绝大部分密度和梯度热点,而针对剩下的梯度热点,可以通过分而治之的策略,通过线性规划的局部求解进行消除。更为有利的是,尽管线性规划方法的理论复杂度很高,但对于小规模问题却非常高效,尤其是单纯形方法,其实际复杂度通常远优于理论复杂度,因此在局部区域内直接采用线性规划方法求解的小规模问题是完全可行的。
与本发明相关的参考文献有:
[1]B.Stine,D.Ouma and R.Divecha.A closed-form analytic model for ILDthickness variation in CMP processes.CMP Multilevel Interconnect Conference,1997,pp.266-273.
[2]T.Park,T.Tugbawa,D.Boning,J.Chung,R.Muralidhar,S.Hymes,Y.Gotkis,S.Amalgir,R.Walesa,L.Shumway,G.Wu,F.Zhang,R.Kistler,and J.Hawkins.Pattern andprocess dependencies in copper damascene chemical mechanical polishingprocesses.IEEE VLSI Multilevel Interconnect Conference,1998,pp.437-442.
[3]L.Reu,R.L.Engelstad,and E.G.Lovell.Mask distortion issues fornext-generation lithography.Journal of Microelectronic Engineering,69(2):420-428,2003.
[4]M.Lercel,C.Magg,M.Lawliss,Williams,N.Caldwell,R.Ackel,L.Kindt,andK.Racette.Patterning induced image placement distortions on electron beamprojection lithography membrane masks.Journal of Vacuum Science andTechnology,19(6):2671-2677,2001.
[5]L.He,A.B.Kahng,K.H.Tam,and J.Xiong.Variability-drivenconsiderations in the design of integrated circuit globalinterconnects.International VLSI Multilevel Interconnection Conference,2004,pp.214–221.
[6]M.M.Nelson.Optimized pattern fill process for improved CMPuniformity and interconnect capacitance.Univ./Government/Ind.MicroelectronicSymposium,2003,pp.374–375.
[7]P.J.M.van Adrichem,D.L.Goinard.Method and apparatus for performingdummy-fill by using a set of dummy fill cells.United States Patent,Publication Number US2009/0089732A1,2009.
[8]B.E.Stine,D.S.Boning,J.E.Chung,L.Camilletti,F.Kruppa,E.R.Equi,W.Loh,S.Prasad,M.Muthukrishnan,D.Towery,M.Berman,and A.Kapoor.The physicaland electrical effects of metal-fill patterning practices for oxide chemical–mechanical polishing processes.IEEE Trans.Electron Devices,vol.45,no.3,pp.665–679,1998.
[9]A.B.Kahng,G.Robins,A.Singh,and A.Zelikovsky.Filling algorithms andanalyses for layout density control.IEEE Transactions on Computer AidedDesign,18(4):445-462,1999.
[10]R.Tian,D.F.Wong and R.Boone.Model-based dummy feature placementfor oxide chemical mechanical polishing manufacturability.IEEE DesignAutomation Conference,2000,pp.667-670.
[11]Y.Chen,A.B.Kahng,G.Robins,A.Zelikovsky.Monte-Carlo algorithms forlayout density control.Asia and South Pacific Design Automation Conference,2000,pp.523–528.
[12]Y.Chen,A.B.Kahng,G.Robins,A.Zelikovsky.Practical iterated fillsynthesis for CMP uniformity.IEEE Design Automation Conference,2000,pp.671–674.
[13]C.Feng,H.Zhou,C.Yan,J.Tao and X.Zeng.Provably Good andPractically Efficient Algorithms for CMP Dummy Fill.IEEE Design AutomationConference,2009,pp.534-539.
[14]N.Rodriguez.Using advanced planarity analysis to drive smarterfilling strategies.EDA Tech Forum,DFM special edition,2010.
[15]H.Y.Chen,S.J.Chou,and Y.W.Chang.Density gradient minimizationwith coupling-constrained dummy fill for CMP control.ACM/IEEE InternationalSymposium on Physical Design,2010,pp.105-111.
[16]Y.Chen and A.B.Kahng and G.Robins and A.Zelikovsky.Closing thesmoothness and uniformity gap in area fill synthesis.IEEE/ACM InternationalSymposium on Physical Design,2002,pp.137-142.
[17]C.C.Chang and J.Cong.An efficient approach to multilayer layerassignment with an application to via minimization.IEEE Transactions onComputer Aided Design,18:608–620,1999.
发明内容
为了克服现有哑元综合方法在处理梯度约束时的不足,本发明提出一种考虑梯度约束的哑元综合方法,具体涉及一种可同时施加密度约束和梯度约束,并最小化哑元插入数量的哑元综合方法,综合应用覆盖线性规划方法、密度梯度热点聚类分组和线性规划局部求解技术以实现快速求解。
本发明方法采用了传统哑元综合方法的网格-窗口(Tile-Window)两级网格划分机制[9],如图2所示,并将密度梯度约束施加在窗口上。这种约束施加方法与传统密度约束施加方法一致,更重要的是,它符合制造工艺的物理背景,能够刻画化学机械抛光过程中弹性力和光刻过程中热应力随距离衰减的特性。本发明方法能够同时考虑图形的密度、密度梯度和哑元插入数量,比较全面地处理了哑元综合过程中的影响因素。
本发明方法基于覆盖线性规划的完全多项式时间近似算法(FPTAS)进行哑元综合。与普通线性规划方法相比,本发明方法将时间复杂度降至O(n2logn),提高了计算效率。与多层平滑方法[15]相比,本发明方法的哑元插入数量大为减少,而且对密度和梯度约束的控制更加精确。
更进一步,梯度热点一般具有聚集效应而不是随机分布,这是由于模块化的芯片设计通常会使梯度热点聚集在模块的边界上,而较少出现在设计良好的模块内部,同时,梯度热点容易聚集在金属线的边缘部分而出现条状分布,图4(b)所示。哑元填充可看作一个低通滤波过程,它可平滑绝大部分密度波动,并消除大部分梯度热点,而剩余梯度热点具有明显的聚集效应。图3给出一个芯片互连线层版图的图形密度分布实例,图中版图密度的分块化和布线走向都清晰可见。图4(a)和图4(b)则分别给出了该版图经过初步填充后的密度分布和梯度热点分布。从图4(b)可以看到,在热点聚集的区域可以按照距离远近容易地划分为若干个集合,即聚类分组;不同组之间由于距离较远,组间的梯度热点可近似认为相互独立,因此可仅在组内局部范围求解以消除梯度热点。
局部区域内的小规模哑元综合问题可以通过线性规划方法直接求解。尽管线性规划方法的理论复杂度高,但是对于小规模问题却非常高效,尤其是单纯形方法,通常远优于理论复杂度。
本发明提出一种基于覆盖线性规划、密度梯度热点聚类分组和线性规划局部求解方法实现考虑梯度约束的哑元综合方法,求解流程如图5所示。
输入参数包括如下四类:
1.版图参数,包括待填充版图文件和层号;
2.窗口-网格参数,包括窗口大小r、网格划分数目m×n、权值函数fw
3.约束条件参数,包括密度约束下限L和上限U、梯度约束上限g0
4.综合算法参数,包括填充精度ε、关键网格惩罚因子fp、预填充因子θ、距离阈值dth和缓冲距离dbuf
本发明所述的哑元综合流程是一个迭代求解的过程,具体步骤包括:
步骤1:网格划分和窗口密度计算,即对待填充版图按照网格-窗口两级划分机制进行网格划分,依据设计规则提取各个网格内的图形密度和填充余量,并由此计算得到窗口密度;
步骤2:建立考虑密度梯度的线性规划优化问题,即在步骤1中得到网格密度、网格填充余量和窗口密度的基础上,根据给定的密度约束上下限和梯度约束上限,建立最小化哑元插入数量的线性规划优化问题;
步骤3:利用扫描-修正算法求解窗口密度最小下界,即依据所施加的密度约束和梯度约束,利用扫描-修正算法计算每个窗口的密度最小下界,将梯度约束转化为普通密度约束;
步骤4:利用修正的覆盖线性规划算法进行迭代求解,即利用修正的覆盖线性规划快速算法迭代求解网格上的哑元插入数量的近似解;
步骤5:利用热点聚类分组和线性规划局部求解方法消除局部梯度热点。经过上述步骤4后,若版图上仍存在梯度热点(违反梯度约束的窗口),则对这些热点按照距离远近进行聚类分组,并用线性规划方法对各聚类分组进行局部求解,重复迭代本步骤直到消除全部梯度热点。最后返回网格上的哑元填充量,综合过程结束。
具体而言,本发明方法主要包括如下求解步骤:
步骤1网格划分和窗口密度计算
本发明步骤中,全芯片版图划分为m×n的网格。网格密度定义为网格内所有图形的总面积占网格面积的比例,即:
其中,Sg是网格Ti,j中几何图形g的面积,ST表示网格Ti,j的面积,i,j分别是网格Ti,j在芯片上所在行和列的索引,矩阵Dt(i,j)中元素即为网格Ti,j的密度。
给定版图上的网格密度Dt和权值函数fw,窗口密度定义为:
若将矩阵Dt(i,j)和矩阵Dw(i,j)分别按照行优先排列为向量dt(I)和dw(I),即Dt(i,j)和dt(I)均指同一网格密度,Dw(i,j)和dw(I)均指同一窗口密度,则一维指标I和二维指标(i,j)之间满足如下转换关系:
则窗口密度的计算式(2)可以重写为:
dw(I)=A(I,J)·dt(J) (4)
其中,矩阵A的大小为mn×mn,表示网格密度矩阵与权函数的卷积,其含义是编号为dt(I)的窗口密度由其覆盖r×r个网格密度加权平均得到。矩阵A中的元素A(I,J)表示以网格dt(I),也即以Dt(i1,i2)为中心,覆盖r×r个网格dt(J),也即Dt(j1,j2)的密度加权平均的权重。矩阵A中的元素完全由权值函数fw决定,即:
其中,I与(i1,i2)、J与(j1,j2)分别满足式(3)的一维和二维指标转换关系。
若窗口密度的上下限分别为U和L,则密度约束可表示为:
L≤dw=Adt≤U. (6)
对于网格的可填充区域和填充余量,需根据设计规则和对寄生电容的控制要求确定每根互连线的安全距离,然后把此安全距离之外的空白区域称为可填充区域。可填充区域中实际可以填充的哑元单元数量称为网格的填充余量,如图6所示。填充余量的具体计算方法参见文献[9]和[15]。
步骤2建立考虑密度梯度的线性规划优化问题
梯度约束定义为中心窗口与其周围相邻窗口的最大密度差。依据对称性,8个方向的窗口密度差可以被分解到4个不同方向上考察,即X,Y和±45°方向,如图7所示。这里±45°方向分别用XY和YX表示。
给定梯度约束上限g0,窗口上的梯度约束可表示为:
其中,考虑到XY和YX方向上的窗口间距是X和Y方向上的倍,因此,XY和YX方向上相邻窗口密度差的上下限被设置为为表述方便,本方明方法将仅使用定义在X和Y方向的梯度约束进行实施例说明,其它方向可类推得到。
若用GX和GY表示X和Y方向的梯度差分矩阵,则梯度约束式(7)可写为:
其中,矩阵GX和GY中每行仅有两个非零元(分别为1和-1),构成相邻窗口间的密度差分操作。
由上述梯度约束定义,可得到一种考虑梯度约束,且最小化哑元插入数量的哑元综合问题,采用线性规划形式描述如下:
其中,dt0是原始版图的网格密度向量,xt是待求的每个网格上的哑元插入量,s是每个网格上的填充余量。式(9)描述的优化问题可同时处理梯度约束、密度限制和哑元插入数量,较完整地考虑了哑元填充过程中的影响因素。
步骤3利用扫描-修正算法求解窗口密度最小下界
式(9)可以用标准的线性规划方法求解,但时间复杂度高。由于式(9)中梯度约束矩阵含有负数元素且梯度约束存在上限,因此,式(9)难以直接采用覆盖线性规划算法进行求解。为了克服该困难,本发明方法将采用扫描-修正算法将梯度约束转化为普通密度约束。
图8显示了这种扫描-修正算法的基本思想。
扫描-修正算法的输入为待填充版图的原始窗口密度Dw,输出为满足密度下限约束和密度梯度约束的窗口密度最小下界求解窗口密度最小下界的具体步骤包括:
步骤3.1:初始化窗口密度最小下界为当前窗口密度,即
步骤3.2:对于所有窗口w(i,j),如果那么设置
步骤3.3:设置已修正的梯度热点数目nh=0;
步骤3.4:对于任意窗口w(i,j),扫描并修正X方向的梯度热点。如果|Dw *(i,j)-Dw *(i,j+1)|>g0,则修正密度较小的窗口,将其密度改为并使修正后的热点数目nh加1;
步骤3.5:与步骤3.4类似,依次扫描并修正Y,XY,YX方向的梯度热点;
步骤3.6:若nh为0,则返回窗口密度最小下界否则,转步骤3.3。
可以证明,扫描-修正算法最多迭代次后即可终止。因此,总的算法时间复杂度为
步骤4利用修正的覆盖线性规划算法进行迭代求解
本步骤的输入为步骤3得到的窗口密度最小下界输出为网格填充量的一个近似解。该步骤具体由3个子步骤组成:建立关键网格集合、用预填充策略修正窗口密度最小下界和采用修正的覆盖线性规划近似算法求解。
步骤4.1建立关键网格集合
为了加速迭代过程的收敛速度,本发明方法建立一个关键网格集合Tc,对那些不希望被填充的网格实施填充惩罚。
在步骤3得到的窗口密度最小下界上,逐个检查当前窗口与周围窗口的密度差。若一对窗口的密度差恰为梯度上限g0,则定义具有较高密度的窗口为关键窗口,而关键窗口覆盖的所有网格均称为关键网格,所有关键网格均添加至关键网格集合Tc中,不在Tc中的网格称为自由网格,如图9所示。
步骤4.2用预填充策略修正窗口密度最小下界
为了加速迭代过程的收敛速度,本发明方法采用预填充策略。
在预填充策略下,窗口密度的最小下界设置的稍大些。例如,对于一对密度分别为dw(i)和dw(i+1)且违反梯度约束的窗口,若较低的窗口密度为dw(i),则其应被调整为dw(i+1)-g0,即窗口密度增量为dw(i+1)-g0-dw(i)。利用预填充策略,则其填充增量为dw(i)+(1+θ)(dw(i+1)-g0-dw(i)),这里θ为介于0和1之间的小数,即其填充增量为(1+θ)倍。
预填充可以加快迭代过程的收敛,但这种效率提升是以一定的超额填充为代价的。预填充因子θ在迭代过程中被设计成自适应的。θ被初始化为较小的值,并在迭代过程中逐渐增大,预填充因子θ的初始值为0。
步骤4.3采用修正的覆盖线性规划近似算法求解
在步骤3得到窗口密度最小下界的基础上,可按照文献[13]中方法将最小化哑元插入数量的哑元综合问题转化为CLP的形式,即式(9)可转化为如下CLP形式:
其中,
的向量形式,即将二维矩阵按照行优先转化为一维向量。
上述式(10)和式(11)可按照文献[13]中的CLP求解算法进行快速求解,该算法称为FPTAS。
由于不希望在填充过程中提高关键窗口的密度,因此,本发明方法通过在CLP求解算法FPTAS中引入一个惩罚因子fp来限制对于关键网格的填充,这里fp是一个大于1的常数。FPTAS算法对网格填充代价的评估和填充方法定义如下:
其中,c(j)为哑元的填充代价系数,A为从网格密度到窗口密度的转换矩阵,xt为网格当前填充量,α为覆盖线性规划快速解法FPTAS的阶段控制参数,上述参数定义均与文献[13]中保持一致。
一个网格的填充代价price(i,j)越大则增加的填充量就越少。在填充过程中,关键网格的填充代价在原有基础上增大至fp倍。因此只要当前窗口内有自由网格,则关键网格新增加的填充量就为自由网格的1/fp。若待填充窗口内全部都是关键网格,此时fp将失去惩罚作用。使用惩罚因子处理关键网格比简单地把它们“锁”起来禁止填充更具优势,因为它可以避免当填充窗口所覆盖的网格都是关键网格时程序陷入死循环。
步骤5利用热点聚类分组和线性规划局部求解方法消除热点,得到最终的哑元填充量。
经过步骤4后,若版图上仍存在梯度热点,则对这些热点按照距离远近进行聚类分组,并用线性规划方法对各聚类分组进行局部求解,重复迭代本步骤直到消除全部梯度热点。最后返回网格上的哑元填充量,综合过程结束。
步骤5.1梯度热点检测
更新当前窗口密度,检查梯度约束,若版图上仍有违反梯度约束的窗口,则进入步骤5.2;否则,返回网格上的哑元填充量,综合过程结束。
步骤5.2梯度热点聚类分组
采用直线距离度量不同热点之间的相关程度,并将空间位置邻近的热点划分为同一组。记两个不同热点hm和hn之间的距离为d(hm,hn),则两个热点集合ci和cj之间的距离可定义为:
d(ci,cj)=min{d(hm,hn)|hm∈ci,hn∈cj}. (13)
热点聚类分组过程最初将每个单独的热点初始化为独立的热点集合,然后依据式(13)计算两两热点集合之间的距离d(ci,cj),若距离d(ci,cj)小于预先设定的距离阈值dth则将集合ci和cj合并,直到任何两个集合都不能合并为止,剩下的集合即为最终的梯度热点聚类分组。
步骤5.3线性规划局部求解方法
由于对某个网格密度进行调整时,覆盖该网格的所有窗口密度均会受到影响,因此在进行局部区域求解时需设置一定的“缓冲区”。假设热点集合ci包含的热点为h1,...,hk,热点相应的网格坐标为((x1,y2),...,(xk,yk)),则对应于热点集合ci的矩形求解区域Ri由其左下和右上角坐标(xll,yll)和(xur,yur)唯一确定。(xll,yll)和(xur,yur)定义为:
xll=min{x1,...,xk}-dbuf,yll=min{y1,...,yk}-dbuf
xur=min{x1,...,xk}+dbuf,yur=min{y1,...,yk}+dbuf (14)
其中,dbuf即为了考虑局部求解对周围窗口的影响设置的缓冲距离。dbuf不宜过大,因为dbuf过大会增加局部求解的变量数目,影响求解效率,同时,dbuf过大会使得不同热点集合的计算区域发生大量重叠,不利于热点集合之间解耦合。本发明中将dbuf设置为等于阈值距离dth
相邻窗口的密度由于包含部分相同的网格而耦合在一起,因此,消除所有局部梯度热点后得到的结果不一定在全局满足梯度约束。为此,本发明采用迭代求解的策略,即需要在本步骤结束后返回步骤5.1再次迭代进行热点检测。
本发明提出综合应用覆盖线性规划方法、密度梯度热点聚类分组和线性规划局部求解技术的迭代求解方法,完整的流程如图5所示。
本发明方法的优点有:
(1)本发明方法能同时处理密度上下限约束和梯度约束,且最小化哑元插入数量,比较全面地处理了哑元综合过程中的影响因素。;
(2)本发明方法的时间复杂度为O(n2logn),与线性规划方法O(n3)的复杂度相比降低了求解复杂度,实现了计算精度和效率的合理折中;
(3)本发明方法提供了计算精度控制参数,可以根据需要调整计算精度和求解效率,为实际应用提供了灵活性;
(4)本发明方法可以给予不同区域的哑元以不同的权重。该特点使得本发明方法可以方便地处理关键路径上的网格,通过使用更高的权重来减小关键路径上的哑元插入数量。
附图说明
图1哑元填充过程示例
图2网格-窗口两级划分机制和窗口、网格的定义
图3实际版图中图形密度分布的一个实例
图4(a)实际版图经过初步填充后的密度分布
图4(b)初步填充后版图上的梯度热点分布和分组
图5本方明方法的哑元综合流程图
图6填充余量提取方法示意
图7分解在4个方向的窗口密度梯度约束
图8扫描-修正方法求解窗口密度最小下界的示意
图9关键窗口和关键网格的定义
图10第一实施例中本发明方法与线性规划方法的比较。
图11为第二实施例中本发明方法随问题变量规模的变化。
图12局部求解计算时间占总求解时间的比例
图13CPLF算法执行过程中梯度热点数目的变化(g0=0.05)
具体实施方式
为使本发明的特征和优点能够更加明显易懂,下面通过一些具体的实例进一步说明本发明。
实施例1本方法明发法与线性规划方法在填充效果上的比较
用过填充率(overfill ratio)来衡量各种哑元填充算法的精度。过填充率定义为:
其中,fillopt为采用线性规划方法得到的最优填充量。
在该实施例中,窗口密度下限L=0.25。权值函数定义为其中c0=0.1,c1=-0.1,c2=1,窗口划分数取r=3。
图10显示了本发明提出的算法CPLF(CLP Plus Local Fill)在梯度约束从0.06变化到0.1时的过填充率,部分实验结果总结在表1中。
通过图10中可以看出,在这些算例中CPLF的最大过填充率小于6%。过填充率会随着梯度约束减小而增加,这归因于局部求解把原始问题分解在不同局部区域造成的误差。当梯度约束变紧时,梯度热点数目增加,相应的局部求解子问题数目和迭代次数都会增加,最终导致过填充误差变大。
表1同时列出了测试算例的执行时间和加速比。表中数据表明,在变量规模为2.5×103左右时,与线性规划方法相比,CPLF算法的加速比为30至40倍。CPLF算法在不同梯度约束和不同测试电路条件下的执行时间差别不大,这主要是因为CPLF算法仅调用一次FPTAS算法进行CLP求解,且与后续的局部区域迭代求解所占的时间比重很小。
表1 CPLF算法在不同梯度约束下的误差和加速比
实施例2本发明方法的执行效率随问题规模的扩展性
为了展示本发明方法的执行效率随问题规模的扩展性,本实施例使用不同变量数目的算例。窗口划分数设置为5。为了使所有算例拥有相似的梯度热点分布,梯度约束在0.04到0.06范围内变化。
本发明方法CPLF算法的执行时间随变量数目的变化显示在图11中。LP算法的执行时间也被显示在其中以便比较。从图11中可以看出CPLF的时间增长率比LP方法要慢。在规模最大的一个算例中(约8000多个变量),LP方法求解时间超过12小时,而CPLF方法的求解时间仍在分钟量级,加速比超过240倍。
图12给出了局部求解过程的计算时间占总计算时间的比例。从图中可以看出,即使在最紧的梯度约束情况下局部求解的时间开销占总计算时间的比例都不足8%,且所占比例随着梯度约束的宽松呈迅速下降的趋势。该结果表明,CPLF算法的计算时间基本由覆盖线性规划求解时间决定,线性规划局部求解的计算开销很少,处理非常高效。
图13给出了CPLF算法迭代过程中剩余梯度热点数目的变化。在对4个不同版图的测试中,第一轮采用扫描-修正和覆盖线性规划求解消除了约70%-90%的梯度热点,在随后的热点聚类分组和局部求解过程中梯度热点数目约以每次迭代减少一个数量级的速度递减。从图中可以看到,最大迭代次数为3次,最小次数为1次,表明局部区域迭代求解过程具有良好的收敛速度。

Claims (12)

1.一种考虑梯度约束的哑元综合方法,其特征是,所述的方法是一个综合应用覆盖线性规划方法、密度梯度热点聚类分组和线性规划局部求解技术的迭代求解过程,其步骤包括:
步骤1:对输入的待填充版图按照网格-窗口两级划分机制进行网格划分,并依据设计规则提取各个网格内的网格密度和填充余量,并由此计算得到窗口密度;
步骤2:在步骤1中得到网格密度、网格填充余量和窗口密度的基础上,根据给定的密度约束上下限和梯度约束上限,建立最小化哑元插入数量的线性规划优化问题;
步骤3:依据所施加的密度约束和梯度约束,利用扫描-修正算法计算每个窗口的密度最小下界,将梯度约束转化为普通密度约束;
步骤4:利用修正的覆盖线性规划快速算法迭代求解网格上的哑元插入数量的近似解;
步骤5:利用热点聚类分组和线性规划局部求解方法消除剩余梯度热点,得到最终的哑元填充量;具体可分为3个子步骤:
步骤5.1:梯度热点检测;
步骤5.2:梯度热点聚类分组;
步骤5.3:线性规划局部求解方法。
2.按权利要求1所述的方法,其特征是,所述的步骤1中,网格密度被定义为网格内所有图形的总面积占网格面积的比例,即:
D t ( i , j ) = 1 S T Σ g ∈ T i , j S g , 1 ≤ i ≤ m , 1 ≤ j ≤ n , - - - ( 1 )
其中,Sg是网格Ti,j中几何图形g的面积,ST表示网格Ti,j的面积,i,j分别是网格Ti,j在芯片上所在行和列的索引,矩阵Dt(i,j)中元素即为网格Ti,j的密度;
给定版图网格密度Dt和权值函数fw,窗口密度定义为:
D w ( i , j ) = Σ k = i - r / 2 i + r / 2 Σ l = j - r / 2 j + r / 2 [ D t ( k , l ) × f w ( k - i , l - j ) ] - - - ( 2 )
若将矩阵Dt(i,j)和矩阵Dw(i,j)分别按照行优先排列为向量dt(I)和dw(I),即Dt(i,j)和dt(I)均指同一网格密度,Dw(i,j)和dw(I)均指同一窗口密度,则一维指标I和二维指标(i,j)之间的满足如下转换关系:
窗口密度的计算式(2)可以重写为:
dw(I)=A(I,J)·dt(J) (4)
其中,矩阵A中的元素A(I,J)表示以网格dt(I),即以Dt(i1,i2)为中心,覆盖r×r个网格dt(J),即Dt(j1,j2)的密度加权平均的权重;矩阵A中的元素完全由权值函数fw决定:
A ( I , J ) = 0 , i f ( j 1 - i 1 ) 2 + ( j 2 - i 2 ) 2 > 2 2 r f w ( j 1 - i 1 , j 2 - i 2 ) , o t h e r s - - - ( 5 )
其中,I和(i1,i2),J和(j1,j2)分别满足式(3)的一维和二维指标转换关系;
若窗口密度的上下限分别为U和L,则密度约束可表示为:
L≤dw=Adt≤U (6)。
3.按权利要求1所述的方法,其特征是,所述的步骤2中,所建立的线性规划问题能同时处理密度约束和密度梯度约束,并最小化哑元的插入数量。
4.按权利要求2所述的方法,其特征是,所述的步骤2中,梯度约束施加在窗口上,表示为:
- g 0 ≤ D w ( i + 1 , j ) - D w ( i , j ) ≤ g 0 - g 0 ≤ D w ( i , j + 1 ) - D w ( i , j ) ≤ g 0 - 2 g 0 ≤ D w ( i + 1 , j + 1 ) - D w ( i , j ) ≤ 2 g 0 - 2 g 0 ≤ D w ( i + 1 , j - 1 ) - D w ( i , j ) ≤ 2 g 0 1 ≤ i ≤ m , 1 ≤ j ≤ n - - - ( 7 )
其中,Dw为窗口密度矩阵,i,j为窗口在版图上行和列的索引,g0为单位距离的梯度上限,m,n为网格划分的行数和列数;
若用GX和GY表示X和Y方向的梯度差分矩阵,则梯度约束可以写为:
- g 0 ≤ G X d w ≤ g 0 - g 0 ≤ G Y d w ≤ g 0 , - - - ( 8 )
其中,矩阵GX和GY中每行仅有两个非零元,构成相邻窗口间的密度差分操作,其它方向上的密度差分矩阵可以类似处理。
5.按权利要求4所述的方法,其特征是,所述的步骤3中,采用扫描-修正方法确定窗口密度最小下界,具体步骤如下:
步骤3.1:初始化窗口密度最小下界为当前窗口密度,即
步骤3.2:对于所有窗口w(i,j),如果那么设置
步骤3.3:设置已修正的梯度热点数目nh=0;
步骤3.4:对于任意窗口w(i,j),扫描并修正X方向的梯度热点;如果|Dw *(i,j)-Dw *(i,j+1)|>g0,则修正密度较小的窗口,将其密度修改为并使修正后的热点数目nh加1;
步骤3.5:与步骤3.4类似,依次扫描并修正Y,XY,YX方向的梯度热点;
步骤3.6:若nh为0,则返回窗口密度最小下界否则,转步骤3.3。
6.按权利要求2所述的方法,其特征在于,步骤4由3个子步骤组成:
步骤4.1:建立关键网格集合;
步骤4.2:用预填充策略修正窗口密度最小下界;
步骤4.3:采用修正的覆盖线性规划近似算法求解网格内哑元插入数量。
7.按权利要求6所述的方法,其特征在于,步骤4.1中关键网格的定义为:在步骤3得到的窗口密度最小下界上,逐个检查当前窗口与周围窗口的密度差;若一对窗口的密度差恰为梯度上限g0,则定义具有较高密度的窗口为关键窗口,而关键窗口覆盖的所有网格均称为关键网格,所有关键网格均添加至关键网格集合Tc中,不在Tc中的网格称为自由网格。
8.按权利要求6所述的方法,其特征在于,步骤4.2中预填充策略对窗口密度下限的调整方法为:给定预填充因子θ和梯度约束g0,对于密度分别为dw(i)和dw(i+1)的一对违反梯度约束的窗口,较低的窗口密度为dw(i),现在其被修正为dw(i)+(1+θ)(dw(i+1)-g0-dw(i)),这里θ为介于0和1之间的小数,即其填充量被增大θ倍。
9.按权利要求6所述的方法,其特征在于,步骤4.3中覆盖线性规划问题的定义为:
min c T x s u b j e c t t o A x ≥ b x ≤ u x ≥ 0 - - - ( 9 )
其中,
c = 1 b = d w * - Ad t 0 u = min { U - d t 0 , s } - - - ( 10 )
其中,是步骤3求得的最小窗口密度下限的按行排列的向量形式,dt0为原始版图网格密度向量,s为网格填充余量。
10.按权利要求9所述的方法,其特征在于,步骤4.3中利用覆盖线性规划的快速解法FPTAS求解时,对关键网格的填充进行惩罚;设惩罚因子为fp,关键网格的填充代价调整方法如下:
p r i c e ( i , j ) = f p c ( j ) A ( i , j ) x t ( j ) α s ( j ) - x t ( j ) - - - ( 11 )
其中,c为哑元的填充代价系数,xt为网格当前填充量,α为覆盖线性规划快速解法FPTAS的阶段控制参数,A(i,j)即为权利要求2中密度加权平均的权重矩阵A中的元素。
11.按权利要求1所述的方法,其特征在于,步骤5.2中对梯度热点进行聚类分组时,采用直线距离来度量不同热点之间的相关程度;记两个不同热点hm和hn之间的距离为d(hm,hn),则两个热点集合ci和cj之间的距离定义为:
d(ci,cj)=min{d(hm,hn)|hm∈ci,hn∈cj} (12)
热点聚类分组过程最初将每个单独的热点初始化为独立的热点集合,然后依据式(12)计算两两热点集合之间的距离d(ci,cj),若距离d(ci,cj)小于预先设定的距离阈值dth则将集合ci和cj合并,直到任何两个集合都不能合并为止,剩下的集合即为最终的梯度热点聚类分组。
12.按权利要求1所述的方法,其特征在于,步骤5.3进行线性规划局部求解时,设置一定的“缓冲区”;假设热点集合ci包含的热点为h1,...,hk,热点相应的网格坐标为((x1,y2),...,(xk,yk)),那么对应于热点集合ci的矩形求解区域Ri由其左下和右上角坐标(xll,yll)和(xur,yur)唯一确定;(xll,yll)和(xur,yur)的定义如下:
x l l = min { x 1 , ... , x k } - d b u f , y l l = min { y 1 , ... , y k } - d b u f x u r = min { x 1 , ... , x k } + d b u f , y u r = min { y 1 , ... , y k } + d b u f - - - ( 13 )
其中,dbuf即为了考虑局部求解对周围窗口的影响设置的缓冲距离。
CN201210246483.4A 2012-07-16 2012-07-16 一种基于密度梯度热点聚类和局部求解的哑元综合方法 Active CN103544332B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210246483.4A CN103544332B (zh) 2012-07-16 2012-07-16 一种基于密度梯度热点聚类和局部求解的哑元综合方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210246483.4A CN103544332B (zh) 2012-07-16 2012-07-16 一种基于密度梯度热点聚类和局部求解的哑元综合方法

Publications (2)

Publication Number Publication Date
CN103544332A CN103544332A (zh) 2014-01-29
CN103544332B true CN103544332B (zh) 2017-05-31

Family

ID=49967784

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210246483.4A Active CN103544332B (zh) 2012-07-16 2012-07-16 一种基于密度梯度热点聚类和局部求解的哑元综合方法

Country Status (1)

Country Link
CN (1) CN103544332B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106997401B (zh) * 2016-01-22 2020-06-30 中芯国际集成电路制造(上海)有限公司 提取芯片版图特征的方法、cmp仿真方法及系统
CN106096639B (zh) * 2016-06-06 2019-04-09 华侨大学 一种基于密度热度的电离层雷达数据的聚类方法
CN111488721B (zh) * 2020-04-08 2022-11-25 湖南大学 一种版图热点聚类方法、装置及设备
CN113590891B (zh) * 2021-08-09 2023-08-11 江苏网进科技股份有限公司 一种实时流处理框架
CN116579286B (zh) * 2023-05-29 2024-04-30 深圳亿方联创科技有限公司 一种基于竞拍算法的增量式布局方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101964001A (zh) * 2009-07-22 2011-02-02 复旦大学 一种化学机械抛光工艺哑元填充方法
CN101964002A (zh) * 2009-07-23 2011-02-02 复旦大学 一种化学机械抛光工艺哑元填充的启发式方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8466560B2 (en) * 2010-12-30 2013-06-18 Stmicroelectronics, Inc. Dummy structures having a golden ratio and method for forming the same

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101964001A (zh) * 2009-07-22 2011-02-02 复旦大学 一种化学机械抛光工艺哑元填充方法
CN101964002A (zh) * 2009-07-23 2011-02-02 复旦大学 一种化学机械抛光工艺哑元填充的启发式方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Provably Good and Practically Efficient Algorithms for CMP Dummy Fill;Chunyang Feng 等;《Proceedings of the 46th Annual Design Automation Conference.ACM》;20090731;第539-544页 *
考虑填充哑元的有效三维互连电容提取与分析;张梦生 等;《电子学报》;20050430;第33卷(第4期);第667-670页 *

Also Published As

Publication number Publication date
CN103544332A (zh) 2014-01-29

Similar Documents

Publication Publication Date Title
CN103544332B (zh) 一种基于密度梯度热点聚类和局部求解的哑元综合方法
CN101918948B (zh) 半导体图案化操作的经改进均匀性
US7805700B2 (en) Physical-resist model using fast sweeping
CN103544331B (zh) 一种基于cmp仿真模型的哑元综合优化方法
US20040210856A1 (en) Mask cost driven logic optimization and synthesis
TWI709053B (zh) 積體電路設計系統以及用於積體電路設計之方法
CN104951600B (zh) 一种光刻友好型冗余金属填充方法
US11594528B2 (en) Layout modification method for exposure manufacturing process
US8793638B2 (en) Method of optimizing design for manufacturing (DFM)
JP5491777B2 (ja) フレア補正方法およびフレア補正プログラム
US9311443B2 (en) Correcting for stress induced pattern shifts in semiconductor manufacturing
KR20170047101A (ko) Opc 이용한 마스크 제조방법 및 반도체 소자 제조방법
US20090183132A1 (en) Semiconductor-device manufacturing method, semiconductor-device manufacturing program and semiconductor-device manufacturing system
CN103246153A (zh) 半导体芯片的版图图层设计方法及其掩膜板
CN102385242A (zh) 掩膜版制作方法及系统
CN103311103B (zh) 半导体芯片的版图图层设计方法及其掩膜板
US9026955B1 (en) Methodology for pattern correction
CN104700435B (zh) 一种利用oasis图形阵列压缩版图数据的方法
US20110191731A1 (en) Zone-based area recovery in electronic design automation
US7153728B2 (en) Estimation of remaining film thickness distribution, correction of patterning and insulation film removing masks with remaining film thickness distribution, and production of semiconductor device with corrected patterning and insulation film removing masks
JPH06333796A (ja) 露光データ処理方法及び装置
CN111367148B (zh) 曲线图形光学邻近修正方法
CN103714188A (zh) 用于优化在晶片上制造的管芯数目的系统
TWI712904B (zh) 電子裝置及積體電路的佈局方法
CN115114879A (zh) 用于最佳化集成电路装置的实体布局的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant