Ahrens_CC_exercise.pdf
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!).