掌桥专利:专业的专利平台
掌桥专利
首页

一种芯片测试方法及芯片测试机

文献发布时间:2023-06-19 13:27:45


一种芯片测试方法及芯片测试机

技术领域

本发明涉及半导体技术领域,尤其涉及一种芯片测试方法及芯片测试机。

背景技术

在芯片的加工制造过程中,在晶圆上加工出芯片之后,需要进行CP测试(ChipProbing,晶圆测试),作为半导体后道封装测试的第一站,需要确保每个晶圆上的每个芯片(Die,也称晶粒)能基本满足器件的特征或设计规格书(Specification),通常包括电压、电流、时序和功能的验证等。

在CP测试过程中,需要使用芯片测试机。通用的测试流程中,测试机首先对晶圆输出测试向量,选中晶圆上的待测芯片开始自检。当检测到缺陷时,将缺陷信息存入缺陷寄存器。之后在测试向量运行结束之后,将缺陷寄存器内的缺陷信息输出给芯片测试机。由于晶圆上实际缺陷的数量可能很多,而用来存储这些缺陷信息的缺陷寄存器数量却有限,为了解决这一矛盾,现有技术方案采取了如下的解决办法。

首先在测试向量中设定缺陷序号N,向晶圆输出测试向量,选中待测芯片,开始检测。在晶圆上运行测试向量的过程中,当检测到第N个缺陷时,将该第N个缺陷的信息存入到缺陷寄存器,而其他缺陷则被忽略。在该测试向量在晶圆上运行一次结束之后,停止运行测试向量。然后将缺陷寄存器内存储的第N个缺陷的信息输出到测试机。采用该测试方法,每运行一次测试向量,得到一个缺陷信息。之后,再从1开始增加序号N的值,重复上述操作,依次得到每一个缺陷的信息。采用该测试方法虽然能够在经过多次运行测试向量之后,输出晶圆的待测芯片上的全部缺陷。但由于每运行一次测试向量,只能输出一个缺陷信息,而且需要反复修改缺陷的序号。从而既耗费测试时间,又增加了测试向量的修改和运行次数,使得测试过程变得更加复杂。

发明内容

本发明提供了一种芯片测试方法及芯片测试机,以在单次运行第一测试向量之后,能够输出目标芯片的大部分缺陷信息;避免了多次运行第一测试向量造成的时间浪费,而且无需反复修改测试向量,简化测试流程;且仅需占用晶圆上不多的存储空间,能够对设计了较少测试用存储器的晶圆进行测试,提高芯片测试方法的适用性。

第一方面,本发明提供了一种芯片测试方法,该芯片测试方法包括:在晶圆上运行第一测试向量,以对晶圆上的目标芯片进行检测,并将检测到的缺陷信息覆盖式存储到晶圆上的缺陷存储模块中;在运行第一测试向量的同时,在晶圆上多次重复运行第二测试向量,以多次提取缺陷存储模块中当前存储的缺陷信息。

在上述的方案中,通过第一测试向量在晶圆上运行,对目标芯片进行检测的同时,多次重复的运行第二测试向量,多次提取覆盖式存储在缺陷存储模块中当前存储的缺陷信息,从而能够在运行一次第一测试向量之后,能够输出目标芯片的大部分缺陷信息。通过该大部分缺陷信息即可进行改善工艺分析,从而无需检测出目标芯片的所有缺陷信息,避免了多次运行第一测试向量造成的时间浪费。且由于仅采用运行第一测试向量,来对目标芯片进行检测,从而也就省去了测试向量的修改,即无需反复修改测试向量,简化测试流程。另外,由于检测到的缺陷信息是采用覆盖式存储的方式存储到晶圆上的缺陷存储模块中,从而无需占用晶圆上较多的存储空间,仅需占用晶圆上不多的存储空间即可进行测试,从而能够对设计了较少测试用存储器的晶圆进行测试,提高芯片测试方法的适用性。

在一个具体的实施方式中,在晶圆上运行第一测试向量之前,该芯片测试方法还包括:选取晶圆上的一个寄存器作为缺陷存储模块。通过采用一个寄存器作为存储缺陷信息的缺陷存储模块,不仅能够提高测试效率,而且还尽量减少占用晶圆的测试用存储空间,进一步提高芯片测试方法的适用性。

在一个具体的实施方式中,缺陷信息通过二进制代码表征。在二进制代码的位数超过寄存器的比特位数时,将检测到的缺陷信息覆盖式存储到晶圆上的缺陷存储模块中包括:按照预设规则将二进制代码划分为至少两组子代码,且每组子代码的位数均不超过寄存器的比特位数;将至少两组子代码分至少两次连续的覆盖式存储到寄存器中。此时,每次提取缺陷存储模块中当前存储的缺陷信息包括:每次从寄存器中提取当前存储的一组子代码,分连续的至少两次从寄存器中提取出至少两组子代码;将至少两组子代码,按照预设规则组合出表征缺陷信息的二进制代码。通过在表征缺陷信息的二进制代码的位数超过寄存器的比特位数时,采用先将二进制代码划分为至少两组子代码,并分组覆盖式存储和提取,之后对提取的至少两组子代码进行组合以得到完整的缺陷信息,从而使该测试方法在使用一个寄存器作为缺陷信息的临时存储空间时,依然能够完成较复杂的缺陷信息的临时存储和提取,提高了芯片测试方法的适用性。

