SPP 1500 - Dependable Embedded Systems


Future embedded systems will be based on semiconductor devices featuring smaller structure sizes as well as reduced operating voltages. These reductions will lead to an increase in the number of transient errors (so-called single-event upsets or SEUs) in memory devices as well as logic components.

This implies a serious dilemma for every embedded systems developer – to correct these errors, additional amounts of the scarce resources processing power, memory and energy are required. When real-time behavior is mandatory, correcting every single error makes it extremely hard to ensure timing properties of a system.

In order to increase the predictability of such a system, a different approach to handling errors is needed. In fact, some types of errors, like a flipped bit in video RAM, can safely be ignored in some applications, the processing of certain other errors may be delayed in order to adhere to given real-time constraints, whereas some errors have to be handled immediately.

We propose a software-based approach to a more flexible error handling and correction system. The system will use application knowledge to control error handling according to the current context of program execution and timing constraints. This is achieved by a combination of compiler-driven transformations and adaptive error handling routines in an embedded operating system. Additionally, the processing power of multicore systems can be employed for more efficient approaches to correct or accept SEUs. Based on a hierarchy of memories with different grades of reliability, the system will also permit allocation of such memory resources according to application requirements.

To demonstrate the developed flexible error handling approach, we use the following system prototype:

Demonstration Hardware

A TK71 is used to execute the application. Video output is handled by the graphic card connected via PCIe. To inject faults into the TK71 board we use a micro controller. More information on the fault injection can be found here.

This research is fully funded by the Deutsche Forschungs Gesellschaft (DFG, German Reseach Foundation) as a part of the Schwerpunkt Programm 1500 (SPP1500, Priority Programme 1500)