Reliability Analysis of the LEON3 Memory Subsystem Under Single-Event Upsets: Cache, AHB Interface, and Memory Controller Vulnerability
Abstract
1. Introduction
2. Related Work
3. Architectural Overview of Cache and MCTRL in the Standard LEON3 Processor
3.1. Cache Subsystem
- Tag arrays: store physical address tags for hit/miss determination;
- Data arrays: hold fetched instructions (I-cache) or data words (D-cache);
- Metadata and control logic: including valid bits (both caches), dirty bits (D-cache only), replacement state, and finite-state machines (FSMs) that orchestrate operations such as line fill, flush, write-back, and hit handling.
- I-cache: 93 bits targeting tag storage, valid bits, and control FSMs (e.g., istate, flush logic, hit path);
- D-cache: 293 bits covering data/tag arrays, dirty bits, write-back buffer registers, and D-cache FSMs (e.g., dstate, mexc, TLB interaction logic);
- AHB control interface: 16 bits focused on critical AHB protocol signals, including byte-order (bo), write indication (hwrite), transfer type (htrans), burst mode, and lock status.
3.2. Memory Controller: MCTRL
- Bus-width adaptation (ramwidth, romwidth, iowidth) for 8-, 16-, and 32-bit devices;
- Programmable wait-state insertion (ws, iows, romrws, ramrws) to accommodate slow peripherals;
- Memory region control (ioen, brdyen, bexcen) for I/O enablement, burst termination, and bus-error signaling;
- AHB protocol generation, including hready, hresp, hwrite, and byte-enable strobes (mben).
4. Methodology of Fault Injection: NETFI+
4.1. Target Architecture and NETFI+ Approach
- Cache subsystem campaign: 482,400 multi-cycle SEUs injected across 402 instrumented flip-flops spanning the I-cache, D-cache, and AHB control interface.
- MCTRL campaign: 248,400 multi-cycle SEUs injected across 207 instrumented flip-flops in the MCTRL block.
4.2. Experimental Setup
- 93 in the I-cache;
- 293 in the data cache (D-cache);
- 16 in the AHB control interface;
- 207 in the memory controller (MCTRL).
4.3. Benchmark and Simulation Environment
5. Fault Injection Campaign: Results and Analysis
5.1. Cache Subsystem Reliability Analysis
5.1.1. Instruction Cache Controller Error Rate Classification
5.1.2. Data Cache Controller
5.1.3. AHB Control Interface
5.2. Cache Subsystem Trap Analysis
5.2.1. Instruction Cache Controller Trap Analysis
- Illegal instruction (53.56%, 24.59% of the total FI), the most frequent outcome, arises when bit-flips produce non-decodable opcodes, causing the decode unit to raise an illegal instruction exception upon encountering syntactically invalid bit patterns, an immediate symptom of instruction-stream corruption.
- Privileged instruction (21.46%, 9.85% of the total FI) occurs when an SEU transforms a user-mode instruction into a syntactically valid supervisor opcode, triggering a privileged instruction trap due to privilege violation in the user mode, not from PSR corruption, but from corrupted instruction content.
- Window overflow (24.98%, 11.47% of the total FI), an indirect consequence of control-flow corruption, results when SEUs alter branch targets or mutate arithmetic instructions into save opcodes, causing unintended register-window spills that exhaust the architectural window depth and invoke a window overflow trap, despite no corruption of the WIM register.
5.2.2. Data Cache Controller Trap Analysis
- Illegal instruction (48.17%, 30.35% of total FI), an indirect cascade where corrupted load values (e.g., an invalid return address fetched from memory) are used as branch targets. If the target points to non-instruction data or an unmapped region, the fetched word becomes nonsensical, triggering an illegal instruction trap, thus destabilizing control flow via data-dependent addressing.
- Privileged instruction (44.68%, 28.15% of total FI), similarly indirect, arises when a corrupted load places a supervisor opcode into a general-purpose register later executed via a function pointer, or when a corrupted stack value causes a return to supervisor code while in the user mode; in both cases, the trap stems from data-driven control-flow hijacking, not PSR corruption.
- Window overflow (2.813%, 1.77% of total FI) results from corrupted loop counters or function arguments that alter save/restore behavior, for example, a flipped bit in a recursion counter may cause excessive save operations, exhausting register windows, a data-induced control anomaly.
- Memory address not aligned (4.336%, 2.73% of total FI), a direct structural failure caused by SEUs in byte-enable logic or address LSBs forcing misaligned accesses (e.g., 32-bit load from an odd address). Since SPARC mandates alignment, the RA stage raises a misaligned memory address trap, a direct consequence of address-path corruption.
5.2.3. AHB Control Interface Trap Analysis
- −
- Address muxing logic (haddr, bo);
- −
- Handshake control signals (hready, hresp);
- −
- Arbitration state (hgrant, bg);
- −
- Transfer control (htrans, hburst).
5.3. Memory Controller (MCTRL) Reliability Analysis
- A flipped bit in iows[2], reducing I/O wait states, and thus causing the core to sample unstable data from a peripheral;
- Corruption of ramwidth, forcing a 32-bit memory device into the 16-bit mode, splitting a single word into two half-word transfers;
- Alteration of byte-enable strobes (mben), leading to partial writes that overwrite adjacent fields.
- −
- Permanently deassert hready, stalling the entire pipeline (classified as timeout);
- −
- Generate spurious hresp = error, triggering a memory_access_exception;
- −
- Misroute transactions to unmapped regions, causing the fetched instruction word to be corrupted, which later manifests as an illegal_instruction trap in the Decode stage.
5.4. MCTRL-Induced Trap Manifestations
- Illegal instruction (32.00%, 24.07% of total FI), the most direct manifestation, arises when SEUs in MCTRL configuration fields, such as ramwidth, romrws, or ioen, corrupt instruction fetch transactions by misaligning word boundaries, truncating data, or sampling unstable memory outputs. The resulting garbage opcode is detected by the DE stage as syntactically invalid, triggering an illegal instruction trap, reflecting physical-layer corruption of the instruction stream, not core logic faulting.
- Window overflow (60.14%, 45.25% of total FI), the dominant indirect effect, is not caused by corruption of the %wim register (which resides in the CPU core), but by control-flow disruption stemming from a corrupted program state. In the MulMatrix benchmark, which features deep, regular loop nests, a single corrupted load can overwrite a return address with a value that induces unintended save instructions, or alter loop counters or function arguments, forcing excessive register-window spills. When the architectural window depth is exceeded, a window overflow trap is raised, and thus, MCTRL faults indirectly destabilize SPARC’s register-window mechanism through data-path poisoning, not control-register corruption.
- Privileged instruction (5.29%, 3.98% of total FI) occurs when corrupted data redirects execution into supervisor code while in the user mode. Examples include a corrupted function pointer (due to faulty I/O timing or bus-width misconfiguration), causing a jump to a privileged opcode, or a corrupted stack frame leading to premature return into a trap handler. Though infrequent, these cases demonstrate that MCTRL-induced errors can violate privilege boundaries via data-driven control hijacking.
- Memory address not aligned (2.57%, 1.94% of total FI) results from MCTRL faults in bus-width (busw) or transfer-size (hsize) logic that force incorrect byte-lane selection. Although the SPARC architecture enforces alignment in the Load/Store Unit, the root cause is physical-layer misconfiguration (e.g., treating a 32-bit device as 16-bit), leading to effective addresses that violate alignment constraints and trigger a memory address not aligned trap.
6. Comparative Vulnerability Analysis
6.1. Empirical Vulnerability Characterization
6.2. Comparative Context with Prior LEON3 Reliability Studies
6.3. Limitations and Workload Dependency
7. Implications for Targeted Hardening
8. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
Abbreviations
| µP | Microprocessor |
| AES | Advanced Encryption Standard |
| AHB | Advanced High-Speed Bus |
| ALU | Arithmetic Logic Unit |
| AMBA | Advanced Microcontroller Bus Architecture |
| APB | Advanced Peripheral Bus |
| ARM | Advanced RISC Machine |
| ASR | Address Space Register |
| BRAM | Block Random-Access Memory |
| BSORT | Bubble Sort |
| CEU | Code Emulating Unit |
| CFC | Control-Flow Monitoring |
| CFE | Control-Flow Error |
| CMOS | Complementary Metal-Oxide Semiconductor |
| COTS | Commercial Off-The-Shelf |
| CPU | Central Processing Unit |
| CRAM | Card Random-Access Memory |
| CRC32 | Cyclic Redundancy Check 32 |
| DBI | Dynamic Binary Instrumentation |
| DCA | Direct Cache Access |
| DED | Double Error Detection |
| DIV | Division |
| DSU | Debug Support Unit |
| DWC | Duplication-With-Comparison |
| ECC | Error Code Correction |
| EDAC | Error Detection And Correction |
| FI | Fault Injection |
| FF | Flip-Flop |
| FFT | Fast Fourier Transform |
| FPGA | Field-Programmable Gate Array |
| FPU | Floating-Point Unit |
| FSM | Finite-State Machines |
| FT | Fault-Tolerant |
| GCC | GNU Compiler Collection |
| HDL | Hardware Description Language |
| HW | Hardware |
| I/D | Instruction/Data |
| I/O | Input/Output |
| IEEE | Institute of Electrical and Electronics Engineers |
| IP | Intellectual Propriety |
| IR | Instruction Register |
| IRQ | Interruption ReQuest |
| ISA | Instruction Set Architecture |
| ISS | Instruction Set Simulator |
| IU | Integer Unit |
| IU3 | Integer Unit × 3 |
| JTAG | Joint Test Access Group |
| KB | Kilobyte |
| L1 | Level 1 |
| LD/ST | Load/Store |
| LRU | Least Recently Used |
| LUT | Look-Up Table |
| MBU | Multiple-Bit Upset |
| MCTRL | Memory Controller |
| MET | Multiple-Event Transient |
| MF | Maximum Flow |
| MiBench | Embedded Benchmarks |
| MMU | Memory Management Unit |
| MMULT | Matrix Multiplication (MulMatrix) |
| MODNET | MODify NETlist |
| MUL | Multiplication |
| NETFI | NETlist Fault Injection |
| OCD | On Chip Debugging |
| OK | Oll Korrect (all correct) |
| PC | Program Counter |
| PID | Proportional Integral Derivative |
| PROM | Programmable Read-Only Memory |
| PSR | Processor State Register |
| QSort | Quiqker Sort |
| RAM | Random-Access Memory |
| RISC | Reduced Instruction Set Computing |
| RLE | Run Length Encoding |
| ROM | Read-Only Memory |
| RTEMS | Real-Time Executive for Multiprocessor Systems |
| RTL | Register Transfer Level |
| SBST | Software-Based Self-Test |
| SBU | Single-Bit Upset |
| SDC | Silent Data Corruption |
| SDRAM | Synchronous Dynamic Random-Access Memory |
| SEC | Single-Error Correction |
| SER | Soft Error Rate |
| SET | Single-Event Transient |
| SEU | Single-Event Upset |
| SHA | Secure Hashing Algorithm |
| SoC | System-on-Chip |
| SPARC | Scalable Processor Architecture |
| SRAM | Synchronous Random-Access Memory |
| SW | Software |
| TCL | Tool Command Language |
| TLB | Translation Lookaside Buffer |
| TLM | Transaction-Level Modeling |
| TMR | Triple Modular Redundancy |
| UART | Universal Asynchronous Receiver Transmitter |
| VHDL | VHSIC Hardware Description Language |
| VHSIC | Very-High-Speed Integrated Circuit |
| WIM | Windows Imaging Format |
| XRTC | Xilinx Radiation Test Consortium |
| XML | eXtensible Markup Language |
References
- Wang, J.; Zhang, H.; Zhu, X.; Shen, G.; Chang, Z.; Xu, X.; Yu, T.; Zhu, X.; Zhang, L.; Ma, Y. Analyzing measured evidence for inducing factors of SEU from in-flight data of NSSC-SPRECMI on OPUS CZ-4C. IEEE Trans. Nucl. Sci. 2024, 72, 101–109. [Google Scholar] [CrossRef]
- Rodbell, K.P. Low-Energy Protons—Where and Why “Rare Events” Matter. IEEE Trans. Nucl. Sci. 2024, 67, 1204–1215. [Google Scholar] [CrossRef]
- Sangchoolie, B.; Pattabiraman, K.; Karlsson, J. One bit is (not) enough: An empirical study of the impact of single and multiple bit-flip errors. In Proceedings of the 47th Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN), Denver, CO, USA, 26–29 June 2017; pp. 97–108. [Google Scholar]
- Joshi, K.; Singh, R.; Bassetto, T.; Adve, S.; Marinov, D.; Misailovic, S. FastFlip: Compositional SDC Resiliency Analysis. In Proceedings of the 23rd ACM/IEEE International Symposium on Code Generation and Optimization, Las Vegas, NV, USA, 1–5 March 2025; pp. 362–376. [Google Scholar]
- Bonet, M.S.; Kosmidis, L. SPARROW: A low-cost hardware/software co-designed SIMD microarchitecture for AI operations in space processors. In Proceedings of the IEEE Design, Automation & Test in Europe Conference & Exhibition (DATE), Antwerp, Belgium, 14–23 March 2022; pp. 1139–1142. [Google Scholar]
- Bekker, D.L.; Tran, M.Q.P. Performance analysis of standalone and in-fpga LEON3 processors for use in deep space missions. In Proceedings of the 2019 IEEE Aerospace Conference, Big Sky, MT, USA, 2–9 March 2019; pp. 1–17. [Google Scholar]
- Bonnoit, T.; Coelho, A.; Zergainoh, N.E.; Velazco, R. SEU impact in processor’s control-unit: Preliminary results obtained for LEON3 soft-core. In Proceedings of the 18th IEEE Latin American Test Symposium (LATS), Bogota, Colombia, 13–15 March 2017; pp. 1–4. [Google Scholar]
- Kchaou, A.; Saad, S.; Garrab, H.; Machhout, M. Reliability of LEON3 Processor’s Program Counter Against SEU, MBU, and SET Fault Injection. Cryptography 2025, 9, 54. [Google Scholar] [CrossRef]
- Travessini, R.; Villa, P.R.; Vargas, F.L.; Bezerra, E.A. Processor core profiling for SEU effect analysis. In Proceedings of the IEEE 19th Latin-American Test Symposium (LATS), Sao Paulo, Brazil, 12–14 March 2018; pp. 1–6. [Google Scholar]
- Mansour, W.; Velazco, R. SEU fault-injection in VHDL-based processors: A case study. J. Electron. Test. 2013, 29, 87–94. [Google Scholar] [CrossRef]
- Kempf, F.; Hoefer, J.; Kreß, F.; Hotfilter, T.; Harbaum, T.; Becker, J. Runtime adaptive cache checkpointing for risc multi-core processors. In Proceedings of the IEEE 35th International System-on-Chip Conference (SOCC), Belfast, UK, 5–8 September 2022; pp. 1–6. [Google Scholar]
- Kchaou, A.; Saad, S.; Garrab, H. Workload-Dependent Vulnerability of SDRAM Multi-Bit Upsets in a LEON3 Soft-Core Processor. Electronics 2025, 14, 4852. [Google Scholar] [CrossRef]
- Kchaou, A.; Saad, S.; Garrab, H. Emulation-Based Analysis of Multiple Cell Upsets in LEON3 SDRAM: A Workload-Dependent Vulnerability Study. Electronics 2025, 14, 4582. [Google Scholar] [CrossRef]
- Kooli, M.; Kaddachi, F.; Di Natale, G.; Bosio, A. Cache-and register-aware system reliability evaluation based on data lifetime analysis. In Proceedings of the IEEE 34th VLSI Test Symposium (VTS), Las Vegas, NV, USA, 25–27 April 2016; pp. 1–6. [Google Scholar]
- Guzman-Miranda, H.; Aguirre, M.A.; Tombs, J. Noninvasive fault classification, robustness and recovery time measurement in microprocessor-type architectures subjected to radiation-induced errors. IEEE Trans. Instrum. Meas. 2009, 58, 1514–1524. [Google Scholar] [CrossRef]
- Abbasitabar, H.; Zarandi, H.R.; Salamat, R. Susceptibility analysis of LEON3 embedded processor against multiple event transients and upsets. Proceeding of the 2012 IEEE 15th International Conference on Computational Science and Engineering, Paphos, Cyprus, 5–7 December 2012; pp. 548–553. [Google Scholar]
- Ebrahimi, M.; Sayed, N.; Rashvand, M.; Tahoori, M.B. Fault injection acceleration by architectural importance sampling. In Proceedings of the International Conference on Hardware/Software Codesign and System Synthesis (CODES + ISSS), Amsterdam, The Netherlands, 4–9 October 2015; pp. 212–219. [Google Scholar]
- Ebrahimi, M.; Moshrefpour, M.H.; Golanbari, M.S.; Tahoori, M.B. Fault injection acceleration by simultaneous injection of non-interacting faults. In Proceedings of the 53rd Annual Design Automation Conference, Austin, TX, USA, 5–9 June 2016; pp. 1–6. [Google Scholar]
- Tuzov, I.; de Andrés, D.; Ruiz, J.C. Accurate robustness assessment of hdl models through iterative statistical fault injection. In Proceedings of the 14th European Dependable Computing Conference (EDCC), Iasi, Romania, 10–14 September 2018; pp. 1–8. [Google Scholar]
- Khanov, V.K.; Chekmarev, S.A. Fast SEU fault injection in the SoC-memory. In Proceedings of the 2016 13th International Scientific-Technical Conference on Actual Problems of Electronics Instrument Engineering (APEIE), Novosibirsk, Russia, 3–6 October 2016; pp. 447–450. [Google Scholar]
- Sari, A.; Psarakis, M. A fault injection platform for the analysis of soft error effects in FPGA soft processors. In Proceedings of the IEEE 19th International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS), Kosice, Slovakia, 20–22 April 2016; pp. 1–6. [Google Scholar]
- Sari, A.; Psarakis, M. A flexible fault injection platform for the analysis of the symptoms of soft errors in FPGA soft processors. J. Circuits Syst. Comput. 2017, 26, 1740009. [Google Scholar] [CrossRef]
- Harward, N.A.; Gardiner, M.R.; Hsiao, L.W.; Wirthlin, M.J. Estimating soft processor soft error sensitivity through fault injection. In Proceedings of the IEEE 23rd Annual International Symposium on Field-Programmable Custom Computing Machines, Vancouver, BC, Canada, 2–6 May 2015; pp. 143–150. [Google Scholar]
- Harward, N.A.; Gardiner, M.R.; Hsiao, L.W.; Wirthlin, M.J. A fault injection system for measuring soft processor design sensitivity on Virtex-5 FPGAs. In FPGAs and Parallel Architectures for Aerospace Applications: Soft Errors and Fault-Tolerant Design; Springer International Publishing: Cham, Switzerland, 2016; pp. 61–74. [Google Scholar]
- Da Silva, A.; Sanchez, S. LEON3 ViP: A virtual platform with fault injection capabilities. In Proceedings of the 13th Euromicro Conference on Digital System Design: Architectures, Methods and Tools, Lille, France, 1–3 September 2010; pp. 813–816. [Google Scholar]
- Mansour, W.; Velazco, R. SEU fault-injection in VHDL-based processors: A case study. In Proceedings of the 13th Latin American Test Workshop (LATW), Quito, Ecuador, 10–13 April 2012; pp. 1–5. [Google Scholar]
- Chekmarev, S.A.; Khanov, V.K. Fault injection via on-chip debugging in the internal memory of systems-on-chip processor. In Proceedings of the IOP Conference Series: Materials Science and Engineering, Krasnoyarsk, Russia, 6–10 April 2015; IOP Publishing: Philadelphia, PA, USA, 2015; p. 012020. [Google Scholar]
- Theodorou, G.; Kranitis, N.; Paschalis, A.; Gizopoulos, D. A software-based self-test methodology for on-line testing of processor caches. In Proceedings of the IEEE International Test Conference, Anaheim, CA, USA, 20–22 September 2011; pp. 1–10. [Google Scholar]
- Theodorou, G.; Kranitis, N.; Paschalis, A.; Gizopoulos, D. Software-based self test methodology for on-line testing of L1 caches in multithreaded multicore architectures. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 2012, 21, 786–790. [Google Scholar] [CrossRef]
- Du, B.; Reorda, M.S.; Sterpone, L.; Parra, L.; Portela-García, M.; Lindoso, A.; Entrena, L. Online test of control flow errors: A new debug interface-based approach. IEEE Trans. Comput. 2015, 65, 1846–1855. [Google Scholar] [CrossRef]
- Parra, L.; Lindoso, A.; Portela-Garcia, M.; Entrena, L.; Du, B.; Reorda, M.S.; Sterpone, L. A new hybrid nonintrusive error-detection technique using dual control-flow monitoring. IEEE Trans. Nucl. Sci. 2014, 61, 3236–3243. [Google Scholar] [CrossRef]
- Keller, A.M.; Wirthlin, M. J Benefits of complementary SEU mitigation for the LEON3 soft processor on SRAM-based FPGAs. IEEE Trans. Nucl. Sci. 2016, 64, 519–528. [Google Scholar] [CrossRef]
- Lindoso, A.; Entrena, L.; García-Valderas, M.; Parra, L. A hybrid fault-tolerant LEON3 soft core processor implemented in low-end SRAM FPGA. IEEE Trans. Nucl. Sci. 2016, 64, 374–381. [Google Scholar] [CrossRef]
- Houssany, S.; Guibbaud, N.; Bougerol, A.; Leveugle, R.; Miller, F.; Buard, N. Microprocessor soft error rate prediction based on cache memory analysis. IEEE Trans. Nucl. Sci. 2012, 59, 980–987. [Google Scholar] [CrossRef]
- Houssany, S.; Guibbaud, N.; Bougerol, A.; Leveugle, R.; Santini, T.; Miller, F. Experimental assessment of cache memory soft error rate prediction technique. IEEE Trans. Nucl. Sci. 2013, 60, 2734–2741. [Google Scholar] [CrossRef]
- Kooli, M.; Di Natale, G.; Bosio, A. Cache-aware reliability evaluation through LLVM-based analysis and fault injection. In Proceedings of the IEEE 22nd International Symposium on on-Line Testing and Robust System Design (IOLTS), Sant Feliu de Guixols, Spain, 4–6 July 2016; pp. 19–22. [Google Scholar]
- Kaddachi, F.; Kooli, M.; Di Natale, G.; Bosio, A.; Ebrahimi, M.; Tahoori, M. System-level reliability evaluation through cache-aware software-based fault injection. In Proceedings of the IEEE 19th International Symposium on Design and Diagnostics of Electronic Circuits & Systems (DDECS), Kosice, Slovakia, 20–22 April 2016; pp. 1–6. [Google Scholar]
- Cannon, M.J.; Keller, A.M.; Rowberry, H.C.; Thurlow, C.A.; Pérez-Celis, A.; Wirthlin, M.J. Strategies for removing common mode failures from TMR designs deployed on SRAM FPGAs. IEEE Trans. Nucl. Sci. 2018, 66, 207–215. [Google Scholar] [CrossRef]
- Kasap, S.; Wächter, E.W.; Zhai, X.; Ehsan, S.; Mcdonald-Maier, K. Survey of soft error mitigation techniques applied to LEON3 soft processors on SRAM-based FPGAs. IEEE Access 2020, 8, 28646–28658. [Google Scholar] [CrossRef]
- Tong, J.G.; Anderson, I.D.; Khalid, M.A. Soft-core processors for embedded systems. In Proceedings of the International Conference on Microelectronics, Dhahran, Saudi Arabia, 16–19 September 2006; pp. 170–173. [Google Scholar]
- Trouchkine, T.; Bouffard, G.; Clédière, J. Fault injection characterization on modern cpus: From the isa to the micro-architecture. In Porceeding of the IFIP International Conference on Information Security Theory and Practice, Paris, France, 29 February–1 March 2019; Springer International Publishing: Cham, Switzerland; pp. 123–138.
- Alshaer, I.; Colombier, B.; Deleuze, C.; Beroulle, V.; Maistri, P. Variable-length instruction set: Feature or bug? In Proceedings of the 25th Euromicro Conference on Digital System Design (DSD), Maspalomas, Spain, 31 August–2 September 2022; pp. 464–471. [Google Scholar]
- Almeida, R.; Silva, V.; Cabral, J. Virtualized fault injection framework for iso 26262-compliant digital component hardware faults. Electronics 2024, 13, 2787. [Google Scholar] [CrossRef]
- Peña-Fernández, M.; Serrano-Cases, A.; Lindoso, A.; Cuenca-Asensi, S.; Entrena, L.; Morilla, Y.; Martín-Holgado, P.; Martínez-Álvarez, A. Hybrid lockstep technique for soft error mitigation. IEEE Trans. Nucl. Sci. 2022, 69, 1574–1581. [Google Scholar] [CrossRef]
- Mansour, W.; Velazco, R. An automated SEU fault-injection method and tool for HDL-based designs. IEEE Trans. Nucl. Sci. 2013, 60, 2728–2733. [Google Scholar] [CrossRef]
- Solinas, M.; Coelho, A.; Fraire, J.A.; Zergainoh, N.E.; Ferreyra, P.A.; Velazco, R. Preliminary results of NETFI-2: An automatic method for fault injection on HDL-based designs. In Proceedings of the 18th IEEE Latin American Test Symposium (LATS), Bogota, Colombia, 13–15 March 2017; pp. 1–4. [Google Scholar]
- Timmers, N.; Spruyt, A.; Witteman, M. Controlling PC on ARM using fault injection. In Proceedings of the IEEE Workshop on Fault Diagnosis and Tolerance in Cryptography (FDTC), Santa Barbara, CA, USA, 16 August 2016; pp. 25–35. [Google Scholar]