在一个具体的实施方式中,缺陷信息通过二进制代码表征。在每次提取缺陷存储模块中当前存储的缺陷信息之后,芯片测试方法还包括:从二进制代码中搜索出所有数值为“1”的代码,并存储每个数值为“1”的代码在二进制代码中的位置信息。将存储所有的二进制代码方式,简化为仅存储所有数值为“1”的代码在二进制代码中的位置信息,大大地降低测了芯片测试机的工作负载,加快后续结果处理速度。

在一个具体的实施方式中,在晶圆上第一次运行第一测试向量之后,芯片测试方法还包括:判断第一测试向量运行的时间是否超出预设时间阈值;如果判断结果为不超过,则再次重复运行第一测试向量,且在每次运行第一测试向量的同时,均多次重复运行第二测试向量;如果判断结果为超过,则终止运行第一测试向量和第二测试向量。不仅能够保证第一测试向量能够被完整的运行至少一次;而且还能够避免由于检测时间过短,而来不及输出足够多的缺陷信息,从而保证最后输出的缺陷信息的数据量足够多,保证作为改善工艺分析的样本数据的代表性。

在一个具体的实施方式中,该芯片测试方法还包括:每次将检测到的缺陷信息覆盖式存储到缺陷存储模块的同时,还将存储到缺陷存储模块中的缺陷信息对应的标志位信息,覆盖式存储到晶圆上的标志位存储模块中;其中,标志位信息包括缺陷信息是否有效信息、第一测试向量是否正在运行信息、和两个测试向量是否正确信息中的至少一种信息。每次提取缺陷存储模块中当前存储的缺陷信息的同时,还提取标志位存储模块中当前存储的标志位信息。通过每次提取缺陷信息的同时,还提取对应的标志位信息,以识别所提取的缺陷信息是否能够使用。

在一个具体的实施方式中,标志位信息包括缺陷信息是否有效信息、和第一测试向量是否正在运行信息。每次提取标志位存储模块中当前存储的标志位信息之后,芯片测试方法还包括:判断是否满足条件:缺陷信息无效,第一测试向量停止运行,且第一测试向量运行的时间超过预设时间阈值。如果判断结果为满足,则终止运行第一测试向量和第二测试向量;如果判断结果为不满足,则继续运行第一测试向量,并在运行第一测试向量的同时,继续多次重复运行第二测试向量。以在第一测试向量的运行时间超出预设时间阈值之后,在第一测试向量完整的运行结束一次之后,再终止两个测试向量的运行,从而避免出现第一测试向量没有被再次完整运行完的情况下,结束了检测,从而能够使最后输出的缺陷信息较为完整。

在一个具体的实施方式中,标志位信息包括缺陷信息是否有效信息、第一测试向量是否正在运行信息、和两个测试向量是否正确信息。标志位存储模块中包含有三个比特位。其中,三个比特位中的第一比特位通过存储在其内的“0”或“1”表征缺陷信息是否有效信息;三个比特位中的第二比特位通过存储在其内的“0”或“1”表征第一测试向量是否正在运行信息;三个比特位中的第三比特位通过存储在其内的“0”或“1”表征两个测试向量是否正确信息。以占用较少的存储空间,存储更多的标志位信息。

在一个具体的实施方式中,在晶圆栅运行第一测试向量之前,芯片测试方法还包括:选取晶圆上的一个寄存器作为标志位存储模块。提高标志位信息的存储和提取速度,从而提高测试的效率。

在一个具体的实施方式中,晶圆上加工有至少一种类型的存储器芯片。在晶圆上运行第一测试向量,以对晶圆上的目标芯片进行检测包括:在晶圆上运行第一测试向量,以选择晶圆上同一类型的存储器芯片作为目标芯片,并对同一类型的存储器芯片进行检测。以便于一次对晶圆上同一类型的所有存储器芯片进行测试,提高测试效率,同时也能够使最后输出的缺陷信息具有较好的代表性和完整性。

第二方面,本发明还提供了一种芯片测试机,该芯片测试机包括第一运行模块和第二运行模块。其中,第一运行模块用于在晶圆上运行第一测试向量,以对晶圆上的目标芯片进行检测,并将检测到的缺陷信息覆盖式存储到晶圆上的缺陷存储模块中。第二运行模块用于在运行第一测试向量的同时,在晶圆上多次重复的运行第二测试向量,以多次提取缺陷存储模中当前存储的缺陷信息。

在上述的方案中,通过第一测试向量在晶圆上运行,对目标芯片进行检测的同时,多次重复的运行第二测试向量,多次提取覆盖式存储在缺陷存储模块中当前存储的缺陷信息,从而能够在运行一次第一测试向量之后,能够输出目标芯片的大部分缺陷信息。通过该大部分缺陷信息即可进行改善工艺分析,从而无需检测出目标芯片的所有缺陷信息,避免了多次运行第一测试向量造成的时间浪费。且由于仅采用运行第一测试向量,来对目标芯片进行检测,从而也就省去了测试向量的修改,即无需反复修改测试向量,简化测试流程。另外,由于检测到的缺陷信息是采用覆盖式存储的方式存储到晶圆上的缺陷存储模块中,从而无需占用晶圆上较多的存储空间,仅需占用晶圆上不多的存储空间即可进行测试,从而能够对设计了较少测试用存储器的晶圆进行测试,提高芯片测试方法的适用性。

在一个具体的实施方式中,该芯片测试机还包括存储选定模块,该存储选定模块用于在晶圆上运行第一测试向量之前,选择晶圆上的一个寄存器作为缺陷存储模块。通过采用一个寄存器作为存储缺陷信息的缺陷存储模块,不仅能够提高测试效率,而且还尽量减少占用晶圆的测试用存储空间,进一步提高芯片测试方法的适用性。

