
- •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.2 Choice of the generator polynomial of the cyclic code
Theoretical questions of a choice of optimum parameters of a cyclic code are considered in the item 1.2.2 of this teaching manual.
Knowing the minimum code distance d0 and the length of information part of the code combination k (for the task 2.1.1 k = 16), we can calculate the length of the check part of the code combination r. According to the minimum of redundancy of CC, we have to use formula (1.19). As in this formula n = k + r, demanded value r can be defined by size selection r, satisfying to an inequality:
. (2.1)
Size selection r it is necessary to begin from 3 and to increase on 1 until the inequality will be executed.
Knowing size r, i.e. size of the higher degree of a generator polynomial, it is necessary to choose a corresponding polynomial from table 1.1.
For example, we will calculate the amount of check bits and choose generator polynomial for following initial data:
Probability of an error in a communication channel рer = 3*10-5;
Probability of undetected errors by the decoder Pun er = 1,5*10-6;
The minimum code distance d0 = 3;
Factor of bursts α = 0,6.
Let's substitute in the formula (2.1) initial data, and the value r since 3:
r
= 3:
- the inequality
is not executed
r
= 4:
-
the inequality is not executed
r
= 5:
- the inequality
is not executed
r
= 6:
-
the inequality is executed. In the table
1.1 there is no generator polynomials with the maximum degree 6,
therefore, value r
= 7.
For a choice of a generator polynomial from table 1.1 it is possible to take advantage of any of three resulted polynomials for the amount of check symbols equal 7. We will choose the second polynomial: x7 + x4 + x3 + 1.
2.1.3 Synthesis of a cyclic code combination
The process of the cyclic code combination reception is considered in item 1.2.1 of this teaching manual. To get the separable code combination of CC we use formula (1.4).
For transfer of binary information sequence in polynomial form each bit (1 or 0) is multiplied by х in the degree corresponding to a site of this bit.
Let's transform the sequence received in item 2.1.1 in polynomial form.
S |
I |
||||||||||||||
0 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
х15 |
х14 |
х13 |
х12 |
х11 |
х10 |
х9 |
х8 |
х7 |
х6 |
х5 |
х4 |
х3 |
х2 |
х1 |
х0 |
The received code combination can be written down as:
G (x) = х14 + х9 + х8 + х5 + х4 + х3 + 1.
Let's increase G(x) by a monomial хr. As the amount of check bits, calculated in item 2.1.2 is seven, it is multiplied by х7
G(x) х7 = х21 + х16 + х15 + х12 + х11 + х10 + х7.
For reception of the resolved combination of a cyclic code we will divide the received sequence into generator polynomial chosen in item 2.1.2.
|
|
x7+x4+x3+1 |
||||
|
|
x14+x11+x10+x9++x7+x4+x3+x2+x |
||||
|
|
|||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
|
|
||||
|
x3+x2+x = R(x) |
|
So, the resolved cyclic code combination, according to the formula (1.4) looks like:
F(x) = х21 + х16 + х15 + х12 + х11 + х10 + х7+ x3+x2+x.
Let's transform it in a binary kind:
0100 0011 0011 1001 0001110