SEU Mitigation User Guide: Agilex™ 5 FPGAs and SoCs

ID 813649
Date 11/25/2024
Public
Document Table of Contents

2.6.1. Fault Injection Debugger

Using the Fault Injection Debugger, you can inject random CRAM bit flips into the Agilex™ 5 FPGA during system operation. With these simulated SEU strikes, you can test, debug, and refine your design's SEU detection and recovery sequence.
Figure 6.  Fault Injection Debugger Overview Block Diagram for Agilex™ 5 Devices


Features of the Fault Injection Debugger:

  • Inject errors to safe predefined locations, a random location, or a specified region.
  • Report error information by reading the error message queue.

By default, the Fault Injection Debugger injects SEU errors to a list of predefined safe locations only—preventing injection into critical CRAM bits that may cause device damage. If you want to perform error injection to other locations, blow the FULL_SEU_FAULT_INJECTION fuse.

You can perform error injection only if you configure the LUTRAM as a LUT but not as a RAM. If you turn on the LUTRAM Checking option, the Fault Injection Debugger displays a warning message to indicate that the error injection occurs at the LUTRAM. Altera recommends that you add a .smh file for improved accuracy of LUTRAM checking.

Note: To use the Fault Injection Debugger, you require a licensed Quartus® Prime software with the "fault_injection_debugger_tool" feature (Fault Injection(D028)) in the license. To check if you have the feature in your license, from the Quartus® Prime software menu, select Assignment > Device. Click Device and Pin Options and then navigate to Error Detection CRC. If you can turn on Allow SEU fault injection, then you have the necessary license to use the Fault Injection Debugger tool.