首页> 中国专利> 一种化学机械抛光工艺哑元填充的启发式方法

一种化学机械抛光工艺哑元填充的启发式方法

摘要

本发明属集成电路半导体制造技术领域,提出一种化学机械抛光工艺的哑元填充的启发式方法,将最小化哑元金属数目的哑元填充问题表示成一个标准的线性规划问题,然后提出动态增加网格内哑元金属密度的启发式算法求解最小哑元填充问题。该方法在每次优化过程中根据网格密度代价函数和近似精度,动态确定向待填充网格内填充哑元金属密度的数量,同时通过近似常数ε调整每次迭代时网格内哑元金属密度的增加量,能实现最终结果精度和计算速度的折衷。本方法可行性高,处理速度极高效,其计算速度和结果精度均优于流行的Monte-Carlo方法,可用于解决大规模版图哑元填充问题。

著录项

  • 公开/公告号CN101964002A

    专利类型发明专利

  • 公开/公告日2011-02-02

    原文格式PDF

  • 申请/专利权人 复旦大学;

    申请/专利号CN200910055285.8

  • 发明设计人 周海;曾璇;严昌浩;陶俊;冯春阳;

    申请日2009-07-23

  • 分类号G06F17/50;

  • 代理机构上海正旦专利代理有限公司;

  • 代理人包兆宜

  • 地址 200433 上海市邯郸路220号

  • 入库时间 2023-12-18 01:39:26

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2013-04-10

    授权

    授权

  • 2011-03-23

    实质审查的生效 IPC(主分类):G06F17/50 申请日:20090723

    实质审查的生效

  • 2011-02-02

    公开

    公开

说明书

技术领域

本发明属集成电路半导体制造技术领域,涉及一种以最少哑元填充(dummyfill)数目作为优化目标同时保证版图金属密度均匀性的快速哑元填充的启发式方法,

技术背景

随着集成电路半导体制造技术的进一步发展,集成电路特征尺寸进一步减小,大马士革铜互连工艺被普遍用于半导体制造工艺中,目前已经成为集成电路多层布线的主流工艺。在制造铜互连的多层布线立体结构中,芯片表面的高度平坦化是其中的关键技术之一。到目前为止,化学机械抛光(ChemicalMechanical Polishing,CMP)技术是唯一成功并大规模使用的平坦化工艺技术。

铜互连化学机械抛光工艺存在的一个最大的问题是抛光后芯片表面形貌高度和版图模式密切相关。现有的一些化学机械抛光模型[1]指出,芯片不同区域抛光后的形貌高度与该区域版图互连线的密度密切相关。这是由于在化学机械抛光中,铜金属与其周围材料的移除速率不同造成的。图1示意性地表示了芯片表面不同金属密度区域化学机械抛光后的形貌。可见,由于互连线版图模式的非均匀性,抛光后芯片表面形貌高度和版图模式密切相关的问题会严重降低芯片表面的平整度。芯片表面的这种非平整性可能导致在随后的光刻工艺过程中产生聚焦困难,降低了光刻的分辨率和图形的成像质量。另外,芯片表面的非平整性还会使金属互连和介质层的纵向高度严重偏离标称值,因此对互连线寄生参数产生严重影响,从而影响芯片的性能。总之,这种现象如不加以预测和控制,会导致严重的芯片成品率问题。

由于化学机械抛光后芯片表面的平整度严重依赖于版图上图形的密度[1],因此,为了提高表面平整度,工业界一般要求在芯片设计中保证版图上金属密度的均匀性。为此,工业界最常用的是使用哑元填充方法[2],即在版图的空白区域加入无逻辑功能的金属块(哑元金属),来达到版图上金属密度均匀的要求。

然而,哑元填充物会对电路性能和后续制造工艺产生不良的影响。首先,哑元金属会使得互连线间、互连与衬底间的耦合寄生电容增加,从而导致电路性能显著下降。此外,如果填充了过量的哑元填充物,会增加半导体制造工艺的时间和成本。当新的制造工艺技术出现、或电路设计变得更复杂时,这些问题都将会被放大。因此哑元填充方法的目标应在保证版图金属密度均匀化的同时,尽量减少总的哑元填充数目,以减少对电路性能带来的影响和降低制造工艺的成本。