在一个具体的实施方式中,缺陷信息通过二进制代码表征。芯片测试机还包括拆分模块和组合模块。其中,拆分模块用于在二进制代码的位数超过寄存器的比特位数时,按照预设规则将二进制代码划分为至少两组子代码,且每组子代码的位数均不超过寄存器的比特位数;第一运行模块用于将至少两组子代码分至少两次连续的覆盖式存储到寄存器中;第二运行模块用于每次从寄存器中提取当前存储的一组子代码,并分连续的至少两次从寄存器中提取出至少两组子代码;组合模块用于将至少两组子代码,按照预设规则组合出表征缺陷信息的二进制代码。通过在表征缺陷信息的二进制代码的位数超过寄存器的比特位数时,采用先将二进制代码划分为至少两组子代码,并分组覆盖式存储和提取,之后对提取的至少两组子代码进行组合以得到完整的缺陷信息,从而使该测试方法在使用一个寄存器作为缺陷信息的临时存储空间时,依然能够完成较复杂的缺陷信息的临时存储和提取,提高了芯片测试方法的适用性。

在一个具体的实施方式中,缺陷信息通过二进制代码表征。芯片测试机还包括搜索记录模块,搜索记录模块用于在每次提取缺陷存储模块中当前存储的缺陷信息之后,从二进制代码中搜索出所有数值为“1”的代码,并存储每个数值为“1”的代码在二进制代码中的位置信息。将存储所有的二进制代码方式,简化为仅存储所有数值为“1”的代码在二进制代码中的位置信息,大大地降低测了芯片测试机的工作负载,加快后续结果处理速度。

在一个具体的实施方式中,该芯片测试机还包括判断模块和控制模块。其中,判断模块用于在晶圆上第一次运行第一测试向量之后,判断第一测试向量运行的时间是否超过预设时间阈值。控制模块用于在判断结果为不超过时,控制第一运行模块再次重复运行第一测试向量,且控制模块还用于在每次运行第一测试向量的同时,均控制第二测试向量模块多次重复运行第二测试向量。控制模块还用于在判断结果为超过时,终止运行第一测试向量和第二测试向量。不仅能够保证第一测试向量能够被完整的运行至少一次;而且还能够避免由于检测时间过短,而来不及输出足够多的缺陷信息,从而保证最后输出的缺陷信息的数据量足够多,保证作为改善工艺分析的样本数据的代表性。

在一个具体的实施方式中,第一运行模块还用于在每次将检测到的缺陷信息覆盖式存储到缺陷存储模块的同时,还将存储到缺陷存储模块中的缺陷信息对应的标志位信息,覆盖式存储到晶圆上的标志位存储模块中;其中,标志位信息包括缺陷信息是否有效信息、第一测试向量是否正在运行信息、和两个测试向量是否正确信息中的至少一种信息。第二运行模块还用于在每次提取缺陷存储模块中当前存储的缺陷信息的同时,还提取标志位存储模块中当前存储的标志位信息。通过每次提取缺陷信息的同时,还提取对应的标志位信息,以识别所提取的缺陷信息是否能够使用。

在一个具体的实施方式中,标志位信息包括缺陷是否有效信息、和第一测试向量是否正在运行信息。判断模块还用于在每次提取标志位存储模块中当前存储的标志位信息之后,判断是否满足条件:缺陷信息无效,第一测试向量停止运行,且第一测试向量运行的时间超过预设时间阈值。控制模块还用于在判断结果为满足时,终止运行第一测试向量和第二测试向量。控制模块还用于在判断结果为不满足时,控制第一运行模块继续运行第一测试向量,同时控制第二测试向量模块继续多次重复运行第二测试向量。以在第一测试向量的运行时间超出预设时间阈值之后,在第一测试向量完整的运行一次结束之后,再终止两个测试向量的运行,从而避免出现第一测试向量没有被再次完整运行完的情况下,结束了检测,从而能够使最后输出的缺陷信息较为完整。

在一个具体的实施方式中,该芯片测试机还包括存储选定模块,存储选定模块用于在晶圆上运行第一测试向量之前,选取晶圆上的一个寄存器作为标志位存储模块。提高标志位信息的存储和提取速度,从而提高测试的效率。

附图说明

图1为本发明实施例提供的一种芯片测试方法的流程图;

图2为本发明实施例提供的另一种芯片测试方法的流程图;

图3为本发明实施例提供的另一种芯片测试方法的其中一步骤的流程图;

图4为本发明实施例提供的一种缺陷存储模块和标志位存储模块的存储位示意图;

图5为本发明实施例提供的一种输出缺陷信息的片段示意图;

图6为本发明实施例提供的另一种芯片测试方法的流程图;

图7为本发明实施例提供的另一种芯片测试方法的流程图;

图8为本发明实施例提供的另一种芯片测试方法的其中一步骤的流程图;

图9为本发明实施例提供的另一种芯片测试方法的其中一步骤的流程图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了方便理解本发明实施例提供的芯片测试方法,下面首先说明一下本发明实施例提供的芯片测试方法的应用场景,该芯片测试方法应用于CP测试过程中,以对晶圆上的芯片进行测试。下面结合附图对该芯片测试方法进行详细的叙述。

参考图1,本发明实施例提供的芯片测试方法包括:

在晶圆上运行第一测试向量,以对晶圆上的目标芯片进行检测,并将检测到的缺陷信息覆盖式存储到晶圆上的缺陷存储模块中;

在运行第一测试向量的同时,在晶圆上多次重复运行第二测试向量,以多次提取缺陷存储模块中当前存储的缺陷信息。

