Построение линейного группового кода, способного исправлять одиночную ошибку. Пример 10 кодовых комбинаций. Процесс исправления ошибки в заданном разряде

Страницы работы

Содержание работы

Задание 1

Построить линейный групповой код, способный исправлять одиночную ошибку.

Код предусматривает возможность посылки N = 64  сообщений, тогда:

nu=6

nk=4

n=nu+nk=10

Построим производящую матрицу G, она представляется слиянием матриц И и П.

В качестве И выбирают единичную матрицу размером nu:

1

0

0

0

0

0

0

1

0

0

0

0

0

0

1

0

0

0

0

0

0

1

0

0

0

0

0

0

1

0

0

0

0

0

0

1

Определим вес строк матрицыП:

WП > = d0 - 1

d0 = 3

Следовательно: WП  ≥ 2, исходя из этого, составим матрицу П:

1

1

1

1

1

1

1

0

1

1

0

1

1

0

1

1

0

1

1

1

1

1

0

0

Тогда производящая матрица будет иметь вид:

1

0

0

0

0

0

1

1

1

1

0

1

0

0

0

0

1

1

1

0

0

0

1

0

0

0

1

1

0

1

0

0

0

1

0

0

1

0

1

1

0

0

0

0

1

0

0

1

1

1

0

0

0

0

0

1

1

1

0

0


Задание 2

Привести пример 10 кодовых комбинаций.

Кодирование сообщений:

1) 19 в двоичной системе: 010011

Для определения значения кодовых разрядов сложим по правилам двоичного поля строки с номерами, соответствующими номерам ненулевых разрядов сообщения:

2 – 1110

5 – 0111

6 – 1100

      0101

Следовательно, линейный групповой код имеет вид: 0100110101

2) 20 в двоичной системе: 010100

2 – 1110

4 – 1011

      0101

Линейный групповой код: 0101000101

3) 35 в двоичной системе имеет вид: 100011

1 – 1111

5 – 0111

6 – 1100

      0100

Линейный групповой код: 1000110100

4) 38 в двоичной системе: 100110

1 – 1111

4 – 1011

5 – 0111

      0011

Линейный групповой код: 1001100011

5) 44 в двоичной системе: 101100

1 – 1111

3 – 1101

4 – 1011

                  1001

Линейный групповой код: 1011001001

6) 47 в двоичной системе: 101111

1 – 1111

3 – 1101

4 – 1011

5 – 0111

6 – 1100

      0010

Линейный групповой код: 1011110010

7) 49 в двоичной системе: 110001

1 – 1111

2 – 1110

6 – 1100

      1101

Линейный групповой код: 1100011101

8) 55 в двоичной системе: 110111

1 – 1111

2 – 1110

4 – 1011

5 – 0111

6 – 1100

      0001

Линейный групповой код: 1101110001

9) 56 в двоичной системе: 111000

1 – 1111

2 – 1110

3 – 1101

      1100

Линейный групповой код: 1110001100

10) 63 в двоичной системе: 111111

1 – 1111

2 – 1110

3 – 1101

4 – 1011

5 – 0111

6 – 1100

      1100

Линейный групповой код: 1111111100


Задание 3

Показать процесс исправления ошибки в заданном разряде k .

Для исправления одинарной ошибки построим матрицу Н, которая получается путем транспонирования матрицы П и присоединения к ней единичной матрицы размерностью nk:

1

2

3

4

5

6

7

8

9

10

1

1

1

1

0

1

1

0

0

0

1

1

1

0

1

1

0

1

0

0

1

1

0

1

1

0

0

0

1

0

1

0

1

1

1

0

0

0

0

1

Покажем процедуру исправления одиночной ошибки на примере сообщения 60:

Отправленное сообщение:        1111000111

Принятое сообщение:                1111001111

т.е. имеется ошибка в седьмом разряде.

Проведем проверки:

1)  Для первой проверки берем P1 и те разряды из информационной части кода, которые совпадают с ненулевыми разрядами первого столбца матрицы П:

S1=P1+а1+а2+а3+а4+а6=1+1+1+1+1+0=1

По аналогии проводим остальные проверки.

2)  S2=P2+а1+а2+а3+а5+а6=1+1+1+1+0+0=0

3)  S3=P3+а1+а2+а4+а5=1+1+1+1+0=0

4)  S4=P4+а1+а3+а4+а5=1+1+1+1+0=0

В результате получаем вектор S= 1000

Он соответствует седьмому столбцу матрицы Н, следовательно, ошибка в седьмом разряде полученного кода.

Похожие материалы

Информация о работе