在现有技术中,人们已经提出了许多哑元填充方法,这些技术方法主要可以归为两类:基于传统线性规划的方法[3][4]和基于Monte-Carlo算法或贪婪算法的启发式方法[5][6]。

基于传统的线性规划的方法将上述最少哑元填充问题转化成了一个标准的线性规划问题[3]。因此,可以通过现有的许多线性规划求解器[8]来求解。这种方法虽然可以保证得到该问题最优解,但由于传统的线性规划方法复杂度很高(O(m3),m为线性规划问题的规模),因此此类方法计算极为耗时,不适合求解大规模问题。

为了解决基于传统的线性规划的方法速度慢的问题,研究人员提出了一些基于Monte-Carlo算法或贪婪算法的启发式方法[5][6]来求解最少哑元填充问题。这类方法计算速度很快,能够有效处理超大规模的哑元填充问题。对于在每次优化迭代过程中如何确定向待填充网格内填充哑元金属的数量的问题,这类算法采用静态增加哑元密度的策略,即每次仅增加特定单位的哑元金属密度或者每次增加最大可允许的哑元金属密度。例如,贪婪算法[6]每次向网格内填充最大可允许的哑元数量,这将导致整个版图填入的哑元数量过剩;而Monte-Carlo方法[5]采用每次向网格内填充一个单位哑元金属的策略,使得填充过程时间太长。与本发明相关的现有技术有如下参考文献:

[1]Tamba E.Gbondo-Tugbawa.Chip-Scale Modeling of Pattern Dependencies in CopperChemical Mechanical Polishing Processes.PhD thesis,Massachusetts Institute of Technology,2002.

[2]A.B.Kahng and K.Samadi.CMP fill synthesis:A survey of recent studies.IEEE Trans.onCAD,27(1):3-19,2008.

[3]R.Tian,D.F.Wong,and R.Boone.Model-based dummy feature placement for oxidechemical mechanical polishing manufacturability.In Proceedings of IEEE/ACM InternationalConference on Design Automation Conference,pages 667-670,2000.

[4]A.Kahng,G.Robins,A.Singh,and A.Zelikovsky.Filling algorithms and analyses for layoutdensity control.IEEE Trans.on CAD,18(4):445-462,1999.

[5]Y.Chen,A.B.Kahng,G.Robins,and A.Zelikovsky.Monte-carlo algorithms for layoutdensity control.In Proceedings of ASP-DAC,pages 523-528,2000.

[6]Y.Chen,A.B.Kahng,G.Robins,and A.Zelikovsky.Practical iterated fill synthesis for cmpuniformity.In Proceedings of IEEE/ACM International Conference on Design AutomationConference,pages 671-674,2000.

[7]GLPK,http://www.gnu.org/software/glpk.htm

[8]Brian Lee.Modeling of Chemical Mechanical Polishing for Shallow Trench Isolation.PhDthesis,Massachusetts Institute of Technology,2002.

[9]P.Raghavan and C.D.Thompson.Randomized rounding:A technique for provably goodalgorithms and algorithmic proofs.Combinatorica,7(4):365-374,1978.

发明内容

本发明的目的是提供一种全新的动态增加网格内哑元金属密度的启发式哑元填充方法。该方法在每次优化过程中,可以根据网格密度代价函数和近似精度ε,动态确定向待填充网格内填充哑元金属密度的数量,从而克服以往启发式算法中静态填充哑元金属密度导致的哑元填充数量过大或填充时间过长的问题,使最终结果更接近最优解。

本发明启发式哑元填充方法首先将最小化哑元金属数目的哑元填充问题表示成一个标准的线性规划问题,然后提出一种快速的启发式算法来求解最小哑元填充问题。该启发式方法通过近似常数ε来调整每次迭代时网格内哑元金属密度的增加数量,因而可以平衡算法的精度和速度之间的关系:ε越小,算法精度越高,速度越慢;反之,ε越大,算法精度越低,速度越快。从而可以实现最终结果精度和计算速度的折衷。