在上述的方案中,通过第一测试向量在晶圆上运行,对目标芯片进行检测的同时,多次重复的运行第二测试向量,多次提取覆盖式存储在缺陷存储模块中当前存储的缺陷信息,从而能够在运行一次第一测试向量之后,能够输出目标芯片的大部分缺陷信息。通过该大部分缺陷信息即可进行改善工艺分析,从而无需检测出目标芯片的所有缺陷信息,避免了多次运行第一测试向量造成的时间浪费。且由于仅采用运行第一测试向量,来对目标芯片进行检测,从而也就省去了测试向量的修改,即无需反复修改测试向量,简化测试流程。另外,由于检测到的缺陷信息是采用覆盖式存储的方式存储到晶圆上的缺陷存储模块中,从而无需占用晶圆上较多的存储空间,仅需占用晶圆上不多的存储空间即可进行测试,从而能够对设计了较少测试用存储器的晶圆进行测试,提高芯片测试方法的适用性。下面结合附图对上述步骤进行详细的介绍。

如图1所示,在晶圆上运行第一测试向量,以对晶圆上的目标芯片进行检测,并将检测到的缺陷信息覆盖式存储到晶圆上的缺陷存储模块中。即第一测试向量的功能主要是负责选中晶圆上的目标芯片,并对目标芯片进行检测。在检测到目标芯片的一个缺陷点之后,将该缺陷点的缺陷信息采用覆盖式存储到晶圆上的缺陷存储模块中,覆盖掉缺陷存储模块中原来存储的缺陷信息。该缺陷存储模块可以为晶圆上设计出专门测试用的存储器,诸如寄存器、SRAM(静态随机存取存储器)、DRAM(动态随机存取存储器)等。在第一测试向量继续运行的过程中,在检测到另一个缺陷点之后,需要将一个新的缺陷点的缺陷信息采用覆盖式存储方法存储到缺陷存储模块中,覆盖掉之前缺陷点的缺陷信息。

另外,晶圆上的目标芯片可以为晶圆上的同一种类型的芯片,芯片类型大类可以为逻辑运算芯片、存储器芯片等。而逻辑运算芯片具体可以为CPU(中央处理器)中的一个Die、GPU(图形处理器)中的一个Die等,存储器芯片具体可以为寄存器芯片、静态随机存储器芯片、动态随机存储器芯片、闪存芯片等。例如,在晶圆上加工有至少一种类型的存储器芯片时,具体在晶圆上运行第一测试向量,以对晶圆上的目标芯片进行检测可以为:通过在晶圆上运行第一测试向量,以选择晶圆上同一类型的存储器芯片作为目标芯片,并对该同一类型的存储器芯片进行检测。以便于一次对晶圆上同一类型的所有存储器芯片进行测试,提高测试效率,同时也能够使最后输出的缺陷信息具有较好的代表性和完整性。

继续参考图1,在运行第一测试向量的同时,需要同时在晶圆上多次重复运行第二测试向量,以多次提取缺陷存储模块中当前存储的缺陷信息。即第二测试向量的功能主要负责将临时暂存在缺陷存储模块中的缺陷信息提取出来,传输给芯片测试机,由芯片测试机进行存储、解析和分析。由于第二测试向量主要从缺陷存储模块中提取缺陷信息,其功能比较简单,而第一测试向量负责对晶圆上的目标芯片进行检测,其功能比较复杂,从而会使第一测试向量完整的运行一次的周期,要远远大于第二测试向量完整的运行一次的周期。所以在完整的在晶圆上运行一次第一测试向量的时间内,可以运行许多次的第二测试向量,许多次的来提取缺陷存储模块中的缺陷信息,从而尽量在前一次检测到的缺陷点的缺陷信息,在被下一次检测到的缺陷点的缺陷信息覆盖之前,从缺陷存储模块中提取出来,减少被覆盖的缺陷信息,且能够获取大多数的缺陷点的缺陷信息。具体在第一测试向量运行的同时,多次重复运行第二测试向量时,可以采用不间断的重复运行第二测试向量,以尽可能多的从缺陷存储模块中提取缺陷信息,减少被覆盖的缺陷信息数量。

采用上述方法,在完整的运行一次第一测试向量之后,能够输出目标芯片的大部分缺陷信息。由于通过该大部分缺陷信息即可进行改善工艺分析,从而无需检测出目标芯片的所有缺陷信息,避免了多次运行第一测试向量造成的时间浪费。例如,假设在晶圆的目标芯片上有10个缺陷点,本申请的方案可以在运行一次第一测试向量进行检测之后,能够输出其中的大约8个缺陷点的缺陷信息(存在2个缺陷点的缺陷信息可能被覆盖)。而现有技术的方案需要进行11次进行检测的测试向量的运行(前10次获得10个缺陷点的缺陷信息+最后1次的确认)。也就是说,本申请的方案用了现有技术10%的时间,获得了大约80%的效果,而工艺流程并不需要改善每一个缺陷点,只需要改善大部分有代表性的缺陷即可,故而获得大部分有代表性的缺陷信息即可。另外,现有技术中在对CP测试进行缺陷定位的过程中,更重视缺陷定位的完整性而忽略了有效性,本申请的发明思路正是在于全新定义了晶圆目标芯片的缺陷获取流程,不再拘泥于现有技术中“力图获取晶圆上目标芯片全部的缺陷”的设计思路,而是在最短的时间内找出晶圆上目标芯片的大部分有代表性的缺陷信息。且由于仅采用运行第一测试向量,来对目标芯片进行检测,从而也就省去了测试向量的修改,即无需反复修改测试向量,简化测试流程。另外,由于检测到的缺陷信息是采用覆盖式存储的方式存储到晶圆上的缺陷存储模块中,从而无需占用晶圆上较多的存储空间,仅需占用晶圆上不多的存储空间即可进行测试,从而能够对设计了较少测试用存储器的晶圆进行测试,提高芯片测试方法的适用性。反过来,在晶圆上也无需设置许多的CP测试用存储器,减少了晶圆上CP测试用存储器占用的面积,从而能够在芯片上设置更多的目标芯片。

