用于基于库的临界尺寸CD计量的精确和快速的神经网络训练的制作方法

文档序号:11458953阅读:371来源:国知局
用于基于库的临界尺寸CD计量的精确和快速的神经网络训练的制造方法与工艺

本申请是优先权日为2011年3月4日,申请日为2012年2月28日,申请号为“201280010987.4”,而发明名称为“用于基于库的临界尺寸cd计量的精确和快速的神经网络训练”的申请的分案申请。

本发明的实施方式为光学计量领域,更具体地,涉及用于基于库的临界尺寸(cd)计量的精确和快速的神经网络训练。



背景技术:

光学计量技术一般是指如散射测量一样在制造过程中提供表征工件参数的可能性。在实践中,将光直接照射在形成于工件的周期光栅上并且测量和分析反射光的光谱来表征该光栅参数。特征化参数可以包括影响材料的反射率和折射率的临界尺寸(cd),侧壁(sidewall)角(swa)和特性高度(ht)等。光栅的特征化因而可以表征工件也可以具有在光栅和工件的形成中利用的制造过程的特征。

在过去的几年,严格耦合波方法(rcwa)和类似算法已广泛用于衍射结构的研究和设计。在rcwa方法中,周期性结构的轮廓由给定数量的足够薄的平面光栅板来近似。具体来说,rcwa包含三个主要操作,即,光栅内的场的傅里叶展开、表征衍射信号的恒定系数矩阵的特征值和特征向量的计算,以及由边界匹配条件推断出的线性系统的解决方案。rcwa将问题分为三个不同的空间区域:1)支持入射面波场及所有反射的衍射级的总和的周围区域,2)光栅结构以及下面的非图案(pattern)层,其中波场被视为与每个衍射级相关联的模式的叠加,以及3)包含所传送的波场的基底。

rcwa解决方案的精确度部分依赖于在波场的空间谐波展开中保留的项数,一般满足能量守恒。保留的项数是在计算过程中考虑到的衍射级数的函数。针对给定的假定轮廓的仿真衍射信号的有效产生包括为衍射信号的横向磁(tm)分量和/或横向电(te)分量二者在每个波长处选择衍射级的最佳集合。在数学上,选择的衍射级越多,仿真的精确度越高。但是,衍射级数越高,计算仿真的衍射信号所需的计算量也越大。此外,计算时间是所使用的级数的非线性函数。



技术实现要素:

本发明的实施方式包括用于基于库的cd计量的精确和快速的神经网络训练的方法。

在实施方式中,一种用于基于库的临界尺寸(cd)计量的精确神经网络训练的方法,包括:优化频谱数据集合的主成分分析(pca)的阈值以提供主成分(pc)值。估计一个或多个神经网络的训练目标。基于所述训练目标及基于从优化所述pca的阈值中提供的所述pc值,训练所述一个或多个神经网络。基于一个或多个训练后的神经网络提供光谱库。

在另一实施方式中,一种具有存储在其上的指令的机器可存取存储介质,该指令使数据处理系统执行用于基于库的临界尺寸(cd)计量的精确神经网络训练的方法。该方法包括:优化频谱数据集合的主成分分析(pca)的阈值以提供主成分(pc)值。估计一个或多个神经网络的训练目标。基于所述训练目标及基于从优化所述pca的阈值中提供的所述pc值,训练所述一个或多个神经网络。基于一个或多个训练后的神经网络提供光谱库。

在实施方式中,一种用于基于库的临界尺寸(cd)计量的快速神经网络训练的方法,该方法包括:为第一神经网络提供训练目标。训练所述第一神经网络。该训练包括以预订数量的神经元开始并迭代增加神经元的数量直至达到优化的神经元的总数量。基于所述训练和所述优化的神经元的总数量,产生第二神经网络。基于所述第二神经网络提供光谱库。

在另一实施方式中,一种具有存储在其上的指令的机器可存取存储介质,该指令使数据处理系统执行用于基于库的临界尺寸(cd)计量的快速神经网络训练的方法。该方法为第一神经网络提供训练目标。训练所述第一神经网络。该训练包括以预订数量的神经元开始并迭代增加神经元的数量直至达到优化的神经元的总数量。基于所述训练和所述优化的神经元的总数量产生第二神经网络。基于所述第二神经网络提供光谱库。

附图说明

图1描述了根据本发明实施方式的表示用于基于库的cd计量的精确神经网络训练的示例性操作序列的流程图;

图2a是展示了与处于off状态的动态增加的样本库相匹配的库回归方法的曲线图;

图2b是根据本发明实施方式展示了与处于on状态的动态增加的样本库相匹配的库回归方法的曲线图;

图2c包括3σ误差范围与根据本发明实施方式对比传统的增加库样本大小比较的一对曲线图;

图3描述了根据本发明实施方式的表示用于基于库的cd计量的快速神经网络训练的示例性操作序列的流程图;

图4a示出了根据本发明实施方式的双隐藏层神经网络;

图4b示出了根据本发明实施方式的用于基于库的cd计量的快速神经网络训练的实际响应曲面的matlab曲线图;

图4c是比较根据本发明实施方式的增量算法和单稳态levenberg-marquardt算法的收敛历史的曲线图;

图4d是示出了根据本发明实施方式用于基于库的cd计量的快速神经网络训练的性能比较的曲线图;

图4e包括比较根据本发明实施方式用于基于库的cd计量的快速神经网络训练的一个频谱(spectrum)的结果的一对曲线图;

图4f包括比较根据本发明实施方式用于基于库的cd计量的快速神经网络训练的第二频谱的结果的一对曲线图;

图5描述了根据本发明实施方式的用于产生光谱信息的库的示例性神经网络的选择元素;

图6a描述了根据本发明实施方式的具有在x-y平面改变的轮廓的周期性光栅;

图6b描述了根据本发明实施方式的具有在x方向改变但不在y方向改变的轮廓的周期性光栅;

图7描述了根据本发明实施方式的表示用于确定和利用用于自动化处理和设备控制的结构参数的示例性操作序列的流程图;

