EC4810 Fault-Tolerant Computing

Introduction to fault-tolerant computing. The causes and effects of computer, digital system, and software failure. The fundamental concepts and techniques for the design and implementation of fault-tolerant computers, testing digital systems, and software. Modeling, simulation, and evaluation of fault-tolerant systems. Military and space applications of fault-tolerant computing.

Prerequisite

EC3840 or EC3800

Lecture Hours

3

Lab Hours

2

Course Learning Outcomes

·       The student will be able to explain the difference between faults, errors, and failures.

·       The student will understand the basic failure mechanisms for CMOS and BiCMOS digital integrated circuits.

·       The student will be able to explain the basic fault models for digital logic circuits.

·       The student will be able to use software tools, such as SPICE and Verilog, to model and simulate the behavior of faulty digital circuits and digital systems.

·       The student will be able to explain fault detection and location techniques for digital systems.

·       The student will understand the fundamentals of design for testability, built-in self-test, and the IEEE JTAG standard.

·       The student will be able to explain the fundamentals of hardware, information, and time redundancy.

·       The student will be knowledgeable of redundancy techniques, and their application to computer and digital systems hardware, to achieve fault tolerance.

·       The student will be knowledgeable about software failure mechanisms.

·       The student will be knowledgeable about software design techniques used to avoid software faults.

·       The student will be knowledgeable about software testing and verification techniques.

·       The student will be aware of the limitations of software diversity.