一种晶圆晶粒排列检测方法及系统转让专利

申请号 : CN202211671570.4

文献号 : CN115661148B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 别晓辉陶思展别伟成单书畅

申请人 : 视睿(杭州)信息科技有限公司

摘要 :

本申请目的在于提供一种晶圆晶粒排列检测方法及系统,所述方法包括以下步骤:按照预设轨迹扫描整张晶圆料片,得到一系列局部小料图像;通过拼接算法将所有小料图像拼接成一张完整的大图;基于八邻域的连通图算法,将大图中同一个连通域内的晶粒进行排序;根据小料图像的像素坐标和Label坐标,利用计算机视觉算法和图形学算法检测晶粒边缘,根据晶粒边缘,通过膨胀操作和腐蚀操作得到缺陷区域,根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型。本申请使用图像处理中的膨胀和腐蚀操作,膨胀与腐蚀属于形态学范畴,膨胀用于处理缺陷问题,腐蚀用于处理毛刺问题。膨胀操作会填补缺陷,腐蚀操作会腐蚀掉毛刺。本发明可以提高晶圆晶粒排列检测的检出率。

权利要求 :

1.一种晶圆晶粒排列检测方法,其特征在于,所述方法包括以下步骤:按照预设轨迹扫描整张晶圆料片,得到一系列局部小料图像;

通过拼接算法将所有小料图像拼接成一张完整的大图;

基于八邻域的连通图算法,将大图中同一个连通域内的晶粒进行排序;

对排序后的晶粒根据小料图像的像素坐标和横纵坐标,利用计算机视觉算法和图形学算法检测每个晶粒边缘,根据晶粒边缘,通过膨胀操作和腐蚀操作得到缺陷区域,根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型,所述排列不齐类型包括:相邻晶粒排列不齐偏移量超过晶粒宽度1/5、整体晶粒排列不齐超过1颗晶粒宽度、整行或整列出现缺失、晶粒之间的间距大于晶粒宽度、晶粒间隔差异大于2倍、晶粒缺失率大于预设阈值;

根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型具体的检测方法包括:相邻晶粒排列不齐偏移量超过晶粒宽度1/5的不齐检测、整体晶粒排列不齐超过1颗晶粒宽度的检测、整行或整列出现缺失的检测、晶粒之间的间距大于晶粒宽度的检测、晶粒间隔差异大于2倍的检测以及晶粒缺失率大于预设阈值的检测。

2.根据权利要求1所述的一种晶圆晶粒排列检测方法,其特征在于,所述预设轨迹为“Z”字形扫描轨迹。

3.根据权利要求1所述的一种晶圆晶粒排列检测方法,其特征在于,所述相邻晶粒排列不齐偏移量超过晶粒宽度1/5的不齐检测方法为:使用图形学中的卷积操作计算相邻晶粒像素坐标的偏移量,若超过晶粒宽度1/5,标记为相邻晶粒排列不齐偏移量超过晶粒宽度1/5;

所述整体晶粒排列不齐超过1颗晶粒宽度的检测方法为:在检测一行或一列晶粒头尾偏移量不超过一颗小料图像的宽度时,统计整行或整列像素坐标的最大值和最小值,差值大于一颗晶粒宽度的行或列被标记为整体晶粒排列不齐超过1颗晶粒宽度;

所述整行或整列出现缺失的检测方法为:通过调用不同卷积核的图像处理中的膨胀操作和腐蚀操作得到整行和整列缺失的区域,统计缺失行列数是否达到阈值,超过阈值的行列,标记为整行或整列出现缺失;

所述晶粒之间的间距大于晶粒宽度的检测方法为:使用图形学中的卷积操作计算出晶粒横纵间隔距离是否大于晶粒宽度,若间隔大于晶粒宽度的行和列,标记为晶粒之间的间距大于晶粒宽度;

所述晶粒间隔差异大于2倍的检测方法为:使用图形学中的卷积操作计算晶粒横纵间隔距离是否大于2倍晶粒宽度,若间隔大于晶粒宽度2倍的行和列,标记为晶粒间隔差异大于2倍;

所述晶粒缺失率大于预设阈值的检测方法为:使用图像处理中的膨胀操作和腐蚀操作得到缺失晶粒的区域大小,计算缺失区域的面积和晶圆面积的比例,如果比例超过阈值则标记为晶粒缺失率大于预设阈值。

4.根据权利要求3所述的一种晶圆晶粒排列检测方法,其特征在于,所述膨胀操作包括以下步骤:设二值图像前景物体为1,背景为0;原图像中有一个前景物体;

遍历原图像的每一个像素,然后用结构元素的中心点对准当前正在遍历的这个像素;

然后取当前结构元素所覆盖下的原图对应区域内的所有像素的最大值,用这个最大值替换当前像素值;

如果当前结构元素覆盖下,全部都是背景,则不对原图做出改动;

