Code Design for Dependable Systems

Chapter 9.6.2 - Code Conditions

9.6.2   Code Conditions

By using the defined functions, De(X, Y) and (X, Y), we obtain the necessary and
sufficient conditions of the error locating codes as well as the error correcting / detecting
codes. We consider the error control codes of the generalized form, such as t e/b-errors
correcting codes (i.e., te/bEC codes), m e/b-errors detecting codes (i.e., me/bED codes),
l e/b-errors locating codes (i.e., le/bEL codes), and the codes with combination of these
functions, where t, m, and l are integers.

Conditions for te/bEC Codes

Lemma 9.4   The following shows the necessary and sufficient condition of a code that
corrects any errors included in the error set E:

 

Theorem 9.20   The necessary and sufficient conditions of the te/bEC codes that correct
t e/b-errors in a word are shown as

 

Proof   Let Exi and Eyi be the i-th bytes of Ex and Ey, respectively, where 0 ≤ in − 1.
If (X, Y) ≥ 1, then there exists the byte (e.g., the i-th byte) that satisfies
dH(Xi, Yi) ≥ 2e + 1. In this case, even if there exist e/b-errors at the i-th byte of both
X and Y, the resulting i-th bytes of these vectors are not coincident. By Lemma 9.4,
the code that satisfies (X, Y) ≥ 1 is a te/bEC code.

Next let Ete/b be the error set of t or fewer e/b-errors. By Theorem 9.19,

 

For De(X, Y) ≥ 2te + 1,

 

Then X + ExY + Ey is always satisfied. Therefore the code that satisfies
De(X, Y) ≥ 2te + 1 is a te/bEC code.

Conversely, if (X, Y) = 0 and De(X, Y) < 2te + 1, then 0 ≤ dH(Xi, Yi) ≤ 2e for
any bytes of X and Y. Let w be the number of bytes that satisfy e + 1 ≤ dH(Xi, Yi) ≤ 2e.
Then the number of bytes that satisfy 1 ≤ dH(Xi, Yi) ≤ e is at most 2t − 2w. In this case
we can select Ex and Ey to satisfy the following: (1) Exi ≠ 0, Eyi ≠ 0 and Xi + Exi = Yi + Eyi
for the bytes having the relation e + 1 ≤ dH(Xi, Yi) ≤ 2e, (2) Exi = Xi + Yi, Eyi = 0 for the
(t − w) bytes having the relation 1 ≤ dH(Xi, Yi) ≤ e and Exi = 0, Eyi = Xi + Yi for the
remaining bytes. Then we have X + Ex = Y + Ey for all Ex, Ey Î Ete/b. Therefore, this does
not satisfy the condition of the te/bEC code.                                                             Q.E.D.

Conditions for me/bED Codes

Lemma 9.5   The following shows the necessary and sufficient conditions of a code C
that detects any errors included in the error set E:

 

Theorem 9.21   The necessary and sufficient conditions of the me/bED codes that detect
m e/b-errors in a word are

 

Theorem 9.21 can be proved in the same manner as the previous theorem.

Conditions for le/bEL Codes

Lemma 9.6   The following shows the necessary and sufficient conditions of a code C
that locates any errors included in the error set E:

where express the i-th byte errors in
Ex, Ey, respectively.

Lemma 9.6 can be roughly proved as follows: Condition 1 tells us that the relation
X + Ex = Y + Ey is satisfied only if the location of the byte errors in Ex is the same as that
of the errors in Ey. In this case the errors cannot be corrected, but their locations can be
correctly indicated. Condition 2 tells us that all errors in E are detected. Therefore both
conditions 1 and 2 are the necessary and sufficient conditions of the error locating code.

Theorem 9.22   The necessary and sufficient conditions of the le/bEL codes that locate
l e/b-errors in the word are

 

Proof   By Theorem 9.20, the condition (X, Y) ≥ 1 or De(X, Y) ≥ 2le + 1 shows
the necessary and sufficient condition of the le/bEC codes, and therefore this is also
the condition of the le/bEL codes.

If the condition (X, Y) = 0 is satisfied for the vectors X and Y, there exists the
possibility to have the relation X + Ex = Y + Ey for $Ex and $Ey, where dH(Xi, Yi) is no
less than e + 1 or zero. This shows that Exi ≠ 0 and Eyi ≠ 0 for the erroneous i-th bytes in
X and Y with relation dH(Xi, Yi) ≥ e + 1, or Exi = Eyi for the i-th bytes in X and Y that
satisfy dH(Xi, Yi) = 0, where Exi and Eyi show the i-th byte of Ex and Ey, respectively. By
Lemma 9.6, the above satisfies the conditions of the le/bEL codes.

Conversely, we consider the conditions (X, Y) = 0, (X, Y) ≥ 1, and
De(X, Y) < 2le + 1. In this case there always exist the bytes that satisfy
1 ≤ dH(Xi, Yi) ≤ e. For these bytes we can select the errors Ex and Ey in the error set
comprising of l or less e/b-errors where X + Ex = Y + Ey for Exi ≠ 0 and Eyi = 0.
Therefore, they do not satisfy the conditions of Lemma 9.6.                                    Q.E.D.

Conditions for Codes with Combination of Code Functions    Here we consider
the codes with two code functions such as error correction and error detection, error correction
and error location, and error location and error detection.

Table 9.3 demonstrates the necessary and sufficient conditions of the te1/bEC-me3/bED
codes, the te1/bEC-le2/bEL codes, and the le2/bEL-me3/bED codes, where t < l < m. The
conditions of the te1/bEC-le2/bEL codes, for example, can be obtained by taking logical
AND of the following conditions:

  1. Conditions of the te1/bbEC codes,
  2. Conditions of the le2/bEL codes,
  3. Conditions to discriminate the t e1/b-errors and the l e2/b-errors.

This table also includes the conditions of the te/bEC codes, the me/bED codes and the
le/bEL codes given in Theorems 9.20, 9.21, and 9.22, respectively.

TABLE 9.3 Necessary and Sufficient Conditions of Codes



Table 9.4 shows the conditions of the existing codes induced by substituting appropriate
values to the parameters of t, l, m, e1, e2, and e3 of the codes in Table 9.3.

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: Error Correction Chips
Finish!
Privacy Policy

This is embarrasing...

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