Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
course_work_2_part (1).doc
Скачиваний:
3
Добавлен:
26.08.2019
Размер:
156.16 Кб
Скачать

5 Coding and decoding of convolutional codes

5.1 Cascade code parameters calculation

It is accepted to name sharing of two and more correcting codes cascade coding. The example of such coding with use of two codes with consecutive inclusion of coders is presented on fig. 2.

Figure 2

Block codes(n, k) more often are used as external codes, and as internal - convolutional. Cascade methods of coding possess essential advantages in comparison with many known methods of coding in a case when in the communication line on a signal the pulse hindrances leading to formation of packages of errors influence. Struggle against packing of errors is carried out by shift of output symbols of the external coder with their subsequent restoration on an input of the external decoder. The devices which are carrying out these operations, are called as interleaver devices, i.e. reorderings of code symbols, and deinterleaver devices, i.e. restoration of an order of their following.

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 36 bits and less is enough of block interleaver of size 6х6. In other cases it is necessary to increase the size of interleaver to 7х7. Empty cells you can consider as zero.

Let's consider process of interleaving on an example of the sequence received in item 4.3: 100001 100111 001010 000001 111011. It consists of 30 elements, therefore we use block interleaver of capacity 6х6. We will write down sequence in the lines,

1

0

0

0

0

1

1

0

0

1

1

1

0

0

1

0

1

0

0

0

0

0

0

1

1

1

1

0

1

1

0

0

0

0

0

0

and read out it on columns: 110010 000010 001010 010000 011010 110110.

If information symbols are coded by an external code with d0, and internal – with df the minimum code distance of the generated cascade code is defined as follows:

dmin = d0 × df.

Detection and correction of all errors of the maximum multiplicity tdet and tcor is guaranteed, if known conditions are satisfied

, (8)

Redundancy of a cascade code is calculated as the relation of number of check bits to length of a code combination.

5.2 Construction of the scheme of the coder and the trellis diagram

The binary convolutional coder contains the shift register on K cells and adders on the module 2 for code symbols formation. Inputs of adders are defined by register cells. Links of i-th adder with cells of j-th register describes by a generating polynomial (for codes with a speed R = 1/n)

,

where = 1 if link of i-th adder with s-th cell exists, and = 0 if such link is not present.

Thus, the convolutional coder is unequivocally described by a set of factors = { }.

Convolutional codes are usually specified by polynomials in an octal notation, and for construction of the coder scheme it is necessary to convert polynomials in binary form.

Let's consider the elementary non-systematic code (7, 5). For reception of forming polynomials we will convert figures in binary and polynomial notations:

G (1) = 78 = 1112  D2 + D + 1,

G (2) = 58 = 1012  D2 + 1.

The scheme of the coder corresponding to polynomials G (1) and G (2), is resulted on fig. 3. In figure 4 it is shown the diagram of states for this coder.

Convolutional coder as the final automatic machine with memory is described by the diagram of states. Internal states of the coder are the symbols containing in (K – 1) register cells (beginning from a coder input). The coder on fig. 3 can be in one of four states S1S2 = (00, 10, 11, 01), as K = 3. The diagram represents the directed graph which contains all states and describes possible transitions from one state to another, and also symbols of inputs/outputs of the coder, accompanying these transitions. Coder states are shown in circles; arrows show the possible transitions. Symbols about arrows are shown coder input/output u/v (1) v (2), corresponding to each transition.

The development of the diagram of states in time forms the trellis diagram (fig. 5). On a trellis the states are shown by the lattice points, and transitions by the lines connecting them. The trellis diagram represents all resolved ways on which the coder can move ahead at coding.

States

Figure 5

The free code distance df of convolutional code is defined by number of symbols with which all possible code sequences differ if two sequences having difference in one symbol. As convolutional codes are linear, we take as one sequence zero sequence, and as the second – sequence with one unit on the first place. In this case definition of df becomes simpler, as it is possible to take advantage of expression

df = Wt (hi) (9)

where Wt (hi) – response weight (pulse reaction) coder on individual influence of a kind

.

Let's calculate free code distance, proceeding from the trellis diagram of a code, choosing the way of the least weight which is beginning and coming to a state 00 (and distinct from zero). On fig. 5 this way is designated by a dotted arrow. The weight of this way also will be free distance of a code df = Wt (11 10 11) = 5.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]