如果当前结构元素覆盖下,全部都是前景物体像素,也不对原图做出改动;

如果当前结构元素位于前景物体边缘的时候,把当前像素替换成1;对原图像进行膨胀,使前景物体中细小的断裂处被连接起来。

5.根据权利要求3或4所述的一种晶圆晶粒排列检测方法,其特征在于,所述腐蚀操作包括以下步骤:设二值图像前景物体为1,背景为0;原图像中有一个前景物体;

遍历原图像的每一个像素,然后用结构元素的中心点对准当前正在遍历的这个像素;

然后取当前结构元素所覆盖下的原图对应区域内的所有像素的最小值,用这个最小值替换当前像素值;

如果当前结构元素覆盖下,全部都是背景,则不对原图做出改动;

如果当前结构元素覆盖下,全部都是前景物体像素,也对原图做出改动;

如果当前结构元素位于前景物体边缘的时候,把当前像素替换成0,对原图像进行腐蚀,使前景物体中细小的连接处被断开。

6.一种晶圆晶粒排列检测系统,其特征在于,所述系统包括图像采集模块、拼接模块、图像处理模块、检测模块;

所述图像采集模块用于按照预设轨迹扫描整张晶圆料片,得到一系列局部小料图像;

所述拼接模块用于通过拼接算法将所有小料图像拼接成一张完整的大图;

所述图像处理模块用于基于八邻域的连通图算法,将大图中同一个连通域内的晶粒进行排序;

所述检测模块用于根据小料图像的像素坐标和横纵坐标,利用计算机视觉算法和图形学算法检测晶粒边缘;通过膨胀操作和腐蚀操作得到缺陷区域,根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型;

所述排列不齐类型包括:相邻晶粒排列不齐偏移量超过晶粒宽度1/5、整体晶粒排列不齐超过1颗晶粒宽度、整行或整列出现缺失、晶粒之间的间距大于晶粒宽度、晶粒间隔差异大于2倍、晶粒缺失率大于预设阈值;

根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型具体的检测方法包括:相邻晶粒排列不齐偏移量超过晶粒宽度1/5的不齐检测、整体晶粒排列不齐超过1颗晶粒宽度的检测、整行或整列出现缺失的检测、晶粒之间的间距大于晶粒宽度的检测、晶粒间隔差异大于2倍的检测以及晶粒缺失率大于预设阈值的检测。

7.根据权利要求6所述的一种晶圆晶粒排列检测系统,其特征在于,所述系统还包括合档模块;

所述合档模块用于将整张大图中的所有小料图像信息以及排列不齐信息进行汇总,按照芯片生产商制定的标准将每颗芯片的电学特性和光学特性映射为指定的类型,最终生成的抛出档中记录下了每颗芯片的完整信息。

8.根据权利要求6或7所述的一种晶圆晶粒排列检测系统,其特征在于,所述系统还包括可视化模块;

所述可视化模块用于将检测出来的排列不齐类别在晶圆图中展示出来。

9.根据权利要求8所述的一种晶圆晶粒排列检测系统,其特征在于,所述相邻晶粒排列不齐偏移量超过晶粒宽度1/5的不齐检测方法为:使用图形学中的卷积操作计算相邻晶粒像素坐标的偏移量,若超过晶粒宽度1/5,标记为相邻晶粒排列不齐偏移量超过晶粒宽度1/5;

所述整体晶粒排列不齐超过1颗晶粒宽度的检测方法为:在检测一行或一列晶粒头尾偏移量不超过一颗小料图像的宽度时,统计整行或整列像素坐标的最大值和最小值,差值大于一颗晶粒宽度的行或列被标记为整体晶粒排列不齐超过1颗晶粒宽度;

所述整行或整列出现缺失的检测方法为:通过调用不同卷积核的图像处理中的膨胀操作和腐蚀操作得到整行和整列缺失的区域,统计缺失行列数是否达到阈值,超过阈值的行列,标记为整行或整列出现缺失;

所述晶粒之间的间距大于晶粒宽度的检测方法为:使用图形学中的卷积操作计算出晶粒横纵间隔距离是否大于晶粒宽度,若间隔大于晶粒宽度的行和列,标记为晶粒之间的间距大于晶粒宽度;

所述晶粒间隔差异大于2倍的检测方法为:使用图形学中的卷积操作计算晶粒横纵间隔距离是否大于2倍晶粒宽度,若间隔大于晶粒宽度2倍的行和列,标记为晶粒间隔差异大于2倍;

所述晶粒缺失率大于预设阈值的检测方法为:使用图像处理中的膨胀操作和腐蚀操作得到缺失晶粒的区域大小,计算缺失区域的面积和晶圆面积的比例,如果比例超过阈值则标记为晶粒缺失率大于预设阈值。

说明书 :

一种晶圆晶粒排列检测方法及系统

