Presentation is loading. Please wait.

Presentation is loading. Please wait.

CHAPTER 8 CHANNEL CODING: PART 3 Sajina Pradhan 20127748.

Similar presentations


Presentation on theme: "CHAPTER 8 CHANNEL CODING: PART 3 Sajina Pradhan 20127748."— Presentation transcript:

1 CHAPTER 8 CHANNEL CODING: PART 3 Sajina Pradhan 20127748

2 Contents 8.1 Reed-Solomon Codes 8.1.1 Reed-Solomon Error Probability 8.1.2 Why R-S Codes Perform Well Against Burst Noise 8.1.3 R-S Performance as a Function of Size, Redundancy, and Code Rate 8.1.4 Finite Fields 8.1.5 Reed-Solomon Encoding 8.1.6 Reed-Solomon Decoding

3 Reed-Solomon (R-S) Codes  R-S codes are non binary cyclic codes with symbols made up of m-bit sequences, where m is any positive integer having a value greater than 2.  R-S ( n,k) codes on m-bit symbols exist for all n and k. where  For conventional R-S ( n, k) code where kthe number of data symbols being encoded nthe total number of code symbols in the encoded block t the symbol-error correcting capability of the code n- k = 2tthe number of parity symbol

4 Reed-Solomon (R-S) Codes  For R-S codes the code minimum distance is given by  The erasure-correcting capability of the code is  Error-correction and erasure-correction capability can be expressed by the requirement that  where α the number of symbol error patterns that can be corrected ϒ the number of symbol erasure patterns that can be corrected

5 Reed-Solomon Error Probability  R-S decoded symbol error probability P E in terms of the channel symbol error probability, p is given as where  The relation between bit error probability P B and R-S decoded symbol error probability P E is given by mpositive integer having a value greater than 2 tthe symbol-error correcting capability of the code Figure P B vs. p for various t-error- correcting 32-ary orthogonal R-S codes with n=31

6 Reed-Solomon Error Probability  P B versus E b /N 0 performance of several n =31 for a coded system using 32-ary MFSK modulation and non coherent demodulation over an AWGN channel is shown in figure.  For R-S codes, error probability is an exponentially decreasing function of block length n and decoding complexity is proportional to small power of the block length.

7 Why R-S Codes Perform Well Against Burst Noise  Consider an (n,k) R-S code  25 contiguous bits noise burst must disturb exactly 4 symbols  R-S decoder will correct a byte, it replaces the incorrect byte with the correct one, whether the error was caused by one bit being corrupted or all 8 bits being corrupted which is a tremendous burst-noise advantage over binary codes. nthe total number of code symbols in the encoded block255 kthe number of data symbols being encoded247 meach symbol (bits)8 n-k=2tthe erasure-correcting capability of the code8 bits=1byte tthe symbol-error correcting capability of the code4

8 R-S Performance as a Function of Size For code to successfully combat the effects of noise, the noise duration has to represent a relatively small percentage of the code word. This happens, when the received noise should be averaged over a long period of time. Hence, one can expect that error –correcting codes become more efficient (error performance improves) as the code block size increases. It can be seen from figure for the family of curves where the rate of code is 7/8 constant while its block size increases from n=32 symbols (with m=5 bits per symbol) to n=256 symbols ( with m=8 bits per symbol). Thus, the block size increases from 160(32*5) bits to 2048(256*8)bits.

9 R-S Performance as a Function of Redundancy As the redundancy of an R-S code increases, its implementation grows in complexity and also grows in bandwidth expansion. But, the benefit of increased redundancy is the improvement in bit-error performance which can be seen from figure where code length n is held constant 64 and redundancy increases from 4 to 60 symbols.

10 R-S Performance as a Function of Code Rate As the rate of a code varies from minimum to maximum (0 to 1), the performance curves for BPSK modulation and an R-S (31,k) code for various channel types are shown in figure. The curve shows the clear optimum code rates which minimize the required E b /N 0. 0.6-0.7 0.5 0.3

11 Finite Fields / Galois Fields (GF) To understand the encoding and decoding principles of non binary codes like R-S code it is necessary to know the area of finite field known as Galois Field (GF). For any prime number p there exists a finite field and is denoted by GF(p), containing p elements. An extension field of GF(p) is denoted by GF(p m ) where m is a non zero positive integer. In construction of R-S codes, the extension field GF(2 m ) symbol are used. Each non zero element in GP(2 m ) can be represented by a power of α. An infinite set of elements, The elements of the finite field GF(2 m ) is given by

