- •2 Practical seminars
- •2.1 Cyclic code combination synthesis
- •2.1.1 Compositing of the information block
- •2.1.2 Choice of the generator polynomial of the cyclic code
- •2.1.3 Synthesis of a cyclic code combination
- •2.1.4 Check of correctness of reception resolved ccc
- •2.2 Coding and decoding of concatenated codes
- •2.2.1 Interleaving the sequences
- •2.2.2 Coding the sequence by inner convolutional code (7, 5)
- •2.2.3 Calculating the parameters of concatenated codes
- •2.2.4 Decoding of sequence by Viterbi algorithm
- •2.3 Hdlc procedure informational frame construction
- •2.3.2 Bit stuffing to I-frame
- •2.4 Hdlc procedure support frames construction
- •Initial data:
2.1.4 Check of correctness of reception resolved ccc
Check of correctness of a code combination of a cyclic code we will execute in the binary form. For this purpose it is necessary sequence F(x) in the binary form to add modulo 2 with generator polynomial Р(x), also taken in the binary form (Р(x) 1001 1001). In case of correctness of construction, we will receive zero. We will check up it on the example resulted above.
|
01000011001110010001110 |
|||||||||
10011001 |
|
|||||||||
|
0001111101110010001110 |
|||||||||
10011001 |
|
|||||||||
|
0110001010010001110 |
|||||||||
10011001 |
|
|||||||||
|
010111000010001110 |
|||||||||
10011001 |
|
|||||||||
|
00100001010001110 |
|||||||||
10011001 |
|
|||||||||
|
000111000001110 |
|||||||||
10011001 |
|
|||||||||
|
011110011110 |
|||||||||
10011001 |
|
|||||||||
|
01101010110 |
|||||||||
10011001 |
|
|||||||||
|
0100110010 |
|||||||||
10011001 |
|
|||||||||
|
0 |
As the remainder of division is zero, composition of the resolved cyclic code combination was correct.
2.2 Coding and decoding of concatenated codes
Objective: To learn the encoding process by the concatenated code. To code the received in item 2.1.3 sequence by inner convolutional code (7, 5).
Task to the practical seminar:
1. To learn items 1.3.1, 1.3.3 – 1.3.4, 1.4.1 – 1.4.2 of this teaching manual.
2. To rearrange the sequence, got in item 2.1.3, by the block interleaver.
3. To encode received combination by the convolutional (7, 5) code.
4. To calculate the redundancy of the concatenated code and the amount of corrected errors.
5. To check up correction of double errors by entering the errors into received sequence (numbers of erroneous elements correspond to two last figures of the credit book).
2.2.1 Interleaving the sequences
The elementary interleaving realisation is block interleaving in which the information writes in the lines, and is read out on columns. For the initial sequence consisting of 25 bits or less, block interleaver of size 5х5 is enough. In other cases it is necessary to increase the size of interleaver to 6х6. Empty cells you can consider as zero.
Let's consider process of interleaving on an example of the sequence after outer code, received in item 2.1.3: 01000 01100 11100 10001 110. It consists of 23 elements, therefore we use block interleaver of size 5х5. We will write down sequence in the lines,
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
0 |
and read out it on columns: 00111 11101 01100 00000 00010.
Let’s transform it to binary form:
A(D) = D22 + D21 + D20 + D19 + D18 + D17 + D15 + D13 + D12 + D.