0%

晶圆失效图形自动识别

问题简介

半导体制造是按照整盒晶圆为单位进行生产。因此大致同一盒晶圆在生产上基本上是同一时间经过各个工艺步骤,因而可以说同一盒晶圆中的所有单片晶圆所经历的生产环境是一致的。但是,由于单片晶圆所经历的机台子工艺仓可能不同,就有可能造成一盒晶圆中的单片晶圆按照一定顺序重复失效;例如所有奇数片低良率,偶数片正常。所以,这时不仅需要分析以整盒晶圆为单位的叠图失效图形,还要具体分析每片晶圆的失效图形。

接下来将会讨论的失效类型图

CircuitProbing

方法简介

不同的机台会造成不同晶圆的失效图形,比如:

  1. 化学机械研磨机台容易造成刮伤,刮伤型失效

  2. 光刻机根据掩模版所刻图形在同一片晶圆上进行重复曝光,则会造成晶圆重复性失效

  3. 测试机台不稳定(误宰),则芯片将按照测试顺序发生连续失效;而连续失效做单片分析即可。误宰现象也表现为重复型失效。

观察晶圆图是一项寻找良率问题及了解缺陷特征的重要分析手段。通过晶圆图可以具体了解此片晶圆的良率以及某种测试项的失效芯片在晶圆上的分布(图2.1.1),进行正确的归类,判断可疑的工艺步骤,从而改善晶圆的制程。

CircuitProbing

叠图指将同一盒晶圆的25片晶圆的测试结果进行叠加。图2.1.2。

  1. 良率叠图:将同一盒的25片晶圆的合格芯片进行相同位置叠加。

  2. 单项测试项失效叠图:对25片晶圆在某一项测试项上失效的芯片进行相同位置叠加。

晶圆上各个位置叠加失效状况可由叠图的颜色深浅表示,某一区域颜色越浅,则表示该区域合格芯片数目不多。

具体方法

如何用统计或聚类分析的方法对叠图和单片晶圆进行自动判别分类。

数据准备

CircuitProbing2

  1. 表2.2.1:单片晶圆的原始测试数据。

  2. 表2.2.2:良率叠图原始数据。是将25片晶圆的原始数据进行位置良率计算便可得到。如第一行数据,说明25片晶圆中有24片晶圆的芯片在此位置为合格芯片。

  3. 表2.2.3:失效芯片位置分析需要首先把表2.2.2中的数据转化为能够确切代表位置好坏的0,1数据表。

利用正态分布理论,我们设定μ-r*σ为良率分界线。比如在6sigma之外则认为是异常,其错误概率大概是百万分之一。r可以调节严格程度。本实验取r=3。

1sigma原则:数值分布在(μ-σ,μ+σ)中的概率为0.6526;

2sigma原则:数值分布在(μ-2σ,μ+2σ)中的概率为0.9544;

3sigma原则:数值分布在(μ-3σ,μ+3σ)中的概率为0.9974;

利用上述叠图良率数据,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
bin_list = [96,92,96,100,88,76,36.4,56,72,88,60,84,88,92,88,23,68,100,76,64,52,64,68,88,84,96,72,88,84]
bin_mean = np.mean() # bin_mean = 77.22
bin_median = np.median(bin_list) # bin_median = 84
bin_std = np.std() # bin_std = 18.51

q3 = np.percentile(bin_list,75) #75%的分位数,q3=88

q1 = np.percentile(bin_list,25) #25%的分位数,q1=68
iqr = q3 - q1 # iqr = 20 # 四分距IQR

# r = 3, 良率界限在21.696/39.56, 3sigma=0.9974
bin_mean - 3*bin_std = 21.696 # 因为异常点拉低了数值
bin_median - 3*iqr/1.35 = 39.56 # 消除异常点的影响
# r = 2, 良率界限在40.204/54.63, 2sigma=0.9544
bin_mean - 2*bin_std = 40.204
bin_median - 2*iqr/1.35 = 54.63

CircuitProbing_3

实际中,过低良率会拉低良率分界线,使得一些问题位置无法筛选出出来。所以,实际应用中良率分界线采用median-r*IQR/1.35,可以去除异常点的影响,更稳健。如果不存在异常值,那么上述两种计算方式的值将会相似。