图8是根据本发明实施方式的用于确定和利用用于自动化处理和设备控制的结构参数的系统的示例性框图;

图9是根据本发明实施方式示出利用光学计量来确定在半导体晶片上的结构轮廓的体系结构图;

图10示出了根据本发明实施方式的示例性计算机系统的框图;

图11是根据本发明实施方式表示用于建立参数化模型和以样本光谱开始的光谱库的方法中的操作的流程图。

具体实施方式

于此描述了用于基于库的cd计量的精确和快速的神经网络训练的方法。在以下描述中,为了提供对本发明实施方式的深入理解,提出了许多特定的细节,诸如神经网络的示例。对本领域技术人员显而易见的是,本发明实施方式可以在没有这些特定细节的情况下实施。在其他示例中,为了避免造成本发明实施方式不清楚,没有具体描述诸如涉及制造光栅结构的操作的已知的处理操作。此外,应当理解的是附图中显示的各种实施方式为示意性表示并且没有必要按比例绘制。

随着半导体和相关结构的复杂性的增加,用于光学临界尺寸仿真的库信息面临着针对许多最近的应用获得良好精确度的挑战。例如,用户可以花费几个星期来建立不同的库,而仅在用于引入计量的实现良好的库回归匹配和良好的总计量不确定度(tmu)有困难。本发明的方面可以提供高精确度库,以及小的库大小和针对用于的快速解决方案。用于不需要花费几个星期来建立过多的不同库但还可以获得良好的精确度。

许多具有迭代性质的训练方法已经实施用于库开发和比较。这些方法包括levenberg-marquardt(列文伯格-马夸尔特)、反向传播和n2x算法的改变。这类方法的问题可能是他们非常耗时。如果神经元的数量的推测是正确的,那么算法将用大量迭代进行收敛。如果神经元的数量太少,那么将无法收敛并停止直至神经元的数量命中迭代的最大数量。

在本发明的一个方面,提供了精确的神经网络训练方法。图1描述了根据本发明实施方式的表示用于基于库的cd计量的精确神经网络训练的示例性操作序列的流程图100。

参照流程图100的操作102,方法包括优化用于频谱数据集的主成分分析(pca)的阈值。在实施方式中,该优化即将提供主成分(pc)值。在实施方式中,优化即将最小化pca引入的误差。以下具体描述了频谱数据集可以基于从光栅结构的衍射测量中获得的测量的或仿真的频谱。

根据本发明的实施方式,pca阈值被自动优化。该优化可以最小化pca引入到随后的神经网络训练的误差。例如,传统的方法通常利用恒定值来用于pca阈值,如,pca引入的误差具有大约10-5的量级。在一个实施方式中,优化pca的阈值包括确定最小级的频谱域。在一个特定的这类实施方式中,pca引入的误差具有低于10-5的量级,如,大约10-8至10-9的量级。

在实施方式中,优化pca的阈值包括确定第一pca阈值。例如,给定的pca阈值或分数值可以被设定在t=10-5的阈值。该pca被应用于频谱数量集。例如,pca被应用于频谱数据集s以获得pc值p=t*s,其中t为矩阵。计算通过应用pca引入的频谱误差。例如,δs=s-t’*p,其中t’为t的转置。频谱误差然后与频谱噪声级进行比较。在一个实施方式中,频谱误差级基于光学临界尺寸(ocd)硬件规格信息。硬件规格信息可以与硬件相关联,诸如以下与图9相关联描述的系统。

在将频谱误差与频谱噪声级进行比较时,可以应用以下标准:ε为给定标准或默认的频谱噪声级,如果δs<ε则输出t,否则t=t/10且优化被重复。因而,在一个实施方式中,如果频谱误差小于频谱噪声级,那么第一pca阈值被设定为pc值。在另一实施方式中,如果频谱误差大于或等于频谱噪声级,则确定第二pca阈值,并且重复应用、计算和比较。

在实施方式中,优化pca的训练目标包括使用mueller(穆勒)域误差公差。例如,对于库训练中的当前技术,每个pca的误差目标可以被设定为10-5。对于将误差目标设定在这个值没有明确的原因,并且在pca10-5的误差目标与相关的频谱误差之间没有关系。并且,将每个pca设定为相同的误差目标未必是有利的,因为他们对频谱的贡献可能不同。在以下示例性方法中,mueller域误差公差被转换为每个pca域误差公差并设定作为pca训练目标。

在训练之前,神经网络训练轮廓被转换为mueller。根据mueller元素(me),基于训练样本数据执行标准化用于每个波长。接着,pca根据标准化mueller元素(nme)被执行以获得用于训练的pc信号。因此,在第j个波长的第i个样本的mueller元素(mij)可以被记为如下:

pc#:总pc数

stdj,meanj:第j个波长标准偏差和平均值

对于每个样本i,pcip一直与相同的因子相乘以形成mueller元素。如果mij误差公差被设定为0.001,那么第p个pc将具有以下误差预算:

其中etp为第p个主成分值的误差公差。在训练期间,每个pc将具有其自身的训练目标,并且为了满足训练误差目标,用于网络的神经元数量会增加。

参照流程图100的操作104,方法还包括估计用于一个或多个神经网络的训练目标。

根据本发明的实施方式,更加精确的训练目标被用于每个神经网络。在一个这类实施方式中,pca和标准化被考虑以估计用于每个神经网络的训练目标。在实施方式中,训练目标基于pca转换和硬件信号噪声级而被估计。

参照流程图100的操作106,方法还包括基于训练目标和基于pc值来训练一个或多个神经网络。

根据本发明的实施方式,过度训练检测和控制被执行。方法还可以被用于在levenberg-marquardt(lm)迭代期间增加神经元数量和过度训练的情况下,检测和控制过度训练。在实施方式中,训练还基于以上操作104的训练目标。应当理解的是训练可以基于一个以上的优化的pc值,并且可能基于许多个优化的pc值。未优化的和优化的pc值的组合也可以被使用。

参照流程图100的操作108,方法还包括基于一个或多个训练后的神经网络提供光谱库。在实施方式中,光谱库为高精确度的光谱库。

