如果您在半导体行业(或对产品进行大量测试的任何行业)工作,那么减少测试时间是降低制造运营成本的主要组成部分。半导体测试时间非常昂贵,并且预计还会增加,从而在半导体器件的总制造成本中占据很大一部分。减少测试时间将转化为大量节省,特别是对于大批量和复杂的产品。
虽然有专门的软件可以完成此任务,但我想演示如何使用可通过两个示例文件提供的自定义测试时间优化插件在 JMP 中执行此任务。插件允许用户将 JMP 开箱即用的功能扩展到自定义应用程序中。这是通过 JMP 脚本完成的,您可以使用它创建任何类型的自定义功能。我鼓励您下载并安装该插件并亲自尝试使用 JMP。

此插件需要两组数据:.jmp 数据表格式的运行错误 (ROE) 测试数据和测试时间数据。需要运行错误,以便优化器插件可以确定哪些测试具有重叠的测试覆盖范围,并将其与测试时间相结合来确定最佳测试顺序。此优化不适用于故障停止测试数据。本博客所附的 .jmp 文件是 ROE 和测试时间数据表所需的格式示例(注意: ROE 数据需要具有值 1 表示测试失败,0 表示测试通过,并且每一行都是不同的被测试单元)。

从 JMP 的插件菜单运行插件后,它将提示您指定测试数据文件所在的路径。从那里您将指定包含运行错误测试结果的 .jmp 文件和包含每个测试的测试时间的 .jmp 文件。单击“确定”将生成以下报告。

该报告在顶部指定了完整测试时间(运行完整测试流程的时间)和优化测试时间(运行最佳流程的时间)以及减少时间。在此示例中,完整测试流程需要 300 秒,最佳流程需要 143 秒,导致测试时间减少 52%。根据所提供的 ROE 数据,报告的测试时间减少不会导致任何测试逃逸,因此 52% 的减少不会对运送给客户的产品质量产生影响。
这些图表总结了最佳测试流程的数据。左上角的图表在 x 轴上显示最佳流程顺序以及流程的累积测试时间和累积失败百分比。该加载项将找到每秒失败率最高的测试,并在流程中优先考虑该测试。该过程将持续进行,直到 100% 的所有故障单元均得到解决。在这个例子中,完整流程中有 58 个测试,最优流程已减少到图中所示的 28 个测试(您也可以参考由插件创建的数据表“optimal_test_order.jmp”)保存到指定路径)。由于测试经常具有重叠的测试覆盖范围,因此通常可以删除相关测试而不影响质量;通过按故障/秒指标对测试进行排序,您可以在生产故障停止测试期间更快地捕获故障。
如果希望进一步减少超出最佳流量的测试时间,则可以使用右上方视觉效果中显示的曲线。该曲线将测试覆盖率与测试时间联系起来,并显示进一步减少测试时间将影响多少测试覆盖率。请注意,超出最佳流程的任何进一步的测试减少都会因测试逃逸而导致一些质量影响。因此,在此示例中,如果我们要删除测试 18、测试 11 和测试 33,我们将进一步将测试时间从 143 秒减少到 127 秒,但对质量的影响将是 99.5% 的测试覆盖率(或测试的 0.5%)单位转义)而不是 100% 测试覆盖率。为了确定这种权衡,您必须评估额外 16 秒测试时间节省的资金与 0.5% 测试逃逸率相关的成本。
我要感谢@HydeMiller在开发该插件时提供的巨大帮助。
如果您有疑问,请在博客文章中发表评论或通过电子邮件与我联系 ( mark.zwald@jmp.com )。