技术领域

[0001] 本申请涉及半导体芯片检测技术领域,具体而言,涉及一种晶圆晶粒排列检测方法及系统。

背景技术

[0002] 晶圆是指硅半导体集成电路制作所用的硅晶片,芯片是集成电路的载体。广义地说,我们把芯片等同于集成电路。芯片处理电路(包括半导体器件和无源元件等)小型化的途径,通常制作在半导体晶片的表面上。
[0003] 在实际的半导体生产制造过程中,由于工艺及其他因素的影响,圆片和方片表面会出现晶粒相邻间距过窄或过宽、整行整列缺失、歪斜、整体稀疏等异常情况,这些异常情况会严重影响质检部门的工作效率,同时也会影响后续生产流程,增大芯片生产制造商的生产制造成本。
[0004] 排列不齐种类繁多,如相邻晶粒偏移量超过晶粒宽度的五分之一、整行整列缺失、相邻两行或两列晶粒宽度小于晶粒宽度或大于 2 倍晶粒宽度、晶粒缺失率超过阈值等。由于晶圆晶粒尺寸微小,在不借助高精密仪器的情况下,以上各种排列不齐现象很难观察。如果人工借助显微镜进行观察,每一张圆片或者方片上的晶粒数量都在万级以上,生产流水线上的圆片和方片源源不断传送,此种情况下,人工检测效率低、漏检率高、一致性差等问题无法避免。
[0005] 为了提高生产效率,节省人力成本,必须使用机器来代替人工进行质检。以芯片为例,目前市面上现有的芯片检测方案存在诸多不足:
[0006] 1.传统视觉定位+传统缺陷检测方案,需要划分比较固定的若干区域,扩展性较差无法自由配置,需要人员必须需要专业技能。大部分自动光学检测都是基于正负标准样本库的图像差值对比提供公差类检测服务。工业界普遍使用传统检测多使用阈值或者模板匹配的方式。但是不同缺陷的种类复杂以及同类缺陷的差异较大,给缺陷分类带来了较大的难度,且算法不具备较强的鲁棒性,计算的效率也较低,几乎不借助GPU加速技术等。
[0007] 2.深度学习定位+深度学习分类缺陷检测方案,定位芯片需要依赖标注数据,只有收集到足够数据之后才可以达到客户要求的定位精度。由于芯片产品往往更新迭代比较快,所以该方案存在建档慢的窘境。

发明内容

