用于数据压缩的群集的制作方法

文档序号:6465025阅读:421来源:国知局
专利名称:用于数据压缩的群集的制作方法
技术领域
本发明的领域本发明涉及成层、构图、掺杂和热处理的基本晶片制造操作中的晶片层的非破坏性测量领域中的断面测量法。
本发明的背景在IC器件的物理和光学性质与来自由诸如椭圆偏振计和散射计这类仪器照射在IC器件上的光的信息之间存在一种关系。晶片的物理和光学性质是芯片制造者极力探索的的性质,因为一旦最好是通过实时操作的非破坏性技术知道了这些参数,就能够调节并优化微型芯片制造机器。
遗憾的是,在晶片制造期间产生大量的数据,不能由芯片制造者很好地用来实时地控制工艺过程。
本发明关注的是在在微型芯片制造中,使用生成项目和指定给项目的组之间的相关度的群集分析、多元分析技术,快速转换原始数据为信息。
本发明的概述本发明是要提供一种带有软件的断面测量系统,该系统提供群集分析,以便使得从诸如椭圆偏振计或散射计等断面测量仪器收集的实时输入的数据信号,与存储在计算机存储器中的数据库匹配。首先库数据由群集表示,具有存储在主存储器中的群集代表性数据,同时群集存储在次存储器中。实时输入的数据起初与主存储器中的群集代表匹配,以找出最接近的匹配群集代表。当找到匹配时,与具有最接近匹配的群集代表相关的群集从次存储器加载到主存储器。这一技术避免了先有技术中发现的磁盘过分的颠簸。本发明还使得芯片制造中的观察及来自测量仪器的大量数据的使用常常在数学上是连续的。
在一优选实施例中,使用T.Gonzalez的渐进式最大-最小算法作为优选的群集和划分方法。
此外,引入了各种细化,诸如解决边界线匹配的特定情形。
总之,本发明的优点在一优选实施例中是多方面的。需要对每一输入信号所作的比较数目从400K比较显著降低到10K比较。接下来,在速度上至少实现了40倍的改进。这是通过选择地只比较与最佳匹配群集代表的群集相关的那些信号而能够实现。其次,在没有足够的RAM加载整个库时(这是常见的情形),本发明开拓了处理控制系统的一个重要方面在类似的条件下在一定的时间周期期间输入信号的可变性很小。这意味着在一定的时间周期只要在群集的一个子集即可找到对所有输入信号的最佳匹配。这样,输入信号最有可能在已经驻留在RAM的数据种找到其最佳匹配。这大大降低了在任何给定的数据周期期间发生的交换的次数。此外,由于需要被交换的数据量是库数据整个大小的很小部分,从硬盘驱动器到RAM的交换所耗时间是可以忽略的,因而用于使输入信号匹配库信号所费时间不会受到影响。
附图的简要说明

