中文 英语

加速基于扫描的卷诊断

瓶颈在哪里,可以做些什么来消除它们。

受欢迎程度

在被称为新产品培育的关键过程中,这是一场让新产品尽快产出的竞赛。但是,设计和工艺之间日益复杂的相互作用,使得很难找到产量问题的根本原因,从而迅速解决问题。

高级工艺具有很高的缺陷,学习必须快速有效。虽然已经取得了进展,但在对基于扫描的故障运行卷诊断的能力方面仍然存在瓶颈。

该公司运营产品管理总监Matt Knowles表示:“在这些先进节点的起步阶段,缺陷真的很高西门子EDA

挑战在于识别和修复这些缺陷。“整个目标是试图达到你的预期产量,然后进入量产,”Guy Cortez说,员工产品营销经理,硅生命周期管理,数字设计组Synopsys对此.“如果你的产量没有达到应有的水平,而你怀疑产品出了问题,你将如何解决这个问题?”你能多快解决这个问题?”

虽然产量一直很重要,但在芯片短缺困扰行业的今天,这一点尤其重要。“产能是如此稀缺,为了满足市场的承诺,从晶圆中挤出每一个好的晶圆芯片是很重要的,”Knowles说。“在这场全球供应链和芯片危机中,这至关重要。”

EDA和测试工具有助于缩小根本原因候选的范围,但注意力仍然集中在收集数据和评估不同的候选,以便集中于物理故障分析。

基于扫描的故障的起源
集成电路测试有许多组件,但其中突出的一个是使用扫描链用于实现确定性逻辑测试。与自检(自检是算法)相比,扫描测试提供了一种提交特定测试向量的方法,以确保内部逻辑正常工作。

因为这些向量可能非常大,所以它们被压缩以存储在测试器中。一旦它们被测试人员传递到设备上,它们就会被内部解压并执行。由于内部节点的数量,不可能将它们全部路由到输出,因此产生的向量再次被压缩成一个签名并发送到测试输出,以与预期的签名进行比较。

图1:内部扫描链的输入模式被解压缩。结果被重新压缩成输出签名。来源:Synopsys对此

图1:内部扫描链的输入模式被解压缩。结果被重新压缩成输出签名。来源:Synopsys对此

因此,这在很大程度上充当了通过/失败测试的角色,因为在压缩中经常会丢失失败的细节。这些天,可能会有更多的结果来帮助识别特定的故障,尽管影响仍然可能令人困惑。

一旦开始批量生产,就需要记录和评估故障,以确定哪些故障对提高产量最关键。这通常可以使用帕累托图来确定优先级。

当基于扫描的故障上升到帕累托图的顶部时,就迫切需要分析大量故障数据,以确定消除这些故障机制所需的更改。

“你需要从许多设备中获取大量数据,因为你经常要调试的不仅仅是自己的最新设计。你也在调试过程,”微软的产品经理迈克尔·布劳恩(Michael Braun)说效果显著

这个过程并不是只在出现问题时才使用的。随着早期过程的培养,它需要成为一种生活方式。诺尔斯说:“体积诊断包括常规采样,你不仅可以用它来进行恐慌,还可以随着时间的推移定期跟踪这些机制。”

与成熟的工艺或设备相比,早期的升级还需要更多的工程参与。智能制造产品经理Eli Roth指出:“诊断和修复早期设备故障需要设计工程能力Teradyne.“有分析和学习工具可以查看大量数据,并告诉我们存在系统性问题。然后你能否建立一个流程,在学习的基础上,这些就是我接下来要做的事情。”

分析过程
诊断基于扫描的大容量故障有四个主要阶段:

•在设备失效后从测试仪中提取信息;
•运行自动化软件工具来缩小可能的根本原因候选人;
•进一步分析以确定一个或两个最可能的原因;而且,
•物理故障分析,确认已知故障设备的故障。

图2:诊断流程红色项目是潜在的瓶颈;橙色是自动化的,与计算有关。来源:Bryon Moyer/Semiconductor Engineering(其中一个元素来自Advantest)

图2:诊断流程红色项目是潜在的瓶颈;橙色是自动化的,与计算有关。来源:Bryon Moyer/Semiconductor Engineering(其中一个元素来自Advantest)

在进行物理故障分析之前,只考虑可能的原因。只有通过物理确认才能确定根本原因。但是这种物理分析过程非常耗时,而且需要昂贵的设备。理想情况下,只提交一个候选人进行验证。如果做不到这一点,就必须把候选人的范围缩小到尽可能少的程度。

这给之前有效和准确地确定最佳候选人的步骤带来了很大的负担。这些阶段中的每一个都包含潜在的瓶颈,可以加以改进以加快整个过程。