本发明提出的可动态增加网格内哑元金属密度的启发式哑元填充算法,包括下述步骤,流程如图3所示:

步骤1:输入待填充的版图、给定的版图金属密度的上下界、版图上允许哑元填充的可行区域以及近似精度ε;

步骤2:将最小化哑元金属数目的哑元填充问题表示成标准的线性规划问题,其中包括2个子步骤;

步骤2.1:以固定的r-划分模式划分所述版图区域。

本发明方法与目前存在的大多数哑元填充方法一样,都是基于固定的r-划分模式的[2]:设版图区域尺寸为n×n,该区域被离散成大小为(w/r)×(w/r)的网格Ti,j,i,j=1,L(nr/w),使得每一个尺寸为w×w的浮动窗口Wi,j,i,j=1,L(nr/w),覆盖r×r个网格。图2为r=5时的离散结果示意图。如图所示,处于芯片右下方的浮动窗口需包含位于芯片左上方的网格,同理,反之亦然。这是为了模拟芯片在硅片上周期排列的情况。

步骤2.2:将最小化哑元金属数目的哑元填充问题表示成标准的线性规划问题

在固定的r-划分上,最小化哑元填充数目的问题可以定义为传统的线性规划

问题[3]:向版图网格内的空白区域中填入哑元金属使得填充后的版图内所有浮动窗口的金属密度都在给定的约束之内,而且总的哑元金属填充数目最小。

上述最小化哑元填充数目的哑元填充问题可以写成如下线性规划的形式[3]:

mincTx                        (1.1)

subject to L≤ρw≤U          (1.2)

0≤x≤slack                   (1.3)

(1.1)式为优化目标,其中,x∈Rm为表征所有离散网格内哑元金属密度的向量,向量c∈Rm为离散网格上的权重。(1.2)式表示填充后版图内所有浮动窗口的金属密度都应在给定的约束之内,其中,ρw∈Rm为表征所有浮动窗口内金属密度的向量,L∈Rm和U∈Rm分别表示给定的浮动窗口金属密度的下界和上界。(1.3)式为网格内哑元金属填充的约束,其中,slack∈Rm表示所有网格内可允许填充的哑元金属的密度上界。

浮动窗口Wi,j内的金属的密度ρ(Wi,j),可以由以下式子求得

ρ(Wi,j)=Σk=i-r/2i+r/2Σl=j-r/2j+r/2[ρ(Ti,j)×f(k-i,l-j)]---(2)

其中,ρ(Ti,j)为离散网格Ti,j内金属的密度。f为滤波函数,其决定了窗口金属密度如何由网格密度得到,不同的化学机械抛光工艺模型决定了f具有不同的形式。如果f为常值函数,则表明浮动窗口的金属密度为其内部网格的金属密度的平均值。从(2)式可以得到所有浮动窗口金属密度和所有网格金属密度的关系如下

ρw=A(x0+x)              (3)

其中,x0∈Rm为表征所有离散网格内原有金属密度的向量,窗口矩阵A∈Rm×m代表了网格金属密度和浮动窗口金属密度之间的映射关系。

根据(1)和(3)式可以看出,最小化哑元数目的哑元填充问题为一个标准的线性规划问题。(1)式中优化目标和约束的规模均为如果假定浮动窗口尺寸w=200um,r=4,则对于一个尺寸为20mm的芯片来说,哑元填充问题的规模为160000。对于计算复杂度为O(m3)的线性规划方法来说,这样大规模的问题是没有办法处理的。

步骤3:应用动态增加网格内哑元金属密度的启发式算法求解哑元填充问题,其中包括5个子步骤:

步骤3.1:对启发式算法进行初始化

该步骤初始化网格内哑元金属密度x、集合T、集合W和待填充窗口p。

首先,网格内哑元金属密度x初始化为0。

其次,初始化集合并将所有浮动窗口置于集合W中。算法在运行过程中维持集合T和W。如果一个网格内的哑元金属密度已经超过上限,或者此网格所属的浮动窗口内的金属密度已经超过给定的上限,则此网格被置于集合T中。集合W包含了所有还需要进行哑元填充的窗口,即窗口内的网格不全都属于集合T。因此,根据以上定义,算法初始化集合T为空集,并将所有窗口均置于集合W中

