- •1. Циклические коды (цк)
- •1.1 Циклические корректирующие коды
- •1.2 Построение цк
- •1.3 Определение параметров цк(цск) по m,s,r
- •1.4 Определение параметров цк, обеспечивающих заданную вероятность передачи по каналу с шумом
- •1.5 Кодеры цск
- •1.5.1 Кодирование с помощью полинома h(X)
- •1.5.2 Кодирование с помощью полинома g(X)
- •1.6 Декодеры цск
- •1.6.1 Декодеры Меггита
- •1.6.1.1 Режим исправления и обнаружения ошибок
- •1.6.1.2 Режим обнаружения ошибок
- •1.7 Примеры
- •1.7.1 Пример 1
- •1.7.2 Пример 2
- •1.7.3 Пример 3
- •1.7.4 Пример 4
- •1.7.5 Пример 5
- •1.7.7 Пример 7
- •1.7.8 Пример 8
- •1.7.9 Пример 9
- •1.7.10 Пример 10
- •1.7.11 Пример 11
- •1.8 Справочные материалы
- •1.8.1 Теоремы бчх
- •1.8.2 Таблица неприводимых многочленов
1.6.1.2 Режим обнаружения ошибок
Режим обнаружения ошибок не чувствителен к различным реакция (к различным параметрам кода). Обобщенная структура схема декодера Меггита для данного режима приведена нарис.6.
рис.6. Обобщенная структурная схема декодера Меггита
в режиме обнаружения ошибок
Работа. В течении первых n тактов производится деление принятой кодовой комбинации наg(x)(формируется синдром в генераторе синдрома) и одновременно эта кодовая комбинация записывается в приемный регистр. Наn+1-ом такте, то сообщение передано безо ошибок (выталкивается из буферного регистра). Если в выработанном синдроме есть хоть одна единица, то через элемент «ИЛИ» она подается на ключ и срабатывает сигнал сброса буферного регистра.
Режим обнаружения ошибок часто используется в системах передачи данных совместно с различными способами исправления ошибок (например, с обратной связью).
1.7 Примеры
Пример 1: представление кодовых комбинаций в виде полиномов.
Пример 2: алгебраические операции по модулю два.
Пример 3: вычисление полиномаh(x)поg(x)
Пример 4: расчет параметров БЧХ кодов поm1,s,r.
Пример 5: расчет параметров БЧХ кодовcнечетнымdminпо вероятности.
Пример 6: расчет параметров БЧХ кодов с четнымиdmin по вероятности.
Пример 7: построение кодера для кода (7,4,3) по полиномуh(x).
Пример 8: построение кодера для кода (7,4,3) по полиномуg(x).
Пример 9: построение кодера для кода (7,3,4) по полиномуg(x).
Пример 10: построение декодера для кода (7,3,4) частный случай.
Пример 11: построение декодера для кода (7,3,4) общий случай.
1.7.1 Пример 1
Кодовой комбинации двоичного кода 100101 соответствует полином вида:
1.7.2 Пример 2
Суммирование по модулю 2 многочленов:
Умножение многочленов:
Деление многочленов:
Деление многочленов в векторной форме:
1.7.3 Пример 3
Пусть циклический код задается порождающим полиномом:
т.е. k=3(см.выше)
Тогда:
и следовательно:
Данному порождающему полиному соответствует циклический код Хэмминга (7,4). Полином имеет вид:
Используя (1), найдем h(x):
Таким образом:
Данному полиному соответствует двоичное число вида 10111. Действия над полиномами можно заменить такими же действиями над соответствующими двоичными последовательностями (для удобства и упрощения записи). Тогда рассмотренный пример деления может быть представлен в виде:
1.7.4 Пример 4
Ищем параметры БЧХ-кода с s=3,r=4,m1=4.
Найдем минимальное кодовое расстояние:
Сделаем пересчет числа исправляемых ошибок, исходя из условия:
Методом тотального перебора выбираем наименьшие h и, удовлетворяющее условию (4):
не выполняется
не выполняется
не выполняется
не выполняется
выполняется
Выбираем h=5.
Находим длину кода:
Из (4) находим число информационных символов:
Получаем код: (31,16,7).
Вид порождающего полинома, исходя из (5):
,
где mi(x) выбираем изтаблицы неприводимых полиномов:
Окончательно g(x):
Переходим к четному минимальному кодовому расстоянию, согласно (6): (31,15,8).
Находим g`(x) по (7):
1.7.5 Пример 5
Рассчитаем параметры БЧХ-кода, исправляющего sи менее ошибок, в канале с независимыми ошибками. Исходные данные:
Допустимая вероятность трансформации передаваемого сообщения , вероятность искажения на символ числоp=0,0001; информационных символовm1=19.
Методом тотального перебора найдем такое s, при котором выполниться неравенство:
(*)
Примем s=1 и выберем наименьшееh, пользуясь (4):
не выполняется
не выполняется
не выполняется
не выполняется
выполняется
Выбираем h=5.
Находим длину кода:
где k-число избыточных символов, вычисляется согласно (3).
Тогда:
Вычислим вероятность трансформации, подставив (8) в (9):
У нас s=1,n=24 иp=0,0001, тогда:
Проверяем выполнение неравенства (*):
выполняется,
значит, выбираем s=1, тогдаn=24,
Искомый код (24,19,3)
Примечание: если неравенство (*) не выполняется, то увеличиваем число исправляемых ошибок на 1 и повторяем расчет.
1.7.6 Пример 6
Рассчитаем параметры БЧХ-кода, исправляющего sи менее ошибок и обнаруживающегоr=s+1 ошибок, в канале с независимыми ошибками. Исходные данные: допустимая вероятность трансформации передаваемого сообщения; вероятность искажения на символp=0,0001; информационных символовm1=19.
Методом тотального перебора найдем такое s, при котором выполняется неравенство:
(*)
Примем s=1 и выберем наименьшееh, используясь (4):
не выполняется
не выполняется
не выполняется
не выполняется
выполняется
Выбираем h=5.
Находим длину кода:
где k-число избыточных символов, вычисляется согласно (3).
Тогда:
Вычислим вероятность трансформации (расчет производится в программе Mathcad), подставивs=1,n=24,k=5 и р=0,0001 в (10):
Проверяем выполнение неравенства (*):
выполняется,
значит, выбираем s=1, тогдаn=24,
dmin=s+r+1=1+2+1=4,
Искомый код (24,19,4).
Примечание: если неравенство (*) не выполняется, то увеличиваем число исправляемых и обнаруживаемых ошибок на 1 и повторяем расчет.