从测试人员获取数据
如果一个设备失败了,就会有两个相互竞争的努力。一方面,需要最大化测试吞吐量,这意味着应该尽快弹出故障设备,以便测试新设备。从生产度量的角度来看,在故障发生之后,将探针保持在故障芯片上是没有价值的。

与此相竞争的是需要收集额外的数据来了解故障。至少,已经收集到的数据需要下载到某个宝库中,以便稍后进行离线分析。所有这些都需要时间——如果做得不仔细,时间可能会影响生产指标。

“将故障周期从硬件返回到数据日志中的性能与测试应用程序的其他性能一样重要,”Advantest的Braun指出。

测试公司已经密切关注这种紧张关系,并且在很大程度上,他们已经能够平衡这两种需求。

对于新进程,在第一个失败周期后停止测试是不够的。必须运行额外的循环。这对于理解任何逻辑故障和确认扫描链本身正常工作都是必要的。

“对于逻辑和链式诊断,第一个故障周期不会告诉你太多,”Braun说。“它给了你一个粗略的概念,但对诊断来说还远远不够。你通常需要的是至少一次完全卸载扫描链。”

对于不处于上升阶段的成熟流程节点,情况有所不同。在这种情况下,通常不需要捕获初始失败向量之外的多个周期。“第一个失败周期足以让你感觉到,有一些事情系统地频繁重复,”Advantest平台扩展经理克劳斯-迪特尔·希利吉斯(Klaus-Dieter Hiliges)说。“然后你可以研究细节,但除此之外,没有必要进行一般的诊断。”

因为需要运行额外的周期,所以下载可能会在它们的阴影下发生。

Braun解释说:“这些失败周期的收集是在后台自动完成的,同时应用测试刺激,并与预期数据进行比较。”在运行模式之前,您需要设置一些配置,以告诉硬件以哪种模式获取页面。所以从硬件上获取数据不需要花费任何成本,除非你在收集故障周期的数量上做得太过分了。但人们通常会尽量避免这种情况,因为否则你最终会得到巨大的日志文件,以后很难处理。”

这可以通过小心地将向量集划分为块来实现。他说:“你把扫描图案切成5、6或10块,就像图案的爆发一样,然后执行第一个。”“当你执行第二个时,你在后台上传第一个的失败,并将它们发送到数据日志中。”

重点是简单地将数据从设备中获取到工作站上。任何进一步的操作都可以在时间允许的情况下进行。“对数据的任何处理,比如将其写入标准STDF格式,是工作站上优先级较低的任务,只要有时间就会发生,”布劳恩说。

多站点测试
当使用多站点测试器时,下载可能会被进一步隐藏。所有站点的测试都是同步进行的,因此当一个站点失败时,不能立即弹出并用新设备替换。在启动一组新设备之前,所有站点都必须完成它们的测试。如果在一些设备故障后,性能良好的设备需要进行更多的测试,那么在其余设备完成测试时,就有时间下载数据。

站点的数量会产生影响。“根据经验,如果你并行测试一个或两个设备,比如一个很大的AI芯片,或者GPU, NPU,这并不重要。想收集多少就收集多少,”布劳恩说。“如果你使用更高的站点计数,比如移动设备,你想要确保你设置了一个合理的故障循环记录数量的限制,因为从硬件传输非常快,但不是无限的。”

虽然多个站点倾向于并行运行它们的程序,但重要的是,故障设备在不中断正在运行的设备的情况下下载它们的数据,或者强制从它们下载数据。Teradyne的Roth表示:“如果你有一个10个站点的测试器,而站点2出现故障,你不会想在所有10个设备上都进行深度诊断。“你只想在2号站点上找。”

随着诊断需要越来越多的数据,这些限制可能会在未来被打破。希利格斯说:“随着我们从一代过渡到下一代,我们不断提高在不产生任何影响的情况下可以捕获多少的限制。”

可能需要收集额外数据的一种情况是,压缩的故障数据对于故障发生的位置不明确。可能还需要做更多的工作来理清结果。

布劳恩说:“有了这些压缩结构,你就可以进行一些诊断。”“对于其他设备,这取决于配置。你可能需要切换到旁路模式和菊花链所有这些内部扫描链,以形成一个超长的链,以获得更好的诊断分辨率。”

或者,特殊的诊断向量可以用来梳理出更好的数据。但这些模式必须提前生成,并在有空间时存储起来。“如果您预先生成了特殊的诊断模式,那么在测试执行期间,您只需选择要运行的特殊诊断模式,”他说。“我们考虑过在运行时生成额外的诊断模式,但这需要太多的计算能力。”

在某些情况下,工程师可能需要使用测试人员来确认或进一步详细说明失败。这可能更具破坏性,因为整个测试人员需要脱机进行工程工作。对于工程师来说,很难获得将宝贵的生产系统用于非生产工作的许可——即使它最终有助于生产。