根据本发明的实施方式,提供了具有良好泛化能力的高精确度库。在一个这类实施方式中,基于用于每个训练输出域的个别误差目标,动态增加神经元数量的方法通过检查训练设定误差和校验设定误差二者的方法而被开发以具有基于高精确度和良好泛化能力的神经元网的库。之前的神经元数量迭代权值可以被用作用于当前神经网络结构的初始权值以加速训练。

在示例性实施方式中,方法已经被开发以改善在用于cd计量的整个库训练方法中的多个不同区域中的神经元网的训练。根据测试,已经获得了在库回归匹配上的实质的改善。例如,库误差范围(诸如3σ误差范围)可以比从以前的训练方法中产生的库小10倍以上。在实施这样更小的训练集的情况下,误差的范围可以接近精密级别。使用动态增加的样本库的方法可以提供与传统方法相比改善了的收敛行为,并可能仅需要更小的样本集来用于建立改善的库。动态增加的样本库的方法的益处在于针对精密级别、更小的库大小和快速解决方案的高精确度以使用户获得非常好的库以作为最终解决方案。

图2a是展示了与处于off状态的动态增加的样本库相匹配的库回归方法的曲线图。图2b是根据本发明实施方式展示了与处于on状态的动态增加的样本库相匹配的库回归方法的曲线图。参照图2a和2b,采用动态增加的样本库的方法on,需要非常少的样本(如,8000对比30000)来获得良好的匹配。

图2c包括比较的3σ(西格玛)误差范围与根据本发明实施方式增加库样本大小的一对曲线220和230的图。参照图2c,3σ误差范围改变以响应样本大小(如,传统的方法,动态增加的样本库的方法off,5小时;比较本发明实施方式中,动态增加的样本库的方法on,3小时)。因而,使用动态增加的样本库的方法,实现想要的结果的时间明显减少了。

在实施方式中,再次参照流程图100,高精确度光谱库包括仿真光谱,以及与流程图100相关描述的方法还包括将仿真光谱与样本光谱进行比较的操作。在一个实施方式中,仿真光谱从空间谐波级的集合中获得。在一个实施方式中,样本光谱从结构中收集,该结构诸如但不限于实体参照样本或实体生产样本。在实施方式中,通过使用回归计算来执行比较。在一个实施方式中,一个或多个非差分信号被同时用于计算中。该一个或多个非差分信号诸如可以为但不限于方位角、入射的角度、偏振器/分析仪角,或额外的测量目标。

在本发明的另一方面,提供了快速神经网络训练方法。图3描述了根据本发明实施方式的表示用于基于库的cd计量的快速神经网络训练的示例性操作序列的流程图。图4a-4f还示出了图3中描述的方法的方面。

参照流程图300中的操作302,方法包括提供用于第一神经网络的训练目标。参照流程图300中的操作304,该第一神经网络被训练,该训练包括以预定数量的神经元开始并迭代增加神经元的数量直至达到神经元的优化后的总数量。参照流程图300中的操作306,基于训练和神经元的优化后的总数量而产生第二神经网络。应当理解的是,许多这类迭代可以被执行以达到优化后的神经元的总数量。参照流程图300中的操作308,基于第二神经网络而提供光谱库。

在实施方式中,关于“快速”训练、前馈神经网络被用于实施非线性映射函数f,因此y≈f(p)。非线性映射函数f被用作确定频谱或光谱与给定轮廓相关联的元模型。考虑到计算时间和代价(cost),该确定可以而相当迅速地被执行。在一个实施方式中,该函数在具有训练数据的集合(pi,yi)的训练过程中被确定。神经网络可以被用于近似这类任意非线性函数。例如,图4a示出了根据本发明实施方式的双隐藏层神经网络。

参照图4a,从输入p至输出y的真正的映射函数ftrue(p)能够以数学方式近似具有双隐藏层神经网络400,根据等式1:

y=ftrue(p)≈f(p)=vt*g1[h*g2(w*p+d)+e]+q(1)

其中g1和g2为非线性函数。给定训练数据的集合(pi,yi),查找w、h、d、e、vt和q的集合,这样使得f(p)最好地表示ftrue(p)被称作训练。该训练可以被视为求解最优化问题以用于最小化均方误差,根据等式2:

后续的问题或确定包括,(1)多少隐藏层的神经元应该被使用?,以及(2)神经网络应该怎样被训练以具有规定的精确度?

关于神经元数量的确定,有两个方法来应对以上第一个问题。第一种方法是试探法。试探法包括设定两个数,18和30,用于待使用的神经元的最小数量和最大数量。在用于训练数据的主成分的数量小于或等于25时,使用18个神经元。在主成分的数量大于或等于80时,使用30个神经元。在主成分的数量在二者之间时,线性插值被用于决定神经元的合适数量。试探法的一个潜在的问题可能在于主成分的数量与应使用的神经元的数量无关。

确定应对以上第一个问题的第二种方法为与各种训练方法相结合的方法。首先,可以使用的神经元的最大数量被估计,如,将数量表示为mmax。然后,以下迭代过程被用于决定神经元的数量及训练对应的网络:设定m=10,那么(1)训练具有m个神经元的网络;如果该方法收敛,则停止,否则(2)如果(m+5)大于mmax,则停止,否则(3)m增加5,进行操作1。但是,以上的方法可能非常耗时。

推测前馈神经网络中神经元的最优数量以适合非线性函数是np完全问题(即,没有具有多项时间复杂度的已知解决方案的一类问题)。因而,根据本发明的实施方式,并如以下更具体的描述,优化的快速方法包括在训练期间逐渐增加网络中神经元的数量,直至将提供特定精确度的神经元的最优数量被确定。

关于算法描述,在实施方式中,增量训练算法是利用算法来训练神经网络的复合方法。在一个实施方式中,改进的levenberg-marquardt算法被使用。针对该问题的初始的levenberg-marquardt算法简要描述如下:表示jacobian(雅克比)其中w为用于神经网络的w、h、d、e、vt和q中的元素。在迭代i估计j并查找δw,因此:

