Session
Advanced Technologies 1
Location
Salt Palace Convention Center, Salt Lake City, UT
Abstract
Many space systems use error correcting codes (ECC) for handling radiation-induced upsets in memories. The most used ECCs are Hamming and Hsaio, which are single-error correction/double-error detection (SECDED) codes. The widespread use of these codes can lead to a dangerous overestimation of system reliability. Instead these codes are one of the best documented methods for microprocessor-based system crashes, due to uncorrectable faults. Less well documented is how these codes can lead to silent data corruption caused by miscorrections, where multiple errors are detected as a single error and corrected erroneously.
ECCs have always been sensitive to time-dependent errors, where SEUs accumulate to create statistical multiple-bit upsets (SMBUs), where a single word has multiple, independent SEUs. These types of ECC errors occur when the memory values are not scrubbed to remove SEUs as they occur or the scrub rate is smaller than the SEU rate. Typically, the SMBU-induced ECC error rate is proportional to the square of the flux. SMBU-induced ECC errors are common during coronal mass ejections, when SEU rates are heightened, but are more common in large memory systems.
In recent years, a new type of non-SMBU ECC failure has become apparent. At the heart of the problem, the combination of ECC and bit interleaving do not match the fault model for single-event upsets (SEUs) in static memories. Bit interleaving spreads a single logical word across several physical words so that multiplebit upsets (MBUs), a type of SEU that affects 2:many bits simultaneously, are unlikely to affect a single memory word. Bit interleaving should render an MBU into a set of single-bit upsets (SBUs) spanning several words. Unfortunately, the bit interleaving is not effective in many components, rendering a single MBU into a set of SBUs and geographic multiple-bit upsets (GMBUs). GMBUs are the part of the MBU that affects multiple bits in a single word, which leads to GMBU-induced ECC errors. Even when the GMBU rate is a fraction of the SBU rate, GMBU-induced ECC error rates will be several orders of magnitude larger than SMBU-induced ECC errors. Furthermore, because accumulation is not part of the GMBU-induced ECC error mechanism, the GMBU-induced ECC error rate is linear with flux and can occur in day-to-day operations.
We have been determining whether Bose–Chaudhuri–Hocquenghem (BCH) codes might be a better option or whether deeper bit interleaving would be more efficient. The tradeoff between the two options is not straight forward. While the BCH code will be helpful, the number of redundant bits is greater, which increases the baseline SEU rate. The BCH codes are potentially only useful in environments when bit interleaving is effective. Deeper interleaving might preserve SECDED for more time but also requires more power. Therefore, choosing a path forward is based on several factors. By quantifying the limitations of SECDED and evaluating alternatives, this work contributes to the development of more resilient and reliable space systems.
Document Type
Event
Let’s Give the Fsck Up on SECDED
Salt Palace Convention Center, Salt Lake City, UT
Many space systems use error correcting codes (ECC) for handling radiation-induced upsets in memories. The most used ECCs are Hamming and Hsaio, which are single-error correction/double-error detection (SECDED) codes. The widespread use of these codes can lead to a dangerous overestimation of system reliability. Instead these codes are one of the best documented methods for microprocessor-based system crashes, due to uncorrectable faults. Less well documented is how these codes can lead to silent data corruption caused by miscorrections, where multiple errors are detected as a single error and corrected erroneously.
ECCs have always been sensitive to time-dependent errors, where SEUs accumulate to create statistical multiple-bit upsets (SMBUs), where a single word has multiple, independent SEUs. These types of ECC errors occur when the memory values are not scrubbed to remove SEUs as they occur or the scrub rate is smaller than the SEU rate. Typically, the SMBU-induced ECC error rate is proportional to the square of the flux. SMBU-induced ECC errors are common during coronal mass ejections, when SEU rates are heightened, but are more common in large memory systems.
In recent years, a new type of non-SMBU ECC failure has become apparent. At the heart of the problem, the combination of ECC and bit interleaving do not match the fault model for single-event upsets (SEUs) in static memories. Bit interleaving spreads a single logical word across several physical words so that multiplebit upsets (MBUs), a type of SEU that affects 2:many bits simultaneously, are unlikely to affect a single memory word. Bit interleaving should render an MBU into a set of single-bit upsets (SBUs) spanning several words. Unfortunately, the bit interleaving is not effective in many components, rendering a single MBU into a set of SBUs and geographic multiple-bit upsets (GMBUs). GMBUs are the part of the MBU that affects multiple bits in a single word, which leads to GMBU-induced ECC errors. Even when the GMBU rate is a fraction of the SBU rate, GMBU-induced ECC error rates will be several orders of magnitude larger than SMBU-induced ECC errors. Furthermore, because accumulation is not part of the GMBU-induced ECC error mechanism, the GMBU-induced ECC error rate is linear with flux and can occur in day-to-day operations.
We have been determining whether Bose–Chaudhuri–Hocquenghem (BCH) codes might be a better option or whether deeper bit interleaving would be more efficient. The tradeoff between the two options is not straight forward. While the BCH code will be helpful, the number of redundant bits is greater, which increases the baseline SEU rate. The BCH codes are potentially only useful in environments when bit interleaving is effective. Deeper interleaving might preserve SECDED for more time but also requires more power. Therefore, choosing a path forward is based on several factors. By quantifying the limitations of SECDED and evaluating alternatives, this work contributes to the development of more resilient and reliable space systems.