Roth说:“如果你想要诊断,你就必须有更多关于故障的数据。”“这意味着测试更多的故障部件,这可能意味着更多的测试时间或成本。专家出现了,他随时都可以,他处理了所有的数据,但他必须获得资源——这是一个后勤挑战。”

解决这个问题的方法之一是创建一个数字双威化饼的。他补充说:“然后,你只需花时间增强你的数字双胞胎能力,这样,那些专家正在做的洞察、推断和能力,以及所有事情,都是在双胞胎上,而不是在实际资产上。”

识别可能的原因
给定适当的故障数据,EDA和其他测试工具可以自动获取故障信息,并向上推“影响锥”,以确定故障可能发生的几种可能方式。

布劳恩说:“这些工具会给出一份嫌疑人名单和概率。”“根据经验,输入的数据越多,概率就越高。但有一个门槛,超过这个门槛,你就无法获得更高的分辨率。”

然而,我们通常没有做到这一点。Knowles说:“业内人士表示,我们需要这些工具的分辨率越来越高。“这意味着嫌疑人数量减少,模糊性降低。”

这些工具已经存在了一段时间,但它们仍然需要时间,并且提出了不同的方法来加速这一过程。

在今年的ITC上,来自国立台湾大学[1]的一个团队提出了一种方法,不用分析每一个故障设备,而是可以使用统计方法来生成一个“虚拟”设备,以代表该组设备。

部分原因是每次故障都有一些与具体故障无关的特征——实际上就是测试噪声。所以如果画出来,它们不会互相叠在一起。相反,它们看起来更像一个集群。确定该集群的“质心”将有助于抹掉不相关的特征,并允许对单个质心进行分析,而不是对集群中的所有设备进行分析,从而节省宝贵的时间。

华为[2]的另一个团队提出使用神经网络对故障进行分类。特性工程将涉及故障特性和报告特性,允许直接摄取报告,并识别潜在的根本原因。虽然这可以补充,甚至取代目前的一些统计方法,但它也可以在下一阶段使用。

缩小可能的原因
前一个阶段涉及到相当多的自动化,但下一个阶段更多是人工操作。在这里,前一阶段确定的候选人被进一步缩小-理想情况下是一个最有可能的候选人。

这一过程的具体运作方式将取决于候选人的提名。它通常需要专家的工程分析,这需要一些时间。

这也是一个改进测试集的机会。“现代工具可以在这些故障文件上运行诊断,然后,基于该故障,它们可以迭代自动生成测试模式(ATPG)工具,使模式更特定于这种类型的模式,”诺尔斯说。

向内部测试逻辑添加额外的功能也会有所帮助。“我们有一种叫做‘可逆扫描链’的技术,”他说。“不只是从一边发送模式,从另一边发送模式,有一种方法可以让矢量以相反的方向输入和输出,这样你就可以确切地知道缺陷来自链条的哪里。这极大地提高了分辨率。”

重复的故障机制可能使进一步的分析变得不必要。Knowles进一步指出:“在某些情况下,他们可以查看由诊断创建的帕累托,并决定根本不做故障分析,因为他们认识到了缺陷。”“他们以前在人群中见过这种情况,他们知道根本原因是什么。”

这一切都导致了物理故障分析
物理分析一直是一个费力的过程,需要对芯片进行精细的解构,以提供故障的视觉确认。虽然工具在过去的几十年里已经得到了改进,但它们仍然需要大量的投资和熟练的技术人员和工程师来产生和评估结果。

每个候选人都需要大量的体力劳动来确认。“这可能是一套价值2000万美元的设备被使用了好几天,”诺尔斯观察到。

因此,候选人不仅必须具体说明可疑的原因,而且还必须说明问题可能出现在骰子上的位置。Cortez说:“如果你要带一些候选人进行故障分析,你要确保你给出了故障分析团队需要切割硅的高度准确的位置。“为了获得更准确的位置,我们可以采用一些其他类型的数据,如内联缺陷数据或验收测试数据。如果你把这两者结合起来(找到合适的区域和合适的候选人),希望可以减少整个努力。”

正是因为这个原因,我们非常强调改善和加快前面的步骤。在缩小候选产品范围方面的巨大改进可以与物理分析方面的逐步改进一起工作,从而比现在更快地提高新产品的产量。只要新工艺具有较高的启动缺陷,就将优先考虑更快地消除系统故障。

参考文献

1.“用测试失败聚类和重组改进批量诊断和调试”,吴木廷等,南洋理工大学,高通,ITC 2021
2.“基于自适应神经网络的产量诊断根本原因分析”,黄欣等,华为,ITC 2021



留下回复


(注:此名称将公开显示)

Baidu