[0008] 本申请的目的在于提供一种晶圆晶粒排列检测方法及系统,以提高晶圆晶粒排列检测效率。
[0009] 本申请还提供了一种晶圆晶粒排列检测方法,包括以下步骤:
[0010] 按照预设轨迹扫描整张晶圆料片,得到一系列局部小料图像;
[0011] 通过拼接算法将所有小料图像拼接成一张完整的大图;
[0012] 基于八邻域的连通图算法,将大图中同一个连通域内的晶粒进行排序;
[0013] 根据小料图像的像素坐标和横纵坐标(Label坐标),利用计算机视觉算法和图形学算法检测晶粒边缘,根据晶粒边缘,通过膨胀操作和腐蚀操作得到缺陷区域,根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型。
[0014] 可选地,所述预设轨迹为“Z”字形扫描轨迹。
[0015] 可选地,所述排列不齐类型包括:相邻晶粒排列不齐偏移量超过晶粒宽度1/5、整体晶粒排列不齐超过1颗晶粒宽度、整行或整列出现缺失、晶粒之间的间距大于晶粒宽度、晶粒间隔差异大于2倍、晶粒缺失率大于预设阈值。
[0016] 可选地,所述相邻晶粒排列不齐偏移量超过晶粒宽度1/5的不齐检测方法为:使用图形学中的卷积操作计算相邻晶粒像素坐标的偏移量,若超过晶粒宽度1/5,标记为相邻晶粒排列不齐偏移量超过晶粒宽度1/5;
[0017] 所述整体晶粒排列不齐超过1颗晶粒宽度的检测方法为:在检测一行或一列晶粒头尾偏移量不超过一颗小料图像的宽度时,统计整行或整列像素坐标的最大值和最小值,差值大于一颗晶粒宽度的行或列被标记为整体晶粒排列不齐超过1颗晶粒宽度;
[0018] 所述整行或整列出现缺失的检测方法为:通过调用不同卷积核的图像处理中的膨胀操作和腐蚀操作得到整行和整列缺失的区域,统计缺失行列数是否达到阈值,超过阈值的行列,标记为整行或整列出现缺失;
[0019] 所述晶粒之间的间距大于晶粒宽度的检测方法为:使用图形学中的卷积操作计算出晶粒横纵间隔距离是否大于晶粒宽度,若间隔大于晶粒宽度的行和列,标记为晶粒之间的间距大于晶粒宽度;
[0020] 所述晶粒间隔差异大于2倍的检测方法为:使用图形学中的卷积操作计算晶粒横纵间隔距离是否大于2倍晶粒宽度,若间隔大于晶粒宽度2倍的行和列,标记为晶粒间隔差异大于2倍;
[0021] 所述晶粒缺失率大于预设阈值的检测方法为:使用图像处理中的膨胀操作和腐蚀操作得到缺失晶粒的区域大小,计算缺失区域的面积和晶圆面积的比例,如果比例超过阈值则标记为晶粒缺失率大于预设阈值。
[0022] 可选地,所述膨胀操作包括以下步骤:
[0023] 设二值图像前景物体为1,背景为0;原图像中有一个前景物体;
[0024] 遍历原图像的每一个像素,然后用结构元素的中心点对准当前正在遍历的这个像素;
[0025] 然后取当前结构元素所覆盖下的原图对应区域内的所有像素的最大值,用这个最大值替换当前像素值;
[0026] 如果当前结构元素覆盖下,全部都是背景,则不对原图做出改动;
[0027] 如果当前结构元素覆盖下,全部都是前景物体像素,也不对原图做出改动;
[0028] 如果当前结构元素位于前景物体边缘的时候,把当前像素替换成1;对原图像进行膨胀,使前景物体中细小的断裂处被连接起来。
[0029] 可选地,所述腐蚀操作包括以下步骤:
[0030] 设二值图像前景物体为1,背景为0;原图像中有一个前景物体;
[0031] 遍历原图像的每一个像素,然后用结构元素的中心点对准当前正在遍历的这个像素;
[0032] 然后取当前结构元素所覆盖下的原图对应区域内的所有像素的最小值,用这个最小值替换当前像素值;
[0033] 如果当前结构元素覆盖下,全部都是背景,则不对原图做出改动;
[0034] 如果当前结构元素覆盖下,全部都是前景物体像素,也对原图做出改动;
[0035] 如果当前结构元素位于前景物体边缘的时候,把当前像素替换成0,对原图像进行腐蚀,使前景物体中细小的连接处被断开。
[0036] 第二方面,本发明还提供了一种晶圆晶粒排列检测系统,所述系统包括图像采集模块、拼接模块、图像处理模块、检测模块;
[0037] 所述图像采集模块用于按照预设轨迹扫描整张晶圆料片,得到一系列局部小料图像;
[0038] 所述拼接模块用于通过拼接算法将所有小料图像拼接成一张完整的大图;
[0039] 所述图像处理模块用于基于八邻域的连通图算法,将大图中同一个连通域内的晶粒进行排序;
[0040] 所述检测模块用于根据小料图像的像素坐标和Label坐标,利用计算机视觉算法和图形学算法检测晶粒边缘;通过膨胀操作和腐蚀操作得到缺陷区域,根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型。
[0041] 可选地,所述系统还包括合档模块;
[0042] 所述合档模块用于将整张大图中的所有小料图像信息以及排列不齐信息进行汇总,按照芯片生产商制定的标准将每颗芯片的电学特性和光学特性映射为指定的类型,最终生成的抛出档中记录下了每颗芯片的完整信息。
[0043] 可选地,所述系统还包括可视化模块;
[0044] 所述可视化模块用于将检测出来的排列不齐类别在晶圆图中展示出来。
[0045] 可选地,所述排列不齐类型包括:相邻晶粒排列不齐偏移量超过晶粒宽度1/5、整体晶粒排列不齐超过1颗晶粒宽度、整行或整列出现缺失、晶粒之间的间距大于晶粒宽度、晶粒间隔差异大于2倍、晶粒缺失率大于预设阈值;
[0046] 所述相邻晶粒排列不齐偏移量超过晶粒宽度1/5的不齐检测方法为:使用图形学中的卷积操作计算相邻晶粒像素坐标的偏移量,若超过晶粒宽度1/5,标记为相邻晶粒排列不齐偏移量超过晶粒宽度1/5;
[0047] 所述整体晶粒排列不齐超过1颗晶粒宽度的检测方法为:在检测一行或一列晶粒头尾偏移量不超过一颗小料图像的宽度时,统计整行或整列像素坐标的最大值和最小值,差值大于一颗晶粒宽度的行或列被标记为整体晶粒排列不齐超过1颗晶粒宽度;
[0048] 所述整行或整列出现缺失的检测方法为:通过调用不同卷积核的图像处理中的膨胀操作和腐蚀操作得到整行和整列缺失的区域,统计缺失行列数是否达到阈值,超过阈值的行列,标记为整行或整列出现缺失;
[0049] 所述晶粒之间的间距大于晶粒宽度的检测方法为:使用图形学中的卷积操作计算出晶粒横纵间隔距离是否大于晶粒宽度,若间隔大于晶粒宽度的行和列,标记为晶粒之间的间距大于晶粒宽度;
[0050] 所述晶粒间隔差异大于2倍的检测方法为:使用图形学中的卷积操作计算晶粒横纵间隔距离是否大于2倍晶粒宽度,若间隔大于晶粒宽度2倍的行和列,标记为晶粒间隔差异大于2倍;
[0051] 所述晶粒缺失率大于预设阈值的检测方法为:使用图像处理中的膨胀操作和腐蚀操作得到缺失晶粒的区域大小,计算缺失区域的面积和晶圆面积的比例,如果比例超过阈值则标记为晶粒缺失率大于预设阈值。
[0052] 由上可知,本申请提供的一种晶圆晶粒排列检测系统。本申请使用了图像处理中的膨胀操作和腐蚀操作,膨胀与腐蚀属于形态学范畴,膨胀用于处理缺陷问题,腐蚀用于处理毛刺问题。膨胀操作会填补缺陷,腐蚀操作会腐蚀掉毛刺。本发明可以提高晶圆晶粒排列检测的检出率。
[0053] 本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

