Mechanism | Detects | Corrects | Typical use |
|---|---|---|---|
Parity | Odd number of flipped bits | No | Small control RAM with retry/fail-stop |
SECDED | All 1- and 2-bit errors | One bit | Caches, SRAMs, safety state |
Duplication + compare | Mismatch between copies | With trusted third source/reload | Small critical state |
TMR | One bad replica | One replica | Very high availability control |
CRC | Burst errors over blocks/links | Usually retry | Packets and stored blocks |
Read the flow from the top and stop at the first box that meets the requirement. Each step down costs more storage or logic.
Parity is enough when detection plus retry, reload or fail-stop meets the requirement.
SECDED is the step when single-bit errors must be corrected without software help.
Copies (duplication or TMR) are for small state where a whole bad replica must be survived.
The control SRAM first uses parity when reload is available, then adopts SECDED when the availability requirement changes to transparent single-bit correction. The storage and latency cost is justified by that requirement, not by a blanket preference for stronger codes.
Transient soft errors disappear after rewrite.
Permanent faults recur at the same cell and need repair, remap, or retirement.
Latent faults accumulate unless memory is read or scrubbed.
The safety requirement sets diagnostic coverage and reaction time; area alone does not choose protection.
When detection plus retry, reload, or fail-stop meets the requirement and correction is unnecessary. If availability requires transparent single-bit correction, use SECDED or stronger protection.