6.1 Software Best Practices for Radiation Effects Mitigation
Use of any MCU in a radiation environment introduces challenges for understanding radiation effects. The most common approach for characterizing single events effects (SEE) is using a system approach. The system requirements are modeled and implemented in hardware capable of being exposed to heavy ions or protons. The effects on actual system behavior are then characterized, rather than utilizing specific cross sections for the various hardware blocks. It is recommended that this approach be used to fully understand the SEE performance of the MCU in a given end application.
Following are important recommendations that system designers can adopt to mitigate radiation effects:
- The FRAM array is known to be very robust to corruption due to SEE. Accessing the FRAM (read or write) creates possibility of corruption of data due to FRAM controller sensitivity. The probability of SEE can be lowered by minimizing FRAM accesses and operating at lower frequency. A boot time mitigation technique could implement a software code health check. Any detected corruption in critical FRAM could be repaired by utilizing redundant code stored in unused area FRAM.
- Creating error handlers for all critical interrupts is essential for device self-recovery from events.
- Using the MPU to protect code space, look-up tables and interrupt vector tables (IVT) lowers probability of corruption of critical data.
- SRAM will have higher cross section than FRAM. It is recommended to use FRAM in place of SRAM for volatile data.
- Avoid pointer indexing and incrementing near memory space with critical data, such as code and IVT. An event could offset the index resulting in reading/writing to unexpected locations.
- The probability of SEE will be lowered when operating at a higher VCC.