[0054] 为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0055] 图1为本申请实施例提供的一种晶圆晶粒排列检测方法的流程图;
[0056] 图2为本申请实施例提供的排列不齐检测模块数据结构图;
[0057] 图3为本申请实施例相邻晶粒排列不齐偏移量超过晶粒宽度1/5类型图;
[0058] 图4为辅助检测相邻晶粒排列不齐偏移量超过晶粒宽度1/5的中值线图;
[0059] 图5为整体晶粒排列不齐超过1颗晶粒宽度类型图;
[0060] 图6为辅助检测整体晶粒排列不齐超过1颗晶粒宽度的中值线图;
[0061] 图7为整行或整列出现缺失类型图;
[0062] 图8为晶粒之间的间距大于晶粒宽度类型图;
[0063] 图9为晶粒间隔差异大于2倍类型图;
[0064] 图10为晶粒缺失率大于预设阈值类型图;
[0065] 图11为每个像素点的腐蚀膨胀范围;
[0066] 图12为不同卷积核腐蚀膨胀的效果图;
[0067] 图13为不同迭代次数腐蚀膨胀的效果图;
[0068] 图13为不同迭代次数腐蚀膨胀的效果图;
[0069] 图14为本申请实施例提供的一种晶圆晶粒排列检测。

具体实施方式