(jtj+μi)δω=jte,

其中i为单位矩阵,μ为每次迭代中调整的缩放常数。用wi+1=wi+δw更新w。用新的w’s估计代价;如果代价低于规定的值(如10-5),则停止。否则,继续下一次迭代直至迭代的数量大于预定的数量(如,200)。换句话说,算法将停止迭代的可能的情况有两种。第一种是代价函数低于规定的值。第二种是迭代的数量大于迭代的最大数量。一个观察为levenberg-marquardt算法在降低迭代的第一10’s中的代价(均方值)中非常有效。在此之后,降低率明显减慢。

可替代的,在实施方式中,在停止标准处进行于此应用的以上levenberg-marquardt算法的改进。也就是说,一个以上的标准被增加:如果与之前的对于“r”连续迭代的迭代代价相比,代价没有减少x%,则停止。额外的标准被执行以检测欠拟合。增量训练算法接着被提出:给定的训练集(pi,yi)提供为输入,以及神经元的数量n、2隐藏层网络的权值提供为输出。从此,以下操作被执行:(1)估计神经元的最大数量,如,表示为nmax,(2)神经元的数量n被设定为4,(3)nguyen-widrow算法被用于初始化权值w’s,(4)在(n<nmax)时,(a)网络使用改进的levenberg-marquardt方法进行训练,(b)如果代价小于规定的值,那么确定过程停止,(c)如果与之前的具有“r”次连续实验的代价相比,代价没有减少x%,那么确定过程停止,(d)视情况,使用校验数据设定:如果对于t次连续实验的校验数据的误差增加,那么确定过程停止,(e)n被设定为n+2,且新的神经网络通过使用旧的神经网络中的训练权值来构造。然后将随机数分配给新的权值,并且重复操作4a-e。

应当理解的是levenberg-marquardt的改进可能对于快速训练方法来说是重要的。改进可以使算法在减少率小的情况下停止并增加所替代的神经元的数量。也就是,改进相当于检测欠拟合。实际上,一个实施方式中,x=10和r=4被发现为一个好的选择。除了levenberg-marquardt,还可以使用算法,提供了合适的改进。关于操作4e,诸如levenberg-marquardt的操作通过那些基于梯度的最优化算法使查找跳出经常导致的局部极小。levenberg-marquardt方法提供了权值的初始值的良好集合。以上操作4c和4d为防止具有大量神经元的过度训练的方法。

在实施方式中,增量算法的进一步扩展可以实施如下,为简单而假定原始数据被训练,该原始数据包括不同轮廓的mueller元素,而不是主成分。进一步扩展在以下操作的集合中进行描述:(1)给定的轮廓集合,称为np,神经网络使用以上新的算法进行训练以表示轮廓至一个mueller元素的非线性映射,(2)np+=δnp方法被用于训练定义了np轮廓的网络,(a)如果np+=δnp方法停滞,那么神经元的数量增加以更精确地表示非线性映射,(b)如果np+=δnp方法收敛,那么当前网络被使用,(3)当前神经网络模型的精确度被估计以用于非线性映射,(a)如果满足了需要的精确度,那么方法在此停止,(b)否则,轮廓的数量增加δnp,以及方法包括再次返回操作2。

图4b示出了根据本发明实施方式的用于基于库的cd计量的快速神经网络训练的实际响应曲面的matlab曲线图410。参照图4b,具有两个未知数的函数使用halton拟随机数量产生器而用于产生1000个训练样本及100个校验样本。

图4c是比较根据本发明实施方式的增量算法和单稳态levenberg-marquardt算法的收敛历史的曲线图420。参照图4c,增量训练算法的收敛历史与原始levenberg-marquardt算法(标记为单稳态方法,因为该方法提供了具有估计的神经元数量的单稳态训练,如,每个隐藏层中12个神经元)进行比较。曲线图420的增量训练部分因为在4e中的操作而显示出尖脉冲,但算法在降低回到以前级别的代价中是非常有效的。单稳态方法停滞并未在200次迭代内收敛。levenberg-marquardt的一次迭代的计算复杂度为o(n6),其中n为双隐藏层网络中神经元的数量。对于增量算法,扩展时间有神经元数量的最大值的训练控制。因而,通过比较最后阶段的增量训练中的迭代数量与用于单稳态方法中的迭代数量,所设计的增量算法的性能可以为比单稳态方法更好的数量级。

图4d是示出了根据本发明实施方式用于基于库的cd计量的快速神经网络训练的性能比较的曲线图430。参照图4d,在二维测试示例中,具有四个自由度,一个为顶部尺寸,一个为底部尺寸,以及两个为高度。这些参数的范围也被示出了。自动截断级被用于rcwa仿真。具有251波长。动态增加的样本库的方法被启动,并且有为了建立库而产生的多于14000个轮廓。

图4e包括比较根据本发明实施方式用于基于库的cd计量的快速神经网络训练的一个频谱的结果的一对曲线图440和450。参照图4e,为了清楚起见,仅绘制了每个阶段的末端处的代价值。采用增量训练,该应用收敛于127次总迭代且神经元的最终数量为22。应当注意的是在控制部分的最后阶段仅有7次迭代。采用使用动态增加的样本库的训练算法,该方法收敛于712次迭代,且神经元的最终数量为25。应当注意的是该方法利用最后阶段的111次迭代。

图4f包括比较根据本发明实施方式用于基于库的cd计量的快速神经网络训练的第二频谱的结果的一对曲线图460和470。参照图4f,如图4e的在相同测试示例中用于另一频谱的结果被表示。采用增量训练,对于最终数量为40的神经元,该方法需要240次总迭代,其中最后阶段仅使用9次迭代。采用传统的训练方法,该方法在1200次迭代之后并未收敛。

更一般地,至少属于本发明的一些实施方式,已经找到了新的用于神经网络的训练方法。在算法执行期间,隐藏层神经元的优化数量被确定。该算法可以为比单稳态levenberg-marquardt更快的数量级,特别在能够估计神经元的正确数量的情况下。该算法可以为比传统方法更快的数量级。在一个实施方式中,隐藏层中神经元的优化数量被确定。在一个实施方式中,以上方法以非常快的方式来训练网络。

