Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Telemeh_Shpori_semestr#1.doc
Скачиваний:
3
Добавлен:
19.11.2019
Размер:
3.13 Mб
Скачать

19.Код Хеминга с исправлением одиночных ошибок.

Данный код образуется путем добавления по определенному правилу: к информационной части содержащей – символов и к – контрольных символов . Общая длительность становиться n= +k .Координата одиночной ошибки указывается с помощью к – разрядного кода . Данный код должен иметь число кодовых комбинаций достаточных для описания всех одиночных ошибок и состояния правильного приема. Всего код Хеминга может содержать ( +k) одиночных ошибок. Состоянии правильного приема возможно только одно (1).k – разрядный код имеет - состояний. Для удовлетворения вышеупомянутых условий необходимо удовлетворение неравенства (*)

Правила образования кода

1.Определение числа контрольных символов по заданной длине информационной части путем подбора;(*)

2.Контрольные символы растовляются среди информационных символов причем: 1 контрольный символ располагается на 1- ой позиции ; 2 контрольный символ располагается на 2- ой позиции; 3 контрольный символ располагается на 4- ой позиции ; i контрольный символ располагается на позиции , где i=1,2,...

Пример: (*) к=3 - код Хеминга в общем виде

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

Контрольные символы защищаются на четность строки проверочной матрицы которая составляется по следующему правилу: в первую строку матрицы записывают элементы кода Хеминга начиная с первой позиции по одному разряду через 1 разряд во вторую строку записывают элементы начиная с позиции 2 по 2 разряда через 2 разряда в i – тою строку записывают элементы начиная с позиции по разряда через разрядов.

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

Определяем сумму по модулю два символов строк

Е сли , то код Хеминга получен без ошибок. Если произошла одиночная ошибка , то число

дает координату этой ошибки.

20.Код Хеминга с исправлением одиночных ошибок и обнаружением двойных ошибок

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

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

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

2.В процессе передачи произошла одиночная ошибка. В этом случае общая не проверка проходит ,а частная проверка дает координату ошибки.

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

21. «Циклические коды»

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

m+1 11

m2+m+1 111

m3+m+1 1011

В качестве инф-ой части использутся код на все сочетания.

Циклический код образуется путем приписывания в конце инф-ой части кода к-контрольных символа, где к- это старшая степень порождающего многочлена P(m).

Пусть G(m)-полином соот-щей инф-ой части кода; P(m)-это выбранный в соответствии с заданными помехозащитными св-вами инф-ой части кода степени к.

Умножим инф-ую часть кода G(m) на mk и разделим на порождающий многочлен:

Q(m)-частное

R(m)-остаток от деления

Умножим левую и правую части на порождающий многочлен и прибавим к обеим частям остаток R(m). В результате:

- два правила образования кода.

При образовании циклического кода необходимо инф-ую часть кода умножить на mk и делить на порождающий многочлен, после этого циклический код образуется:

  1. путем прибавления к произведению G(m)*mk остатка от деления R(m).

  2. путем умножения частного от деления Q(m) на порождающий многочлен P(m).

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