We present a new clock-control DFT technique for sequential circuits, based on clock partitioning and selective clock freezing, and we use it to break the global feedback loops and to generate clock waves to test the resulting sequential circuit with self-loops. Clock waves allow us to significantly reduce the complexity of sequential ATPG. Unlike scan, our non-intrusive DFT technique does not introduce any delay penalty; the generated tests may be applied at speed, have shorter application time, and dissipate less power.Automatic test-pattern generation (ATPG) for sequential circuits is an extremely expensive computational process, so that ATPG algorithms working on complex circuits can spend many hours of CPU time and still obtain poor results in terms of fault coverage. Because of the difficulty of the sequential ATPG problem, the electronics industry has given up the idea that complex circuits can be tested without intrusive design for testability (DFT) techniques, such as scan design. However, scan-type DFT introduces delay penalties resulting in performance degradation, and scan tests require long test application times, increase the power consumption, and are difficult to run at-speed. Because many defects create delay faults, at-speed testing has become essential in achieving good defect coverage.
Main ContributionsIn this paper, we introduce a new clock-control DFT technique based on clock partitioning and selective clock freezing. In a sequential circuit, a feedback loop may be local or global. A local loop includes only one flip-flop (FF) and is also called a self-loop; any loop with two or more FFs is called global. A pipeline is a loop-free (acyclic) sequential circuit. First we use clock control to temporarily freeze a subset of FFs to break all global loops; this creates a near-acyclic circuit where every FF is either feedback-free or has a self-loop; we will refer to such a circuit as a loopy pipe, since it has a pipeline structure if we ignore the self-loops. Because loopy pipes do not have global feedback, they are structurally simpler than sequential circuits with both local and global feedback. Many partial-scan design methods, starting with [6], scan FFs to break all global feedback, so that the resulting partial-scan circuit is a loopy pipe. However, sequential ATPG for a loopy pipe can still be difficult. In fact, counters, which are notoriously difficult for sequential ATPG, are often implemented by loopy pipes.A major contribution of the paper is using clock control to generate clock waves. A clock wave is a novel clocking scheme that allows a loopy pipe to be tested as a pipeline. We describe modeling techniques for loopy pipes tested with clock waves to allow combinational ATPG techniques to be used. We present a new sequential ATPG algorithm, called WAVEXPRESS, that detects most faults in a sequential circuit using combinational techniques, which are at least one order of magnitude faster than sequential ones.Our DFT technique, called CLOCKWAVE, does not introduce any delay penalty, ha...