Sei sulla pagina 1di 14

Lecture 16

Non-Binary BCH Codes

Introduction
For any choice of positive integers s and t, there exists a q-ary BCH code of length n=qs -1 This code is capable of correcting any combination of t or fewer errors This requires no more than 2st parity check digits

Generator Polynomial
Let be a primitive element in GF(qs). The generator polynomial g(x) of a t error correcting q-ary BCH code is the polynomial of lowest degree with coefficients from GF(q) for which , 2 ,......., 2t are roots. i Let i ( x) be the minimal polynomial of . Then

g ( x) = LCM{1 ( x), 2 ( x),......., 2t ( x)}

The degree of each minimal polynomial is s or less. Hence the degree of g(x) is atmost 2st. Therefore the no. of parity check digits of the code generated by g(x) is no more than 2st. q=2 corresponds to

binary BCH code.

The special sub-class of q-ary BCH codes for which s=1 is the most important type of q-ary BCH code. These codes are called Reed-Solomon codes in honor of their discoverers.

Reed-Solomon codes
A t error correcting R-S code with symbols from GF(q) has the following parameters Block length: n = q-1 No. of parity-check digits: n-k = 2t Minimum Distance: = 2t+1 ie.The length of the code is one less than the size of code symbols and the minum distance is one greater than the number of parity-check digits We generally use R-S codes with code symbols from GF(2m). (ie. q =2m).

Generator Polynomial
The minimal polynomial over GF(q) of an element in the same field GF(q) is

f ( x) = x
For a t error correcting R-S Code, the generator polynomial is

g ( x) = ( x )( x
j0

j0 +1

)........( x

j0 + 2 t 1

Any value of j0 can be used for an R-S code but j0=1 is conventional. Some clever choices can be made for easy circuit implementations.

The degree of the generator polynomial is always 2t. Hence a Reed-Solomon code satisfies n k=2t

Construction of g(x): Examples


(i) n=15, t=2 Since t=2, n-k=2x2=4. So this is a (15,11) code. The coefficients of generator polynomial will be elements from GF(16). Let j0=1.

g ( x) = ( x )( x 2 )( x 3 )( x 4 ) = x 4 + ( z 3 + z 2 + 1) x3 + ( z 3 + z 2 ) x 2 + z 3 x + ( z 2 + z + 1) = x 4 + 13 x 3 + 6 x 2 + 3 x + 10
The field elements of GF(16) are expressed as polynomials in z

An information polynomial is a sequence of eleven 16-ary(hexadecimal) symbols (equivalent to 44 bits). (ii) n=7, t=2 This is R-S code over GF(8) Let j0= 4 4 5 6 0

g ( x) = ( x )( x )( x )( x )
4 2 3 2 2

= x + ( z + 1) x + ( z + 1) x + ( z + 1) x + z = x + x + x + x +
4 6 3 6 2 3

The field elements of GF(8) are expressed as polynomials in z

Here n k =2t=4 .Hence k=3.An information polynomial is a sequence of three 8-ary(octal) symbols (equivalent to 9 bits). Eg: Let the information polynomial be

m( x) = ( z + z ) x + x + ( z + 1)
2 2

Then the non-systematic codeword is

c ( x ) = m( x ) g ( x ) = ( x + x + )( x + x + x + x + )
4 2 3 4 6 3 6 2 3

= 4 x 6 + x5 + 6 x 4 + 0 x3 + 0 x 2 + 5 x + 4
This is a sequence of seven octal symbols

Special feature
Reed-Solomon code is a MaximumDistance code. The minimum distance dmin= n k+1 ie. R-S code satisfies the Singleton bound with equality. This means that for a fixed (n,k), no code can have a larger minimum distance than a Reed-Solomon code.

Potrebbero piacerti anche