在具体从晶圆上专门设计用于测试用的存储器中选择缺陷存储模块时,可以选择寄存器作为缺陷存储模块。由于每次检测到缺陷点之后,均采用覆盖式存储方式将缺陷点的缺陷信息临时存储到缺陷存储模块中,所以无需使用较多的存储空间。具体可以选择少数的一个或几个寄存器作为缺陷存储模块,以利用寄存器读写较快的特性,提高测试效率及效果。当然,在晶圆上还存在其他类型的专门设计用于测试的存储器时,也可以选择其他类型的存储器作为缺陷存储模块。下面以一个寄存器作为缺陷存储模块为例进行说明。

参考图2,在晶圆上运行第一测试向量之前,该芯片测试方法还可以包括:选取晶圆上的一个寄存器作为缺陷存储模块。通过采用一个寄存器作为存储缺陷信息的缺陷存储模块,不仅能够提高测试效率,而且还尽量减少占用晶圆的测试用存储空间,进一步提高芯片测试方法的适用性。

另外,一个缺陷点的缺陷信息通常采用二进制代码表征。有的缺陷点的缺陷信息简单,对应的,表征该缺陷点的缺陷信息的二进制代码的位数可以少些。有的缺陷点的缺陷信息复杂,对应的,表征该缺陷点的缺陷信息的二进制代码的位数可以多些。在采用一个寄存器作为缺陷存储模块时,一个寄存器的比特位数通常是16位、32位等。如果第一测试向量对目标芯片的检测较为简单,从而可以通过一个寄存器内的比特位即可完整的存储表征缺陷点的缺陷信息的二进制代码时,则通过一次覆盖式存储方式即可将一个缺陷点的缺陷信息完整的存储到作为缺陷存储模块的寄存器中,同样可以通过运行一次第二测试向量,即可从作为缺陷存储模块的寄存器中提取出一个完整的缺陷信息。

但是,如果第一测试向量对目标芯片的检测较为复杂,导致表征缺陷点的缺陷信息的二进制代码的位数较多,其超过了作为缺陷检测模块的寄存器的比特位数,使一个完整的缺陷信息通过一次覆盖式存储方式,不能完整的将缺陷信息存储到作为缺陷检测模块的寄存器中。此时,可以先将一个表征缺陷信息的二进制代码拆分为多个子代码,分多次覆盖式存储到寄存器中,同时也分多次提取出多个子代码,并将多个子代码再次组合形成一个完整的缺陷信息的方式。

具体的,参考图3,在将检测到的缺陷信息覆盖式存储到晶圆上的缺陷存储模块中时,首先,按照预设规则将二进制代码划分为至少两组子代码,且每组子代码的位数均不超过寄存器的比特位数,使每组子代码能够完整的被存储到寄存器中。例如,预设规则可以为由前到后将二进制代码划分为至少两个代码段,每个代码段作为一组子代码。接下来,如图3所示,将至少两组子代码分至少两次连续的覆盖式存储到寄存器中,即每次仅将其中的一组子代码覆盖式存储到寄存器中,分至少两次将一个完整的缺陷信息先后暂存到同一个寄存器中。此时,在每次提取缺陷存储模块中当前存储的缺陷信息时,参考图3,每次需要从寄存器中提取其当前存储的一组子代码,并分连续的至少两次从寄存器中提取出至少两组子代码,从而使先后暂存到同一个寄存器中的至少两组子代码,也被先后的从该同一个寄存器中提取出来,获得至少两组子代码。需要注意的是,每个缺陷信息所划分出的子代码组数、先后将一组子代码存储到寄存器中的次数、以及先后从寄存器中提取子代码的次数,这三者是相等的,以保证没有一组子代码被覆盖而没有被提取出来。继续参考图3,在提取出至少两组子代码之后,还需要将至少两组子代码,按照相同的预设规则组合出表征缺陷信息的二进制代码。在前述示例中,预设规则为由前到后分将二进制代码划分为至少两个代码段,每个代码段作为一组子代码时,可以按照相同的预设规则,将先提取出的子代码段和后提取出的子代码段按照时间顺序组合,获得表征一个完整的缺陷信息的二进制代码。其中的预设规则可以包含在第一测试向量和第二测试向量中,以在运行两个测试向量的同时,即可执行上述操作方式。通过在表征缺陷信息的二进制代码的位数超过寄存器的比特位数时,采用先将二进制代码划分为至少两组子代码,并分组覆盖式存储和提取,之后对提取的至少两组子代码进行组合以得到完整的缺陷信息,从而使该测试方法在使用一个寄存器作为缺陷信息的临时存储空间时,依然能够完成较复杂的缺陷信息的临时存储和提取,提高了芯片测试方法的适用性。

