Source code transformation for software-based on-line error detection

With the widespread deployment of ICs into safety-critical systems, ensuring in-field reliability for the expected IC life span becomes a serious challenge. One solution to improving reliability is software-based on-line error detection; the idea is to empower the application program to detect run-time errors which may be permanent, intermittent, or transient. In this paper, we propose a set of high-level source code transformation rules to facilitate software-based on-line error detection. Compared to previous works, the proposed source code transformation rules improve the coverage on flow control constructs and can handle structures as well as structure pointers. Experiments on singlebit error injection show that in average only 1.08% of faults that modify the program behavior are undetected.

[1]  Edward J. McCluskey,et al.  Control-flow checking by software signatures , 2002, IEEE Trans. Reliab..

[2]  Jacob A. Abraham,et al.  CEDA: Control-Flow Error Detection Using Assertions , 2011, IEEE Transactions on Computers.

[3]  David Lin,et al.  QED: Quick Error Detection tests for effective post-silicon validation , 2010, 2010 IEEE International Test Conference.

[4]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[5]  Masanori Hashimoto,et al.  Performance evaluation of software-based error detection mechanisms for localizing electrical timing failures under dynamic supply noise , 2015, 2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[6]  Marco Torchiano,et al.  Soft-error detection through software fault-tolerance techniques , 1999, Proceedings 1999 IEEE International Symposium on Defect and Fault Tolerance in VLSI Systems (EFT'99).

[7]  Karthik Pattabiraman,et al.  LLFI: An Intermediate Code-Level Fault Injection Tool for Hardware Faults , 2015, 2015 IEEE International Conference on Software Quality, Reliability and Security.

[8]  Suku Nair,et al.  Design and Evaluation of System-Level Checks for On-Line Control Flow Error Detection , 1999, IEEE Trans. Parallel Distributed Syst..

[9]  Bogdan Nicolescu,et al.  Detecting Soft Errors by a Purely Software Approach: Method, Tools and Experimental Results , 2003, DATE.

[10]  Massimo Violante,et al.  Soft-error detection using control flow assertions , 2003, Proceedings 18th IEEE Symposium on Defect and Fault Tolerance in VLSI Systems.