[0070] 下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0071] 应注意到,相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0072] 请参照图1,为本申请一些实施例中的晶圆晶粒排列检测方法的流程图。该晶圆晶粒排列检测方法,包括以下步骤:
[0073] S101:按照预设轨迹扫描整张晶圆料片,得到一系列局部小料图像;
[0074] S102:通过拼接算法将所有小料图像拼接成一张完整的大图;
[0075] S103:基于八邻域的连通图算法,将大图中同一个连通域内的晶粒进行排序;
[0076] S104:根据小料图像的像素坐标和Label坐标,利用计算机视觉算法和图形学算法检测晶粒边缘;通过膨胀操作和腐蚀操作得到缺陷区域,根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型。
[0077] 根据本发明实施例,所述预设轨迹为“Z”字形扫描轨迹。
[0078] 需要说明的是,本实施例中所述预设轨迹为“Z”字形,也可为“S”形,只要是折返式的全覆盖扫描即可。
[0079] 根据本发明实施例,所述排列不齐类型包括:相邻晶粒排列不齐偏移量超过晶粒宽度1/5、整体晶粒排列不齐超过1颗晶粒宽度、整行或整列出现缺失、晶粒之间的间距大于晶粒宽度、晶粒间隔差异大于2倍、晶粒缺失率大于预设阈值。
[0080] 需要说明的是,作为一个具体的实施例,下面结合实例及附图对本实施例进行说明:
[0081] 遍历所有小料图像数据统计出 Label 坐标的最小值和最大值,计算出横向和纵向的长度,继而生成索引字典 index_map。该索引字典的键为每颗小料图像的 Label 坐标,值为小料图像的像素坐标。
[0082] 遍历所有小料图像数据统计出像素坐标的最小值和最大值,计算出横向和纵向的长度,继而生成小料图像字典seed_map,该小料图像字典的键为像素坐标,值为1。
[0083] 为了方便中间计算数据的传输,设计排列不齐检测系统数据结构设计如图2所示。
[0084] 排列不齐检测结果存放在Python字典result_dict中,该字典的键Key为三元组,分别为:label_x、label_y、region_id。该字典的值Value为二维数组,分别为:[0,0,0,0,0,0,x,y]和[晶粒数据] 。
[0085] 由于本实施例有6种排列不齐的类型,Value中的第一个数组的前6列分别表示6种排列不齐的类型是否出现过,如果出现则对应位置设置为1,否则设置为0,从左到右依次对应需求1到需求6。
[0086] 其中,6种排列不齐的类型分别对应为:
[0087] 排列不齐1:相邻晶粒排列不齐偏移量超过晶粒宽度1/5。
[0088] 排列不齐2:整体晶粒排列不齐超过1颗晶粒宽度。
[0089] 排列不齐3:整行或整列出现缺失。
[0090] 排列不齐4:晶粒之间的间距大于晶粒宽度。
[0091] 排列不齐5:晶粒间隔差异大于2倍。
[0092] 排列不齐6:晶粒缺失率大于预设阈值。
[0093] 根据本发明实施例,所述相邻晶粒排列不齐偏移量超过晶粒宽度1/5的不齐检测方法为:使用图形学中的卷积操作计算相邻晶粒像素坐标的偏移量,若超过晶粒宽度1/5,标记为相邻晶粒排列不齐偏移量超过晶粒宽度1/5;
[0094] 需要说明的是,作为一个具体的实施例,下面结合图3‑图4进行详细说明:
[0095] 如上图所示为水平一行的晶粒,,用Xi表示横轴坐标,Yi表示纵轴坐标,其中i∈[1,n],n为横向或纵向晶粒的个数,中心点坐标为 (X1,Y1) 到 (Xn,Yn),将 Y1 到 Yn 从小到大排序,剔除掉最小的 30% 和最大的 30% 的坐标点,选取中间的 40% 坐标点为 Yi 到 Yj 。计算平均值 ,第 i 颗晶粒,如果 ,其中,W为预设的阈值,则标记第 
i 颗晶粒为 NG。对于纵向同理,如果 ,则标记第 i 颗晶粒为 NG(即异常)。对于第 i 颗晶粒,只要在横向或纵向排定为 NG,则其属性为 NG。
[0096] 所述整体晶粒排列不齐超过1颗晶粒宽度的检测方法为:在检测一行或一列晶粒头尾偏移量不超过一颗小料图像的宽度时,统计整行或整列像素坐标的最大值和最小值,差值大于一颗晶粒宽度的行或列被标记为整体晶粒排列不齐超过1颗晶粒宽度;
[0097] 需要说明的是,作为一个具体的实施例,下面结合图5‑图6进行详细说明:
[0098] 如图6所示为水平一行的晶粒,用Xi表示横轴坐标,Yi表示纵轴坐标,其中i∈[1,n],n为横向或纵向晶粒的个数,中心点坐标为 (X1,Y1) 到 (Xn,Yn),将 Y1 到 Yn 从小到大排序,最小值为 Ymin ,最大值为 Ymax。如果 Ymax‑Ymin>W,其中,W为预设的阈值,则标记此行为 NG。纵向同理,如果 Xmax‑Xmin > W,则标记此列为 NG。
[0099] 所述整行或整列出现缺失的检测方法为:通过调用不同卷积核的 图像处理中的膨胀操作和腐蚀操作得到整行和整列缺失的区域,统计缺失行列数是否达到阈值,超过阈值的行列,标记为整行或整列出现缺失;
[0100] 需要说明的是,在本实施例中,所述图像处理方法采用的OpenCV图像处理方法,但不局限于OpenCV图像处理,还可以是matlab、CIMG等图像处理方法等。
[0101] 需要说明的是,作为一个具体的实施例,下面结合图7进行详细说明:
[0102] 利用膨胀函数,即cv2.dilate()函数对图片进行膨胀处理,生成 seed_map 种子图,再利用膨胀操作将相邻晶粒图像进行联通。然后使用同样次数的腐蚀操作,将空缺的区域暴露出来。按行按列遍历晶粒种子图,统计出空缺的起始行号和终止行号,作差得出总共缺失多少行或列,将空缺行数或列数超过阈值,如图7中所示,如果空格行数或列数超过3,则标记为排列不齐3的异常编码。
[0103] 所述晶粒之间的间距大于晶粒宽度的检测方法为:使用图形学中的卷积操作计算出晶粒横纵间隔距离是否大于晶粒宽度,若间隔大于晶粒宽度的行和列,标记为晶粒之间的间距大于晶粒宽度;
[0104] 需要说明的是,作为一个具体的实施例,下面结合图8进行详细说明:
[0105] 遍历每个区域,使用卷积操作计算出相邻行或相邻列之间的间距,对于相邻间距超过晶粒宽度的行或列标记为排列不齐4的编号。
[0106] 所述晶粒间隔差异大于2倍的检测方法为:使用图形学中的卷积操作计算晶粒横纵间隔距离是否大于2倍晶粒宽度,若间隔大于晶粒宽度2倍的行和列,标记为晶粒间隔差异大于2倍;
[0107] 需要说明的是,作为一个具体的实施例,下面结合图9进行详细说明:
[0108] 遍历每个区域,使用卷积操作计算出相邻行或相邻列之间的间距,对于相邻间距超过2倍晶粒宽度的行或列标记为排列不齐5的编号。如图9所示,假设以A为相邻列晶粒宽度,B为实际检测所得相邻列晶粒间隔距离,若B>2A,则标记为排列不齐5。
[0109] 所述晶粒缺失率大于预设阈值的检测方法为:使用图像处理中的膨胀操作和腐蚀操作得到缺失晶粒的区域大小,计算缺失区域的面积和晶圆面积的比例,如果比例超过阈值则标记为晶粒缺失率大于预设阈值。
[0110] 需要说明的是,作为一个具体的实施例,下面结合图10进行详细说明:
[0111] 第 i 行中,找出空位个数为 m,晶粒个数为 n,计算所有行中的空位总数 M,总晶粒N。已知 Mark 点所占的空位个数为 p,实际空位总数为 M‑p。缺失比例 A=(M‑p)/N * 100%,如果 A>25%,则料片标记为 NG。如果整行整列缺失不进行计算。
[0112] 根据本发明实施例,所述膨胀操作包括以下步骤:
[0113] 设二值图像前景物体为1,背景为0;原图像中有一个前景物体;
[0114] 遍历原图像的每一个像素,然后用结构元素的中心点对准当前正在遍历的这个像素;
[0115] 然后取当前结构元素所覆盖下的原图对应区域内的所有像素的最大值,用这个最大值替换当前像素值;
[0116] 如果当前结构元素覆盖下,全部都是背景,则不对原图做出改动;
[0117] 如果当前结构元素覆盖下,全部都是前景物体像素,也不对原图做出改动;
[0118] 如果当前结构元素位于前景物体边缘的时候,把当前像素替换成1;对原图像进行膨胀,使前景物体中细小的断裂处被连接起来。
[0119] 根据本发明实施例,所述腐蚀操作包括以下步骤:
[0120] 设二值图像前景物体为1,背景为0;原图像中有一个前景物体;
[0121] 遍历原图像的每一个像素,然后用结构元素的中心点对准当前正在遍历的这个像素;
[0122] 然后取当前结构元素所覆盖下的原图对应区域内的所有像素的最小值,用这个最小值替换当前像素值;
[0123] 如果当前结构元素覆盖下,全部都是背景,则不对原图做出改动;
[0124] 如果当前结构元素覆盖下,全部都是前景物体像素,也对原图做出改动;
[0125] 如果当前结构元素位于前景物体边缘的时候,把当前像素替换成0,对原图像进行腐蚀,使前景物体中细小的连接处被断开。
[0126] 需要说明的是,图像处理中的膨胀操作和腐蚀操作,膨胀与腐蚀属于形态学范畴,膨胀用于处理缺陷问题,腐蚀用于处理毛刺问题。膨胀操作会填补缺陷,腐蚀操作会腐蚀掉毛刺。膨胀操作的具体原理为:
[0127] 设二值图像前景物体为1,背景为0。假设原图像中有一个前景物体,用一个结构元素去腐蚀原图的过程是:遍历原图像的每一个像素,然后用结构元素的中心点对准当前正在遍历的这个像素,然后取当前结构元素所覆盖下的原图对应区域内的所有像素的最小值,用这个最小值替换当前像素值。由于二值图像最小值就是0,所以就是用0替换,即变成了黑色背景。如果当前结构元素覆盖下,全部都是背景,那么就不会对原图做出改动,因为都是0。如果全部都是前景物体像素,也不会对原图做出改动,因为都是1。只有结构元素位于前景物体边缘的时候,它覆盖的区域内才会出现0和1两种不同的像素值,这个时候把当前像素替换成0就有变化了。因此腐蚀看起来的效果就是让前景物体缩小了一圈一样。对于前景物体中一些细小的连接处,如果结构元素大小相等,这些连接处就会被断开。
[0128] 二值图像前景物体为1,背景为0。假设原图像中有一个前景物体,用一个结构元素去膨胀原图的过程是:遍历原图像的每一个像素,然后用结构元素的中心点对准当前正在遍历的这个像素,然后取当前结构元素所覆盖下的原图对应区域内的所有像素的最大值,用这个最大值替换当前像素值。由于二值图像最大值就是1,所以就是用1替换,即变成了白色前景物体。如果当前结构元素覆盖下,全部都是背景,那么就不会对原图做出改动,因为都是0。如果全部都是前景物体像素,也不会对原图做出改动,因为都是1。只有结构元素位于前景物体边缘的时候,它覆盖的区域内才会出现0和1两种不同的像素值,这个时候把当前像素替换成1就有变化了。因此膨胀看起来的效果就是让前景物体胀大了一圈一样。对于前景物体中一些细小的断裂处,如果结构元素大小相等,这些断裂的地方就会被连接起来。对这张图片进行膨胀处理。对于一个像素点,我们需要先指定对每个像素点膨胀的范围。其中,每个像素点的腐蚀膨胀范围如图11所示,
[0129] 通过改变卷积核,如果使用水平和垂直卷积核代替交叉卷积核,正如我们所看到的,水平和垂直方向不同程度地腐蚀着图像。使用水平卷积核可以得到一个垂直方向细长的圆;而使用垂直卷积核可以得到一个水平方向细长的圆。如果我们更改卷积核,也就改变了腐蚀膨胀的程度。不同卷积核腐蚀膨胀的效果如图12所示。
[0130] 更改迭代次数为2、4、6、10,效果如图13所示:增加迭代次数后,腐蚀变得更加厉害,所以应该选择合适的迭代次数。
[0131] 如图14所示,本申请还公开了一种晶圆晶粒排列检测系统,所述系统包括图像采集模块141、拼接模块142、图像处理模块143、检测模块144;
[0132] 所述图像采集模块141按照预设轨迹扫描整张晶圆料片,得到一系列局部小料图像;
[0133] 所述拼接模块142通过拼接算法将所有小料图像不重不漏地拼接成一张完整的大图;
[0134] 所述图像处理模块143基于八邻域的连通图算法,将大图中同一个连通域内的晶粒进行排序;
[0135] 所述检测模块144根据小料图像的像素坐标和Label坐标,利用计算机视觉算法和图形学算法检测晶粒边缘;通过膨胀操作和腐蚀操作得到缺陷区域,根据缺陷区域内晶粒排列情况确定晶粒排列不齐类型。
[0136] 根据本发明实施例,所述系统还包括合档模块145;
[0137] 所述合档模块145将整张大图中的所有小料图像信息以及排列不齐信息进行汇总,按照芯片生产商制定的标准将每颗芯片的电学特性和光学特性映射为指定的类型,最终生成的抛出档中记录下了每颗芯片的完整信息。
[0138] 质检部门会根据得到的抛出档分选芯片,分选后的芯片会进入到封装、切割等后续环节,最后会集成进各种电子设备中进入市场。
[0139] 根据本发明实施例,所述系统还包括可视化模块146;
[0140] 所述可视化模块146将检测出来的排列不齐类别在晶圆图中展示出来。
[0141] 根据本发明实施例,所述排列不齐类型包括:相邻晶粒排列不齐偏移量超过晶粒宽度1/5、整体晶粒排列不齐超过1颗晶粒宽度、整行或整列出现缺失、晶粒之间的间距大于晶粒宽度、晶粒间隔差异大于2倍、晶粒缺失率大于预设阈值;
[0142] 所述相邻晶粒排列不齐偏移量超过晶粒宽度1/5的不齐检测方法为:使用图形学中的卷积操作计算相邻晶粒像素坐标的偏移量,若超过晶粒宽度1/5,标记为相邻晶粒排列不齐偏移量超过晶粒宽度1/5;
[0143] 所述整体晶粒排列不齐超过1颗晶粒宽度的检测方法为:在检测一行或一列晶粒头尾偏移量不超过一颗小料图像的宽度时,统计整行或整列像素坐标的最大值和最小值,差值大于一颗晶粒宽度的行或列被标记为整体晶粒排列不齐超过1颗晶粒宽度;
[0144] 所述整行或整列出现缺失的检测方法为:通过调用不同卷积核的图像处理中的膨胀操作和腐蚀操作得到整行和整列缺失的区域,统计缺失行列数是否达到阈值,超过阈值的行列,标记为整行或整列出现缺失;
[0145] 所述晶粒之间的间距大于晶粒宽度的检测方法为:使用图形学中的卷积操作计算出晶粒横纵间隔距离是否大于晶粒宽度,若间隔大于晶粒宽度的行和列,标记为晶粒之间的间距大于晶粒宽度;
[0146] 所述晶粒间隔差异大于2倍的检测方法为:使用图形学中的卷积操作计算晶粒横纵间隔距离是否大于2倍晶粒宽度,若间隔大于晶粒宽度2倍的行和列,标记为晶粒间隔差异大于2倍;
[0147] 所述晶粒缺失率大于预设阈值的检测方法为:使用图像处理中的膨胀操作和腐蚀操作得到缺失晶粒的区域大小,计算缺失区域的面积和晶圆面积的比例,如果比例超过阈值则标记为晶粒缺失率大于预设阈值。
[0148] 由上可知,本申请提供的一种晶圆晶粒排列检测系统。本申请使用了图像处理中的膨胀操作和腐蚀操作,膨胀与腐蚀属于形态学范畴,膨胀用于处理缺陷问题,腐蚀用于处理毛刺问题。膨胀操作会填补缺陷,腐蚀操作会腐蚀掉毛刺。本发明可以提高晶圆晶粒排列检测的检出率。
[0149] 在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
[0150] 上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0151] 另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0152] 本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0153] 或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。