Fault tolerant nanoelectronic processor architectures

In this paper we propose a fault-tolerant processor architecture and an associated fault-tolerant computation model capable of fault tolerance in the nanoelectronic environment that is characterized by high and time varying fault rates. The proposed fault tolerant processor architecture not only guarantees the correctness of computation but also is flexible in that it dynamically trades-off computation resources and performance. The core of the architecture is a decentralized instruction control unit called the voter that achieves both fault tolerance and the maximum parallel execution of instructions by exploiting the abundant computational resources provided by nanotechnologies. Although the result of each instruction needs to be confirmed by executing it on multiple computation units, multiple unconfirmed instructions can proceed as speculative branches. The voter implements a hardware-frugal computation unit allocation algorithm to organize the redundant computations and to dynamically control the growth of speculative branches.

[1]  Gregory S. Snider,et al.  A Defect-Tolerant Computer Architecture: Opportunities for Nanotechnology , 1998 .

[2]  Yu. G. Krieger Molecular electronics: Current state and future trends , 1993 .

[3]  Dhiraj K. Pradhan,et al.  Roll-Forward Checkpointing Scheme: A Novel Fault-Tolerant Architecture , 1994, IEEE Trans. Computers.

[4]  M. Forshaw,et al.  Architectures for reliable computing with unreliable nanodevices , 2001, Proceedings of the 2001 1st IEEE Conference on Nanotechnology. IEEE-NANO 2001 (Cat. No.01EX516).

[5]  Seth Copen Goldstein,et al.  Reconfigurable computing and electronic nanotechnology , 2003, Proceedings IEEE International Conference on Application-Specific Systems, Architectures, and Processors. ASAP 2003.

[6]  M. Sipper,et al.  Toward robust integrated circuits: The embryonics approach , 2000, Proceedings of the IEEE.

[7]  Jie Han,et al.  A system architecture solution for unreliable nanoelectronic devices , 2002 .

[8]  J. von Neumann,et al.  Probabilistic Logic and the Synthesis of Reliable Organisms from Unreliable Components , 1956 .

[9]  J. Christopher Love,et al.  Technologies and Designs for Electronic Nanocomputers , 1995 .

[10]  Füsun Özgüner,et al.  Enhanced Cluster k-Ary n-Cube, A Fault-Tolerant Multiprocessor , 2003, IEEE Trans. Computers.

[11]  Todd M. Austin,et al.  DIVA: a reliable substrate for deep submicron microarchitecture design , 1999, MICRO-32. Proceedings of the 32nd Annual ACM/IEEE International Symposium on Microarchitecture.

[12]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[13]  Paul Beckett,et al.  Towards nanocomputer architecture , 2002 .

[14]  Seth Copen Goldstein,et al.  NanoFabrics: spatial computing using molecular electronics , 2001, Proceedings 28th Annual International Symposium on Computer Architecture.

[15]  Irith Pomeranz,et al.  Transient-Fault Recovery for Chip Multiprocessors , 2003, IEEE Micro.

[16]  Pinaki Mazumder,et al.  Digital circuit applications of resonant tunneling devices , 1998, Proc. IEEE.

[17]  Wolfgang Porod,et al.  Quantum cellular automata , 1994 .