COMPAS: Compiler-assisted Software-implemented Hardware Fault Tolerance for RISC-V

Safety-critical systems have to ensure safe operation in the face of random hardware errors. To meet these re-silience requirements in embedded systems, Software Implemented Hardware Fault Tolerance (SIHFT) methods offer an attractive solution. Though SIHFT research is mature, porting such methods to a specific processor architecture poses a challenge. In this paper, we present our open-source COMPAS compiler framework that realizes state-of-the-art SIHFT error-detection approaches targeting RISC- V processors. SIHFT transformations for major instruction classes such as loads, stores, branches etc. are described in terms of RISC- V code. Furthermore, we perform RTL fault injection analysis to accurately quantify soft error resilience of RISC- V programs. The results demonstrate enhanced resilience of RISC-V software equipped with COMPAS transformations, in line with earlier SIHFT works.

[1]  Ulf Schlichtmann,et al.  REPAIR: Control Flow Protection based on Register Pairing Updates for SW-Implemented HW Fault Tolerance , 2021, ACM Trans. Embed. Comput. Syst..

[2]  Aviral Shrivastava,et al.  Control Flow Checking or Not? (for Soft Errors) , 2019, ACM Trans. Embed. Comput. Syst..

[3]  Aviral Shrivastava,et al.  nZDC: A compiler technique for near Zero Silent Data Corruption , 2016, 2016 53nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[4]  Edward J. McCluskey,et al.  Error detection by duplicated instructions in super-scalar processors , 2002, IEEE Trans. Reliab..

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