12 Addition in the Extension Field GF(2 m ) Each of the nonzero elements of GF(2 m ) is denoted by a polynomial of degree m-1 or less α i (X), where at least one of the m coefficients of α i (X) is nonzero. Addition of two elements of the finite field is defined as the modulo-2 sum of each of the polynomial coefficients of like powers, i.e., Benefit of using extension field elements in place of binary elements is the compact notation that facilitates the mathematical representation of non binary encoding and decoding processes. The case of m=3,where the finite field is denoted by F(2 m ). Each row in fig. mapping comprises a sequence of binary values representing the coefficients as α i,0, α i,1 and α i,2 as in equation.

13 A Primitive Polynomial is Used to Defined the Finite Field A class of polynomials called primitive polynomials because such functions define the finite fields of GF(2 m ) which in turn are needed to define R-S codes. The necessary and sufficient condition that a polynomial is primitive is as given below An irreducible polynomial, f(X), of degree m is said to be primitive, if the smallest positive integer n for which f(X) divides X n +1 is n =2 m -1. Polynomial will usually be shown low order to high order.

14 List of Primitive Polynomials

15 The Extension Field GF(2 3 )  Degree of polynomial, m = 3  GF(2 3 ) =GF(8) f(X) = 1 + X + X 3 = 0 X  α f(α) = 0 1 + α + α 3 = 0 α 3 = -1- α  α 3 = 1+ α  in binary field +1=-1 α 4 = α. α 3 = α.(1+ α ) = α + α 2, α 5 = α. α 4 = α.(α + α 2 ) = α 2 + α 3 = 1+ α + α 2 α 6 = α. α 5 = α.(1+ α + α 2 ) = α + α 2 + α 3 = 1+ α 2 α 7 = α. α 6 = α.(1+ α 2 ) = α + α 3 = 1 = α 0  The eight finite field elements of GF(2 3 )are GF(2 3 ) = {0, α 0, α 1, α 2, α 3, α 4, α 5, α 6 }

16 The Extension Field GF(2 3 ) For GF(2 3 ) finite field, two arithmetic operations, addition and multiplication can be defined. α + α = α - α =0 α. α = α

17 A Simple Test to Determine if a Polynomial is Primitive For an irreducible polynomial to be a primitive polynomial, at least one of its roots must be a primitive elements. A primitive elements is one that when raised to higher order exponents will yield all the non zero elements in the field. Since the field is a finite field, the number of such elements is finite.

18 Reed-Solomon Encoding R-S ( n,k) codes, The generating polynomial for an R-S code takes the following form g(X)=g 0 + g 1 X + g 2 X 2 + …+ g 2t-1 X 2t-1 + x 2t Consider RS(7,3)  n=7,k=3, n-k=4 The generator polynomial in terms of its 2t=n-k=4 roots is described as follows This format is from low order to higher order, and changing negative signs to positive since in the binary field +1=-1 g(X)=(X - α)(X - α 2 )(X - α 3 )(X - α 4 ) g(X)=(X 2 - (α + α 2 ) X + α 3 ) (X 2 - (α 3 + α 4 )X + α 7 ) g(X)=(X 2 - α 4 X + α 3 ) (X 2 - α 6 X + α 0 ) g(X)=X 4 - α 3 X 3 + α 0 X 2 - α 1 X + α 3 = α 3 + α 1 X + α 0 X 2 + α 3 X 3 + X 4

19 Encoding in Systematic Form Encoding in systematic form is analogous to the binary encoding procedure as in chapter 6. X n-k.m(X) = q(X).g(X) + p(X) where m(X)= polynomial message p(X)= parity polynomial g(X)= generator polynomial q(X)= quotient polynomial As in the binary case, the remainder is the parity above equation can be written p(X) = X n-k.m(X) mod g(X) Therefore, the resulting code word polynomial : U(X) = p(X) + X n-k.m(X)

20 Encoding in Systematic Form  Consider RS(7,3), GF(2 3 )  Three symbol message =010 110 111= α 1 α 3 α 5  polynomial message, m(X) = α 1 + α 3 X + α 5 X 2 X n-k = X 4 X n-k m(X) = α 1 X 4 + α 3 X 5 + α 5 x 6 generator polynomial, g(X) = α 3 + α 1 X + α 0 X 2 + α 3 X 3 + X 4 parity polynomial, p(X) = X n-k.m(X) mod g(X) p(X) = α 0 + α 2 X + α 4 X 2 + α 6 X 3 Code word polynomial, U(X) = p(X) + X n-k.m(X) U(X) = α 0 + α 2 X + α 4 X 2 + α 6 X 3 + α 1 X 4 + α 3 X 5 + α 5 X 6 U(X) = (100) + (001) X + (011)X 2 + (101)X 3 + (010)X 4 + (110)X 5 + (111)X 6 Code word : 100 001 011 101 010 110 111

