"系统级测试 (SLT) 供应了一个大容量环境,您可以在个中一起测试硬件和软件,并创造在小批量工程测试中可能不会创造的设计缺点。"SLT 系统架构师 Peter Reichert 说。
虽然SoC 上的测试设计 (DFT)根本举动步伐用于以尽可能短的测试周期供应测试向量,但重点转移到由 CPU 上的软件实行的测试。这与终极测试后的新系统级测试插入非常吻合。IC 的测试总是涉及到奇妙的平衡。一方面,出厂产品的质量须要很高,以最大限度地减少退货并最大限度地提高客户满意度。另一方面,必须尽可能降落测试本钱。
这常日意味着对实行某些测试的位置进行一些计策性改组。传统上,有三个插入点——在晶圆验收测试 (WAT)离开晶圆厂之前;在晶片分类时,切割晶片前;在终极测试中,设备封装后。

故障率高的测试应尽早进行——靠近晶圆分类——以确保不会花费额外的钱来制造将被丢弃的部件。但也可能有机会以最低本钱插入实行高产测试,由于报废设备的可能性很低。
对付 SoC——或任何可以实行软件的设备——额外的 SLT 插入正在得到动力。SLT 在系统环境中测试芯片,个中包括运行以软件实现的测试并在芯片的 CPU 上运行的能力。"由于工艺节点的缩小,工程师们看到了更高的毛病率,"Teradyne 的 SLT 营销总监 Paul Klonowski 说。此外,"随着更高功能的设备变得越来越小,封装变得更加繁芜。你从晶圆测试中逃脱,你从封装测试中逃脱。你想捉住那些利用系统级测试的人。"
矢量与软件逻辑芯片测试涉及两种类型的测试,功能测试和参数测试,它们丈量电流和电压等内容。为了最大限度地降落测试本钱,利用芯片内的专用硬件实行功能测试。这种 DFT 根本举动步伐许可将测试向量直接应用于内部电路。在芯片被适当地计时后,结果被发送到输出进行评估。
为了保持硅本钱低,输入向量和输出结果被扫描。结果不是直接输出,而是被压缩成一个署名,可以与预期的署名进行比较,以确定通过/失落败。
传统基于扫描的测试利用独立于紧张功能架构的内置测试设计 (DFT) 根本举动步伐
目的是将尽可能多的测试打包到尽可能少的向量中。这种效率许可在尽可能短的韶光内实现更高的测试覆盖率,从而使测试本钱保持在范围内。然而,须要把稳的主要点是,这种测试与芯片在系统中的运行办法不同。多个块在功能上可能永久不会同时利用,可以同时测试以减少向量的数量。从目标系统的角度来看,测试模式将设备置于不自然的状态——以至于测试期间的功率曲线可能远远高于所谓的“任务模式”中的功率曲线。
通过在 CPU 上实行的软件进行的驱动测试使设备保持在自然状态,但它没有扫描矢量的效率和测试密度。但是,它确实许可测试特定用例——特殊是涉及 SoC 多个模块交互的极度情形。
软件驱动的测试源于加载到 CPU 中的程序
天生软件定义的功能测试基于矢量测试的天生利用了几十年来不断发展的技能。它利用电路内特定点的刺激和不雅观察,扫描链许可直接访问这些点。因此,传统向量天生涉及为每个点识别激活所需状态所需的内容,然后确定所需的输出该当是什么。然后努力组合尽可能多的向量以减少总计数,减少测试韶光。
软件驱动测试是不同的。CPU 无法像扫描链那样直接访问内部电路,因此与确认特定电路是否正常事情无关。它更多地是关于练习真实天下的场景,以确认芯片总体上按预期运行。可能会选择这些场景,由于估量它们会给芯片带来更多压力。或者目的可能是在极度电压或温度情形下运行测试,以确保芯片在这些条件下按预期事情。
这意味着,一样平常来说,SoC 设计团队须要决定实行哪些测试以及如何实行这些测试。实际上,一些软件测试可能会在芯片构建之前在芯片验证期间运行,常日用于仿真期间。
与在位或向量级别运行的低级测试不同,这些测试在 C 措辞级别运行,并针对 SoC 中的 CPU 进行编译。"软件驱动的测试常日比在 ATE 中更随意马虎创建,由于它涉及您在现场设备中看到的标准操作步骤,"Klonowski 说。"有硬件初始化、内存演习、启动操作系统、将设备置于就寝和低功耗模式、实行高负载操作以及检讨基准。但实际上是在像在运用程序中一样操作设备,然后针对它们运行这些不同的操作测试。"
便携式测试和勉励标准(PSS) 供应了一种天生测试的方法,该测试可以移植到任何验证节点、芯片启动测试或大批量商业测试。PSS 有助于促进重复利用。Cadence产品管理组总监 Moshik Rubin表示,一些测试可以跨多个目标平台重复利用,例如仿照或仿真。"天生的测试可以很随意马虎地移植到硅后和制造测试中。"他说。但这种重复利用在本日可能不像现在那么普遍。Synopsys的科学家 Filip Thoen 说:“我见过在硅前验证方面进行定向测试或集成软件测试的团队。 ” “你会看到人们为硅唤醒进行硅后测试。我见过团队开拓人工测试套件来对芯片施加压力以优化良率。稍后,您仍旧须要为您的开拓板开拓软件,或者您可能会开拓诊断程序。而且所有这些频谱都没有重复利用,这是一种巨大的摧残浪费蹂躏。”
例如,在仿真期间完成的 SoC 软件测试可以重新用于 SLT。"您加载到仿照器中的内容可能与终极软件不完备相同,"Thoen 说。"您必须自定义 [用于仿真与测试] 的是驱动程序,它们设置了外部环境。"
获取测试结果虽然测试的重点是软件,但为了得到测试结果和检讨芯片特性以进行诊断,仍可能须要一些硬件考虑。仅仅凭借“没有出错”这一事实,就很随意马虎认为软件定义的测试通过了。但是更范例的测试会探求一些特定的结果,并且须要将结果通报到某个地方的输出。
一些这样的测试可能自然会在输出引脚上显示结果(例如,可能是内存端口上涌现的内存地址)。但常日情形可能并非如此,因此须要一些其他方法来产生内部结果。供应更多输出细节的一种方法是利用芯片内部的扫描链构造。这表明处于这种紧张功能模式的芯片与测试模式之间存在一些相互浸染。
Advantest平台扩展经理 Klaus-Dieter Hilliges 阐明说:"如果我将软件加载到处理器上,软件就会运行,然后我会得到一个通过/失落败结果。 " "我只是跑了一个黑匣子。我很难让它发挥浸染,由于我对正在发生的事情险些没有可不雅观察性。我们必须能够吸收不雅观察功能测试实行的跟踪信息。如果您去 Cadence、Breker 或其他自动天生此类功能测试用例的 EDA 公司,您可以在实行测试时看到发生了什么。"
此外,当代工艺节点上的许多芯片还包含传感器和监视器。如果发生故障,这些电路可能会供应有关故障发生条件的宝贵线索。因此,出于诊断目的,还该当有一种方法可以获取这些传感器旗子暗记并将其与结果一起发送出去。
"有一个 DFT 接口,如 JTAG,我可以访问一个传感器集线器,我可以读取它来获取这个或那个信息,"Hilliges 指出。"这些传感器常日可以通过嵌入式软件访问。如果我运行功能测试,那么它可以读取内部接口。"
只管如此,利用软件驱动的测试来量化您正在测试的内容更加困难。"这是 SLT 的巨大寻衅。没有很好的方法来评估您的故障覆盖率,"Reichert 说。
软件定义测试的输出可能会被路由回 DFT 根本举动步伐
系统级测试软件驱动测试的重点是关注系统中可能发生的场景。在传统的终极测试插入之后,在一些繁芜的芯片上实行了一种更新类型的测试。这种 SLT 插入在与用于晶圆分类或终极测试的测试仪完备不同的测试仪上运行。"测试板常日非常类似于将在现场看到的运用板或终极用场板,"Klonowski 说。"你实际上是在测试设备,由于它会在现场运行。"
泰瑞达的 Reichert 赞许了。"这是真正的功能模式,而不是测试模式。芯片上的热模式、时钟噪声或电源噪声等成分在测试模式与实际操作中会有所不同。这是一个办理芯片中其他故障的机会,而这些故障在正常的构造 ATE 测试中可能不会涌现。"
在某种程度上,SLT 已经存在了一段韶光。但在过去,SLT 是利用处理较小体积的小型测试仪完成的,并且没有足够的可用空间来容纳大量测试所需的测试仪数量。
Advantest 技能和计策副总裁 Keith Schaub 说:"在数量急剧增加并且 SKU 数量急剧增加之前,这种方法一贯有效。” “但硅工艺节点急剧缩小,这使得热成为一个更大的问题,并使 SLT 变得更加主要。因此,现在我们须要真正具有 HVM(大批量制造)生产代价的产品。"
低本钱测试虽然这些测试仪可能比标准测试仪更昂贵,但它们也可以并走运行数百个站点。与终极测试不同的是,一些 SLT 测试职员可以在每个站点上独立运行测试,或者“异步”——而不是同步运行。因此,如果设备涌现故障,理论上可以将其弹出并改换为新设备进行测试,而无需等待其“群组”中的所有其他设备完成测试。乃至可以同时在两个不同的芯片上运行测试,划分它们之间的站点。
然而,每个单独的站点可能不是完备独立的。测试职员有带有一些站点的板或盒子。这些板作为一个单元插入和移除。这些站点仍旧自走运行测试,但板上的所有站点同时启动。如果一个早期失落败,它必须等到全体电路板完成才能移除。但这比必须等待数百个单元完成的限定要少。
根据测试的进行办法,这种独立的特性许可为每个设备供应更灵巧的流程。"异步测试站点许可在线时容错和修复,"Klonowski 指出。异步测试,再加上大量的站点,使得这种插入本钱更低。虽然晶圆分类和终极测试只管即便减少每微秒的测试韶光,但 SLT 测试可能会运行几分钟。"系统中有数百个站点,您可以降落每个站点的总体本钱,从而延长测试韶光,"Klonowski 说。
与早期的测试插入不同,SLT 常日不明确利用扫描测试根本举动步伐——至少从实行向量的角度来看。运行在 CPU 上实行的测试要自然得多,而软件定义的测试非常适宜这种描述。出于报告目的,内部测试和传感器根本举动步伐可能仍旧存在一些联系,但启动测试的是 CPU。
如有必要,如果测试仪支持,仍旧可以运行标准向量。"可以配备 SLT 测试仪来运行扫描,"Klonowski 说。"事实上,考虑到较低的每秒测试本钱和 SLT 系统供应的高并行度,基于 SerDes 的扫描是最有可能移植到 SLT 的 ATE 测试候选之一。配备 SLT 测试仪以运行扫描须要特定于扫描的硬件和仪器。"
须要强调的是,只管有 SLT 名称,但这并不是对实际系统的测试。这是在芯片交付用于构建系统之前在系统环境中对芯片的测试。它是芯片制造流程的一部分,而不是系统制造流程。
何时实行软件驱动测试虽然额外的测试插入常日被视为增加本钱,但添加潜在本钱更低的 SLT 插入可能有助于降落总体测试本钱。矢量测试可以在晶圆分类或终极测试中运行,因此软件定义的测试彷佛可以在这些插入和 SLT 中运行。那么运行它们的精确位置是什么?
首先,这有一个实际的方面。软件定义的测试须要访问内存,这在用于晶圆分类的标准探针卡上常日不可用,尤其是多站点探针卡。"假设您购买了一些内存芯片,并试图弄清楚如何将其靠近 ASIC,"Schaub 阐明说。"你打算怎么做?客户考试测验过,但没有成功。"当您不处理全体晶圆时,这样做会更随意马虎。"他们已经想出了如何让它在终极测试中发挥浸染,"他补充道。
撇开测试根本举动步伐不谈,产量预期或履历可以帮助确定该当在哪里运行不同的测试。"如果我创造一个高失落败率的测试,可以的话,我想把这个测试转为晶圆测试,"Klonowski 说。"如果这是一个非常高产的测试,我想考试测验在系统级测试中进行,由于这是我每个站点测试本钱最低的地方。"
随着产品的成熟,测试可能会在插入之间来回移动以优化产量和本钱。但这便是公司可以从将矢量转换为软件的大略方法中受益的地方,反之亦然,因此可以轻松地移动这些测试。"如果您确实创造这些软件测试失落败,您希望能够快速将它们转化为向量,以将其从 SLT 推回终极测试。"Schaub 说。
左边是 Advantest 的版本;泰瑞达在右边
SLT 用户SLT 插入并不适宜所有芯片。在质量至关主要的市场中,它每每被用于面向系统的芯片。"终极用户提出了更高的质量哀求,这导致人们说,'通过 SLT,我会创造在标准 ATE 中找不到的故障,'"Klonowski 说。
在测试期间的外部环境很主要的情形下尤其如此。在 SLT 期间,温度和电压可以在每个站点的根本上进行掌握,因此这是一种确保芯片在所有条件下都能正常运行的低本钱办法。特殊是三个市场对 SLT 有需求——智好手机、汽车和高性能打算。他们这样做是出于不同的缘故原由并驱动不同的测试条件。
手机芯片常日会在室温下进行测试。插入这些大容量芯片的目的是确保最高质量,以最大限度地减少设备退货。汽车芯片哀求更高,并利用自动温度掌握。它们须要在 -40°C 到 150°C 的温度范围内进行测试,以确保芯片能够在安全关键系统中经受住这些极度环境。
此外,高强度打算芯片制造商最关心的是确保他们的芯片在测试期间不会过热。因此,测试地点不是逼迫实行特定温度,而是供应足够的冷却以将温度保持在 125°C 以下。常日不须要冷测试,由于芯片一旦启动就会迅速自热。
芯片现在是系统随着繁芜的 SoC 的涌现,为大量运行的运用程序供应动力并且故障本钱很高,因此在实际条件下以系统模式测试芯片是故意义的。SoC 中的第一个词当然是“系统”,这使得它们本身便是系统。
软件驱动的功能测试和 SLT 供应了确保这些繁芜芯片以高可信度交付的方法,并确保它们能够在一些更大的系统中成功完成其任务。
#晶圆##芯片#