Title :
Fine-grained timing and control flow error checking for hard real-time task execution
Author :
Wolf, Julian ; Fechner, Bernhard ; Uhrig, S. ; Ungerer, Theo
Author_Institution :
Univ. of Augsburg, Augsburg, Germany
Abstract :
Robustness and reliability are essential requirements of today´s embedded systems. Especially errors in the control flow of a program, e.g. caused by transient errors, may lead to a faulty system behavior potentially with catastrophic consequences. Several methods for control flow checking have been proposed during the last decades. However, these techniques mostly focus on a correct sequence of application parts but not on the correct timing behavior of the control flow, which is essential for hard real-time systems. In this paper, we present a new approach which introduces fine-grained on-line timing checks for hard real-time systems combined with a lightweight control flow monitoring technique. The proposed approach is a hybrid hardware-software technique: We instrument the application code at compile-time by adding checkpoints, which contain temporal and logical information of the control flow. During run-time, a small hardware check unit connected to the core reads the instrumented data in order to verify the correctness of the application´s control flow and timing behavior. The finegrained functionality of our mechanism allows a detection of many transient errors, associated with very low detection latency. It is no longer necessary to redundantly execute code in order to monitor anomalies. The hardware overhead is limited to a small check unit (only 0.5 % of chip space compared to the processor core); according to experimental results, the execution time overhead is only 10.6 % in the average case while the memory overhead is 12.3 %.
Keywords :
checkpointing; data flow analysis; embedded systems; program compilers; software fault tolerance; application code; catastrophic consequences; compile-time; control flow checking; control flow error checking; detection latency; embedded systems; faulty system behavior; fine-grained online timing checks; fine-grained timing error checking; finegrained functionality; hard real-time systems; hard real-time task execution; hardware check unit; hardware overhead; hybrid hardware-software technique; instrumented data; lightweight control flow monitoring technique; logical information; monitor anomaly; processor core; program control flow; reliability; robustness; temporal information; transient errors; Hardware; Instruments; Monitoring; Real-time systems; Reliability; Software; Timing; Control flow checking; embedded processors; fault detection; hard real-time; reliability;
Conference_Titel :
Industrial Embedded Systems (SIES), 2012 7th IEEE International Symposium on
Conference_Location :
Karlsruhe
Print_ISBN :
978-1-4673-2685-8
Electronic_ISBN :
978-1-4673-2683-4
DOI :
10.1109/SIES.2012.6356592