DFT必知必学系列:EDA工具中的ATPG算法介绍
随着现代科技的快速发展,数字集成电路的应用日益广泛,其测试问题的重要性也随之提升。数字集成电路设计、生产与应用过程中的每一个环节都离不开测试,因此,研究数字集成电路测试生成方法在科技迅速发展的时代具有重要意义。在测试方法不断发展的背景下,各种测试方法被提出,本文将介绍几种基本算法,以了解测试向量生成的过程。
在数字电路测试领域,测试向量自动生成(ATPG)占有核心地位,其不仅影响产品的生产设计成本,更是评价产品可靠性的关键环节。ATPG算法的选择直接影响测试向量的生成效率及故障覆盖率。在本文中,我们将探讨几种基本的ATPG算法。
首先,随机测试生成算法是一种常用的测试向量生成方法。该算法通过随机选择测试向量来覆盖电路的输入输出空间。在电路中存在大量难以检测的故障时,随机测试生成在测试生成开始时具有较高的效率。然而,为了减少测试数量,依据电路中故障的复杂性,随机测试生成技术会设定选择标准或引导测试向量形成,以找到合适的测试集。通常,随机测试生成能检测出60%-80%的故障,剩余的故障则通过面向故障的测试生成法(确定性算法)进行检测。
接着,我们来介绍确定性测试生成算法,其中D算法是其典型代表。D算法通过给定与故障值相反的测试向量来激活故障,同时利用1/0和0/1表示正常值和故障值。故障激活、传播、合理化与回溯是D算法的核心步骤。通过这些步骤,可以检测到特定类型的故障,例如在L1处的SA0故障。测试向量通常为abcde=110X1,其中X表示不确定的输入值。
为了改进D算法,PODEM算法应运而生。PODEM算法在D算法的基础上进行了优化,通过改进输入端组合搜索、减少回溯次数及降低每次回溯时间,从而提高了测试向量生成的效率。此外,PODEM算法还对扇出点进行了细致处理,进一步提升了故障覆盖率。
为了加速测试向量生成,1983年H. Fujiwara提出了FAN算法。FAN算法基于PODEM算法,通过优化组合电路的输入搜索过程,减少回溯次数,并降低每次回溯的时间。FAN算法对扇出点进行了细致处理,其计算速度快于PODEM算法,不仅回溯次数减少,而且故障覆盖率更高,丰富和发展了测试生成算法的基本思想。
1987年,SOCRATES算法的提出是对FAN算法的进一步改进。SOCRATES算法将组合电路的测试生成问题描述为对判定树的搜索过程,支持加法器、多路选择器等高级RTL组件,并通过控制的概念解释唯一敏化现象,使得算法在故障传播时能够赋予更多确定值。SOCRATES算法扩展了多路回溯策略,提高了测试生成的灵活性和效率。
从最早的D算法到现代的SOCRATES算法,这些算法不断改进和完善,为ATPG过程提供了更高、更快和更准确的覆盖率,有效地提升了数字集成电路的测试效率与质量。
在数字电路测试领域,测试向量自动生成(ATPG)占有核心地位,其不仅影响产品的生产设计成本,更是评价产品可靠性的关键环节。ATPG算法的选择直接影响测试向量的生成效率及故障覆盖率。在本文中,我们将探讨几种基本的ATPG算法。
首先,随机测试生成算法是一种常用的测试向量生成方法。该算法通过随机选择测试向量来覆盖电路的输入输出空间。在电路中存在大量难以检测的故障时,随机测试生成在测试生成开始时具有较高的效率。然而,为了减少测试数量,依据电路中故障的复杂性,随机测试生成技术会设定选择标准或引导测试向量形成,以找到合适的测试集。通常,随机测试生成能检测出60%-80%的故障,剩余的故障则通过面向故障的测试生成法(确定性算法)进行检测。
接着,我们来介绍确定性测试生成算法,其中D算法是其典型代表。D算法通过给定与故障值相反的测试向量来激活故障,同时利用1/0和0/1表示正常值和故障值。故障激活、传播、合理化与回溯是D算法的核心步骤。通过这些步骤,可以检测到特定类型的故障,例如在L1处的SA0故障。测试向量通常为abcde=110X1,其中X表示不确定的输入值。
为了改进D算法,PODEM算法应运而生。PODEM算法在D算法的基础上进行了优化,通过改进输入端组合搜索、减少回溯次数及降低每次回溯时间,从而提高了测试向量生成的效率。此外,PODEM算法还对扇出点进行了细致处理,进一步提升了故障覆盖率。
为了加速测试向量生成,1983年H. Fujiwara提出了FAN算法。FAN算法基于PODEM算法,通过优化组合电路的输入搜索过程,减少回溯次数,并降低每次回溯的时间。FAN算法对扇出点进行了细致处理,其计算速度快于PODEM算法,不仅回溯次数减少,而且故障覆盖率更高,丰富和发展了测试生成算法的基本思想。
1987年,SOCRATES算法的提出是对FAN算法的进一步改进。SOCRATES算法将组合电路的测试生成问题描述为对判定树的搜索过程,支持加法器、多路选择器等高级RTL组件,并通过控制的概念解释唯一敏化现象,使得算法在故障传播时能够赋予更多确定值。SOCRATES算法扩展了多路回溯策略,提高了测试生成的灵活性和效率。
从最早的D算法到现代的SOCRATES算法,这些算法不断改进和完善,为ATPG过程提供了更高、更快和更准确的覆盖率,有效地提升了数字集成电路的测试效率与质量。