在实施方式中,再次参照流程图300,所产生的光谱库包括仿真频谱,且与流程图300相关的描述的方法还包括比较仿真光谱和样本光谱的操作。在一个实施方式中,仿真光谱从空间谐波级的集合中获得。在一个实施方式中,样本光谱从结构中收集,该结构诸如但不限于实体参照样本或实体生产样本。在实施方式中,通过使用回归计算来执行比较。在一个实施方式中,一个或多个非差分信号被同时用于计算中。该一个或多个非差分信号诸如可以为但不限于方位角、入射的角度、偏振器/分析仪角,或额外的测量目标。

任何适合的神经网络都可以被用于执行与流程图100和300相关联的描述的一个或多个方法。作为示例,图5描述了根据本发明实施方式的用于产生光谱信息的库的示例性神经网络的选择元素。

参照图5,神经网络500使用反向传播算法。神经网络500包括输入层502、输出层504和在输入层502与输出层504之间的隐藏层506。输入层502和隐藏层506使用链路508连接。隐藏层506和输出层504使用链路510连接。但是应当理解的是,该神经网络500可以包括在通常在神经网络技术中已知的各种配置中连接的任何数量的层。

如在图5中所描述的,输入层502包括一个或多个输入节点512。在本示例性实施方式中,输入层502中的输入节点512对应于轮廓模型的轮廓参数,该参数被输入至神经网络500。因而,输入节点512的数量对应于用于描述轮廓模型特征的轮廓参数的数量。例如,如果轮廓模型使用两个轮廓参数(如顶部临界尺寸和底部临界尺寸)被表征,那么输入层502包括两个输入节点512,其中第一输入节点512对应于第一轮廓参数(如,顶部临界尺寸),以及第二输入节点512对应于第二轮廓参数(如,底部临界尺寸)。

在神经网络500中,输出层504包括一个或多个输出节点514。在本示例性实施方式中,每个输出节点514均为线性函数。但是应当理解的是,该每个输出节点514可以为各种类型的函数。此外,在本示例性实施方式中,输出层504中的输出节点514对应于从神经网络500输出的仿真衍射信号的尺寸。因而,输出节点514的数量对应于用于表征仿真衍射信号的尺寸的数量。例如,如果仿真衍射信号使用五个尺寸被表征,该五个尺寸例如对应于五个不同的波长,那么输出层504包括五个输出节点514,其中第一输出节点514对应于第一尺寸(如,第一波长),第二输出节点514对应于第二尺寸(如,第二波长),等等。此外,对于增加的性能,神经网络500可以基于仿真衍射信号的单独部分和/或仿真衍射信号的尺寸部分而被划分为多个子网络。

在神经网络500中,隐藏层506包括一个或多个隐藏节点516。在本示例性实施方式中,每个隐藏节点516为s形(sigmoidal)转移函数或径向基函数。但是应当认识到,每个隐藏节点516可以为各种类型的函数。此外,在本示例性实施方式中,隐藏节点516的数量基于输出节点514的数量而被确定。更具体地,隐藏节点516的数量(m)通过预定比率(r=m/n)与输出节点514的数量(n)相关联。例如,当r=10时,对于每个输出节点514有10个隐藏节点516。但是应当认识到,预定比率可以为输出节点514的数量与隐藏节点516的数量的比率(即,r=n/m)。此外,应当认识到神经网络500中的隐藏节点516的数量可以在隐藏节点516的初始数量被确定之后基于预定比率进行调整。此外,神经网络500中的隐藏节点516的数量可以基于经验和/或试验而不是基于预定比率来确定。

在实施方式中,以上描述的库可以包括二维或三维光栅结构中个体特征的一个或多个参数。这里使用的术语“三维光栅结构”是指除了z方向上的深度之外还具有在二维中变化的x-y轮廓的结构。例如,图6a描述了根据本发明实施方式的具有在x-y平面上变化的轮廓的周期性光栅600。该周期性光栅的轮廓在z方向的变化是x-y轮廓的函数。

这里使用的术语“二维光栅结构”是指除了z方向上的深度之外还具有仅在一个维度变化的x-y轮廓的结构。例如,图6b描述了根据本发明实施方式的具有在x方向变化但在y方向不变化的轮廓的周期性光栅602。该周期性光栅的轮廓在z方向的变化是x轮廓的函数。可以理解的是,二维结构在y方向上没有变化不必是无限的,但是在图案中的任何破坏都被视为长范围的,如y方向上图案中的任何破坏基本上进一步与x方向上图案中的破坏隔开。

在个体特征为二维或三维光栅结构的个体特征的实施方式中,第一参数诸如但不限于个体特征的宽度、高度、长度、上圆角、底部基础或者侧壁角。在晶片结构中诸如折射率索引和消光系数(n和k)的材料的光学性能也可以被模仿以在光学计量中使用。

关于从流程图100和300的方法中提供的对光谱库的使用,在实施方式中,这类方法包括基于与光谱库中的仿真参数一致或不一致来改变处理工具的参数。通过使用诸如但不限于反馈技术、前馈技术和原位控制技术的技术可以执行改变处理工具的参数。在实施方式中,光谱库可以被用于更精确地建立装置结构轮廓和cd计量工具配方(recipe)中的几何结构。在实施方式中,光谱库被用作cd计量工具校验、诊断和特征的一部分。

如上所述,光谱库的使用可以包括将仿真光谱与样本光谱进行比较。在一个实施方式中,衍射级的集合被仿真以表示来自二或三维光栅结构的由椭圆偏振(ellipsometric)光学计量系统产生的衍射信号。这类光学计量系统以下参照图9被描述。但是,应当理解的是相同的概念和原理同样适用于其他光学计量系统,诸如反射测量系统。所表示的衍射信号可以说明诸如但不限于轮廓、尺寸或材料组成物的二维或三维光栅结构的特征。

