Abstract
Self-checking circuits detect (at least some of) their own faults. We describe self-timed circuits, including combinational logic and sequential machines, which either halt or generate illegal output if they include any single stuck-at faults. The self-timed circuits employ dual rail data encoding to implement ternary logic of 0, 1, andundefined states; the fourth state is used to signal illegal output and is shown to result only from certain circuit faults. The self-timed circuits also employ four-phase signaling according to a well-defined protocol of communications between the circuit and its environment; failures due to certain faults prevent the circuit from communicating properly, thus causing the circuit to halt. We show that any single stuck-at fault falls in either the first or the second category, thus providing complete fault coverage through self checking. No hardware needs to be added to our circuits to achieve the complete self-checking property; further, the circuit is guaranteed to never generate a legal but erroneous output if it contains a fault. Minimal hardware is needed to detect that a circuit has either halted or has generated an illegal output.
Similar content being viewed by others
References
A.J. Martin, “Programming in VLSI: From communicating processes to delay-insensitive circuits,” in “UT Year of Programming Inst. on Concurrent Programming,” C.A.R. Hoare (ed.), Addison-Wesley, 1989.
C.E. Molnar, T.P. Fan, and F.U. Rosenberger, “Synthesis of Delay-Insensitive Modules,”Journal of Distributed Computing, Vol. 1, pp. 226–234, 1985.
C.L. Seitz, “System Timing,” in C. Mead and L. Conway,Introduction to VLSI Systems, Addison-Wesley, pp. 218–262, 1980.
J.C. Ebergen, “Translating Programs into Delay-Insensitive Circuits,” Ph.D. Thesis, Eindhoven University of Technology, 1987.
I. David, R. Ginosar, and M. Yoeli, “An Efficient Implementation of Boolean Functions as Self-Timed Circuits,”IEEE Trans. on Computers, pp. 2–11, January 1992.
I. David, R. Ginosar, and M. Yoeli, “Implementing Sequential Machines as Self-Timed Circuits,”IEEE Trans. on Computers, pp. 12–17, January 1992.
D.S. Ha and S.M. Reddy, “On Testable Self-timed Logic Circuits,”Proceedings of the IEEE International Conference on Computer Design: VLSI in Computers ICCD'84, pp. 296–301, 1984.
G. Carson and G. Borriello, “A testable CMOS asynchronous counter,”Technical Report, Computer Science Dept., University of Washington, Seattle, March 1990.
M. Marouf and A.D. Friedman, “Efficient Design of Self Checking Checkers for Any m-out-of-n Code,”IEEE Trans. Computers, Vol. C-27, No. 6, pp. 482–490, June 1978.
M. Nicolaidis, “Evaluation of a Self-Checking Version of the MC68000 Microprocessor,”Microprocessing and Microprogramming, Vol. 20, pp. 235–247, 1987.
I. David, R. Ginosar, and M. Yoeli, “Self-Timed Architecture of a Reduced Instruction Set Computer,”Asynchronous Design Methodologies, IFIP Transactions A-28, pp. 29–43, March 1993.
I. David, R. Ginosar, and M. Yoeli, “Self-Timed is Self-Checking,”Technical Report No 758, Dept. Elect. Eng., Technion, Nov. 1990.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
David, I., Ginosar, R. & Yoeli, M. Self-timed is self-checking. J Electron Test 6, 219–228 (1995). https://doi.org/10.1007/BF00993088
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF00993088