Partitioning circuits for improved testability

Exhaustive self-testing of combinational circuitry within the framework of the level-sensitive scan design (LSSD) discipline requires that every output node depend on a small number of input nodes. We present here efficient algorithms that take an arbitrary block of combinational logic and add to it the smallest number of bits of new LSSD registers necessary to: (1) partition the logic so that no output depends on more thank inputs, and (2) maintain timing within the block (so that all input-to-output paths encounter the same number of bits of register). Our partitioning algorithms conform to two different design constraints. We also show that the unconstrained partitioning problem is NP-complete.

[1]  Charles E. Leiserson,et al.  Optimizing Synchronous Circuitry by Retiming (Preliminary Version) , 1983 .

[2]  Charles E. Leiserson,et al.  Optimizing synchronous systems , 1981, 22nd Annual Symposium on Foundations of Computer Science (sfcs 1981).

[3]  F. Lemmermeyer Error-correcting Codes , 2005 .

[4]  Thomas W. Williams,et al.  A logic design structure for LSI testability , 1977, DAC '77.

[5]  Edward J. McCluskey,et al.  Design for Autonomous Test , 1981, IEEE Transactions on Computers.

[6]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[7]  J. Mucha,et al.  Built-In Test for Complex Digital Integrated Circuits , 1979, Fifth European Solid State Circuits Conference - ESSCIRC 79.

[8]  Donald T. Tang,et al.  Iterative Exhaustive Pattern Generation for Logic Testing , 1984, IBM J. Res. Dev..

[9]  Donald T. Tang,et al.  Exhaustive Test Pattern Generation with Constant Weight Vectors , 1983, IEEE Transactions on Computers.

[10]  J. Lawrence Carter,et al.  The theory of signature testing for VLSI , 1982, STOC '82.

[11]  René David,et al.  Testing by Feedback Shift Register , 1980, IEEE Transactions on Computers.

[12]  Arnold L. Rosenberg,et al.  Exhaustive Generation of Bit Patterns with Applications to VLSI Self-Testing , 1983, IEEE Transactions on Computers.

[13]  W. W. Peterson,et al.  Error-Correcting Codes. , 1962 .