基于计算的仿真衍射级可以指示有图案的膜(诸如有图案的半导体膜或光阻层)的轮廓参数,并可以被用于校准自动过程或设备控制。图7描述了根据本发明实施方式的表示确定和使用用于自动过程和设备控制的结构参数(诸如轮廓参数)的操作的示例性序列的流程图700。

参考流程图700的操作702,光谱库或训练的机器学习系统(mls)被开发用于从测量的衍射信号的集合中提取轮廓参数。在操作704中,使用光谱库或训练的mls来确定结构的至少一个轮廓参数。在操作706中,至少一个轮廓参数被传送至制造群(fabricationcluster),该制造群被配置成执行处理操作,其中处理操作可以在完成测量操作704之前或之后在半导体加工过程中执行。在操作708中,使用至少一个所传送的轮廓参数来修改由制造群执行的处理操作的过程变量或设备设置。

对于机器学习系统和算法的更加具体的描述,参见2003年6月27日提交的名称为opticalmetrologyofstructuresformedonsemiconductorwafersusingmachinelearningsystems的美国专利申请no.7,831,528,该申请的全部以引用的方式结合于此。对于用于二维重复结构的衍射级优化的描述,参见2006年3月24日提交的名称为optimizationofdiffractionorderselectionfortwo-dimensionalstructures的美国专利申请no.7,428,060,该申请的全部以引用的方式结合于此。

图8是根据本发明实施方式确定和利用用于自动化处理和设备控制的结构参数(诸如轮廓参数)的系统800的示例性框图。系统800包括第一制造群802和光学计量系统804。系统800还包括第二制造群806。虽然在图8中将第二制造群806描述成在第一制造群802之后,但是应当理解的是,在系统800中(以及如在加工过程流中),第二制造群806可以位于第一制造群802前面。

光刻工艺,诸如曝光并显影施加在晶片上的光阻层,可以使用第一制造群802来执行。在一个示例性实施方式中,光学计量系统804包括光学计量工具808和处理器810。光学计量工具808被配置成测量从结构中获得的衍射信号。如果测量到的衍射信号和仿真衍射信号相匹配,则将轮廓参数的一个或多个值确定为与仿真衍射信号相关联的轮廓参数的一个或多个值。

在一个示例性实施方式中,光学计量系统804还可以包括光谱库812,该光谱库812具有多个仿真衍射信号和与多个仿真衍射信号相关联的一个或多个轮廓参数的多个值。如上所述,可以预先产生光谱库。计量处理器810可以将从结构中获得的测量到的衍射信号与光谱库中的多个仿真衍射信号进行比较。当找到匹配的仿真衍射信号时,与光谱库中的匹配的仿真衍射信号相关联的轮廓参数的一个或多个值被认为是在制造结构的晶片应用中使用的轮廓参数的一个或多个值。

系统800还包括计量处理器816。在一个示例性实施方式中,处理器810可以将一个或多个轮廓参数的一个或多个值传送到计量处理器816。计量处理器816然后可以基于使用光学计量系统804确定的一个或多个轮廓参数的一个或多个值来调整第一制造群802的一个或多个过程参数或设备设置。计量处理器816还可以基于使用光学计量系统804确定的一个或多个轮廓参数的一个或多个值来调整第二制造群806的一个或多个过程参数或设备设置。以上应当注意的是,制造群806可以在制造群802之前或之后对晶片进行处理。在另一个示例性实施方式中,处理器810被配置成使用作为机器学习系统814的输入的测量到的衍射信号的集合和作为机器学习系统814的期望输出的轮廓参数来训练机器学习系统814。

图9是根据本发明实施方式示出利用光学计量来确定在半导体晶片上的结构轮廓的体系结构图。光学计量系统900包括在晶片908的目标结构906处投射计量光束904的计量光束源902。计量光束904以入射角θ向目标结构906投射。计量光束接收器912测量衍射光束910。衍射光束数据914被传送到轮廓应用服务器916。轮廓应用服务器916将测量到的衍射光束数据914与仿真衍射光束数据的光谱库918进行比较,该仿真衍射光束数据表示目标结构的临界维度和分辨率的变化的组合。

根据本发明的实施方式,仿真衍射光束数据的至少一部分基于对两个或更多个方位角确定的差。根据本发明的另一个实施方式,仿真衍射光束数据的至少一部分基于对两个或更多个入射角确定的差。在一个示例性实施方式中,选择与测量到的衍射光束数据914最佳匹配的光谱库918实例。可以理解的是,虽然衍射光谱的光谱库或信号以及相关联的假定的轮廓被频繁用于阐释概念和原理,但是本发明同样应用于包括仿真衍射信号和相关联的轮廓参数的集合(诸如在用于轮廓提取的回归、神经网络以及类似的方法中)的光谱数据空间。所选的光谱库916实例的假定轮廓和相关联的临界维度被视为对应于目标结构906的特征的临界维度和实际截面轮廓。光学计量系统900可以利用反射仪、椭偏仪(ellipsometer)或其他光学计量设备来测量衍射光束或信号。

存储在光谱库918中的轮廓模型的集合可以由使用轮廓参数集合来表征轮廓模型以及改变轮廓参数集合以产生变化的形状和尺寸的轮廓模型来产生。使用轮廓参数集合表征轮廓模型的过程被称为参数化。例如,假定轮廓模型可以分别由定义其高度和宽度的轮廓参数h1和w1表征。轮廓模型的其他形状和特征可以通过增加轮廓参数的数量来进行表征。例如,轮廓模型可以通过分别定义其高度、底部宽度和顶部宽度的轮廓参数h1、w1和w2来进行表征。应当注意的是,轮廓模型的宽度可以被称为临界尺寸(cd)。例如,轮廓参数w1和w2可以被描述为分别定义了轮廓模型的底部cd和顶部cd。应当理解的是各种类型的轮廓参数可以被用于表征轮廓模型,包括但不限于入射角(aoi)、倾角(pitch)、n&k、硬件参数(如,极化角)。