图1是实现本发明的断面测量系统的框图。
图2(a)和(b)是表示断面测量信号的向量场和这种点的二维群集映象的示意图。
图3是用于本发明的优选群集方法的顶级流程图。
图4是使用群集技术划分数据的优选方法的顶级流程图。
图5(a)-5(c)是使用优选的群集方法被划分的数据点集的简化的二维图示。
图5(d)是表示“边界线匹配”问题的图5(c)部分的近观图。
优选实施例的详细说明图1实现本发明的断面测量系统的框图。具有处理器1-20且运行本发明的软件程序计算机系统1-10,装有主存储器(即RAM)1-30,次存储器(即硬驱动器)1-40及多个I/O装置1-45,诸如键盘,鼠标及监视器,以及连接到在断面测量中使用的一个或多个仪器设备1-55的I/O装置1-50,诸如椭圆偏振计、散射计、原子力显微镜(AFM)、扫描电子显微镜(SEM)、透射电子显微镜(TEM)、分光计(SEM-EDX)等等,它们最好是实时测量仪器,诸如椭圆偏振计和散射计,实时收集诸如散射的或反射的波长等输入数据。这些数据与库数据相关以便确定制造中有意义的特征,诸如颗粒尺寸、断面轮廓、临界尺寸(CD)、膜层厚度等。
本发明的计算机系统最好从非破坏性断面测量仪器1-55收集输入实时数据信号,并将输入实时数据以诸如多维向量的格式存储在主存储器(例如RAM),以允许与相同格式的库数据进行比较。然后这种输入的实时信号数据与来自存储在存储器中的库的数据,如图1中概念表示在RAM中的数据1-60,进行比较,以便找出输入的实时数据与库数据之间的匹配。当由断面测量仪器收集的输入实时数据信号与存储在RAM中的库数据形成匹配时,本发明的操作者就知道与库数据相关的特征也是与收集的输入的实时信号数据相关的特征。这些特征用来计算在晶片制造中有极其重要性的剖面的晶片断面。在断面测量中,已经发现在IC装置的物理和光学性质(厚度,系数n和k,临界尺寸(CD),及构图成层的晶片的剖面断面)与由诸如椭圆偏振计这样的仪器照射在IC装置上的反射光的量(tanψ)及相位(cosineΔ)之间存在一种关系。
然而先有技术中,有与存储和比较大量的断面测量数据相关的潜在的问题,这是本发明所要解决的。一个问题是必须在从仪器收集的数据点与库中的数据之间进行极其大量的比较,以找出最佳匹配。不简单在于,使包含400,000个库断面的库数据必须与输入数据匹配以找出最佳匹配。要花费代价进行尝试,并且计算机中要有足够的RAM以便向RAM加载所有这一库数据,而在某些系统中可能无法配置带有这么多RAM的计算机系统。由诸如椭圆偏振计这样的典型的晶片测试和评价仪器收集的每一输入的实时数据信号,可能是由超过一百种波长成分组成的宽度信号。为了保证收集的输入的实时数据与库收集更好的匹配,先有存储足够大的数据库,目前的大小达到1GB,但是理论上没有限制。可以预见,将来可能收集更大量的数据,并可能采用存储的信号数据的几个库,当使用先有技术匹配这一数据时,将进而造成潜在的瓶颈。
最后,采用RAM存储库数据的另一原因在于,由于微芯片制造设备被最佳地实时调节,故从仪器收集的输入数据必须实时地与库数据匹配。必须在次存储器(例如硬驱动器)而不是主存储器(例如RAM)存储库数据,这是由于不充分的RAM,或具有很大的库,减慢了必须进行的实时计算,由于库数据必须从次向主存储器移动。
移动程度来说,使用足够大量的RAM存储与微型测量相关的所有的库数据在经济上是难以实现的。因而,库数据必须存储在硬驱动器上,且每当计算机程序调用这些数据时,数据从RAM被往复交换。这种“虚拟存储器”的缺点是速度慢,这是由于处理器与I/O转移处理通信一般要比与RAM通信慢几个数量级。于是,在程序试图在输入收集的实时数据与存储的库数据之间寻找最佳匹配时,在RAM与硬驱动器之间可能出现过量的盘交换,这就造成了瓶颈。
为了解决这一问题,本发明特别采用了群集技术,该技术从库数据生成群集,起初只向RAM加载群集的代表,进行输入的实时数据与这些群集代表的初始匹配,并然后从硬驱动器向RAM只加载与最紧密匹配的群集代表相关群集,以完成搜索,从而降低了潜在的磁盘颠簸。这样本发明寻求采用群集,以把在实时数据和库数据之间必须发生的比较和匹配的数目减小到最低,同时保证了实时数据和库数据之间的最佳匹配。
为了解释群集背后的理论,图2(a)示出由本发明的系统从微芯片制造工艺收集的输入实时数据信号如何存储。来自诸如椭圆偏振计光学测量仪器的输入实时数据信号的数据,被表示为向量(一般这可想象为一个数的参数化为分量的表示,诸如n-元组),如向量2-A-10所示。每一向量有多个分量,在这例子中是三个分量,X,Y和Z分量。图2(a)中,只是为了示例的目的,示出数个具有三个分量(X,Y和Z)的三维向量。实际上,输入的实时微型测量信号(它们原则上也是一被实时记录的信号,但被存储以供后来分析)以比三高得多的阶数的向量表示,例如n-维向量,或等价地长度为n的数列(例如n-元数组),这里n是正整数;通常由序列{m1,m2,…mn}或类似的记法表示。当前,描述从断面测量仪器收集的输入的实时数据信号的向量,及由于描述存储的库数据的向量,是参数化的或由到106个分量组成的向量(例如,{X0,X1,…Xn},这里n=105是一优选实施例)。这样,库数据集合和输入的实时数据信号都表示为相同的格式。当前,多维向量的每一分量(例如Xn)在计算机存储器中由双精度数表示。当前多达400,000个信号存储在存储器中并由断面测量仪器收集,每一信号有多达106个分量(这还可以是诸如波长信号),这需要超过42兆的存储器的双精度字节。
关于输入的实时数据信号,在从断面测量仪器收集的输入的实时数据信号与存储在计算机存储器中的库信号之间,常常有一种对应关系。计算机必须使输入的实时信号向量与存储在存储器中的库数据向量匹配,以找到最佳适配。一般来说,通过诸如欧氏距离或“最小二乘法”适配等统计技术找到最佳适配。还要找到最佳匹配输入的实时数据信号向量的匹配库数据向量的范围。
现注意图2(b),其中示出数据点的二维集,这可看作是图2(a)的三维向量到一平面诸如X,Y平面的投影。形成点集,诸如点2b-10,2b-20,2b-30,2b-40,2b-50,2b-60,且圆2b-100,2b-110 2b-120,2b-130,2b-140,2b-150内的所有的数据点分别由这些点形成,它们共同被称为N项数据集。通过观察可见,点按组呈现群集(例如在圆中的点),即“群集”。本发明中,在断面测量中使用106个分量的n-维向量,这种群集出现在高维空间而不易以图示的方式描绘。
物理上使群集现象合理化的一种方式是注意到,从晶片制造期间收集的数据大体来说数学上是“连续”的,即在时间点“t”收集的数据与在稍早某个小时间区间“t-Δt”收集的数据,以及与在稍后某个小时间区间“t+Δt”收集的数据是类似的。对于群集一个可能的原因可能在于,形成晶片的化学与力学过程趋向于使晶片以连续的方式变化。
关于群集的物理基础,如果分辨出群集组,诸如图2(b)中的2b-100,2b-110 2b-120,2b-130,2b-140,2b-150,则能够从每一群集组选择出代表性的群集数据中心点。在图2(b)中,代表性的群集数据中心点可以是组的几何平均值,或在概念上是图2(b)所示的圆的中心点,诸如中心数据点2b-10,2b-20,2b-30,2b-40,2b-50,2b-60。中心来自每一群集组的代表性群集数据点的每一个都存储在RAM中;然后,在收到每一输入的实时数据信号时,该数据信号与来自每一群集组的代表性群集数据点比较。在输入的实时数据信号与在RAM中的来自每一群集组的代表性群集数据点之间寻找最接近的匹配。一旦找到最接近的匹配,则与特定的代表性群集数据点相关的适当的群集(即与代表性群集数据点相关的特定数据集)从硬驱动器加载到RAM,并对于匹配进行第二次搜索,以便在这群集内找到与该特定的输入实时数据信号向量最接近的库数据向量。
本发明胜过先有技术的优点在于,不必向RAM加载所有的库点(或表示这些更高维空间中的点的向量;一般应当理解到,在空间中的“点”能够由向量n-元数组表示),或必须依赖于往返于RAM的较慢的数据虚拟存储器交换,物理考虑所有的库点,只要首先比较代表性的群集数据点与输入的信号数据点,并然后只要从硬驱动器向RAM交换与找到的最接近输入的数据点的代表性群集数据点相关的群集组(或多个群集组,这是由于如以下进而说明的对于“边界线匹配”的情形,有时必须考虑一个以上的群集组)的那些成员。这样找到的群集组成员比整个库数据点整个集合的一个较小于的集合。这样,本发明的技术加速了对最佳匹配的搜索并保存了RAM。
尽管如此,然而应当注意到,本发明依然能够工作在由全部RAM构成的计算机系统。这样本发明不需要采用主和次存储器往返的数据交换。
为了使用图2(b)的简化的二维空间示例,假设输入的实时数据点,信号S,与作为群集组2b-100的一个成员的数据点2b-12等同,该组有代表性的群集数据点中心2b-10。信号S将由本发明的软件程序与群集2b-100,2b-110 2b-120,2b-130,2b-140,2b-150的存储在RAM中的代表性的群集对象数据点中心2b-10,2b-20,2b-30,2b-40,2b-50,2b-60的每一个比较,群集2b-100,2b-110 2b-120,2b-130,2b-140,2b-150相关的库数据成员存储在硬驱动器中。在这一简化的例子中,与信号S最接近的匹配将有群集组2b-100的代表性群集数据点2b-10,这是由本发明的程序在只是比较了六个这种代表性的群集数据点与信号S之后找即到的。一旦作出这一决定,所有与群集组2b-100的数据点2b-10相关的库数据成员将从硬驱动器加载到RAM。在概念上,群集2b-100的库数据成员将是在圆2b-100内部的点。通过观察可见,这一数据集只是图2(b)中所示所有点的一个子集。然后将继续为信号S与群集2b-100的数据之间最接近的匹配搜索,这在本例中将是点2b-12。一旦找到这一匹配,搜索便终止。因而,既不需要扩展的虚拟存储器,也不需要对存储的库中所有数据点费时的搜索。
于是转到图3,图中示出本发明的顶级流程图。本发明的软件工具可以任何计算机语言写成,并由通用计算机系统运行,这样的计算机系统具有处理器,与处理器共同工作的主和次存储器,以及I/O装置,诸如监视器,鼠标,键盘,及在断面测量中使用类型的数据收集仪器;或任何特别的硬件或固件。计算机最好有充足的主和次存储器存储量,因为断面的库数据大小可能相当大。
与用来构成和实现软件的语言有关(这可以是任何语言,诸如C,C++,Perl,Java等),该软件可具有任何数目的类、函数、对象、变量、属性单元、代码行、代码和构成部分(总的一般来说,即“进程步骤”、“步骤”、“块”、“软件进程”、“函数模块”或“软件模块”),以便按这里所述和教授的顺序阶段执行本发明,并可以或者是孤立的软件应用程序,或者由另一软件应用程序内部采用或调用。可以构造软件进程或软件模块,使得应用程序的中一部分代码执行多个功能,例如在面向对象编程中(例如超载进程)。反之也是正确的,在于多个代码部分能够执行多个功能,并在功能上与代码的单一部分相同。在本发明的进程步骤任何阶段,中间值、变量和数据可由程序存储供后来使用。
于是转向图3,其中示出软件模块进程步骤3-10,这里本发明的程序从构成断面数据的库的所有数据点集合,最好通过非分级技术,形成两个或多个数据群集,并对每一群集从库数据集合计算各群集断面数据(即群集代表),如这里进一步结合图4及在T.Gnzalez方法中的描述,参见T.Gnzalez期刊文章“把最大内部群集距离降低到最小的群集法”,理论计算机科学,卷38页293-306(1985),在此结合以资对比。
然后计算机向RAM加载群集代表,这时群集(即群集库组)本身存储在硬驱动器上。虽然起初群集代表的计算是费时的,但是最后整个的程序允许快速执行与实时数据信号的断面匹配,并保存主存储器的使用。因为需要冗长的的时间执行群集和群集代表的计算,故在从断面测量仪器收集实时数据开始之前进行计算。
然后,在软件模块进程步骤3-20中,本发明的程序搜集与从诸如椭圆偏振计等断面测量仪器收集的数据相关的输入实时信号,并形成表示这一数据的多分量的向量。尽管实际上信号是“实时”的,由于这种数据实时地解释在半导体制造中是重要的,理论上这种信号也可以事先收集并存储,这样相位“实时数据”也能够包含这种时间平移的批数据,并一般代表由断面测量或更一般来说晶片制造中使用的仪器收集的实际数据。这些实时数据一般是涉及多波长的光学宽带信号,每一实时数据由超过100个分量的一向量或n-元数组代表。
在软件模块进程步骤3-30中,程序进入一个循环,实时循环数据与来自步骤3-20代表性群集库数据比较,以便找到最接近的匹配。
在软件模块决策块3-40中,如这里进一步要说明的,程序检验实时信号是否是潜在的与代表性群集断面数据中心点“边界线匹配”。“边界线匹配”一般靠近由群集代表表示的群集的边界,或在较高阶的球体的情形下,接近由球体的半径R定义的半径带,这里R是对代表性群集断面数据中心点的群集半径的欧氏距离。如进而结合图5(d)的例子的说明那样,在“边界线匹配”的特别情形下,与实时数据信号最接近匹配实际上位于相邻的群集内,这种匹配位于距离2*(R+D)之内,这里D是信号与最接近代表性匹配之间的距离,该匹配与同群集代表相关的群集也必须一同加载到RAM,正如由软件模块框步骤3-50所指示。为了在对决策框3-40触发“Yes”(TRUE)之前定义实时数据信号如何能够接近群集的边界,每当在实时数据信号与对该实时数据信号找到的最接近的群集代表之间的欧氏距离(这里进而定义)落在R和R-ε边界带之间,这里R=群集的半径,而ε=小的正数,即某个小误差余量,可以任意选择决策框将不触发为“Yes”(TRUE)。这样,对于这种“边界匹配”的情形,如步骤3-50所示,位于实时信号带2*R内的群集被加载到RAM,且程序继续进行到软件模块3-70。
否则,如果在决策框3-40触发“No”(FALSE),则程序把控制传到软件模块3-60,这里与最接近的代表性群集数据中心点相关的群集库组从硬驱动器加载到RAM。
然后,在软件模块3-70,程序作出第二个比较,这时是在实时信号与同步骤3-50或步骤3-60计算的群集代表相关的断面库的群集之间进行。找到最接近的匹配(或最接近的多个匹配,如果有利的是找到最接近的匹配范围,而不是单个的作接近的匹配),且控制传到软件决策模块3-80,这里如果没有更多的信号分析,程序在步骤3-90结束,否则程序返回步骤3-30并重复进行。
现注意图4和5,图4是高级流程图,说明本发明优选群集技术的方法;而图5(a)-(d)图示出对于简化的二维数据集的群集。
在优选实施例中,用于本发明的群集方法是称为T.Gozalez算法的方法,参见T.Gnzalez,“把最大内部群集距离降低到最小的群集法”,理论计算机科学,卷38页293-306(1985),在此结合以资对比。有许多不同的群集任何数据点集合中的数据的方法,任何这些方法都可用于本发明。T.Gozalez算法是通过划分的优选群集方法,因为它有胜过其它技术的几个优点。一个是,优选的T.Gozalez群集方法是称为划分的不分级的群集方法,其中给定的数据点集合被划分为几个唯一的由群集代表性点表示的群集组集合,且其中没有重叠的群集(即数据点不属于两个群集组)。划分是根据以下将要说明的所谓min-max规则进行的,且该划分对于简单的二维情形能够设想为把数据划分为K个集合,对每一群集具有半径为R的圆,这里R对所有的群集是相同的,其中群集代表点是半径R的圆的中心,且其中满足以下“min-max”规则“对于集合Si(这里1≤i≤K,K=划分的大小,原始集合S被划分为集合的最大数,并假设原始集合完全玻划分为集合{S1,S2,…SK})中的任何代表性群集数据点,使由集合Si的任何群集的代表性群集数据点形成的最大半径最小化”。
一般来说,为了找到K个代表性点的每一个是什么,并为了对于以上min-max规则找到最优的“最大半径”,是所谓“N-P难”题,即一困难的计算问题。所谓启发式的T.Gozalez算法解决以上min-max划分问题的优点在于,已经证明,如果存在以上对N-P困难的min-max群集划分问题的最优解,OPTI(i),并有最优半径ROPTI,则T.Gozalez算法将产生不大于最优半径ROPTI两倍的一半径Rsub-opti。这是很重要的,因为离开数据集合被划分为群集的最优半径越远,潜在出现无代表性的群集和误差越大。此外,T.Gozalez算法还具有对于计算资源和对于时间接近线性的进程的优点,即O(k*N),这里k=群集数,这样如果使用T.Gozalez算法对于要求解的N个输入,需要给定的计算机时钟周期或步骤数,则要求解多达两倍的输入,一般需要两倍的时间,以及多达四倍的输入只需要四倍的时间,而不是对于某些群集技术那样的非线性序列。最后,发现T.Gozalez算法对于min-max群集收敛到解是相当快速的。
然而,虽然在本发明的优选实施例中根据T.Gozalez方法采用了非分级群集划分方法,一般来说,任何群集方法都可使用本发明的技术被采用,诸如单连接(包含SLINK和最小树生成算法),完全连接,组平均连接,用于组平均连接的Voorhees算法,及Ward`s方法(包括对于Ward`s方法的互逆最近邻域算法)。
图5(a)到5(c)图示出二维空间中的T.Gozalez算法。这样图5(a)到5(c)示出一数据集合,即点集合的集(图5(a)到5(c)中黑点),诸如表示潜在的匹配以断面测量仪器俘获的实时信号的库数据,且每一点表示为向量。数据集合的点在二维空间中表示只是为了说明的目的,由于实际上的数据一般有高得多的阶,诸如上述的106个分量向量。
如图4的流程图中一般所示,有与T.Gozalez算法相关的两个重要步骤确定怎样群集数据。第一个是确定选择什么代表性的群集数据点,这些点是通过划分规则确定的;第二个是向这些特定的代表性群集数据点分配所有的数据,这样形成群集。
假设原始数据集合S,图5(a)种标记为5-a-100,并包括在图5(a)中表示为黑点的所有的数据点,被“群集”或划分为整数K个多个集合,K表示划分的大小。假设群集是不分级的,即每一数据点将属于唯一的群集,且没有任何一个数据点属于两个或多个群集。先验地假设K=3集合,即点的整个数据集合将被划分为三个群集。注意,对于任何这种群集,K的最小值等于K=1集合(一个极端的情形,由于K等于一是无意义的,原始的未划分整个数据点集合),而K的最大值等于全部数据点数(图5(a)-(c)中的黑点),这也是一极端的情形。考虑这种群集中K的最优值,在群集理论中有关于选择最优值K的文献,其中太小的K值将使得集合太“颗粒状”或粗糙,而太大的K值结果将是过量的计算。此外,能够以图形表示出K的值与计算时间或计算资源的关系,并通过观察能够看出K的最优值。对于n-维数据空间(图5(a)-(c)中n=2)选择值K在图4软件模块步骤4-10中进行,并可能依赖于人工输入。
现在转到术语的简单说明,现在将说明集合S的数据点的较高维向量性质。给定欧氏n-维向量空间,及该空间中的具有描述它的n-元数组或单位向量的一多维向量(例如,单位向量<i,j,k,…n>),该n-维空间中的任意点“X”能够以具有沿单位向量方向(例如<i,j,k,…n>)的数值分量{x1,x2,x3…xn}的向量表示,其中“x1”是多维向量沿单位向量之一的数值分量(例如“1”单位向量,在涉及三维时通常称为’x’方向),“x2”是多维向量沿第二个单位向量的数值分量(例如“j”单位向量,通常称为’y’方向),“x3”是多维向量沿第三个单位向量的数值分量(例如“k”单位向量,通常称为’z’方向),等等,“xn”指定给多维向量沿“n”(最后的)单位向量的最后的数值分量。这样,对于坐标描述,给定点“X”可通过超维N空间中多维向量<X>指定,能够如下给出<X>=<x1,x2,x3…xn>
第二个点“Y”能够由多维向量<Y>类似地指定为<Y>=<y1,y2,y3…yn>
现在再次转向图4,软件模块4-20和步骤4-10之后的下一步骤,其中程序计算出集合S中的涉及点之间的欧氏距离,并可以在输出文件4-30中存储这样计算的数据供后来使用。
多维空间中的点“X”和“Y”之间的欧氏距离(E.D.)可以由向量差E.D.XY=<X>-<Y>,或者E.D.=(y1-x1)2+(y2-x2)2+(y3-x3)2+...+(yn-xn)2]]>
对于二维的简单情形可以看出,欧氏距离方程式退化为平面中两个点之间的距离的熟知的形式。
一旦等于各点计算出欧氏距离,选择对每一群集划分的代表性数据点满足以下规则,该规则可称为T.Gozalez划分min-max规则。
T.Gozalez划分min-max规则对于集合Si(这里1≤i≤K,K=划分的大小,即原始集合S被划分为集合的最大数,并假设原始集合完全玻划分为集合{S1,S2,…SK})中的任何代表性群集数据点,使由集合Si的任何群集的代表性群集数据点形成的最大半径最小化。
正如结合图5(a)-(c)所述,图示上这意味着,任何群集(“圆”本身,及其中的点)的代表性群集数据点(圆的中心,例如见图2(b)),形成相等半径的圆且彼此不接触。在二维空间中,这在某种程度上类似于当相等大小的肥皂泡在杯子表面上拥挤在一起时所形成的图案。
图示上,图5(a)中可能的对于代表性群集数据点满T.Gozalez准则的足的备选数据点对于K=2似乎是集极端数据点,诸如极端数据点5-a-10和5-a-20。另一备选的可能是数据点5-a-30,该点也是其它两数据点5-a-10和5-a-20等距离的,但是在规则应用相关的情形下,可以任意选择两个备选之一(例如合格的第一个备选)。
图5(b)示出,在选择数据点5-a-10和5-a-20作为代表性群集点之后,数据点集合S划分为两个群集。在所示的二维的空间中,数据点5-a-10和5-a-20分别形成相等半径的圆中心,5-b-100和5-b-200,它们在彼此的边界5-b-0处彼此相切。两个代表性群集数据点5-a-10和5-a-20把所有数据点的原始集合5-b-0划分为两个点的子集合,由所示的群集指定为群集集合罗马数字I(标号5-b-50)和群集集合罗马数字II(标号5-b-60),所有包含在其中的点,它们所有或者属于具有代表它的代表性群集点5-a-10的群集集合I,或者属于具有代表它的代表性群集点5-a-20的群集集合II。注意,对于群集集合I和II的圆有助于定义代表性群集数据点,且圆外的点究竟分配给群集集合I或II,分别取决于哪一个代表性群集数据点5-a-10和5-a-20在欧氏距离上更靠近。
例如图5(b)中点5-b-112所示,在有可能属于两个群集的边界上的点的情形下,该点可以任意放置在两个群集任何之一。
图4中,对应于以上初始群集代表性点选择的进程对应于包含进程步骤4-40的软件模块。根据T.Gozalez min-max准则启发式地找到对于群集代表的备选点,如决策块软件模块4-50所示。该步骤一般是时间和计算机资源密集的,并如果备选的代表性群集数据点不满足T.Gozalez准则,则选择新的点并重复进程,如步骤4-70的“NO”分支所示。然而一般来说,已经发现T.Gozalez方法收敛迅速,并具有对于由不多于优化半径两倍的代表性群集数据中心点表示的圆的半径误差率。
在决策块4-80的软件模块中,本发明的软件检验是否已经达到K的限度,划分的大小。在图5(a)-5(c)的例子中,K=3,因而程序将沿“NO”分支进行分支并在块4-40重复循环,其中对于第三群集将选择另一备选的代表性群集数据点。这在图5-(c)中图示表示出,其中满足T.Gozalez划分min-max准则的点是数据点5-a-30,它刚好与先前的代表性群集数据点5-a-10和5-a-20等距离间隔开。这些代表性数据点5-a-10、5-a-20和5-a-30的每一个分别有半径5-c-1000、5-c-2000和5-c-3000,形成彼此毗邻的圆,并把原始集合S(5-a-100)划分为三个子集合或群集,指定为如所示的群集集合罗马数字I,群集集合罗马数字II,群集集合罗马数字III。这些群集由边界5-c-333分开,且三个群集的每一个由在其中找到的数据点(即黑点)组成。如同以前,属于两者的边界线数据点,诸如数据点5-c-bord,可以指定给任一群集。此外,落入由代表性群集数据点形成的圆之外的数据点,可基于寻找从所述数据点到附近代表性群集数据点的最短欧氏距离,而分配给具体的群集,数据点分配给由最近群集代表表示的群集。这样,原始集合S(5-a-100)所有的点被分配给唯一的群集。
在决策块步骤4-80中,假设已经达到预定的划分值,程序分支到进程步骤4-90,在此与每一群集相关的数据存储到次存储器(例如硬驱动器4-100),同时表示每一群集的代表性群集数据点存储在主存储器(例如RAM),供这里所述的程序使用。
在软件模块进程块4-105中,能够执行可选的计算,诸如计算如上所述的对每一位于R和R-ε边界带的点,R=群集的半径,D=信号与最近的代表性匹配离开边界带的距离,ε=小正数或某个小误差余量,该群集位于离开这一边界带点的2*(R+D)距离之内。借助于由这一边界带定义的与群集代表的距离,这一计算可能用于对于任何作为“边界线匹配”落入这一带的实时信号数据,产生附加的群集。软件模块的块4-105还能够用于此外检验或其它可选的软件程序。
再转向图4,假设没有进一步的活动,则程序在步骤4-110结束。
进而关于“边界线匹配”问题,如这里结合图3框3-40所述,当实时数据信号位于群集集合的边界处时,匹配实时数据信号与最近库断面数据点的问题变得恶化。如这里所述,当这种实时信号数据位于靠近群集的边界线,诸如以上定义的“边界线带”时,对实时信号的最近的匹配可能位于与相邻群集中的数据点(或更一般来说在位于离边界线带某距离2*(R+D)之内的群集中)。为了图示这一现象,对于简化的二维情形,考虑图5(d),这是图5(c)部分的近观图,其中圆5-c-100,5-c-200定义接触的群集I和II。假设输入的实时数据信号能够由数据点5D-10定义的点表示。通过观察能够看见,这一实时数据数据信号点5D-10严格来说位于群集集合I内。于是如果要使实时数据数据信号点5D-10只与群集代表匹配,将发现作为匹配的群集集合I,而在群集集合I内的二次搜索,将产生诸如群集点5D-40或5D-41,作为与实时信号数据点5D-10最接近的群集断面数据点。然而很明显,这是不正确的,因为通过观察能够看到,对实时数据信号点5D-10最接近的匹配(最小欧氏距离)是位于群集II内的诸如5D-20或5D-30这样的点之一。于是,每当诸如5D-10这样的输入实时数据信号充分靠近如由某种边界线带定义的群集集合的边界或分界,就会出现“边界线匹配”的情形,且必须要考虑的对于与实时数据信号最近匹配的的群集,是所有位于所述边界的两倍R加D半径距离内的群集,其中R等于群集半径,D是信号与最近代表性匹配之间对边界的边界线带的距离。在图5(c)的例子中,对于这种“边界线匹配”的情形,这将包括群集I、II和III。选择距离2(R+D)作为安全余量,以保证考虑到所有潜在的最近点,且还可以选择另一保守的安全余量。在较高维的空间中,可能有多于一个或两个的群集包含在这种距离内。
进而考虑本发明,虽然采用了这里所述的群集技术作为优选的群集算法,即称为min-max T.Gozalez算法的非分级群集算法,由T.Gnzalez论述的,“把最大内部群集距离降低到最小的群集法”,理论计算机科学,卷38页293-306(1985),在此结合以资对比,但使用本发明的技术可以采用任何群集算法。进而,替代T.Gozalez算法可以采用任何min-max群集算法,诸如T.Feder和D.Greene的文章“逼近群集的最优算法”中所述的算法,Proceedings of the 20thACM Symposium on Theory ofcomputing(STOC),pp.434-444(1988),该文献在此结合以资对比。此外,可以采用其它的群集算法。于是例如本发明中可以采用的其它群集算法可以包括分级方法,诸如单连接(包含SLINK和最小树生成算法),完全连接,组平均连接,用于组平均连接的Voorhees算法,及Ward`s方法(包括对于Ward`s方法的互逆最近邻域算法)。此外,为了解决min-max问题,可以采用其它启发式算法替代T.Gozalez算法,诸如模拟退火或降梯度方法,虽然这些方法一般不如T.Gozalez算法。
此外,本发明中,欧氏距离是用于计算点之间的距离的优选的度量,但可以使用何不违背本发明且适当的度量。此外,一系列的圆、球体或超球体设想作为几何定义具体的群集,但可以使用任何特定的几何及任何特定的拓扑。
本发明的上述实施例是作为示例及说明而提供的。它们不是要限制本发明为所述的精确形式。特别地,预期这里所述的本发明的功能的实现能够等同地以硬件、软件、固件和/或其它可用的功能组件或构建的模块实现。按照以上的技术能够实现其它关系和实施例,因而本发明的范围不拟由其所述细节而是由以下权利要求为限。
权利要求
1.一种用于半导体芯片制造的改进的软件程序,包括计算机存储器,包括主存储器和次存储器;软件模块,用于作为实时数据信号表示从仪器收集的实时数据;软件模块,用于把多维空间中点的库数据集合S群集为群集集合;比较软件模块,用于比较所述实时数据信号与群集的所述集合,以便找出所述实时数据信号与所述群集中的所述点之间最接近的匹配。
2.根据权利要求1的发明,其中用于群集的所述软件模块根据T.Gozalez的min-max启发式群集算法进行所述群集。
3.用于断面测量的计算机设备。包括处理器,由所述处理器控制的I/O,用于输入和输出数据,并用于从用来测量半导体集成电路的至少一个仪器收集数据,以及与所述处理器工作连接并共同操作的存储器;存储在所述存储器中的软件模块,形成由所述处理器执行的软件程序,所述模块包括,数据收集软件模块,用于从所述I/O仪器收集实时数据信号,并用于以预定的格式表示所述实时数据信号;群集软件模块,用于把数据集合群集为群集的至少两个集合,所述群集集合中的所述数据与所述实时数据信号有相同的预定格式;以及比较软件模块,用于比较所述群集集合中的所述数据与所述实时数据信号,以找出最接近的匹配。
4.用于实时匹配断面测量中收集的数据与库数据的计算机方法,包括以下步骤实时地从断面测量仪器收集数据;把库中的数据群集为具有群集代表的多个群集;向主存储器加载所述群集代表;比较所述实时数据与所述群集代表,以找出最接近的匹配。
全文摘要
一种采用软件的改进的断面测量数据收集和分析系统,该软件对存储在表示半导体芯片晶片断面的存储器中的库数据进行群集分析,用于实时匹配来自由断面测量仪器收集的数据的数据信号。为了更好地在输入的数据信号与断面库数据之间实时进行匹配为群集,并抽取群集的代表性的群集数据点。代表性群集存储在主存储器(例如RAM),而形成群集的数据存储在次存储器(例如硬驱动器)。然后实时数据信号首先与代表性群集数据点比较,并当与特定的代表性群集数据点形成匹配时,与代表性群集数据点相关的群集从次存储器加载到主存储器。然后进而使用输入的实时数据信号进行搜索,以找出与群集中的数据最接近的匹配。这样,不必顺序地搜索整个的库数据,因而为了快速搜索,整个的库不必驻留在主存储器中,这既保存了时间又保存了主存。进而公开了细分驻留在群集的teh边界上的点的具体情形的技术。在优选实施例中,群集的划分方法基于teh T.Gonzalez算法。
文档编号G06F17/50GK1636168SQ01804176
公开日2005年7月6日 申请日期2001年11月28日 优先权日2000年11月28日
发明者斯里尼维斯·多蒂 申请人:音质技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1