21 Reed-Solomon Decoding Error Pattern, e(X) = 0+ 0X + 0X 2 + α 2 X 3 + α 5 X 4 + 0X 5 + 0X 6 e(X) = (000) + (000) X + (000)X 2 + (001)X 3 + (111)X 4 + (000)X 5 + (000)X 6 Received Pattern, r(X) = U(X) + e(X) Code word sent : 100 001 011 101 010 110 111 Code word received : 100 001 011 100 101 110 111 r(X) = (100) + (001) X + (011)X 2 + (100)X 3 + (101)X 4 + (110)X 5 +(111)X 6 r(X) = α 0 + α 2 X + α 4 X 2 + α 0 X 3 + α 6 X 4 + α 3 X 5 + α 5 X 6

22 Syndrome Computation Syndrome is the result of a parity check performed on r to determine whether r is a valid member of the code word set. If in fact r is a member, then the syndrome S has value 0. Any non zero value of S indicates the presence of errors. The syndrome S is made up of n-k symbols,{S i }(i=1,…,n-k). The computation of a syndrome symbol can be described as

23 Syndrome Computation  r(X) = α 0 + α 2 X + α 4 X 2 + α 0 X 3 + α 6 X 4 + α 3 X 5 + α 5 X 6  RS(7,3)  n = 7, k = 3  { Si }, i = 1..n-k = 1..4 S 1 = r( α ) = α 0 + α 3 + α 6 + α 3 + α 10 + α 8 + α 11 = α 3 S 2 = r( α 2 ) = α 0 + α 4 + α 8 + α 6 + α 14 + α 13 + α 17 = α 5 S 3 = r( α 3 ) = α 0 + α 5 + α 10 + α 9 + α 18 + α 18 + α 23 = α 6 S 4 = r( α 4 ) = α 0 + α 6 + α 12 + α 12 + α 22 + α 23 + α 29 = 0 ∑Si ≠ 0  code word contains an error.

24 Error Location Suppose there are v errors in the code word at location where the indices 1,2,…,v refers to the 1 st,2 nd,…,v th errors and index j refers to the error location. Then Error polynomial : An error locator number : where l=1,2,…,v Substituting α i into the received polynomial for i=1,2,…,2t, we get n-k=2t syndrome symbols :

25 Error Location An error –locator polynomial can be defined as σ(X) = (1+β 1 X) (1+β 2 X)… (1+β v X) = 1 + σ 1 X + σ 2 X 2 + …+ σ v X v The roots of σ(X) are 1/ β 1,1/ β 2,…,1/ β v. The reciprocal of the roots of σ(X) are the error-location number of the error pattern e(X). Using autoregressive modeling techniques, a matrix from the syndromes is formed, where the first t syndromes are used to predict the next syndrome i.e.

26 For R-S(7,3)code, the matrix size of 2 X 2, the model is written: To solve the coefficients σ 1 and σ 2 of the error-locator polynomial σ(X),the inverse of a matrix is Inv[A] = cofactor[A]/det[A] The error-locator polynomial Error Location Example

27 Error Location The roots of σ(X) are the reciprocals of the error locations. Once these roots are located, the error locations will be known. Any element X that σ(X) =0 is a root, allows to locate an error. The roots of σ(X) are 1/ β 1,1/ β 2,…,1/ β v. The reciprocal of the roots of σ(X) are the error-location number of the error pattern e(X).

28 Error Value From Syndrome Equation So we can write the matrix equations Calculate error value e 1 and e 2 So we get,

29 Correcting the received polynomial with Estimates of the Error Polynomial The estimated error polynomial: Then we get, r(X) = (100) + (001) X + (011)X 2 + (100)X 3 + (101)X 4 + (110)X 5 + (111)X 6 ê(X) = (000) + (000) X + (000)X 2 + (001)X 3 + (111)X 4 + (000)X 5 + (000)X 6 Û(X) = (100) + (001) X + (011)X 2 + (101)X 3 + (010)X 4 + (110)X 5 + (111)X 6 Because the message constitutes rightmost symbol k = 3 symbols, then the decoded message = 010 110 111= α 1 α 3 α 5, which is exactly the encoded message.

30 Question Why a class of polynomials is called primitive polynomials? What is the necessary and sufficient condition that polynomial is primitive?


Download ppt "CHAPTER 8 CHANNEL CODING: PART 3 Sajina Pradhan 20127748."

Similar presentations


Ads by Google