Microcontroller Compiler-Assisted Software Fault Tolerance

被引:24
|
作者
Bohman, Matthew [1 ,2 ]
James, Benjamin [1 ,2 ]
Wirthlin, Michael J. [1 ,2 ]
Quinn, Heather [3 ]
Goeders, Jeffrey [1 ,2 ]
机构
[1] Brigham Young Univ, Dept Elect & Comp Engn, Provo, UT 84602 USA
[2] NSF Ctr Space High Performance & Resilient Comp, Provo, UT 84602 USA
[3] Los Alamos Natl Lab, ISR 3 Space Data Syst, Los Alamos, NM 87545 USA
基金
美国国家科学基金会;
关键词
Silent data corruption (SDC); single-event upset (SEU); soft errors; software fault tolerance;
D O I
10.1109/TNS.2018.2886094
中图分类号
TM [电工技术]; TN [电子技术、通信技术];
学科分类号
0808 ; 0809 ;
摘要
Commercial off-the-shelf microcontrollers can be useful for noncritical processing on spaceborne platforms. These microprocessors can be inexpensive and consume small amounts of power. However, the software running on these processors is vulnerable to radiation upsets. In this paper, we present a fully automated, configurable, software-based tool to increase the reliability of microprocessors in high-radiation environments. This tool consists of a set of open-source LLVM compiler passes to automatically implement software-based mitigation techniques. We duplicate or triplicate computations and insert voting mechanisms into software during the compilation process, allowing for runtime error correction. While the techniques we implement are not novel, previous work has typically been closed source, processor architecture dependent, not automated, and not tested in real high-radiation environments. In contrast, the compiler passes presented in this paper are publicly available, highly customizable, and are platform independent and language independent. We have tested our modified software using both fault injection and through neutron beam radiation on a Texas Instruments MSP430 microcontroller. When tested by a neutron beam, we were able to decrease the cross section of programs by 17-29x, increasing mean-work-to-failure by 4-7x.
引用
收藏
页码:223 / 232
页数:10
相关论文
共 50 条
  • [1] COMPAS: Compiler-assisted Software-implemented Hardware Fault Tolerance for RISC-V
    Sharif, Uzair
    Mueller-Gritschneder, Daniel
    Schlichtmann, Ulf
    2022 11TH MEDITERRANEAN CONFERENCE ON EMBEDDED COMPUTING (MECO), 2022, : 80 - 83
  • [2] Compiler-assisted software DSM on a WAN cluster
    Niwa, J
    PARALLEL AND DISTRIBUTED COMPUTING: APPLICATIONS AND TECHNOLOGIES, PROCEEDINGS, 2004, 3320 : 815 - 828
  • [3] Compiler-Assisted Loop Hardening Against Fault Attacks
    Proy, Julien
    Heydemann, Karine
    Berzati, Alexandre
    Cohen, Albert
    ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2017, 14 (04)
  • [4] Compiler-Assisted Test Acceleration on GPUs for Embedded Software
    Yaneva, Vanya
    Rajan, Ajitha
    Dubach, Christophe
    PROCEEDINGS OF THE 26TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS (ISSTA'17), 2017, : 35 - 45
  • [5] Compiler-Assisted Selection of a Software Transactional Memory System
    Schindewolf, Martin
    Esselson, Alexander
    Karl, Wolfgang
    ARCHITECTURE OF COMPUTING SYSTEMS - ARCS 2011, 2011, 6566 : 147 - 157
  • [6] Processor Energy Characterization for Compiler-Assisted Software Energy Reduction
    Gauthier, Lovic
    Ishihara, Tohru
    JOURNAL OF ELECTRICAL AND COMPUTER ENGINEERING, 2012, 2012
  • [7] Evaluation of compiler-assisted software DSM schemes for a workstation cluster
    Niwa, J
    Inagaki, T
    Matsumoto, T
    Hiraki, K
    INNOVATIVE ARCHITECTURE FOR FUTURE GENERATION HIGH-PERFORMANCE PROCESSORS AND SYSTEMS, 2000, : 57 - 68
  • [8] COMPILER-ASSISTED FULL CHECKPOINTING
    LI, CCJ
    STEWART, EM
    FUCHS, WK
    SOFTWARE-PRACTICE & EXPERIENCE, 1994, 24 (10): : 871 - 886
  • [9] Compiler-assisted performance tuning
    Chen, Chun
    Chame, Jacqueline
    Nelson, Yoonju Lee
    Diniz, Pedro
    Hall, Mary
    Lucas, Robert
    SCIDAC 2007: SCIENTIFIC DISCOVERY THROUGH ADVANCED COMPUTING, 2007, 78
  • [10] Compiler-assisted Code Randomization
    Koo, Hyungjoon
    Chen, Yaohui
    Lu, Long
    Kemerlis, Vasileios P.
    Polychronakis, Michalis
    2018 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP), 2018, : 461 - 477