posted on 2014-12-15, 10:37authored byRoyan H. L. Ong
Embedded systems now have a key role in many safety-critical products, including automotive, aerospace and medical systems. Program-flow errors in such systems are thought to arise from environmental factors, such as electromagnetic interference. Such errors can severely disrupt the system behaviour with potentially devastating consequences. This thesis is concerned with techniques which are feasible for cost-conscious, mass-production, systems that can assist in the detection and - where possible - the correction of program-flow errors in embedded systems.;The thesis makes four important contributions. First, a detailed, quantitative assessment is carried out on 'NOP Fill' and 'Function Token'. These software-based techniques are intended to reduce the impact of program-flow errors. The studies presented here are the first to rigorously assess and compare their effectiveness.;The focus of the work described here is on program-flow errors that result from corruption of the Program Counter. The second contribution made by this thesis is to develop and describe a detailed model showing the impact of PC corruption on program-flow.;The third contribution is the development of integrated hardware-based techniques that assist the detection and/or correction of program-flow errors. The fourth combination made by this thesis is the development of a novel mechanism to prevent register changes that might otherwise occur as a result of program-flow errors.