
ТСиТ / 4_л код канала
.pdf
Помехоустойчивое кодирование
1. Принципы помехоустойчивого кодирования.
2. Обнаруживающая и исправляющая способность кодов.
3. Блочные помехоустойчивые коды.

Принципы помехоустойчивого кодирования
Помехоустойчивое кодирование (избыточное,
корректирующее, коды с обнаружением или (и) исправлением ошибок) - повышение достоверности передачи в каналах с помехами, решаемые применением помехоустойчивых кодов, которые позволяют обнаруживать или исправлять ошибки. Избыточность кодовой последовательности выше, чем избыточность источника сообщений.
Сжатие источника (неизбыточное, согласование источника с
каналом, экономное кодирование, энтропийное кодирование) - направление теории кодирования связано с вопросами устранения избыточности при передаче сообщений в каналах без помех. Цель кодирования при этом состоит в таком преобразовании сообщения, при котором избыточность кодовой последовательности должна стать меньше, чем избыточность сообщений источника. В результате появляется возможность увеличения скорости передачи информации, либо снижаются требования к пропускной способности канала.
ИС КИ |
КК |
М |
среда |
ДМ |
ДК ~ |
распространения |
|||||
C |
|
C |
|
C |
C |
источник |
C |
|
|
|
|
|
|
помехи |
|
|
|
|
|
|
|
|
ДИ ПС
получатель
Рис. 1. Структурная схема системы электрической связи

Двоичные коды
Неизбыточные |
|
Избыточные |
|
|
|
Равномерные |
|
Неравномерные |
|
Равномерные |
|
|
|
|
|
Неравномерные |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Блочные |
|
Непрерывные |
|
|
|
Простые |
Отраженные |
Двоично-десятичные |
Шеннона-Фано Хаффмена
Разделимые |
Неразделимые |
Цепной |
Сверточный |
Систематические |
|
Несистематические |
|
|
|
Циклические
Простейший |
|
Хэмминга |
|
Боуза-Чоудхури- |
|
Рида-Соломона |
|
|
Хоквингема |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|

Обнаруживающая и исправляющая способность |
|||||||||
|
|
|
|
|
|
|
|
кодов |
|
Геометрическая |
модель |
|
|
||||||
трехразрядного |
|
двоичного |
|
|
|||||
кода |
|
при |
помощи |
которого |
101 |
100 |
|||
можно |
|
получить |
|
23=8 |
|
|
|||
комбинаций: 000, 001, 010, |
|
|
|||||||
011, |
|
100, |
101, |
110, |
111. |
|
|
||
Каждую |
новую |
комбинацию |
111 |
110 |
|||||
можно |
|
представить |
точкой в |
||||||
трехмерном пространстве. |
|
|
|
||||||
Для |
исправления |
одиночной |
|
|
|||||
ошибки |
|
разобьем |
все |
|
|
||||
множества комбинаций на две |
001 |
000 |
|||||||
области, и будем передавать |
|
|
|||||||
только |
|
|
две |
|
кодовые |
|
|
||
комбинации 111 и 000. Эти |
|
|
|||||||
комбинации |
отличаются |
друг |
|
|
|||||
от друга тремя разрядами. |
011 |
010 |
|||||||
Любая |
|
одиночная |
ошибка |
|
|
||||
оставляет |
|
|
кодовую |
|
|
||||
комбинацию |
в |
|
области, |
|
|
||||
относящейся |
к передаваемой |
|
|
||||||
комбинации. |
|
|
|
|
|
|

Для обнаружения одиночных ошибок кодовые комбинации должны различаться не менее чем двумя разрядами.
Для исправления одиночной ошибки кодовые комбинации должны различаться не менее чем тремя разрядами.
Это различие именуют кодовым (Хэминговым) расстоянием.
Под кодовым расстоянием понимают минимальное число позиций, на которых символы данной кодовой комбинации отличаются от символов другой кодовой комбинации.
|
|
|
|
|
|
|
|
|
0 |
0 |
1 |
0 |
1 |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
1 |
0 |
1 |
1 |
n
d(a, b) (аi bi )
i 0

Если код используется только для обнаружения ошибок, то, чтобы обнаружить в кодовом слове произвольную комбинацию из s ошибок, необходимо и достаточно, чтобы расстояние Хэмминга для любых двух разрешенных кодовых слов было на 1 больше,
чем s (количество обнаруживаемых ошибок):
dmin a,b s 1
Если код используется только для исправления ошибок, то, чтобы исправить t ошибок необходимо и достаточно, чтобы:
dmin a,b 2t 1
t - количество исправляемых ошибок
Для того, чтобы исправить t и обнаружить s ошибок в кодовом слове, необходимо и достаточно, чтобы:
dmin a,b 2t s 1

Блочные помехоустойчивые коды
Разделимые коды обычно обозначают как (n, k) - коды.
Здесь n – количество элементов в кодовой комбинации, k – число информационных элементов.
Общепринятым методом задания (n, k) кодов является представление набора используемых кодовых комбинаций в виде матрицы, имеющей n столбцов и k строк. Такую матрицу
называют порождающей матрицей. Обозначается порождающая |
|||||||
матрица – G |
|
|
|
|
|
||
|
|
n k |
|
|
|
|
|
каноническая форма порождающей: |
Gn k |
Ik k _ hr k |
|
||||
|
|
|
|
|
|||
|
|
|
|
|
|
||
|
|
k k |
|||||
где |
Ik k |
– единичная матрица размерностью |
|||||
r n k – число проверочных элементов. |
|
|
|
|

Коды Хэмминга
Коды Хэмминга – это (n, k) коды, длина которых равна n 2r 1 Примеры кодов Хэмминга: (7,4); (15,11) и т.д.
Для данных кодов dmin 3
как правило задается порождающей матрица может быть приведена к
1000 _ 011
0100 _1010010 _110 0001_111
I 4 4 __ h3 4
Построение подматрицы |
hr k |
производится следующим образом: |
в столбик записывается двоичное представление чисел от 0 до n |
разрядами r, после этого вычеркиваются строки с количеством единиц меньше двух, из оставшихся строк составляется подматрица

Пусть задано информационное слово С b b b b 1010 |
|||
0 |
1 |
2 |
3 |
которое нужно закодировать кодом Хэмминга (7,4).
Комбинация на выходе кодера получается из соотношения:
|
|
1000 _011 |
|
|
|
С С G7 4 |
b0 b1b2 b3 |
0100 |
_101 |
b0 b1b2 b3 |
_a0 a1a2 |
|
|
0010 |
_110 |
|
|
|
|
0001 |
_111 |
|
|
|
|
|
|
|
|
Проверочные символы для кода Хэмминга (7,4) формируются в соответствии с приведенными выражениями:
a0 b1 b2 b3 0 1 0 1 a1 b0 b2 b3 1 1 0 0 a2 b0 b1 b3 1 0 0 1

При записи кодовой комбинации на выходе кодера первые k символов кода называются информационными, остальные r – проверочными.
На выходе кодера получим кодовую комбинацию:
С b0b1b2b3 _ a0a1a2 1010 _101
bo bo
b1 b1
b2 b2
b3 b3
|
|
|
|
M2 |
|
|
|
|
|
|
|
ao |
|||
|
|
|
|
№1 |
|
|
|
|
|
M2 |
|
|
|
|
|
|
|
|
|
|
|
||
|
|
№2 |
|
|
|
|
a1 |
|
|
|
|
|
|
||
M2 |
|
|
|
|
|
||
|
|
|
|
||||
|
|
|
|
|
|
||
№3 |
|
|
|
|
|
|
a2 |
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|