| Ref./Year | Fault Models | Methodology | Target Subsystems | Workload-Aware | Key Strength |
|---|---|---|---|---|---|
| [7]/2017 | Assess SEU/MBU sensitivity in control logic | RTL fault injection (NETFI-2, FPGA) | IU3 control registers (instruction, flags, ALU config) | AES | Identifies DE-stage instruction registers as most critical; quantifies MBU impact in non-SBU-sensitive bits |
| [8]/2025 | Analyze PC vulnerability to SEU/MBU/SET | NETFI+ RTL injection (4M+ faults) | PC across FE, DE, RA, EX, ME, XC pipeline stages | MulMatrix | First pipeline-stage trap causality: window overflow from RA/EX PC corruption |
| [9]/2018 | Profile CPU register sensitivity to SBU | Simulation-based FI (ModelSim© + TCL) | PROC3 registers (IU3, caches) | PID, BSORT, Hamming | Ranks 362 registers by harm; shows PC causes 100% failure; validates 99.25% SBU tolerance with partial TMR |
| [10,26]/2013 | Compare DFI vs. CEU fault coverage | RTL-modified DFI (single-cycle inject.) | Register file (windowed) | MulMatrix, self-convergent algorithm | DFI accesses all RF bits (including pipeline-internal); reveals CEU overestimates error rates |
| [11]/2022 | Enable runtime-adaptive cache reliability for mixed-criticality workloads | Hardware-based cache checkpointing with rollback | L1 cache (instruction/data arrays and controller) | FFT, Matrix Multiplication, Mergesort, Quicksort, Black-Scholes | Low-overhead switching between performance and reliable modes; successful fault handling demonstrated on LEON3 |
| [12]/2025 | Assess workload-dependent MBU effects in SDRAM | FPGA-based runtime MBU FI | External SDRAM | MulMatrix, FFT, AES | Demonstrates extreme workload dependence: AES masks 92.4% MBUs; MulMatrix activates > 99.99% |
| [13]/2025 | Assess workload-dependent MCU effects in SDRAM | FPGA-based runtime MCU FI | External SDRAM | MulMatrix, FFT, AES | Reveals stark workload dependence: AES shows high non-propagation, while MulMatrix and FFT exhibit > 97% observable errors; rare instruction traps linked to address/control corruption |
| [14,36,37]/2016 | Accelerate fault injection via data lifetime analysis | Software-based FI targeting only live registers and cache lines | Register file, cache (data arrays) | MiBench (QSort, Dijkstra, FFT) | Reduces injection space by >90% by focusing on active data; shows inactive injections are mostly masked |
| [15]/2009 | Measure post-fault recovery time and robustness | Dual-instance HW emulation (FT-UNSHADES-μP) | Cache, register file, SDRAM | Signal processing task | First to quantify recovery time and classify faults as transient/permanent; shows hardened software improves robustness |
| [16]/2012 | Analyze multi-fault effects (SEU, MBU, SET, MET) | RTL simulation (ModelSim©, VHDL) | FFs, registers, register file, I/D cache (tag/data) | QSort, AES, CRC32 | Comparative analysis of four fault models across MiBench workloads; quantifies over-write/latent/failure rates |
| [17,18]/2016 | Accelerate FI via batched non-interacting faults | Emulation + k-ary tree fault batching | I/D cache (tag/data), register file, FFs | 8 MiBench: CRC32, SHA, Qsort, FFT… | 85× average speedup via simultaneous injection of non-interacting faults; validated on FPGA |
| [19]/2018 | Optimize statistical fault injection sample size | Iterative sampling + RTL simulation | Integer unit, multiply/divide unit FFs | Matrix math | Adaptive campaign sizing reduces fault injections by up to 6× while maintaining 0.1% error margin |
| [20]/2016 | Enable fast SEU injection in SoC memory | On-chip FI IP-core via OCD/MCTRL | Internal memory (register file, cache), external SDRAM | No workload specified | Injection latency as low as 54 ± 7 cycles; supports MBU emulation |
| [21,22]/2017 | Analyze SEU symptoms via performance counters | On-chip FI (RapidSmith + MicroBlaze) | Full LEON3 (IU, MMU, MUL/DIV) | FFT, SHA, Basic math | Uses exception signals and performance counter deviations (e.g., cache misses, AHB util.) for 96% error coverage |
| [23,24]/2016 | Compare CRAM sensitivity across soft processors | Bitstream-level FI (XRTC-V5FI) | Full core (CRAM only) | Towers of Hanoi, Dhrystone, Whetstone, CoreMark, Dijkstra | Shows 54% software-dependent sensitivity; LEON3 81.3% more sensitive than MicroBlaze |
| [25]/2010 | Enable early TLM-level fault injection | SystemC TLM2.0 + DBI + XML | ISS registers, TLM transactions | SHA-1 | First TLM2.0 fault framework using transport_dbg and runtime binary wrappers |
| [27]/2015 | Enable autonomous SEU injection via on-chip debugger | On-chip FI IP-core using DSU/OCD | Register file, cache (EDAC-protected) | Register loop, RTEMS-tasks | Injection latency ≤ 54 cycles; <2% FPGA overhead; host-free campaigns |
| [28,29]/2012 | Enable on-line cache testing via SBST | SW-based March test using DCA | L1 cache (tag/data arrays) | No workload specified | Uses debug instructions for 83% smaller code, 72% faster vs. prior SBST; validates 100% March fault coverage |
| [30,31]/2015 | Detect control-flow errors via debug interface | Ext. CFC module monitoring PC/IR via DSU trace port | Control flow (PC/Instruction stream) | Bubble, Matrix, Dijkstra, RLE, MF | >95% CFE detection with no hardware/software modification; works with caches enabled |
| [32]/2017 | Evaluate combined SEU mitigation: TMR + scrubbing | FI +neutron radiation testing | Full LEON3 core (TMR-protected) | Dhrystone | Demonstrates ~50× reliability improvement with TMR + CRAM/BRAM scrubbing |
| [33]/2017 | Implement hybrid fault tolerance in low-end FPGA | Combines SEC/DED, HW CFC monitor, SW hardening, CRAM scrubbing | Cache, register file, CRAM | Quicksort, MMULT, AES | Achieves 94–96% error detection with low FPGA overhead (<2% LUTs); validated with neutron testing |
| [34,35]/2013 | Predict cache soft error rate (SER) under radiation | Analytical SER model + neutron radiation testing | I/D cache (architectural level) | No workload specified | First cache SER prediction model validated with neutron tests (10% accuracy) for LEON3 on Virtex-5 |
| Subsystem | Recommended Hardening Strategies | Primary Failure Mode Addressing |
|---|---|---|
| I-cache | Parity on instruction words and tag arrays Automatic line invalidation on parity error | Instruction-stream corruption (Illegal instruction, SDC) |
| D-cache | SEC-DED ECC on data arrays Parity on metadata (tag, valid, dirty) Error-triggered line invalidation | SDC (31.59%), misfetches |
| AHB control interface | Parity on command signals (haddr, htrans, hwrite) DWC on handshake signals (hready/hresp) Transaction watchdog timer | Protocol collapse (100% halt/timeout) |
| MCTRL | Parity on configuration registers (ramwidth, iows, rom-rws) Safe FSM encoding for bstate Runtime monitoring of hready/hresp | Parameter corruption, bus deadlocks, SDC (3.35%) |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license.
Share and Cite
Kchaou, A.; Saad, S.; Garrab, H. Reliability Analysis of the LEON3 Memory Subsystem Under Single-Event Upsets: Cache, AHB Interface, and Memory Controller Vulnerability. Information 2026, 17, 249. https://doi.org/10.3390/info17030249
Kchaou A, Saad S, Garrab H. Reliability Analysis of the LEON3 Memory Subsystem Under Single-Event Upsets: Cache, AHB Interface, and Memory Controller Vulnerability. Information. 2026; 17(3):249. https://doi.org/10.3390/info17030249
Chicago/Turabian StyleKchaou, Afef, Sehmi Saad, and Hatem Garrab. 2026. "Reliability Analysis of the LEON3 Memory Subsystem Under Single-Event Upsets: Cache, AHB Interface, and Memory Controller Vulnerability" Information 17, no. 3: 249. https://doi.org/10.3390/info17030249
APA StyleKchaou, A., Saad, S., & Garrab, H. (2026). Reliability Analysis of the LEON3 Memory Subsystem Under Single-Event Upsets: Cache, AHB Interface, and Memory Controller Vulnerability. Information, 17(3), 249. https://doi.org/10.3390/info17030249

