Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции / hemming.doc
Скачиваний:
68
Добавлен:
13.02.2014
Размер:
278.53 Кб
Скачать

Коды Хемминга

Эти коды позволяют определять все одиночные ошибки при d=3, а также исправлять все одиночные ошибки и обнаруживать все двойные ошибки при d=4 (но не исправлять их). Рассмотрим код Хемминга, исправляющий все одиночные ошибки. В качестве исходного берут двоичный код на все сочетания с числом информационных символов k, к которому прибавляют контрольные символы m. Таким образом, общая длина закодированной комбинации: n=k+m. Рассмотрим последовательность кодирования по Хеммингу. Сначала определяем число контрольных символов. При передаче по каналу с шумами может быть искажен любой из n символов кода, или слово передано без искажений. С помощью контрольных символов m можно описать два события. Значит должно быть выполнено условие:

2m > n+1=(k+m)+1

Размещение контрольных символов.

Так как произвольное расположение контрольных символов затрудняет проверку принятого кода, то для удобства обнаружения искаженного символа целесообразно размещать их на местах, кратных степени 2 (1,2,4,8 и т.д.). Поэтому при k=4, m=3 закодированная комбинация будет выглядеть так:

m1, m2, k4 m3, k3, k2, k1 (1)

Определение состава контрольных символов

С помощью проверки на четность выявляют какой из символов должен стоять на позиции “1” или “0”. Рассмотрим это на примере приведенной выше комбинации.

Таблица 1. Составление проверочной таблицы для кодов Хемминга

Разряды двоичных чисел

Символы кода

k3

k2

k1

0

0

1

m1

0

1

0

m2

0

1

1

k4

1

0

0

m3

1

0

1

k3

1

1

0

k2

1

1

1

k1

Таблица 2. Проверочная таблица для кода Хемминга.

m1

+k4

+k3

+k1

m2

+k4

+k2

+k1

m3

+k3

+k2

+k1

В таблице 1 записаны все кодовые комбинации (исключая нулевую) для трехразрядного двоичного кода на все сочетания и рядом справа, сверху вниз проставлены символы комбинаций кода Хемминга, записанные в последовательности (1). Из таблицы 1 составляется таблица 2, в которой выписаны символы в трех строках в следующей закономерности. В первую строку записывают символы, против которых проставлены 1 в младшем (первом) разряде комбинации двоичного кода в таблице 1. Во вторую строку проверочных коэффициентов записываются символы, против которых проставлены 1 во втором разряде двоичного кода. В третью строку записываются символы, против которых проставлены 1 в третьем разряде двоичного кода (m3, k3, k2, k1,). Состав контрольных символов с помощью проверок определяют следующим образом. Суммируют информационные символы, входящие в каждую строку таблицы 2, если сумма единиц в данной строке четная, то значение символов m, входящих в эту строку .равно нулю, если нечетная, то единице. По первой строке таблицы 2 определяют значение символа m1, по второй - m2, по третьей - m3.

Соседние файлы в папке лекции