最后,本发明在集合W中找出具有最小金属密度的窗口作为待填充窗口p;

步骤3.2:本步骤为判断步骤,算法迭代开始。如果以下条件不满足,

ρw(p)<L

即待填充窗口p的金属密度大于给定的金属密度下限,迭代结束,算法结束,输出网格内哑元金属填充结果;如果上述条件满足,进行步骤3.3;

步骤3.3:选择属于待填充窗口p并且哑元密度还未达到密度上限的网格作为待填充网格,

本发明将所有属于窗口p并且不属于集合T的网格置于集合Q(p)中,也就是说,只有网格内的哑元金属密度没有超过上限slack,并且此网格所属的浮动窗口内的金属密度没有超过给定的上限U,此网格才能作为待填充的网格;

步骤3.4:根据网格密度代价函数和近似精度,来动态确定待填充网格的哑元密度增加量,对待填充窗口p内所有待填充的网格进行动态哑元金属填充,

在步骤3.3中,所有待填充的网格已被置于集合Q(p)中。如果集合Q(p)为空集,即窗口p不能再进行哑元金属填充了,则窗口p将从集合W中取出。然后算法进入步骤3.5;

若集合Q(p)不为空集,算法将增加集合Q(p)内所有网格内的哑元金属密度。对于属于Q(p)的网格j,算法根据网格密度代价函数和近似精度ε来增加其哑元密度,具体准则如下:

x(j)=x(j)+ϵηprice(j,p)x(j)---(4)

其中,price为增加窗口p内网格j哑元金属密度的代价,定义为

price(j,p)=c(j)/A(p,j)               (5)

(5)式表明,网格j的权重c(j)越大,其代价越高;网格j内金属密度对窗口p内金属密度贡献越大,即A(p,j)越大,其代价越小。根据(4)式,算法保证具有越小代价的网格密度增加得越多。为了保证通过(4)式的准则增加x而不超过上限slack,算法定义增加窗口p内网格j内哑元金属密度的加权代价为

weighted_price(j,p)=price(j,p)min{1,slack(j)-x(j)ϵx(j)}---(6)

在(4)式中,η为Q(p)内所有网格的最小加权代价。显然,根据(4)和(6),算法保证待增加的网格哑元金属密度x最多增加为原来的1+ε倍,或者增加到其上限slack。

从(4)式可以看出,在每次迭代过程中,算法可以动态地增加待填充网格内哑元金属的密度。与以往的Monte-Carlo方法[5]或贪婪算法[6]中静态增加哑元密度的策略(或者每次仅增加特定单位的哑元金属密度或者每次增加最大可允许的哑元金属密度)相比,本发明方法更接近最优解。另外,近似常数ε控制着每次迭代时窗口内哑元密度增加的速度,ε越大,其增加越快,则算法收敛越快,算法精度越低;ε越小,其增加越慢,则算法收敛越慢,算法精度越高。

本发明中,如果希望算法最终得到所有离散网格内哑元填充的数目而不是密度,可以通过随机取整方法(randomized rounding)[10]对(4)式中每次的网格密度增加量进行取整,最终可以得到每个网格内需要填充的哑元金属数目;

按照(4)式增加完网格j内哑元金属密度x(j)后,若x(j)已经达到其上限slack(j),则网格j会被置于集合T中;

增加窗口p内网格的金属密度也会导致其它窗口的金属密度增加,因此在按照(4)式增加完Q(p)内所有网格的哑元金属密度后,算法需比较所有窗口的金属密度和给定的金属密度上限U,若有窗口的金属密度已经超过上限,则将其内所有的网格置于集合T中;

步骤3.5:在集合W中重新选择具有最小金属密度的窗口作为待填充的窗口p,然后跳到步骤3.2。

算法结束输出网格内哑元金属填充结果x。

通过以上3个大步骤,本发明方法获得每个离散网格内的哑元金属填充密度。

本发明启发式哑元填充方法具有以下优点:

