A newer version of this document is available. Customers should click here to go to the newest version.
3.3.2.1. Root Fault Injection
The Root Fault injection is available for the following alarms:
- Comparator mismatch (including selecting the Comparator Context bit to be activated). ALARM0 and ALARM1 are activated.
- Comparator self-detection. ALARM2, ALARM3, and ALARM4 are activated.
- Timeout. ALARM16 is activated.
You can activate the Root Fault Injection using the interfaces listed in the following table:
Interface | Actions |
---|---|
Configuration Interface | Writing the ERRCTRL_ROOT_INJ register. |
fRNET Interface | Writing the FRNET_PGO_ROOT_FAULT_INJ input. |
In addition to the above activation steps, in the case of an ALARM0 or ALARM1 injection, using ERRCTRL_PGO0[6:0] register or FRNET_PERIPH_PGO_0[6:0] input is necessary to select which comparator slice to inject. Injecting a disabled comparator slice results in no injection being performed. Slice0 is selected automatically as default comparator slice after asynchronous reset.
After root fault injection, the Nios® V processor Lockstep feature does not register the injected slice ID into ERRCTRL_FNGICMPCTXT0 register. This register is updated only during a true mismatch event (unaffected during an injection).
Injection Type | Activation (through Configuration Interface) | Fault Emulation | Stimulated Alarm |
---|---|---|---|
Comparator Mismatch | Ensure that all the following conditions are present:
Injection Target: RESETACK (selected automatically due to Slice0). |
|
If under DISABLED state, it stimulates ALARM0. Otherwise, it stimulates ALARM1. |
Comparator Self-detection | Ensure that all the following conditions are present:
Injection Target: RESETACK (selected automatically due to Slice0). |
|
If under DISABLED state, it activates ALARM0. Otherwise, it activates ALARM1. ALARM2 and ALARM3 is activated. |
Comparator Self-detection | Ensure that all the following conditions are present:
Injection Target: RESETACK (selected automatically due to Slice0). |
|
If under DISABLED state, it activates ALARM0. Otherwise, it activates ALARM1. ALARM2 and ALARM4 is activated. |
Timeout | ERRCTRL_ROOT_INJ[16]=1’b1 | Timeout alarm | ALARM16 is activated. |
The time taken to execute the Root Fault injection and to activate the required alarms is 70 CLK clock cycles at maximum (as the third self-diagnostic comparison is a time-multiplexed one).