Detecting Silent Data Corruptions in Aerospace-Based Computing Using Program Invariants

Soft error caused by single event upset has been a severe challenge to aerospace-based computing. Silent data corruption (SDC) is one of the results incurred by soft error. SDC occurs when a program generates erroneous output with no indications. SDC is the most insidious type of results and very di...

Full description

Saved in:
Bibliographic Details
Main Authors: Junchi Ma, Dengyun Yu, Yun Wang, Zhenbo Cai, Qingxiang Zhang, Cheng Hu
Format: Article
Language:English
Published: Wiley 2016-01-01
Series:International Journal of Aerospace Engineering
Online Access:http://dx.doi.org/10.1155/2016/8213638
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1832558014347870208
author Junchi Ma
Dengyun Yu
Yun Wang
Zhenbo Cai
Qingxiang Zhang
Cheng Hu
author_facet Junchi Ma
Dengyun Yu
Yun Wang
Zhenbo Cai
Qingxiang Zhang
Cheng Hu
author_sort Junchi Ma
collection DOAJ
description Soft error caused by single event upset has been a severe challenge to aerospace-based computing. Silent data corruption (SDC) is one of the results incurred by soft error. SDC occurs when a program generates erroneous output with no indications. SDC is the most insidious type of results and very difficult to detect. To address this problem, we design and implement an invariant-based system called Radish. Invariants describe certain properties of a program; for example, the value of a variable equals a constant. Radish first extracts invariants at key program points and converts invariants into assertions. It then hardens the program by inserting the assertions into the source code. When a soft error occurs, assertions will be found to be false at run time and warn the users of soft error. To increase the coverage of SDC, we further propose an extension of Radish, named Radish_D, which applies software-based instruction duplication mechanism to protect the uncovered code sections. Experiments using architectural fault injections show that Radish achieves high SDC coverage with very low overhead. Furthermore, Radish_D provides higher SDC coverage than that of either Radish or pure instruction duplication.
format Article
id doaj-art-14a9b15955574566b4ce5821e6c00560
institution Kabale University
issn 1687-5966
1687-5974
language English
publishDate 2016-01-01
publisher Wiley
record_format Article
series International Journal of Aerospace Engineering
spelling doaj-art-14a9b15955574566b4ce5821e6c005602025-02-03T01:33:19ZengWileyInternational Journal of Aerospace Engineering1687-59661687-59742016-01-01201610.1155/2016/82136388213638Detecting Silent Data Corruptions in Aerospace-Based Computing Using Program InvariantsJunchi Ma0Dengyun Yu1Yun Wang2Zhenbo Cai3Qingxiang Zhang4Cheng Hu5School of Computer Science & Engineering, Southeast University, Nanjing 211189, ChinaBeijing Institute of Spacecraft System Engineering, Beijing 100094, ChinaSchool of Computer Science & Engineering, Southeast University, Nanjing 211189, ChinaBeijing Institute of Spacecraft System Engineering, Beijing 100094, ChinaBeijing Institute of Spacecraft System Engineering, Beijing 100094, ChinaSchool of Computer Science & Engineering, Southeast University, Nanjing 211189, ChinaSoft error caused by single event upset has been a severe challenge to aerospace-based computing. Silent data corruption (SDC) is one of the results incurred by soft error. SDC occurs when a program generates erroneous output with no indications. SDC is the most insidious type of results and very difficult to detect. To address this problem, we design and implement an invariant-based system called Radish. Invariants describe certain properties of a program; for example, the value of a variable equals a constant. Radish first extracts invariants at key program points and converts invariants into assertions. It then hardens the program by inserting the assertions into the source code. When a soft error occurs, assertions will be found to be false at run time and warn the users of soft error. To increase the coverage of SDC, we further propose an extension of Radish, named Radish_D, which applies software-based instruction duplication mechanism to protect the uncovered code sections. Experiments using architectural fault injections show that Radish achieves high SDC coverage with very low overhead. Furthermore, Radish_D provides higher SDC coverage than that of either Radish or pure instruction duplication.http://dx.doi.org/10.1155/2016/8213638
spellingShingle Junchi Ma
Dengyun Yu
Yun Wang
Zhenbo Cai
Qingxiang Zhang
Cheng Hu
Detecting Silent Data Corruptions in Aerospace-Based Computing Using Program Invariants
International Journal of Aerospace Engineering
title Detecting Silent Data Corruptions in Aerospace-Based Computing Using Program Invariants
title_full Detecting Silent Data Corruptions in Aerospace-Based Computing Using Program Invariants
title_fullStr Detecting Silent Data Corruptions in Aerospace-Based Computing Using Program Invariants
title_full_unstemmed Detecting Silent Data Corruptions in Aerospace-Based Computing Using Program Invariants
title_short Detecting Silent Data Corruptions in Aerospace-Based Computing Using Program Invariants
title_sort detecting silent data corruptions in aerospace based computing using program invariants
url http://dx.doi.org/10.1155/2016/8213638
work_keys_str_mv AT junchima detectingsilentdatacorruptionsinaerospacebasedcomputingusingprograminvariants
AT dengyunyu detectingsilentdatacorruptionsinaerospacebasedcomputingusingprograminvariants
AT yunwang detectingsilentdatacorruptionsinaerospacebasedcomputingusingprograminvariants
AT zhenbocai detectingsilentdatacorruptionsinaerospacebasedcomputingusingprograminvariants
AT qingxiangzhang detectingsilentdatacorruptionsinaerospacebasedcomputingusingprograminvariants
AT chenghu detectingsilentdatacorruptionsinaerospacebasedcomputingusingprograminvariants