1.本发明方法可以根据网格密度代价函数和近似精度ε来动态调节每次待填充网格内哑元金属的增加量,与以往的启发式算法中采用的静态增加哑元密度的策略相比,本发明方法得到的结果更接近最优解。

2.本发明方法具有良好的可伸缩性。本近似算法可以通过近似常数ε来平衡算法的精度和速度之间的关系:ε越小,算法精度越高,速度越慢;反之,ε越大,算法精度越低,速度越快。

3.实验表明,本发明方法可行性高,处理速度极为高效,无论是在计算速度还是在最终结果精度上,都优于当今流行的Monte-Carlo方法[5],因而可以应用于解决大规模版图哑元填充问题。

附图说明

图1为化学机械抛光工艺后芯片表面形貌的示意图。

图2为版图固定r-划分模式示意图。

图3为本发明启发式哑元填充方法提出的启发式算法流程图。

图4为在本发明第一实施例中本发明方法与传统的线性规划方法相比相对误差随近似常数ε的变化示意图。

图5为在本发明第三实施例中本发明方法可伸缩性示意图。

具体实施方式

为使本发明的上述目的、特征和优点能够更加明显易懂,下面通过具体实施例进一步说明本发明。

应用本发明提出的启发式方法获得哑元金属填充的结果,首先需要对整个版图进行固定的r-划分;其次要对整个版图进行版图参数提取,获得每个离散网格内原有互连金属的密度x0,在以下所有实施例中,假设每个网格原有密度x0为0到0.5之间的随机数;再次需要根据版图的设计规则(如规定的信号线和哑元金属之间的最小间距、哑元金属的尺寸和间距等),计算获得每个离散网格内的最大可允许填充密度slack。在下面的实施例中每个网格内的最大可允许填充密度slack通过以下式子获得

slack(i)=0.5×max(0,1-x0(i)-slack_reduction)            (7)

其中,slack_reduction为0到0.2之间的随机数;第四步需要建立LP形式中的系数矩阵A,向量L,U和c。在下面的实施例中我们假设每个离散网格的权重相同,即向量c为常数向量;最后,按照图3所示流程求解,最终获得每个离散网格内的哑元填充金属密度x。

本发明第一实施例用来表明本发明提出的启发式方法具有良好的精度。在本实施例中,版图尺寸假设为1000um×1000um,设定固定划分r=5,浮动窗口的尺寸为100um×100um。

在本实施例中,我们以传统的线性规划方法[3][8]获得的结果作为比较对象。我们定义两个算法之间的相对误差为

rel_err=abs(H_fills-LP_fills)/LP_fills            (8)

其中,H_fills和LP_fills分别表示本发明方法和LP方法获得的总的哑元金属填充数目值。abs表示求绝对值。

图4示意性地表示了本实施例中相对误差的大小随近似常数ε的变化关系。可以看出本发明提出的方法具有良好的精度,在近似常数ε=0.5时,相对误差仅为4%。可以看出,当ε很小时,使用本发明方法获得的结果非常接近于传统的LP方法。

本发明第二实施例用本发明提出的启发式方法和已有的启发式算法Monte-Carlo方法[5]进行比较。在本实施例中,假设每个哑元金属的尺寸为0.5um×0.5um。测试用例和最终结果如表1所示。

表1本发明方法和Monte-Carlo方法的比较结果

ΔDens表示填充后所有浮动窗口内金属密度的最大值和最小值之差。#Dummy表示最终填充的总的哑元金属数目。从表1数据可以看出,本发明方法无论是在运行时间、最终填充的总的哑元金属数目还是填充后窗口金属密度的分布上,均优于Monte-Carlo方法。

本发明第三实施例用来表明本发明方法中近似常数ε与运行时间的关系。在本实施例中,版图尺寸从200um×200um到1000um×1000um,近似常数ε分别采用0.1,0.25和0.5。

从图5可以清楚地看出,当ε固定时,本发明算法计算时间与问题规模之间成良好的线性关系。ε越小,算法速度越慢;反之,ε越大,算法速度越快。因此,本发明提出启发式方法具有良好的可伸缩性。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号