Files in this item



application/pdf8721662.pdf (5MB)Restricted to U of Illinois
(no description provided)PDF


Title:Design of Systems With Concurrent Error Detection Using Software Redundancy
Author(s):Hua, Kien Anh
Department / Program:Electrical Engineering
Discipline:Electrical Engineering
Degree Granting Institution:University of Illinois at Urbana-Champaign
Subject(s):Computer Science
Abstract:Self-checking programming is a system level concurrent error detection technique. This approach achieves error detection by introducing software redundancy in the form of executable assertion into the program to check the correct operation of the system during its execution. Both hardware and software faults that affect the specified behavior of the program therefore can be detected.
This thesis deals with a theoretical and experimental study of the scheme of self-checking programming. It addresses three issues. First, it deals with the design issues of self-checking programs. Two approaches are presented. The first approach derives the assertions from the text of the program design based on a set of formal transformation rules. The second approach employs data encoding schemes in which the program is designed to process information encoded in some error detecting code, and error detection is performed by observing the program coded output. Examples are given to illustrate the application of these techniques.
The second part deals with the development of a technique which can be used to analyze the error coverage of the proposed concurrent error detection scheme. The technique is essentially a fault simulation method. Simulated faults are introduced into the program at various levels (target programming language level or assembly language level) to produce mutant programs. These mutants are then executed to measure the ability of the set of assertions to distinguish the program from its mutants. This strategy is used in the experiments to study the effectiveness of five sample self-checking programs that include a navigation program of about 1000 lines of code. The results show that self-checking programming is an inexpensive and effective approach to provide concurrent error detection.
The automation issues are addressed in the last part of the thesis. The application of automated reasoning techniques to the problem of self-checking program design is discussed. A knowledge base is employed to support the understanding of the program design. The knowledge that includes programming knowledge and domain knowledge is presented in clause form in the Knowledge Base. A program design is also stored internally as clauses, and the assertions are derived by applying logic resolution and demodulation to these clauses.
Issue Date:1987
Description:125 p.
Thesis (Ph.D.)--University of Illinois at Urbana-Champaign, 1987.
Other Identifier(s):(UMI)AAI8721662
Date Available in IDEALS:2014-12-15
Date Deposited:1987

This item appears in the following Collection(s)

Item Statistics