簇失效、刮伤型失效、连续型失效判定方法

层次分析法

  1. 将数据准备段中有问题的数据筛选出来;

  2. 用聚类方法BIRCH建立CF树;

  3. 定义同一个簇的距离,若d=1,则认为X方向或者Y方向相邻的两个位置是同一簇;若d=1.414,则认为对角相邻范围内的两个位置属于同一簇;具体设定可以根据产品以及客户要求。

  4. 结合CF树以及所定义的d值便可以确定出问题位置是否有形成簇效应。

  5. 在形成簇失效的基础上,如果所有行或列的问题位置个数都在给定的刮伤型范围内,则认为是刮伤型失效,如果只有单行或单列形成的簇效应则为连续性失效。

至此,即可以判断出叠图是簇失效、刮伤型失效、连续型失效中的哪一种。

判断失效区域

因为这三种失效有很多种,需要进一步将问题晶圆归类,进行后续分析。

一般我们认为,晶圆上同一区域的同一种测试项目失效是由同一种根源造成的。

将默认晶圆化分区域,如果,簇效应区域与默认晶圆的某一个区域A相似度达到阈值,则认为是区域A的簇效应。

重复型失效判定方法

掩模版相关或DUT(device under test)相关。

CircuitProbing_4

如果掩模版出现沾污,则由于光刻的重复性,可以从图中看到重复性的不良位置。如上图,则可以判断再掩模版的(3,1)位置的失效率很高。而DUT与掩模版信息类似。

无信息判断

当缺少掩模版或DUT信息,分析人员只有整盒晶圆的叠图信息,此时图形判别分析步骤如下:

  1. 分别按照每行和每列计算此行/列中1的个数,并将它们分别按行、列排序。

  2. 取出行方向和列方向问题位置最多的行和列,判断剩余行或列是否与之成等差数列。行或列任何一项此判别成立则说明此图存在重复性失效。

上述方法无法判断是由光刻工艺造成的还是由测试造成的。

有信息判断

  1. 将之前的晶圆坐标替换成掩模版或者DUT坐标。

  2. 将位置信息与Flag列所示的好坏信息进行逻辑回归分析。

  3. 通过统计参数,如Pvalue的大小,判定结果是否具有统计显著性,即掩模版位置或DUT位置中是否有某个或某些位置与其它位置的芯片良率表现有明显差异。若结果具有统计显著性(Pvalue<0.05),则说明此盒晶圆存在掩模版相关重复性失效或者DUT相关重复性失效。

逻辑回归分析

逻辑回归模型是对二分类因变量0/1进行回归分析时最为普遍的多元量化分析方法。

该分析方法可以从诸多影响因素中,建立模型判断事件的结果。

单片晶圆失效图形判别方法

CircuitProbing_5

其中Flag列所定义的数据为处理数据。此例中分析的是BIN7的晶圆失效图形,所以,发生BIN7失效的位置Flag标志为1,其余位置为0。同理,其它BIN也这么做。

单片晶圆失效图形判别同样也存在簇失效,刮伤失效以及重复型失效,他们的判别方法与叠图的判别方法一致。

题图Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import matplotlib.pyplot as plt
import numpy as np

# x=np.random.randint(0,100,100)#生成【0-100】之间的100个数据,即 数据集
bin_list = [96,92,96,100,88,76,36.4,56,72,88,60,84,88,92,88,23,68,100,76,64,52,64,68,88,84,96,72,88,84]# 良率数据集
bins=np.arange(0,101,10)#设置连续的边界值,即直方图的分布区间[0,10],[10,20]...
width=9#柱状图的宽度
#直方图会进行统计各个区间的数值
frequency_each,_,_= plt.hist(bin_list,bins,color='deepskyblue',width=width,alpha=0.7)#alpha设置透明度,0为完全透明
plt.xlabel('Yield')
plt.ylabel('Count')
plt.xlim(0,100)#设置x轴分布范围
plt.plot(bins[1:]-(width//2),frequency_each,color='palevioletred')#利用返回值来绘制区间中点连线
plt.show()

原文:晶圆失效图形自动识别系统在ULSI良率管理中的应用研究_黄珺

-------------本文结束感谢您的阅读-------------

欢迎关注我的其它发布渠道