例如,如图4所示出的一种包含有32个比特位(数据位中的0位~31位)的寄存器作为缺陷存储模块,如图5所示出的一段缺陷信息,其中的次数是指第二测试向量被运行的次数,其中的数据位是寄存器中存储的一组代码,每次从寄存器中提取一组代码。本示例中寄存器的比特位数是32位,对应的,数据位中的一组代码的位数也为32位,即每运行一次第二测试向量,能够从寄存器中提取一组32位的代码。本示例中第一测试向量对目标芯片的检测比较复杂,导致每个缺陷点的缺陷信息也较复杂,一组32位的代码不足以完整的表征一个缺陷点的缺陷信息。所以本示例中将表征一个完整的缺陷信息的二进制代码拆分为三组子代码,对应的,也需要连续运行三次第二测试向量才能提取出该三组子代码。结合图5,本示例中第6~8次共三次运行第二测试向量,获得三组子代码,这三组子代码是由表征一个缺陷信息的二进制代码拆分而来,需要将这三组子代码按照预设规则组合形成一段表征一个完整的缺陷信息的二进制代码。本示例中第12~14次共三次再次重复运行第二测试向量,获得的另外三组子代码,同样这三组子代码是由表征另一个缺陷信息的二进制代码拆分而来,需要将这三组子代码按照预设规则组合形成一段表征该另一个完整的缺陷信息的二进制代码。

另外,该芯片测试方法还可以包括:在每次将检测到的缺陷信息覆盖式存储到缺陷存储模块的同时,还将存储到缺陷存储模块中的缺陷信息对应的标志位信息,覆盖式存储到晶圆上的标志位存储模块中。其中,标志位信息包括缺陷信息是否有效信息、第一测试向量是否正在运行信息、和两个测试向量是否正确信息中的至少一种信息。还使用了晶圆上的部分存储空间,来覆盖式临时的存储标志位信息。每次检测到一个缺陷点,并将该缺陷点的缺陷信息覆盖式存储到缺陷存储模块中时,还需要将该次覆盖式存储的缺陷信息对应的标志位信息,也同样采用覆盖式存储到晶圆上的标志位存储模块中。该标志位信息具体可以为此次存储的缺陷信息是否有效的信息。该标志位信息也可以为此次存储缺陷信息时,第一测试向量是否正在运行的信息。因此,不仅在第一测试向量运行时能够生成第一测试向量正在运行的信息,而且还在第一测试向量停止运行时,也能够生成第一测试向量停止运行的信息。故而,可以通过将该功能集成到第一测试向量内部实现,也可以额外运行新的测试向量实现,或者通过通信连接测试机获取第一测试向量是否正在运行的信息,并将该信息存储到标志位存储模块中。当然,标志位信息还可以为第一测试向量及第二测试向量是否正确的信息,以在每次向缺陷存储模块中存储新的缺陷信息时,均判断一次两个测试向量是否正确,以及时发现两个测试向量是否出现错误。

此时,在每次运行第二测试向量,以获取缺陷信息时,继续参考图4,在每次提取缺陷存储模块中当前存储的缺陷信息的同时,还需要提取标志位存储模块中当前存储的标志位信息,以获取此次提取的缺陷信息对应的标志位信息,以识别所提取的缺陷信息是否能够使用。具体的,在标志位信息显示缺陷信息无效时,显然缺陷信息是不正确的,识别出此次提取的缺陷信息不能够作为分析使用。在标志位信息显示第一测试向量停止运行时,如果同时提取了缺陷信息是否无效的信息,则标志位信息会显示第一测试向量停止运行,以及缺陷信息无效,原因在于第一测试向量停止运行时,是不可能产生有效的缺陷信息的。如果此时没有提取缺陷信息是否无效的信息,则自动判断此次提取的缺陷信息不能够使用。在标志位信息提示两个测试向量不正确时,如果也同时提取了缺陷信息是否有效的信息,则大概率是缺陷信息无效。原因在于:如果第一测试向量不正确,则不可能存储给缺陷存储模块正确的缺陷信息,如果第二测试向量不正确,则极有可能不是从缺陷存储模块中提取的缺陷信息,因此并不能确定此次提取的缺陷信息是否有效。如果此时没有提取缺陷信息是否无效的信息,则自动判断此次提取的缺陷信息不能够使用。

参考图6,在晶圆栅运行第一测试向量之前,还可以选取晶圆上的一个寄存器作为标志位存储模块。利用寄存器的读写速度快的特性,提高标志位信息的存储和提取速度,从而提高测试的效率。当然,标志位存储模块并不限于使用寄存器的方式,除此之外,还可以使用晶圆上的其他类型的存储器作为标志位存储模块。

另外,可以采用同时提取上述三种标志位信息的方式,即标志位信息包括缺陷信息是否有效信息、第一测试向量是否正在运行信息、和两个测试向量是否正确信息。在每次将该三种类型的标志位信息临时覆盖式存储到缺陷存储模块中时,每种标志位信息可以通过在一个比特位上存储“0”或“1”表征每种标志位信息的具体情况。例如,参考图4,标志位存储模块中可以包含有三个比特位,分别为图4中的标志位0~2。其中,三个比特位中的第一比特位(如图4中的标志位0)通过存储在其内的“0”或“1”表征缺陷信息是否有效信息,例如,可以使“0”表征缺陷信息无效,“1”表征缺陷信息有效。三个比特位中的第二比特位(如图4中的标志位1)通过存储在其内的“0”或“1”表征第一测试向量是否正在运行信息,例如,可以使“0”表征第一测试向量停止运行,“1”表征第一测试向量正在运行。三个比特位中的第三比特位(如图4中的标志位2)通过存储在其内的“0”或“1”表征两个测试向量是否正确信息,例如,可以使“0”表征两个测试向量正确,“1”表征两个测试向量至少部分存在错误。以占用较少的存储空间,存储更多的标志位信息。如图4所示,每次提取出的信息不仅包含存储在数据位0~31存储的表征缺陷信息的部分或全部代码,还包含存储在标志为0~2存储的三种标志位信息。参考图5,标志位“000”表征缺陷信息无效,第一测试向量停止运行,且两个测试向量正确,此时可能是第一测试向量还没有开始运行,或第一测试向量已经结束运行。标志位“110”表征缺陷信息有效,第一测试向量正在运行,且两个测试向量正确,此时可能是第一测试向量正在运行的过程中,检测到一个缺陷点,并将缺陷点的缺陷信息存储到缺陷存储模块中。标志位“010”标志缺陷信息无效,第一测试向量正在运行,且两个测试向量正确,此时可能是第一测试向量正在运行的过程中,但是还没有检测出新的缺陷点。

