Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ТИК-контр-з / Кодирование информации

.doc
Скачиваний:
41
Добавлен:
08.05.2015
Размер:
47.62 Кб
Скачать

Кодирование информации при передаче с помехами.

Для этих целей используются помехоустойчивые коды, позволяющие обнаруживать и исправлять ошибки. Способность кода обнаруживать и исправлять ошибки обусловлена наличием избыточных символов.

Кратностью ошибки называют количеством исправленных символов в кодовой комбинации.

Кодовое расстояние d – это число символов, в которых комбинации отличаются одна от другой. Достаточно подсчитать число единиц, получаемых после сложения по mod 2 всех комбинаций.

Минимальное расстояние, взятое по всем парам кодовых разрешённых комбинаций кода, называется минимальным кодовым расстоянием d min.

При d=1 все кодовые комбинации являются разрешёнными

При d=2 ни одна из разрешённых кодовых комбинаций при одиночной ошибке не переходит в другую разрешённую комбинацию. Тогда подмножество разрешённых кодовых комбинаций может быть образованно по принципу чётности в них числа единиц.

В общем случае при необходимости обнаруживать ошибки кратности до r включительно минимальное Хеммингово расстояние между разрешёнными комбинациями должно быть по крайней мере, на единицу больше *, т.е

d0min≥r+1

Тогда ошибка кратности r не в состоянии перевести одну разрешённую комбинацию в другую.

Для исправления одиночной ошибки каждой разрешённой кодовой комбинацией необходимо сопоставить подмножество запрещённых кодовых комбинаций. Чтобы эти подмножества не пересекались, Хеммингово расстояние между разрешёнными кодовыми комбинациями должно быть не меньше трёх.

В общем случае для облегчения возможности исправления всех ошибок кратности до S включительно минимальным Хемминоговым расстоянием между комбинациями:

dnmin≥2S+1

Для исправления всех ошибок кратности S и одновременного обнаружения всех ошибок кратности r (r≥S) минимальное Хеммингово расстояние нужно выбирать из условия

dn0min≥r+S+1

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

Двоичные линейные групповые коды.

Двоичный групповой код является n-разрядным и содержит k-информационных разрядов и m = (n-k) – проверочных, являющихся избыточными.

В двоичном линейном коде значения проверочных символов (опознавателя – синдрома) подбирают так, чтобы сумма по mod 2 всех индексов (включая проверочный), входящих в каждое из равенств, равнялось нулю.

Количество подлежащих исправлению ошибок является орпеделяющим для выбора числа избыточных символов (n-k). Их должно быть достаточно для того, чтобы обеспечить необходимое число опознавателей.

Если необходимо исправить все одиночные ошибки, то исправлению подлежит n ошибок, тогда необходимое число проверочных разрядов должно определяться из соотношения

2n-k-1≥n, или 2n-k-1≥Cn1

(k=4, n=7),

(k=11, n=15),

(k=26, n=31).

Если необходимо исправить все одиночные и двойные ошибки, то количество проверочных разрядов выбирается из соотношения

2n-k-1≥Cn1+Cn2

(k=2, n=7).

В общем случае для исправления всех независимых ошибок кратности до S включительно имеем

2n-k-1≥Cn1+Cn2+…+CnS

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

Проверочные равенства кода Хэмминга

В качестве примера рассмотрим коды, предназначенные для исправления одиночных ошибок.

Оптимальные коды: (4,7); (15,11); (31,26); (63,57); и т.д., где первое число- n, а второе –k.

Проверочные равенства (для кода (15,11)):

E1=a1+a3+a5+a7+a9+a11+a13+a15=0

E2=a2+a3+a6+a7+a10+a11+a14+a15=0

E3=a14+a15+a16+a17+a12+a13+a14+a15=0

E4=a7+a9+a10+a11+a12+a13+a14+a15=0

Контолирующие разряды : 20=1 - a1

21=2 - a2

22=4 - a4

23=8 - a8.

Пример

Передать по дискретному каналу число 10d: (10d=1010) кодом, исправляющим одиночные ошибки.

x3=a7=1; a1=a3+a5+a7=0+1+1=0

x2=a6=0; a2=a3+a6+a7=0+0+1=1

x1=a5=1; a4=a5+a6+a7=1+0+1=0

x0=a3=0

Передаваемый код: 1 0 1 0 0 1 0

Если исправить ошибку в разряде a6,то тогда имеем код 1 1 1 0 0 1 0 и

E1=a1+a3+a5+a7=0,

E2=a2+a3+a6+a7=1,

E3=a4+a5+a6+a7=1.

Модифицированный код Хэмминга

К контрольным разрядам добавляется ещё один разряд контроля чётности всех одновременно считываемых (записываемых) индексных и конролирующих разрядов, т.е будем иметь код, способный исправлять одиночные и обнаруживать двойные ошибки: коды (8,4); (16,11); (32,26) и т.д.

При считывании формируются корректирующее число Хэмминга

Ek Ek-1…E1 и разряд общей чётности F для всех считанных разрядов, включая контрольный разряд. Так для кода (8, 4) F=a5+a7+a6+…+a1

Результаты отображены в виде таблицы

Корректирующее число Хэмминга

F

Наличие ошибок

Ek ..E1

Нули

0

Нет ошибок

Нули

1

Ошибка в контр. разряде общей чётности F

≠0

0

Двойная ошибка (коррекция блокируется, посылается запрос повnjhной передачи)

≠0

1

Одиночная ошибка (осуществляется её исправление)