Solutions or answers to Final exam in Error Control Coding, October, Solution to Problem a) G(D) = ( +D, +D + D ) b) The rate R =/ and ν i = ν = m =. c) Yes, since gcd ( +D, +D + D ) =+D + D D j. d) An equivalent encoding matrix is G eqv = ( +D, +D + D ) which is non-catastrophic, thus suitable. Its observer canonical form is: d + v t u t d + d + v t Solution to Problem a) It is an (N,K) =(, ) code, so K =is the number of codewords. b) An equivalent generator matrix is given by: G eqv = This gives the generator polynomial FromTheorem.6inthebookwehave: Since g(x) =+X + X + X + X + X 8 + X. If g(x) is a polynomial of degree N K and is a factor of X N +,theng(x) generates an (N,K) cyclic code. we verify that it is a cyclic code. X +=(X + X + X +) g(x) c) From the solution to Problem.6 in the book we get Pr{bit 7 in a codeword is a } =/.
Solutions or answers to Final exam in Error Control Coding, October, Solution to Problem a) The overall rate is R system =.979 db. b) First we calculate the metric. From the problem we know that E b N =db. This together with the overall rate gives the transition probabilities when E s /N =.98 db, and from these we get the metric. 6 7 -.98 db.897.6.9..98.68.6.698 μ V 88 We know that u t u t+ u t+ u t+ is the input to the convolutional encoder, hence, the possible ending, and starting, states is one of the following: σ start = σ end {,,, } So, there is four decoding cases to be considered for this tailbiting code. Case: σ start = σ end = t = 6 7 6 7 86 9 96
Solutions or answers to Final exam in Error Control Coding, October, Case: σ start = σ end = t = 7 6 7 6 6 9 7 96 8 96 8 Case: σ start = σ end = t = 6 7 6 7 8 6 8 8 89 86 6
Solutions or answers to Final exam in Error Control Coding, October, Case: σ start = σ end = t = 6 7 6 7 8 86 7 6 7 6 Best result, i.e., highest ending metric (=89) is for the case σ start = σ end =. This gives the decoded sequence û =.
Solutions or answers to Final exam in Error Control Coding, October, Solution to Problem First we specify the structure of F = {,,t,+t, t, +t,t+ t, +t + t }. If we choose α = t and the irreduceable polynomial a(t) =+t+t we get the multiplication table: i α i Polynomial Binary Octal α t α t α + t 6 α t+ t α + t+ t 7 6 α 6 + t a) The number of codewords in C 6 is given by ( 6 ) K =( 6 ) = 8 b) The number of codewords in C is given by ( ) K ( ) K =( ) ( ) = 8, i.e., the same number of codewords as C 6. c) ThebestcodeisC. It is capable of correcting all errors which are corrected by the code C 6. In addition to this, it can correct errors which are not corrected by the code C 6.Asanexample of this we have the binary error pattern:... For the C 6 code this is an tripple error but for each of the sub-codes of C, i.e., both for the left code l = l l...l 6 and for the right code r = r r...r 6, the error pattern will be double errors. d) The degree of the generator polynomial g(x) = N K i= ( X ω i ) is N K =, and the degree of the parity-check-polynomial h(x) = N N K+ ( X ω i ) is K =. Hence, we will select the structure of the encoder based on h(x) to fulfill the requirement as few delay elements as possible. We select ω = α and get h(x) = ( X + α )( X + α 6)( X + α 7) = = ( X + ( α + α 6) X + α ) (X +)= ( X + αx + α ) (X +)= = X +(α +)X + ( α + α ) X + α = X + α X + α X + α From this we get the systematic encoder which is a linear feedback shift register with the connection polynomial Λ(X) =X h( X )=+α X + α X + α X.
Solutions or answers to Final exam in Error Control Coding, October, 6 e) We will show how a nonzero codeword is created with the encoder by exemplyfing with a sub-codeword r = r r...r 6. Here we assume that r 6 is the first symbol leaving the encoder. From the connection polynomial we get the feedback to the shift register r i = α r i+ + α r i+ + α r i+. Assume we have the non-zero message u = α α α, where the rightmost α is the first symbol entering the encoder. Hence, r r r 6 = α α α since the encoder is systematic. This is an example of how the codeword Feedback State i r i r i+ r i+ r i+ α 6 + α 6 + α 7 = α α α α + α + α 8 = α α α α 7 + α + α 7 = α α α α + α 6 + α = α α α r = α α α α α α α =[or in octal notation ]=66 is generated in a systematic way. If we multiply this codeword with α we get a new codeword: Solution to Problem Decoding, if possible, the sequence is the same as first decoding the sequence l = α r = α 6 α 6 α α α α α = r = 6 7 r L = 6 and then the sequence r R = 7. Comment: Comparing these sequences with the solution to Problem, we see that the first sequence contains two errors and the last sequence contains one error. Decoding, part, the sequence r L First, formulate the received sequence as a polynomial. r L (x) =α + α x + α x +x + α x + αx + αx 6 Calculate the syndrom, or frequence components. E = r L (α) = α +α +α 6 +α +α 7 +α 6 +α 7 = α E = r L (α ) = α +α +α 8 +α 6 +α +α +α = E = r L (α ) = α +α +α +α 9 +α +α 6 +α 9 = α 6 E = r L (α ) = α +α 6 +α +α +α 9 +α +α = Decoding with the Euclidean Algorithm is the same as iterating the equations { Zo,i (X) = Z o,i (X) Q i (X)Z o,i (X) Λ i (X) = Λ i (X) Q i (X)Λ i (X)
Solutions or answers to Final exam in Error Control Coding, October, 7 until deg (Z o,i (X)) < deg (Λ i (X)) (N K)/ =. From this we get i Z o,i (X) Q i (X) Λ i (X) X X + α 6 X + α α X + α X + α X + α 6 X + α 6 αx + α X + α α X + α 6 X + α Λ(X) =Λ (X) =α X + α 6 X + α = α ( +α X )( +α 6 X ) and we have errors at postitions and 6 since λ =Λ(α )=and λ 6 =Λ(α 6 )=. The values are given by where Finally e i = Z (α i ) Λ (α i ) Λ (X) =α ( α ( + α 6 X)+α 6 ( + α X) ). e = Z (α ) Λ (α ) = α and e 6 = Z (α 6 ) Λ (α 6 ) Decoding, part, the sequence r R First, formulate the received sequence as a polynomial. =. r R (x) =α 6 + α 6 x + αx + α x +x + α x +x 6 Calculate the syndrom, or frequence components. E = r R (α) = α 6 +α 7 +α +α 7 +α +α +α 6 = α E = r R (α ) = α 6 +α 8 +α +α +α 8 +α +α = α E = r R (α ) = α 6 +α 9 +α 7 +α +α +α +α 8 = E = r R (α ) = α 6 +α +α 9 +α 6 +α 6 +α +α = α i Z o,i (X) Q i (X) Λ i (X) X α X + X + α X + α α 8 α X + α α X + α From this we get Λ(X) =Λ (X) =α X + α = α ( +α X ) and we have an error at postition since λ =Λ(α )=. Λ (X) =α 9 = α The error value is given by e = Z (α ) Λ (α ) = α8 α = α6.