Code Design for Dependable Systems

Chapter 6 - Codes for High-Speed Memories III: Bit / Byte Error Control Codes

Byte-organized semiconductormemory chips arewidely used in today’s digital systems. The
usual errors occurred in these systems are soft errors induced by external noise, α particles,
etc., which are apt to be manifested as random bit errors in byte-organized systems. Memory
cell failure also results in random bit errors. Therefore designers of error control codes for
byte-organized memory systems must take into account two types of errors, byte errors and
bit errors. Strictly speaking, bit errors are a class of byte errors that corrupt exactly one bit
within a byte, but such errors are usually called bit errors, and all others called byte errors.

Based on the background above, this chapter deals with a class of practical codes that
controls such errors as mixing byte errors with bit errors. These are abbreviated and
designated as follows:

  1. SEC-DED-SbED (or BED) codes. Single b-bit byte (or burst) error detecting SEC-DED
    codes.
  2. SbEC-DED codes. Single b-bit byte error correcting and double-bit error detecting codes.
  3. SbEC-DEC codes. Single b-bit byte error correcting and double-bit error correcting codes.
  4. SbEC-(Sb+S)ED codes. Single b-bit byte error correcting and single-byte plus
    single-bit error detecting codes.

Here, ‘‘A plus B error’’ means A error and B error occurred simultaneously. Hence the
above code 4 can detect both single-byte errors and single-bit errors occurred simultaneously.

The SEC-DED-SbED codes have found many applications in computer memory
systems, all with byte size b = 4 bits. Some of these codes have been applied to recent
microprocessor chips as well as to recent server systems.


6.1   SINGLE-BYTE / BURST ERROR DETECTING SEC-DED CODES


We recall here the definitions of byte errors and burst errors. A word is divided into bytes
of length b; a single-byte error is meant to be any number of errors confined to one byte.
On the other hand, a burst error of length b is any number of errors confined to b adjacent
positions. A burst of length b may begin on any bit position of the word and can spread
over portions of two adjacent bytes. Also a code capable of detecting (or correcting) bursts
of length b implies that it is capable of detecting (or correcting) all bursts with smaller than
or equal to length b. For the purpose of this chapter, a byte always refers to a byte of length
b, and a burst refers to a burst of length b or less. Since we do not cover multiple burst error
control codes, the term burst here will mean a single burst only.

The SEC-DED codes are not capable of correcting or detecting byte errors or burst
errors. On the other hand, SbEC codes and SbEC-DbED codes can correct byte errors
but require higher redundancy. From this consideration, codes are required to detect
single-byte errors as well as to correct single-bit errors and to detect double-bit errors.
The SEC-DED-SbED class of codes is practical from the standpoint of requiring small
additional redundancy to the existing SEC-DED codes, and hence has become very
popular in recent commercial applications [CHEN84, TSUC86, SUNM95].

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Memory Modules
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.