15.01.2013 Views

U. Glaeser

U. Glaeser

U. Glaeser

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

We leave as an exercise proving that Algorithm 2 produces indeed a codeword in C.<br />

Example 7 Consider the [7,4] cyclic code over GF(2) of Example 6. If we want to encode systematically<br />

the information vector = (1, 0, 0, 1) (or u(x) = 1 + x 3 ), we have to obtain first the residue of dividing<br />

x 3 u(x) = x 3 + x 6 by g(x). This residue is r(x) = x + x 2 . Hence, the output of the encoder is c(x) = u(x) −<br />

x 4 r(x) = 1 + x 3 + x 5 + x 6 u<br />

. In vector form, this gives c = (1 0 0 1 0 1 1). �<br />

Reed Solomon Codes<br />

Throughout this subsection, the codes considered are over the field GF(2 ν ). Let α be a primitive element<br />

in GF(2 ν ), i.e., = 1, α i ≠ 1 for i � 0 mod 2 ν − 1. A Reed–Solomon (RS) code of length n = 2 ν α − 1<br />

and dimension k is the cyclic code generated by<br />

2ν −1<br />

Each α i is a root of unity, x − α i divides x n − 1, hence, g divides x n − 1 and the code is cyclic.<br />

An equivalent way of describing a RS code is as the set of polynomials over GF(2 ν ) of degree ≤ n − 1<br />

with roots α, α 2 ,…,α n−k , i.e., F is in the code if and only if deg(F) ≤ n − 1 and F(α) = F(α 2 ) = … =<br />

F(α n−k ) = 0.<br />

This property allows us to find a parity check matrix for a RS code. Say that F(x) = F 0 + F 1x +…+<br />

F n−1x n−1 is in the code. Let 1 ≤ i ≤ n − k, then<br />

© 2002 by CRC Press LLC<br />

g( x)<br />

= x – α<br />

F α i<br />

( ) x α 2<br />

( – )…xα n−k−1<br />

( – ) x α n−k<br />

–<br />

i( n−1)<br />

( )<br />

( ) F0 F1α i = + + … + Fn−1α = 0<br />

(34.58)<br />

In other words, Eq. (34.58) tells us that codeword (F 0, F 1,…, F n−1) is orthogonal to the vectors (1, α i ,<br />

α 2i ,…, α i(n−1) ), 1 ≤ i ≤ n − k. Hence, these vectors are the rows of a parity check matrix for the RS code.<br />

A parity check matrix of an [n, k] RS code over GF(2 ν ) is then<br />

H<br />

1 α α 2 K α n−1<br />

1 α 2<br />

α 4 2( n−1 )<br />

K α<br />

M M M O M<br />

1 α n−k α n−k ( )2 K α n−k<br />

⎛ ⎞<br />

⎜ ⎟<br />

⎜ ⎟<br />

= ⎜ ⎟<br />

⎜ ⎟<br />

⎜ ⎟<br />

⎜ ( ) ( n−1 ) ⎟<br />

⎝ ⎠<br />

(34.59)<br />

In order to show that H is in fact a parity check matrix, we need to prove that the rows of H are linearly<br />

independent. The next lemma provides an even stronger result.<br />

Lemma 6 Any set of n − k columns in matrix H defined by Eq. (34.59) is linearly independent.<br />

Proof: Take a set 0 ≤ i1 < i2 < … < in−k ≤ n − 1 of columns of H. Denote by αj, 1 ≤ j ≤ n − k. Columns<br />

i1, i2, … , in−k are linearly independent if and only if their determinant is nonzero, i.e., if and only if<br />

α 1 α 2 K α n−k<br />

α i j<br />

( α1) det<br />

2<br />

( α2) 2<br />

K ( αn−k ) 2<br />

M M O M<br />

( α1) n−k<br />

( α2) n−k<br />

K ( αn−k ) n−k<br />

⎛ ⎞<br />

⎜ ⎟<br />

⎜ ⎟<br />

⎜ ⎟ ≠<br />

0<br />

⎜ ⎟<br />

⎜ ⎟<br />

⎜ ⎟<br />

⎝ ⎠<br />

(34.60)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!