DFT affects and depends on the methods used for test development, test application, and diagnostics. Most tool-supported DFT practiced in the industry today, at least for digital circuits, is predicated on a
Structural test paradigm. Structural test makes no direct attempt to determine if the overall functionality of the circuit is correct. Instead, it tries to make sure that the circuit has been assembled correctly from some low-level building blocks as specified in a structural
netlist. For example, are all specified
logic gates present, operating correctly, and connected correctly? The stipulation is that if the netlist is correct and structural testing has confirmed the correct assembly of the circuit elements, then the circuit should be functioning correctly. Note that this is very different from
functional testing, which attempts to validate that the circuit under test functions according to its
functional specification. This is closely related to the
functional verification problem of determining if the circuit specified by the netlist meets the functional specifications, assuming it is built correctly. One benefit of the Structural paradigm is that test generation can focus on testing a limited number of relatively simple circuit elements rather than having to deal with an exponentially exploding multiplicity of functional
states and state transitions. While the task of testing a single logic gate at a time sounds simple, there is an obstacle to overcome. For today's highly complex designs, most gates are deeply embedded whereas the test equipment is only connected to the primary
Input/outputs (I/Os) and/or some
physical test points. The embedded gates, hence, must be manipulated through intervening layers of logic. If the intervening logic contains state elements, then the issue of an exponentially exploding
state space and state transition sequencing creates an
unsolvable problem for test generation. To simplify test generation, DFT addresses the accessibility problem by removing the need for complicated state transition sequences when trying to control and/or observe what's happening at some internal circuit element. Depending on the DFT choices made during circuit design/implementation, the generation of Structural tests for complex logic circuits can be more or less
automated or self-automated. One key objective of DFT methodologies, hence, is to allow designers to make trade-offs between the amount and type of DFT and the cost/benefit (time, effort, quality) of the test generation task. Another benefit is to diagnose a circuit in case any problem emerges in the future. It is like adding some features or provisions in the design so that devices can be tested in case of any fault during its use. == Looking forward ==