如上所述,存储在光谱库918中的轮廓模型的集合可以通过改变表征轮廓模型的轮廓参数而产生。例如,通过改变轮廓参数h1、w1和w2,可以产生变化的形状和尺寸的轮廓模型。应当注意的是,轮廓参数中的一者、二者或所有三个轮廓参数可以相对于另一个而改变。同样地,与匹配的仿真衍射信号相关联的轮廓模型的轮廓参数可以被用于确定正在被检查的结构特征。例如,对应于底部cd的轮廓模型的轮廓参数可以被用于确定正在被检查的结构的底部cd。

本发明的实施方式还可以适用于各种膜堆栈(filmstack)。例如,在实施方式中,膜堆栈包括单个层或多个层。并且,在实施方式中,分析或测量的光栅结构包括三维组件和二维组件二者。例如,基于仿真衍射数据的计算效率可以通过利用二维组件对整个结构的更简单的贡献及其衍射数据而被优化。

为了便于描述本发明的实施方式,椭偏度量(ellipsometric)光学计量系统被用于说明上述概念和原理。应当理解的是,相同的概念和原理同样应用于其他光学计量系统,诸如反射度量系统。以类似的方式,半导体晶片可以被利用于说明概念的应用。此外,方法和过程同等地应用于具有重复结构的其他工件。在实施方式中,光学散射测量是诸如但不限于光学椭圆偏振光谱测量(se)、光束轮廓反射测量(bpr)和增强型紫外线反射测量(euvr)的技术。

本发明可以被提供为计算机程序产品或软件,其可以包括在其上存储有指令的机器可读介质,所述指令可以用于对计算机系统(或其他电子设备)进行编程以执行根据本发明的过程。机器可读介质包括用于以机器(如计算机)可读的方式存储或传送信息的任意机制。例如,机器可读(如计算机可读)介质包括机器(如计算机)可读存储介质(如,只读存储器(“rom”)、随机存取存储器(“ram”)、磁盘存储介质、光存储介质、闪存设备等)、机器(如计算机)可读传输介质(电、光、声或其他形式的传播信号(如,载波、红外信号、数字信号等))等。

图10示出了以计算机系统1000的示例性形式的机器的图形描述,在该计算机系统1000中可以执行指令集合,该指令集合用于使机器执行于此所讨论的方法中的任意一种或多种。在可替换的实施方式中,机器可以连接(如网络连接)到局域网(lan)、内联网、外联网或因特网中的其他机器。机器可以在客户端-服务器网络环境中的服务器或客户机的容量(capacity)中进行操作,或作为端对端(或分布式)网络环境中的对等机器进行操作。机器可以是个人计算机(pc)、平板pc、机顶盒(stb)、个人数字助理(pda)、蜂窝电话、网络设备、服务器、网络路由器、交换机或网桥、或能够执行机器采取的指定动作的指令集合(按顺序或其他)的任意机器。此外,虽然仅示出了单个机器,但是术语“机器”也包括独自或联合执行指令集合(或多个集合)以执行于此所述的方法中的任意一种或多种方法的机器(如计算机)的任意集合。

示例性计算机系统1000包括处理器1002、主存储器1004(如,只读存储器(rom)、闪存、动态随机存取存储器(dram)(诸如同步dram(sdram)或内存总线dram(rdram)等))、静态存储器1006(如,闪存、静态随机存取存储器(sram)等)以及辅助存储器1018(如,数据存储设备),它们经由总线1030彼此通信。

处理器1002表示一个或多个通用处理设备,诸如微处理器、中央处理单元等。更特别地,处理器1002可以是复杂指令集计算(cisc)微处理器、精简指令集计算(risc)微处理器、超长指令字(vliw)微处理器、执行其他指令集的处理器或执行指令集的组合的处理器。处理器1002还可以是一个或多个专用处理设备,诸如应用程序专用集成电路(asic)、现场可编程门阵列(fpga)、数字信号处理器(dsp)、网络处理器等。处理器1002被配置成执行用于执行这里所述的操作的处理逻辑1026。

计算机系统1000还可以包括网络接口设备1008。计算机系统1000还可以包括视频显示单元1010(如液晶显示器(lcd)或阴极射线管(crt))、字母数字输入设备1012(如键盘)、光标控制设备814(如鼠标)以及信号产生设备1016(如,扬声器)。

辅助存储器1018可以包括机器可访问存储介质(或更具体地计算机可读存储介质)1031,在其上存储有体现这里描述的方法或功能的任意一者或多者的一个或多个指令集(如软件1022)。在计算机系统1000执行该软件1022的过程中,软件1022还可以完全地或至少部分地位于主存储器1004内和/或处理器1002内,主存储器1004和处理器1002也构成机器可读存储介质。软件1022还可以经由网络接口设备1008在网络1020上被传送或接收。

虽然在示例性实施方式中将机器可访问存储介质1031示为单个介质,但术语“机器可读存储介质”应当被认为包括存储一个或多个指令集的单个介质或多个介质(如,集中式或分布式数据库,和/或相关联的缓存和服务器)。术语“机器可读存储介质”还应当被认为包括能够存储或编码由机器执行并使机器执行本发明的方法的任意一者或多者的指令集的任意介质。术语“机器可读存储介质”因此应当被认为包括但不限于固态存储器及光和磁性介质。

根据本发明的实施方式,机器可访问存储介质具有存储在其上的指令,该指令使数据处理系统执行用于基于库的cd计量的精确的神经网络训练的方法。该方法包括优化用于频谱数据集合的主成分分析(pca)的阈值以提供主成分(pc)值。一个或多个神经网络的目标基于该pc值进行估计。一个或多个神经网络基于训练目标和pc值进行训练。光谱库基于一个或多个训练后的神经网络而提供。

在实施方式中,优化pca的阈值包括确定最低级别的频谱域。

在实施方式中,优化pca的阈值包括确定第一pca阈值、将pca应用至频谱数据集合、计算通过应用pca引入的频谱误差,以及比较频谱误差和频谱噪声级别。在一个这类实施方式中,如果频谱误差小于频谱噪声级别,那么第一pca阈值被设定为pc值。在另一个这类实施方式中,如果频谱误差大于或等于频谱噪声级别,则确定第二pca阈值,并且重复应用、计算和比较过程。