在缺陷信息通过二进制代码表征时,在每次提取缺陷存储模块中当前存储的缺陷信息之后,需要由芯片测试机对提取的缺陷信息进行存储、解析和分析。在芯片测试机对提取的缺陷信息进行存储时,可以仅存储表征缺陷信息的二进制代码中所有数值为“1”的位置信息,而不存储整个二进制代码。具体的,参考图7,芯片测试方法还可以包括:从二进制代码中搜索出所有数值为“1”的代码,并存储每个数值为“1”的代码在二进制代码中的位置信息。将存储所有的二进制代码方式,简化为仅存储所有数值为“1”的代码在二进制代码中的位置信息,大大地降低测了芯片测试机的工作负载,加快后续结果处理速度。

当然,还可以结合标志位信息,确定是否存储此次从缺陷存储模块中提取的缺陷信息。例如,在根据标志位信息判断此次提取的缺陷信息不能够使用时,则就不存储此次提取的缺陷信息,避免存储不能够使用的缺陷信息,从而也就减少了后续解析的任务,同时也能够防止干扰分析。在根据标志位信息判断此次提取的缺陷信息能够使用时,再存储此次提取的缺陷信息。在芯片测试机存储到能够使用的缺陷信息之后,需要将表征缺陷信息的二进制代码通过解析转换为该缺陷信息在晶圆的目标芯片上的具体缺陷位置,以总结有规律性的缺陷,将有规律的缺陷反馈给负责工艺的人员,以便于工艺的改进。

再者,在晶圆上第一次运行第一测试向量之后,可以根据第一测试向量在第一次运行过程的时间长短,决定是否再次重复运行新的次数的第一测试向量,进行下一个检测周期。例如,参考图8,在晶圆上第一次运行第一测试向量之后,芯片测试方法可以还包括:判断第一测试向量运行的时间是否超出预设时间阈值。如果判断结果为不超过,则再次重复运行第一测试向量,且在每次运行第一测试向量的同时,均多次重复运行第二测试向量,以获取更多的缺陷信息。如果判断结果为超过,则终止运行第一测试向量和第二测试向量。通过在此节点增加判断过程,不仅能够保证第一测试向量能够被完整的运行至少一次;而且还能够避免由于检测时间过短,而来不及输出足够多的缺陷信息,从而保证最后输出的缺陷信息的数据量足够多,保证作为改善工艺分析的样本数据的代表性。另外,通过再次运行第一测试向量,能够调节第一测试向量开始时间和第二测试向量开始时间的偶然时差,使再次运行第一测试向量的过程中,可能会将第一次运行第一测试向量时被覆盖的缺陷信息提取出来,从而使最后输出的缺陷信息能够更完整。

在第一次运行第一测试向量的时间不超过预设时间阈值,而再次运行第一测试向量时,可以使标志位信息包括缺陷信息是否有效信息、和第一测试向量是否正在运行信息,以便于选择在恰当的时间节点停止第一测试向量和第二测试向量的运行。具体的,参考图9,在每次提取标志位存储模块中当前存储的标志位信息之后,芯片测试方法还可以包括:判断是否满足条件:缺陷信息无效,第一测试向量停止运行,且第一测试向量运行的时间超过预设时间阈值。如果判断结果为不满足,则继续运行第一测试向量,并在运行第一测试向量的同时,继续多次重复运行第二测试向量。如果判断结果为满足,则终止运行第一测试向量和第二测试向量。以在第一测试向量的运行时间超出预设时间阈值之后,在第一测试向量完整的运行一次结束之后,再终止两个测试向量的运行,从而避免出现第一测试向量没有被再次完整运行完的情况下,结束了检测,从而能够使最后输出的缺陷信息较为完整。

通过第一测试向量在晶圆上运行,对目标芯片进行检测的同时,多次重复的运行第二测试向量,多次提取覆盖式存储在缺陷存储模块中当前存储的缺陷信息,从而能够在运行一次第一测试向量之后,能够输出目标芯片的大部分缺陷信息。通过该大部分缺陷信息即可进行改善工艺分析,从而无需检测出目标芯片的所有缺陷信息,避免了多次运行第一测试向量造成的时间浪费。且由于仅采用运行第一测试向量,来对目标芯片进行检测,从而也就省去了测试向量的修改,即无需反复修改测试向量,简化测试流程。另外,由于检测到的缺陷信息是采用覆盖式存储的方式存储到晶圆上的缺陷存储模块中,从而无需占用晶圆上较多的存储空间,仅需占用晶圆上不多的存储空间即可进行测试,从而能够对设计了较少测试用存储器的晶圆进行测试,提高芯片测试方法的适用性。

另外,本发明实施例还提供了一种芯片测试机,该芯片测试机包括第一运行模块和第二运行模块。其中,第一运行模块用于在晶圆上运行第一测试向量,以对晶圆上的目标芯片进行检测,并将检测到的缺陷信息覆盖式存储到晶圆上的缺陷存储模块中。第二运行模块用于在运行第一测试向量的同时,在晶圆上多次重复的运行第二测试向量,以多次提取缺陷存储模中当前存储的缺陷信息。

