Lably
Skip to content

Burst error-correcting code

Codes intended to correct short, contiguous errors in a communications channel

  • 24 min read
  • 7 chapters

Related on Lably

Through Observational error and Least common multiple

Many codes have been designed to correct random errors. Sometimes, however, channels may introduce errors which are localized in a short interval. Such errors occur in a burst (called burst errors) because they occur in many consecutive bits. Examples of burst errors can be found extensively in storage mediums. These errors may be due to physical damage such as scratch on a disc or a stroke of lightning in case of wireless channels. They are not independent; they tend to be spatially concentrated. If one bit has an error, it is likely that the adjacent bits could also be corrupted. The methods used to correct random errors are inefficient to correct burst errors.

Definitions

A burst of length ℓ

Say a codeword C is transmitted, and it is received as Y=C+E. Then, the error vector E is called a burst of length ℓ if the nonzero components of E are confined to ℓ consecutive components. For example, E=(010000110) is a burst of length ℓ=7.

Although this definition is sufficient to describe what a burst error is, the majority of the tools developed for burst error correction rely on cyclic codes. This motivates our next definition.

A cyclic burst of length ℓ

An error vector E is called a cyclic burst error of length ℓ if its nonzero components are confined to ℓ cyclically consecutive components. For example, the previously considered error vector E=(010000110), is a cyclic burst of length ℓ=5, since we consider the error starting at position 6 and ending at position 1. Notice the indices are 0-based, that is, the first element is at position 0.

For the remainder of this article, we will use the term burst to refer to a cyclic burst, unless noted otherwise.

Burst description

It is often useful to have a compact definition of a burst error, that encompasses not only its length, but also the pattern, and location of such error. We define a burst description to be a tuple (P,L) where P is the pattern of the error (that is the string of symbols beginning with the first nonzero entry in the error pattern, and ending with the last nonzero symbol), and L is the location, on the codeword, where the burst can be found.

For example, the burst description of the error pattern E=(010000110) is D=(1000011,1). Notice that such description is not unique, because D′=(11001,6) describes the same burst error. In general, if the number of nonzero components in E is w, then E will have w different burst descriptions each starting at a different nonzero entry of E. To remedy the issues that arise by the ambiguity of burst descriptions with the theorem below, however before doing so we need a definition first.

Definition. The number of symbols in a given error pattern y, is denoted by length(y).

Theorem (Uniqueness of burst descriptions)—Suppose E is an error vector of length n with two burst descriptions (P1,L1) and (P2,L2). If length(P1)+length(P2)⩽n+1, then the two descriptions are identical that is, their components are equivalent.

Proof

Let w be the hamming weight (or the number of nonzero entries) of E. Then E has exactly w error descriptions. For w=0,1, there is nothing to prove. So we assume that w⩾2 and that the descriptions are not identical. We notice that each nonzero entry of E will appear in the pattern, and so, the components of E not included in the pattern will form a cyclic run of zeros, beginning after the last nonzero entry, and continuing just before the first nonzero entry of the pattern. We call the set of indices corresponding to this run as the zero run. We immediately observe that each burst description has a zero run associated with it and that each zero run is disjoint. Since we have w zero runs, and each is disjoint, we have a total of n−w distinct elements in all the zero runs. On the other hand we have: n−w=number of zeros in E⩾(n−length(P1))+(n−length(P2))=2n−(length(P1)+length(P2))⩾2n−(n+1)length(P1)+length(P2)⩽n+1=n−1 This contradicts w⩾2. Thus, the burst error descriptions are identical.

A corollary of the above theorem is that we cannot have two distinct burst descriptions for bursts of length 12(n+1).

Sign in to keep reading

6 more chapters are free with a Lably account.

More in Computing and communication