Content deleted Content added
remove personification |
LouScheffer (talk | contribs) →Basics of ATPG: Added discussion of why ATPG may fail |
||
Line 2:
== Basics of ATPG ==
A fault model is a hypothesis of how the circuit may go wrong in the manufacturing process. A fault is said to be ''detected'' by a test pattern if, when applying the pattern to the circuit, different logic values can be observed, in at least one of the circuit's primary outputs, between the original circuit and the faulty circuit. ATPG for a given target fault consists of two phases: ''Fault activation'' and ''Fault propagation''. Fault activation establishes a signal value at the fault site opposite that produced by the fault. Fault propagation propagates the fault effect forward by sensitizing a path from the fault site to a primary output.
ATPG can fail to find a test for a particular fault in at least two cases. First, the fault may be intrinsically undetectable, so no vectors exist that can detect that particular fault. The classic example of this is a redundant circuit, designed so that no single fault causes the output to change. In such a circuit, any single fault will be inherently undetectable.
Second, it is possible that a vector(s) exist, but the algorithm cannot find it. Since the ATPG problem is [[NP-complete]] (by reduction from the [[boolean satisfiability problem]]) there will be cases where vectors exist, but ATPG will take an impossibly long time to find them (assuming [[Complexity classes P and NP|P≠NP]], of course).
== The ''Stuck-at'' fault model ==
|