在上述的方案中,通过第一测试向量在晶圆上运行,对目标芯片进行检测的同时,多次重复的运行第二测试向量,多次提取覆盖式存储在缺陷存储模块中当前存储的缺陷信息,从而能够在运行一次第一测试向量之后,能够输出目标芯片的大部分缺陷信息。通过该大部分缺陷信息即可进行改善工艺分析,从而无需检测出目标芯片的所有缺陷信息,避免了多次运行第一测试向量造成的时间浪费。且由于仅采用运行第一测试向量,来对目标芯片进行检测,从而也就省去了测试向量的修改,即无需反复修改测试向量,简化测试流程。另外,由于检测到的缺陷信息是采用覆盖式存储的方式存储到晶圆上的缺陷存储模块中,从而无需占用晶圆上较多的存储空间,仅需占用晶圆上不多的存储空间即可进行测试,从而能够对设计了较少测试用存储器的晶圆进行测试,提高芯片测试方法的适用性。

当然,该芯片测试机还可以包括存储选定模块,该存储选定模块用于在晶圆上运行第一测试向量之前,选择晶圆上的一个寄存器作为缺陷存储模块。通过采用一个寄存器作为存储缺陷信息的缺陷存储模块,不仅能够提高测试效率,而且还尽量减少占用晶圆的测试用存储空间,进一步提高芯片测试方法的适用性。

如前述方法部分所述,缺陷信息可以通过二进制代码表征。芯片测试机还可以包括拆分模块和组合模块。其中,拆分模块用于在二进制代码的位数超过寄存器的比特位数时,按照预设规则将二进制代码划分为至少两组子代码,且每组子代码的位数均不超过寄存器的比特位数;第一运行模块用于将至少两组子代码分至少两次连续的覆盖式存储到寄存器中;第二运行模块用于每次从寄存器中提取当前存储的一组子代码,并分连续的至少两次从寄存器中提取出至少两组子代码;组合模块用于将至少两组子代码,按照预设规则组合出表征缺陷信息的二进制代码。通过在表征缺陷信息的二进制代码的位数超过寄存器的比特位数时,采用先将二进制代码划分为至少两组子代码,并分组覆盖式存储和提取,之后对提取的至少两组子代码进行组合以得到完整的缺陷信息,从而使该测试方法在使用一个寄存器作为缺陷信息的临时存储空间时,依然能够完成较复杂的缺陷信息的临时存储和提取,提高了芯片测试方法的适用性。

在缺陷信息通过二进制代码表征时,芯片测试机还可以包括搜索记录模块,搜索记录模块用于在每次提取缺陷存储模块中当前存储的缺陷信息之后,从二进制代码中搜索出所有数值为“1”的代码,并存储每个数值为“1”的代码在二进制代码中的位置信息。将存储所有的二进制代码方式,简化为仅存储所有数值为“1”的代码在二进制代码中的位置信息,大大地降低测了芯片测试机的工作负载,加快后续结果处理速度。

另外,该芯片测试机还可以包括判断模块和控制模块。其中,判断模块用于在晶圆上第一次运行第一测试向量之后,判断第一测试向量运行的时间是否超过预设时间阈值。控制模块用于在判断结果为不超过时,控制第一运行模块再次重复运行第一测试向量,且控制模块还用于在每次运行第一测试向量的同时,均控制第二测试向量模块多次重复运行第二测试向量。控制模块还用于在判断结果为超过时,终止运行第一测试向量和第二测试向量。不仅能够保证第一测试向量能够被完整的运行至少一次;而且还能够避免由于检测时间过短,而来不及输出足够多的缺陷信息,从而保证最后输出的缺陷信息的数据量足够多,保证作为改善工艺分析的样本数据的代表性。

如前述方法部分所述,第一运行模块还用于在每次将检测到的缺陷信息覆盖式存储到缺陷存储模块的同时,还将存储到缺陷存储模块中的缺陷信息对应的标志位信息,覆盖式存储到晶圆上的标志位存储模块中;其中,标志位信息包括缺陷信息是否有效信息、第一测试向量是否正在运行信息、和两个测试向量是否正确信息中的至少一种信息。第二运行模块还用于在每次提取缺陷存储模块中当前存储的缺陷信息的同时,还提取标志位存储模块中当前存储的标志位信息。通过每次提取缺陷信息的同时,还提取对应的标志位信息,以识别所提取的缺陷信息是否能够使用。

在一个示例中,标志位信息可以包括缺陷是否有效信息、和第一测试向量是否正在运行信息。判断模块还用于在每次提取标志位存储模块中当前存储的标志位信息之后,判断是否满足条件:缺陷信息无效,第一测试向量停止运行,且第一测试向量运行的时间超过预设时间阈值。控制模块还用于在判断结果为满足时,终止运行第一测试向量和第二测试向量。控制模块还用于在判断结果为不满足时,控制第一运行模块继续运行第一测试向量,同时控制第二测试向量模块继续多次重复运行第二测试向量。以在第一测试向量的运行时间超出预设时间阈值之后,在第一测试向量完整的运行一次结束之后,再终止两个测试向量的运行,从而避免出现第一测试向量没有被再次完整运行完的情况下,结束了检测,从而能够使最后输出的缺陷信息较为完整。

另外,该芯片测试机还可以包括存储选定模块,存储选定模块用于在晶圆上运行第一测试向量之前,选取晶圆上的一个寄存器作为标志位存储模块。提高标志位信息的存储和提取速度,从而提高测试的效率。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

技术分类

06120113679520