ATPG表示自动测试向量生成。测试向量是在制造测试过程期间,用来确定芯片功能是否正常的一系列1和0值。当在ATE上应用测试向量时,通过比较无缺陷输出(也包含在测试向量中)和实际输出,确定电路是否存在制造缺陷。
The ATPG Process
ATPG的目的是创建一系列向量来实现给定的测试覆盖率。
ATPG由两步组成:1)生成向量,2)执行故障仿真来确定向量检测到哪些故障。ATPG产生的测试向量可以以ATE指定的格式保存。
两种最典型的产生向量的方法是任意和确定性向量生成。除此之外,ATPG工具能够仿真来自外部集的故障仿真向量,将其放入测试集中检测故障。
Random Pattern Test Generation
ATPG工具产生大量的随机向量,仅识别检测到故障的这些向量,然后在测试向量集中只保存这些向量。
被用在随机向量测试生成中的故障仿真不能取代确定性测试生成,因为随机生成的向量不能识别冗余故障;也不能为检测性非常低的故障创建测试向量。但是,随机向量生成可用于确定性测试生成终止的可测试故障(什么意识?),在初始时,使用少量随机向量可以提高ATPG性能。
Deterministic Pattern Test Generation
在意图检测给定故障时,ATPG工具使用确定测试生成创建测试向量。从故障列表中选择故障,故障仿真向量,核查确保向量检测到故障。
更具体地说,工具给控制点分配一系列值,使故障状态与无故障状态相反,因此可以检查到故障和无故障值得差异。工具必须找到一个方式传播这是差异到一个点,在该点出能够观察故障效应。为了满足这些条件,必须创建测试向量,测试生成过程会决定想要放在门上最好的值。如果存在冲突阻止这些值放在门上,工具会尝试找到成功的测试向量。
如果工具排除了所有可能的选择,没有找到成功的测试向量,必须在划分故障之前进行进一步分析。故障要求这些分析包括冗余,ATPG-不可测,可能检测到的不可测类别。通过生成确定性测试向量来识别故障类型并且实现高测试覆盖率是很重要的。例如,如果工具证明一个故障冗余,然后可能会被标为为不可测。否则,将被划分为潜在可检测故障,当计算覆盖率时当作未测试故障。
External Pattern Test Generation
当ATPG的初步来源是预先存在的一组外部向量时,ATPG工具使用外部向量测试生成。
工具分析这些外部向量集,来确定哪些向量从有效故障列表中检测故障,然后将这些有效向量放入内部测试向量集中。