Ahrens_CC_exercise.pdf

download Ahrens_CC_exercise.pdf

of 4

Transcript of Ahrens_CC_exercise.pdf

  • 8/11/2019 Ahrens_CC_exercise.pdf

    1/4

    Channel Coding Exercise IHochschule Wismar, University of Technology, Business and Design, Prof. Dr.-Ing. habil. A. Ahrens

    Baltic Summer School 2008, Tartu, Estonia, 08.08.23.08.2008

    Exercise 1 Hadamard-code

    a) Hadamard-codes belong to the class of linear block codes. The field of code wordsC

    of a Hadamard-code can be generated in matlabwith the commandhadamard(M)

    with Mpossible code words. The code words have the length n = M. Note, that the

    result doesnt consist of zeroes and ones, but of the symbols +1 and -1. Generate

    a Hadamard-code for M= 8 and determine its distance properties A(D).

    b) For coding a group ofm = 3 information bits is mapped on one out ofM = 8code words. The 3-bit-words are for the present converted into decimal numbers

    that are applied for the addressing by the matlab-command bi2de (requires the

    communications toolbox). Alternatively, decimal numbers in the range of 1 up to M

    can be chosen by random and converted into 3-bit-words with the command de2bi.

    Determine the IOWEF A(W,D) of the coder.

    Exercise 2 Error correction

    Given is a (n,m) block code with the minimal distance hmin= 8.

    a) Determine the maximal number of correctable errors and the number of detectable

    errors at pure error detection.

    b) Demonstrate by illustration in the field of code words, how many possibilities of

    variation of a code word have to be taken into consideration at the transmission

    over a disturbed channel.

    Exercise 3 Generator and parity check matrices

    State the generator matrix as well as the parity check matrix for a (n, 1, n) repetition

    code with n = 4.

  • 8/11/2019 Ahrens_CC_exercise.pdf

    2/4

    Exercise 4 Modification of linear block codes

    A (5, 4) linear block code is constructed by adapting a (7, 4) block code. The (7, 4) code

    can be described by the following generator matrix

    G=

    0 1 0 1 1 0 0

    1 0 1 0 1 0 0

    0 1 1 0 0 1 0

    1 1 0 0 0 0 1

    .

    a) Construct the codewords of the (5, 4) code and list them!

    b) What is the minimum distance of the (5, 4) code!

    Exercise 5 Syndrome decoding

    a) State the number of syndromes of the (7, 4, 3)-Hamming code and compare it with

    the number of correctable error patterns.

    b) The word d= (1 1 0 1 0 0 1) is found at the receiver. Which information word i was

    sent with the greatest probability?

    Exercise 6 Coding program

    Write a matlab-programm which codes and again decodes a certain number of input

    data bits. Besides it shall be possible to insert errors before the decoding. The (5, 2, 3)-

    Hamming code shall be used.

    Hint: The (5, 2, 3)-Hamming code maps m = 2 information symbols onto n = 5 code

    symbols. Within the matlab-program, m information symbols are randomly chosen usingrandint and encoded by the generator matrix. A randomly determined error vector is

    added and the syndrome is calculated. Please notice: all calculations have to be executed

    within GF(2).

  • 8/11/2019 Ahrens_CC_exercise.pdf

    3/4

    Channel Coding Exercise IIHochschule Wismar, University of Technology, Business and Design, Prof. Dr.-Ing. habil. A. Ahrens

    Baltic Summer School 2008, Tartu, Estonia, 08.08.23.08.2008

    Exercise 7 Convolution code

    Given is a convolution code with the code rate R = 1/3, memory (K 1) = 2 and the

    generator polynomialsg1(x) = 1 + x + x2 andg2(x) = 1 + x

    2 andg3(x) = 1 + x + x2.

    a) Determine the output sequence for the input sequence i= (0 1 1 0 1 0).

    b) Sketch the corresponding Trellis chart in the case of the under a) given input se-

    quence.

    c) Sketch the state diagram of the encoder.

    d) Determine the corresponding free distanceh free.

    Exercise 8 Catastrophic codes

    Given is the convolution code with the generator polynomial g(x) = (1 +x2, 1 +x). Show

    that this is a catastrophic code and explain the consequences.

    Exercise 9 Puncturing of convolution codes of the rate1/n

    Given is the non-recursive convolution code with the generators g1(x) = 1 +x+x3 and

    g2(x) = 1 +x+x2

    +x3

    . The non-recursive convolution code shall now be punctured tothe code rate R= 2/3. Give several puncturing patterns and find out, if the puncturing

    results in a catastrophic code.

  • 8/11/2019 Ahrens_CC_exercise.pdf

    4/4

    Exercise 10 Viterbi-decoding

    Given is a convolution code withg1(x) = 1+x+x2 andg2(x) = 1+x

    2, where a terminated

    code shall be used.

    a) Generate the corresponding Trellis and encode the information sequencei = (1101).

    b) Conduct the Viterbi-decoding respectively for the transmitted code sequence c =

    (110101001011) and for the two disturbed receiving sequences d1= (111101011011)

    and d2= (11 11 10 01 10 11) and describe the differences.

    c) Check the results with the help of a Matlab-program. Define the convolution code

    with G=[7;5], r flag=0 and term=1, generate the trellis diagram with trellis =

    make trellis(G,r flag) and sketch it with show trellis(trellis). Encode the

    information sequence i with c = conv encoder (i,G,r flag,term) and decode

    this sequence withviterbi omnip(c,trellis,r flag,term,length(c)/n,1).

    Decode now the sequences d1 and d2.

    d) Now the influence of the error structure at the decoder input shall be examined.

    Therefor specifically add four errors, that you once arrange bundled and another

    time distributed in a block, to the encoded information sequence. How does the

    decoding behave in both cases?

    Exercise 11 Viterbi-decoding with puncturing

    Given is a convolution code withg1(x) = 1 +x+x2 andg2(x) = 1+x

    2, out of which shall

    be generated a punctured code by puncturing with the scheme

    P1=

    1 1 1 0

    1 0 0 1

    .

    a) Determine the code rate of the punctured code.

    b) Conduct the Viterbi-decoding in the case of the undisturbed receiving sequence

    d= (1 1 0 0 0 1 0 1) (pay attention to the puncturing!).