9
Constructions of the SEC-DbED and DbEC Codes, and Their Applications G. L. Feng, Sihai Xiao, Xiaofa Shi, T. R. N. Rao" The Center for Advanced Computer Studies The University of Southwestern of Louisiana P.O. Box 44330, Lafayette, LA 70504 August 30, 1995 Abstract Error control codes are now successfully applied to memory systems in order to enhance the system reliability. Among the error control codes, the distance-4 codes and the distance5 codes are two of the most important classes of error control codes in the computer applications. For example, these two types of codes can be used to construct Error-Locating codes which have been applied to identify the faulty module for fault isolation and reconfiguration in fault-tolerant computer systems. The well known constructions for these two types of codes were proposed by Chen in [2] [3]. In this paper, we propose new construction schemes and decoding schemes for these two types of codes. The proposed construction are able to improve the code lengths of Chen's codes, and the proposed decoding schemes are efficient. 1 Introduction The distance-4 codes are capable of correcting one error and detecting two errors so they are called SEC-DED (Single Error Correction and Double Error Detection) codes. The distance-5 codes are capable of correcting two errors so they are called DEC (Double Error Correction) codes. The SEC-DED codes are widely used in memory cards and semiconduc- tor memory systems organized in a one-bit per chip manner [6]. Recently, some systems have adopted a b-bit per chip organization, where b 2 2. A chip failure in these systems causes the word read-out to have a b-bit length, called byte, in error. Therefore, b-bit byte error correcting/detecting codes have been used extensively in recent high-speed memories [4] [5] [lo]. For example, the SbEC-DbED (Single b-bit Byte Error Correction and Double b-bit Error Detection) codes have been applied to commercial computer systems with byte length 4 [lo, pp. 2221. This is because 4-bit byte organized RAM chips are used in high- speed memory systems. The distance-5 codes, as indicatedin the abstract, essentially have applications in fault-torlerant computer systems. A very simple SbEC-DbED code can be obtained by using companion matrix in the H matrix of R-S code whose minimum distance is 4. Slightly generalizing the R-S type distance-4 codes, Wolf [12] proposed the lengthened R-S codes by appending a 3 by 3 identity 'This work was supported in part by the National Science Foundation grants NCR-9305038 and NCR- 9505619. 278 1063-6722/95 $4.00 0 1995 IEEE

[IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

  • Upload
    trn

  • View
    215

  • Download
    0

Embed Size (px)

Citation preview

Page 1: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

Constructions of the SEC-DbED and DbEC Codes, and Their Applications

G. L. Feng, Sihai Xiao, Xiaofa Shi, T. R. N. Rao" The Center for Advanced Computer Studies The University of Southwestern of Louisiana

P.O. Box 44330, Lafayette, LA 70504

August 30, 1995

Abstract

Error control codes are now successfully applied to memory systems in order to enhance the system reliability. Among the error control codes, the distance-4 codes and the distance5 codes are two of the most important classes of error control codes in the computer applications. For example, these two types of codes can be used to construct Error-Locating codes which have been applied to identify the faulty module for fault isolation and reconfiguration in fault-tolerant computer systems. The well known constructions for these two types of codes were proposed by Chen in [2] [3]. In this paper, we propose new construction schemes and decoding schemes for these two types of codes. The proposed construction are able to improve the code lengths of Chen's codes, and the proposed decoding schemes are efficient.

1 Introduction

The distance-4 codes are capable of correcting one error and detecting two errors so they are called SEC-DED (Single Error Correction and Double Error Detection) codes. The distance-5 codes are capable of correcting two errors so they are called DEC (Double Error Correction) codes. The SEC-DED codes are widely used in memory cards and semiconduc- tor memory systems organized in a one-bit per chip manner [6] . Recently, some systems have adopted a b-bit per chip organization, where b 2 2. A chip failure in these systems causes the word read-out to have a b-bit length, called byte, in error. Therefore, b-bit byte error correcting/detecting codes have been used extensively in recent high-speed memories [4] [5] [lo]. For example, the SbEC-DbED (Single b-bit Byte Error Correction and Double b-bit Error Detection) codes have been applied to commercial computer systems with byte length 4 [lo, pp. 2221. This is because 4-bit byte organized RAM chips are used in high- speed memory systems. The distance-5 codes, as indicatedin the abstract, essentially have applications in fault-torlerant computer systems.

A very simple SbEC-DbED code can be obtained by using companion matrix in the H matrix of R-S code whose minimum distance is 4. Slightly generalizing the R-S type distance-4 codes, Wolf [12] proposed the lengthened R-S codes by appending a 3 by 3 identity

'This work was supported in part by the National Science Foundation grants NCR-9305038 and NCR- 9505619.

278 1063-6722/95 $4.00 0 1995 IEEE

Page 2: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

Session 8: Self Checking a n d Coding Techniques 279

matrix to the H matrix of R-S codes. However, Wolf’s codes are not very applicable, since the information bit lengths of his codes are very limited. On the other hand, the R-S type of SbEC-DbED codes have a weakness that they always have three check bytes and hence do not have the flexibility to extend the code length. For this consideration, Kaneda- Fujiwara proposed a construction method for the SbEC-DbED codes over GF(2b), which have arbitrary code length and arbitrary byte length [8]. The code length versus the number of check bytes is given by the following

where N is the code length, b is the byte length and r is the number of check bytes. From the above formula, the code length is 0(2‘/’) over GF(2b). In order to enhance the encoding rate, Chen [2] [3] introduced a new class of codes, whose construction is based on Hartman-Tzeng bound, that are more efficient than the Kaneda-Fujiwara codes. In Chen’s construction, the length of the code, over GF(q), versus the number of check bytes is given by

where q = 26, n is the code length, and r is the number of check bytes. Equivalently, the maximum code length of a Chen code is up to q2m using 3m + 1 check bytes. Clearly, this result greatly improved the Kaneda-Fujiwara codes. In this paper, we present a simple algebraic construction for the SbEC-DbED codes. The basic idea is to construct the parity check matrix, assuming using 4 check bytes, as the form H = (. . . , (1, x, y, f(x, Y))~, . - .), where x,y E GF(q) and f(x,y) is a quadratic function to be chosen such that any three columns of H are linearly independent. By this simple approach, we can achieve the same results obtained from Chen’s method. Furthermore, we can append a column (0, O,O, l)T to the H matrix and hence the code lengths of the codes from our construction are one byte longer than Chen’s. Following this idea, if we use 3m + 1 check bytes then we can obtain a class of SbEC-DbED codes over GF(2b) with code length

N = q2(’-l)I3 ( r - 1) 0 (mod 3) , (1)

N = q2(‘-‘)/3 t 6 ( r ) ( r - 1) I o (mod 3 ) , (2) where q = 2b, T is the number of check bytes and 6 ( r ) >_ 1 is an increasing function. Obviously, the code length in (2) improves Chen’s results indicated in (1).

Distant-5 codes (DbEC) over GF(2*) can be constructed from the well known BCH Theory [l]. The BCH types of distance-5 codes have code parameters N = qm - 1 and T = 2m, where q = 2b . More efficient codes can be constructed from nonprimitive cyclic codes by HT bounds [7]. These distance-5 codes have one or two more information byte/bytes than the primitive BCH codes with the same number of check bytes. In 1992, Chen presented another technique for constructing the DbEC codes. In his construction, he obtained several best known codes such as the (11, 4, 5)code and a better code, the (47, 36, 5) code which has six more information bytes than the best known (41, 30, 5) code [ll]. In this paper, we expended the idea used in the construction of distance-4 codes to construct distance-5 codes. Using our constructions, a class of codes are more efficient than Chen codes.

Finally, we note that the decoding schemes for the codes obtained from our constructions are simple and efficient.

Page 3: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

280 International Workshop on Defect and Fault Tolerance in VLSI Systems

2 Mathematical Preparations

Through out this section, we will present some simple mathematical concepts and facts which are useful in the later discussion. For those which can be found in any references or the proof is a routine matter, we omit the proof.

As usual, the trace of an element a in the finite field GF(q") is defined as

t r (a ) = do + aql +. . . + a9-l.

Lemma 1: For any a 6 GF(q), aq = a. Also, for any g ( x ) over GF(q), ( g ( ~ ) ) ~ = g ( x 9 ) [lo, PP. 861 .

Lemma 2: The trace mapping over any finite fields is an endomorphism with respect to the addition of the field. By that we mean, for any a, b E GF(qm), t r ( a + b) = t r (a )+t r (b ) .

Having Lemma 1 and Lemma 2, without too much effort, it is easy to obtain the con- sequent results about trace function. Lemma 3. For any a E GF(2"), ~ T ( u ) = tr(a2) = (tr(a))'. Hence, t r (a) = Oor 1. Lemma 4: The mappingtr(x) over GF(2m) takes on each value in GF(2) = (0, l} equally often, that is 2"-' [9, pp. 1161.

Upon all the above, Now we introduce and prove the most useful lemma which is the basis in the later code construction. Lemma 5: The equation x2 + x + a = 0, where a E GF(2m), is solvable in GF(2") iff

By a simple calculation and Lemma 1, we have the following.

tT(U) = 0. Observe that

x2 + bx + a = b2 ( (%)2 + (z) + i) with b # 0.

A direct consequence of Lemma 5 is as follows. Corollary 1: The equation x2 + bx + a = 0 with b # 0 is solvable over GF(2") iff

Example 1: Let (Y be a primitive element in GF(24). Then the equation x2+x+a3 = 0 has no solution in ~ ~ ( 2 4 ) since t r (4 = (a3)2" + ( a ~ ) ~ ' +((r3)'*+ ( ~ 3 ) ' ~ = a3+a6+a9+a12 = 1. Lemma 6: Let x i , yi E GF(2m) with ( x i , y;) # ( x j , yj) for i, j = 1, 2, 3 and i # j . If

tT (5) = 0.

ix: 5 2 1 x+o.

Y1 Y2 Y3

then 1 ) x1 = 2 2 = 23 or y1 = y2 = y3 but not both. Or 2 ) xi # x j and y; # y j for all i # j and x ; = ky; + A for i = 1,2, 3 and some

k, A E GF(2"). Proof: Suppose condition 1) is not true. Then the following two cases may happen.

a) There exist distinct i , j , k such that 2; = x j # xk, or y; = yj # Y k .

b) xi # xj and y; # y j for i # j .

Page 4: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

Session 8: Self Checking and Coding Techniques 281

First we show a) can not happen. Otherwise, without loss of generality, let z1 = 22 + 23. Multiply the first row of the determinant by 21 and y1 then add to the second row and the third row, respectively. By our hypothesis, the result will be

I I

1 1 0 0 x3 - 21 = (23 - 2 1 ) (y2 - y1) = 0. 0 Y2 - Y1 Y3 - Y1

That implies y1 = y2. Contradiction ( (ti, yi) # (xj, yj) ). Now, 2; and yi are pairwise distinct, respectively. Do the same operations to the

determinant as in a), we obtain the following

1 1

0 312 - Y1 Y3 - Y1

which implies 2 2 - 21 - 23 - 21

Yz - Y1 Y3 - Y1 - k ,

for some k E GF(2m). Solve the above equation for XI, 2 2 and x3 then we have the following

21 = kY1 + (21 - ICY,), $2 = kY2 + (21 - kYl), 23 = kY3 + (21 - kYl),

and this completes the proof by denoting A = 21 - kyl.

3 Code Constructions

This section will be divided into two parts. First we introduce the basic construction of the parity check matrix H from which Chen’s results can be achieved. Then we generalize the H to obtain the better performance codes.

3.1 Basic Constructions

Having enough mathematical preliminaries in section 2, a straight forward application of Lemma 4, Lemma 5 and Lemma 6 will lead us to our first result. Theorem 1: The code defined by the following parity check matrix is an SbEC-DbED code over GF(q), where q = 2b. The code length is n = q2.

where 2, E GF(q) with (xi, yi) # (zj, yj) for all i # j , and f ( z , y) = xz + yz + cxy in which c E GF(q) is chosen such that the equation x 2 f cx + 1 = 0 has no solution in GF(q). Proof Equivalently, we need to show the code defined by HI is a distance 4 code. To that end, we will show that any 3 columns of H1 are linearly independent. Let

1 1 ... 1

Yz ... Yn f (21, Y1) f(% Y2) ... f (xn, Y n )

Page 5: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

282 International Workshop on Defect a n d Fault Tolerance in VLSI Systems

Without loss of generality, consider the first 3 columns, we have the following submatrix

1 1 1

Y l YZ Y3

of Hi

D = [ x1 XZ

x: t Y; t C X l Y l x; + Y; + CXZYZ x: + Y: t cx3y3 Assume that the rank of D is less than 3. Then the 3 columns of D are linearly dependent. Hence

Y1 Yz Y3

By Lemma 6, two conditions may happen. If 1) happens then we assume that x1 = x2 = 53

( y1 = y2 = y3 is the same situation by symmetry ). In this case, yi are pairwise distinct. Multiply the second row and the third row of D by x1 and ex1 respectively and add the results to the third row. Then D became to

Clearly, the first row, the third row and the fourth row of the result matrix form a full rank Vandermonde matrix as a submatrix of D. Thus D is also in full rank. Contradiction.

Now, assume that 2) occurred. Then each member in the last row of D can be formulated as

f (Xi,yi) = x:+Y? +criyj = (kyi + A ) ~ +y? +c(kyj + A) yj = (k2 + ck- + 1) y ; + c ~ y i + A ~ .

Obviously, we can get rid of CAY; + A' from each member in the last row by adding the results of the first row multiplying by A' and the third row by CA, respectively. The matrix D then became

1 1 1

EY: EY; EY,2 where E = k2 t ck + 1. Consider the determinant of the submatrix formed by the first, the second and the fourth row, we get the following

1 1 1

EY? EYzZ EY,2 Since a choice of c to make E # 0 is guaranteed by Lemma 4, the above determinant is not 0 and hence rank (D) = 3. Contradiction.

Combine the above discussion we showed the first part of the theorem. Since x and y are arbitrarily chosen from GF(y), the code length is y2 and this completes the proof.

For more understanding the structure of the H1 in Theorem 1, we can actually arrange its columns in the following pattern

1 1 1 ... 1 ... 1 1 ... x9 2 1 ... x9 xq ...

Y1 Yz ... Yq ... Y l Y2 ... Y9 f ( x l , y l ) f(xl,Yz) .' ' f(xl>Yq) ". '*'.f(xq?Y1) f(Xq,YZ) '.. f(xq>Yq)

Page 6: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

Session 8: Self Checking a n d Coding Techniques 283

A concrete example is shown below. Example 2: In Theorem 1, let q = 2, b = 2 and GF(22) = {0,1, a, a2} , where a is a root of the primitive polynomial x2 f z -I- 1. Select c as a to satisfy that x2 f ax f 1 unsolvable in GF(22). Then we obtain a (32,24) S2EC-D2ED code as the following.

0 0 0 0 1 1 1 1 a a a a a Z a 2 a 2 a 2

0 1 a a 2 0 1 a a 2 0 1 a a ~ 0 1 a a 2 '

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

0 1 a2 a 1 a 1 a a 1 1 a2 a a aZa2 ' I H = [ Based on the construction having four rows in the H matrix in Theorem 1, the more

general type of codes having 3m f 1 rows in the H can be constructed in the next theorem. For convenience, we use some notations and terminologies to make the description easier. Let x ( ~ ) = (z,z,. ... x), and

21 2 1 ... $1 *.. 2 1 21 ... Go = YI ~2 Yq . * * Y1 Yz ..* q, [ A1 A2 ... A, ... Aqa-s+l An2-q+2 ... Aq2

w h e r e z i , y i E G F ( q ) a n d A ; = f ( x ; , y i ) = z ~ f y ~ $ c x i y , f o r i = 1,2,.. . ,q.Theconstant c is chosen the same way as in Theorem 1. We say Go is a parity check layer of 3 rows.

By these notations, HI can be written as H1 = [I::] . we say H1 is an one-layer parity

checkmatrix. In general, H1 can be extended to include m layers of checks. Theorem 2: An SbEC-DbED code of code length n = q2, with 3m f 1 check bytes over GF(q), where q = 2', can be achieved by defining the H matrix as below

Proof: It is easy to see that the code length is q2". We will show the distance of the code is 4 by mathematical induction.

Clearly, the statement is true for m = 1 by Theorem 1. Suppose the result is true for m - 1 layers of checks. Now, consider the situation of

m layers. Select any three columns from H,. If all columns are from one single blocked column of H , then the three columns without the first layer are linearly independent in the submatrix Hm-l of H,,, by induction hypothesis and hence they are linearly independent in H,. If the three columns are not from a single blocked column then they must be from three distinct blocked columns by Lemma 6. Then the first four rows form a submatrix of the three columns. By a similar discussion as in Theorem 1, the three columns are linearly independent and this completes the proof.

Page 7: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

284 International Workshop on Defect and Fault Tolerance in VLSI Systems

Remark: Theorem 2 gives the same results as Chen obtained. Next, let us investigate a simple example with the case m = 2 in Theorem 2.

Example 3: Let the conditions be the same as in Example 2. The following H defines a (512, 505) SbEC-DbED code. H =

o ( x 6 ) 1 ( x 6 ) , ( * 6 ) ( a 2 ) ( x 6 ) o(16) 1(Is) J16) ( a 2 ) ( ' 6 ) . . . o(16) 0(16) o ( & 6 ) o ( ' 6 ) 1(16) 1 i ~ 6 ) 1(16) 1(16) . . . (,2)(") ( u z ) ( 1 6 ) ( a Z ) ( ' 6 ) ( a z ) ( ' 6 )

o ( ' 6 ) l ( 2 S )

l ( , s ) 1( *6 ) I ( x 6 ) 1(x6) 1(16) l i ~ h ) 1(16) 1('6) . . 1('6) 1('6) 1('6) 1('6)

o ( * 6 ) 1(=6) , ( ' 6 ) i( '6) e(16) 1cL6) dX6) . . . ,(Is) ,(I6) u t , U : , . . . . . . . . , , . . . . . . . . . . . . . . . . . . . . . . . . . . ... Go Go G o Go

0 0 0 0 1 1 1 1 a a c y c y c y z c y z ~ 2

0 1 cy2 a 1 0 1 1 cy cy 1 1 cyz cy cy a2 a2

. . . Go Go Go Go . ." . .

where

0 1 cy cy2 0 1 cy cy2 0 1 cy cy2 0 1 a: z']. 3.2 Extended Constructions

Having the basic construction in hand, we now can extend the code length by appending a column to the parity check matrix without loss error correcting capability. Theorem 3: Let all the conditions be the same as in Theorem 1. Then an S b EC-DbED code with code length q2 + 1 can be obtained by defining the parity check matrix as follows.

The proof is similar to that of Theorem 1 and hence omitted. Following the idea presented in the basic construction, one may naturally ask whether

we can extend the above matrix to involve more rows to get a larger code length as we did in Theorem 2. The answer is positive by following Theorem 2. But if we go to the detail of the construction in Theorem 2 with H; we will find that some redundant columns will appear. Theorem 4: The following procedure generates the H; which defines an SbEC-DbED code

over GF(q) of code length n = (q2 + l)m - with 3m + 1 check bytes, where p = a b .

PROCEDURE: STEP 1: i = 1 ; HG = H;. STEP 2: If i < m then a): Expanding each column

Page 8: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

Proof: Since the distance is clearly 4 by a similar proof as in Theorem 2, we only need to show the code length part. As can be seen from the above example and the construction method, from to Hf, two identical rows will be produced from the last two columns of the matrices corresponding to the first column and the last column of the Ht-l , respectively. Removing one of them from Hi*, we obtain the recurrence relation f ( i f 1) = f (i) (q2 f 1) - 1 , where f ( i ) is the number of columns of Hf. Without too much effort, we can Solve the recurrence relation to reach the required result and this completes the proof.

3.3 Construction of DbEC Codes

Following the idea in Theorem 1, the DbEC codes can be constructed as follows. Theorem 5: The following parity check matrix H defines a DbEC code over GF(q), where q = 2*, with code length N = q2.

H = [ . . . , ( 1 , s i . ~ ~ , a : , a i , ~ i , ~ ~ , f ( r i , ~ i ) ) T , . . . ] T ,

where z;, yi E GF(q) with (z;,yi) # (zj, yj) for all i # j , and f(zi, yi) = 27 f y: + c;ztyi f czziy," in which c1, c2 E GF(q) are chosen such that the equation zg+y;+ciz:y;fczziy? = 0 has no solution in GF(q).

The codes obtained in Theorem 1 have 4 check bytes and the codes obtained in Theo- rem 2 have 7 check bytes, Codes with longer block lengths can be constructed by adding more check bytes. As we indicated in the introduction, In general, we have N = (q2 t 1)" - [v, simply N = (q2 + l)m + 6, for the code length of the SbEC-DbED codes with 3m f 1 check bytes and N = (q2 + l)m - I - ( for the code length of the DbEC codes with 6m f 1 check bytes, respectively.

4 Evaluation and Conclusion

With 3mf 1 check bytes, the maximum code length using Chen's construction is q2". While the code proposed in Theorem 2 of this paper provided a code length of n = (q2 + - w, simply n = (q2 + 1)" f 6. To see how this increment 6 affects the code length, we can look at the following table.

Page 9: [IEEE Comput. Soc. Press International Workshop on Defect and Fault Tolerance in VLSI - Lafayette, LA, USA (13-15 Nov. 1995)] Proceedings of International Workshop on Defect and Fault

286 International Workshop on Defect a n d Faul t Tolerance in VLSI Systems

The proposed codes in this paper improve Chen’s codes has been seen from Theorem 2 and the above table. However, like Chen’s codes, the codes presented in this paper has a restriction on the number of check bytes, that is ( r - 1) 0 (mod 3). Following the idea of this paper, more general construction methods can be considered when ( r - 1) G 2 ( m o d 3 ) .

References

[l] E. R. Berlekamp, Algebraic Coding Theory, New York, McGraw-Hill, 1968.

[2] C. L. Chen, Byte-Orientated Emr-Correcting Codes with Byte Error-Detection Capa- bility, IEEE Transactions on Computers, C-35(7): 646-48, 1986.

[3] C. L. Chen, Error-Correcting Codes for Byte-Otycanized Memory Systems, IEEE Trans- actions on Information Theory, IT-32(3): 181-85, 1986.

[4] C. L. Chen, Fault-tolerant memory design in the IBM application system/400, Dig, FTCS-21, pp. 393-400, June, 1991.

[5] C. L. Chen and M. Y. Hsiao, Error-correcting codes for semiconductor memory ap- plications: A state of the art review, IBM J. Res. Dev., Vol. 28, pp. 124-134, Mar, 1984.

[6] M. Y . Hsiao, A C ~ Q S S of optimal minimum odd-weight-column SEC-DED codes, IBM J. Res. Dev. Vol 14, pp. 395-401, July, 1970

[7] C. R. P. Hartmann and K. K. Tzeng, Generalizations of the BCH bound, Inform. Contr., Vol. 20, pp. 489-498, June 1972.

[8] S. Kaneda anuFE. Fujiwara, Single Byte Error Correcting-Double Byte Error Detecting Codes for Memory Systems, IEEE Transactions on Computers, C-31(7): 596-602,1982.

[9] F. J. Macwilliams and N. J. A. Sloane, The Theory of Error Correcting Codes, Elsevier Science Publishers B.V., P.O. Box 1991, 1000 BZ Amsterdam, The Netherlands, 1977.

[lo] Rao,T.R.N. and Fijiwara,E., Error-Control Coding for Computer Systems, Prentice- Hall, Englewood Cliffs, New Jersey, 1989.

[ll] T. Verhoeff, An update table of minimum-distance bounds for binary linear codes, IEEE Trans.1nform. Theory, Vol. IT-33, No. 5, pp. 665-680, Sept, 1987.

[12] J. K. Wolf, Adding Two Information Symbols to Certain Nonbinary BCH Codes and Some Applications, Bell Syst. Tech. Journal, Sept.: 2405-2424, 1969.