在实施方式中,优化pca的阈值包括使用mueller域误差公差。

在实施方式中,高精确度光谱库包括仿真频谱,以及该方法还包括比较仿真频谱与样本频谱。

根据本发明的另一实施方式,机器可访问存储介质具有存储在其上的指令,该指令使数据处理系统执行用于基于库的cd计量的快速神经网络训练的方法。该方法包括提供第一神经网络的训练目标。训练第一神经网络。该训练包括以预定数量的神经元开始,并迭代地增加神经元的数量直至达到优化的神经元的总数。基于训练和优化的神经元的总数产生第二神经网络。基于第二神经网络而提供光谱库。

在实施方式中,迭代地增加神经元的数量直至达到优化的神经元的总数包括使用改进的levenberg-marquardt方法。

在实施方式中,迭代地增加神经元的数量包括增加第一神经网络的隐藏层中的神经元的数量。

在实施方式中,光谱库包括仿真频谱,并且该方法还包括比较仿真频谱与样本频谱。

对测量到的光谱的分析一般包括将测量到的样本光谱与仿真光谱进行比较以推导出最佳地描述测量到的样本的模型参数值。图11是根据本发明实施方式表示用于建立参数化模型和以样本光谱开始(如,源于一个或多个工件)的光谱库的方法中的操作的流程图。

在操作1101,由用户定义一组材料文档来指定形成测量到的样本特征的材料的特征(如n,k值)。

在操作1102,散射测量用户通过选择一个或多个材料文档来集成对应于待测量的当前在周期性光栅特征中的材料堆来定义预期的样本结构的标称模型。该用户定义的模型可以进一步通过模型参数的标称值的定义而被参数化,诸如表征正在被测量的特性的形状的厚度、临界尺寸(cd)、侧壁角(swa)、高度(ht)、边缘粗糙度、圆角半径等。根据2d模型(即轮廓)或者3d模型是否被定义,具有30-50或者更多的这种模型参数并不罕见。

根据参数化模型,针对给定的光栅参数值的集合的仿真光谱可以使用诸如严格耦合波分析(rcwa)的算法的严格衍射建模算法进行计算。然后回归分析在操作1103处被执行直至参数化的模型收敛于表征最终轮廓模型(针对2d)的模型参数值的集合,该最终轮廓模型对应于仿真光谱,该仿真光谱将测量到的衍射光谱与预定的匹配标准匹配。假定与匹配的仿真衍射信号相关联的最终轮廓模型表示产生模型的结构的实际轮廓。

接着在操作1104处,匹配的仿真光谱和/或相关的优化的轮廓模型可以被利用以通过扰动参数化的最终轮廓模型的值来产生仿真衍射光谱的库。接着在生产环境中操作的散射测量系统可以使用仿真衍射光谱的最终库以确定随后测量到的光栅结构是否已经根据规格被制造。库的产生1104可以包括诸如神经网络的机器学习系统为多个轮廓中的每个轮廓产生仿真光谱信息,每个轮廓包括一个或多个模型化的轮廓参数的集合。为了产生库,机器学习系统本身可能必须经历一些基于光谱信息的训练数据集合的训练。这种训练可以是密集型计算和/或可能必须针对不同模型和/或轮廓参数域被重复。产生库的计算负载中非常低的效率可能通过用户对训练数据集合的大小的决定而引起。例如,选择极大的训练数据集合可能导致不必要的训练计算,同时用大小不足的训练数据集合可能需要重新训练来产生库。

在此描述的一些实施方式包括自动确定在训练机器学习系统中使用的训练数据集合的大小。一般地,训练数据集合基于数据集合特征度量标准的收敛程度依大小排列,并且可以进一步基于对最终解的误差的估计依大小排列。训练数据集合逐渐被扩展和测试以识别收敛,并且在一些实施方式中,可以提供估计这种样本大小的最终解误差。逐渐扩展和测试被执行直到收敛标准被满足和/或最终解误差的估计达到域值。

因为在此描述的确定训练矩阵大小的方法不需要单独的训练,用于神经网络训练的良好的训练数据样本集合被快速、有效地识别,并且能够很好地控制最终解误差。随着训练数据样本集合被识别,机器学习系统可以接着被训练以产生期望的目标函数信息。在一个特定的实施方式中,机器学习系统被训练以产生仿真光谱信息(如衍射信号)的库,该库可以被用来减少用散射测量系统测量的未知样本(如衍射光栅或晶片周期结构)的参数。

应当理解的是在本发明实施方式的思想和范围之内以上方法可以在各种环境情况下被应用。例如,在实施方式中,以上描述的方法在半导体、太阳能、发光二极管(led)或相关的制造过程中被执行。在实施方式中,以上描述的方法被用于单独的或集成的计量工具中。在实施方式中,以上描述的方法被用于单个或多个测量目标回归中。

从而,于此已经公开了用于基于库的cd计量的精确和快速的神经网络训练的方法。根据本发明的实施方式,用于基于库的cd计量的精确神经网络训练的方法包括优化频谱数据集合的主成分分析(pca)的阈值以提供主成分(pc)值。该方法还包括估计一个或多个神经网络的训练目标。该方法还包括基于pc值和训练目标来训练一个或多个神经网络。该方法还包括基于一个或多个训练后的神经网络来提供光谱库。在一个实施方式中,优化pca的阈值包括确定最低级别的频谱域。根据本发明的实施方式,用于基于库的cd计量的快速神经网络训练的方法包括提供用于第一神经网络的训练目标。该方法还包括训练该第一神经网络,该训练包括以神经元的预订数量开始并迭代地增加神经元的数量直至达到优化的神经元的总数量。该方法还包括基于训练和优化的神经元的总数量来产生第二神经网络。该方法还包括基于第二神经网络来提供光谱库。在一个实施方式中,迭代地增加神经元的数量直至达到优化的神经元的总数量包括使用改进的levenberg-marquardt方法。

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