
- •Вечерний электрорадиотехнический факультет
- •3.2Математическое представление сигналов.
- •3.3Аналоговые линии и каналы передачи информации
- •3.3.1Классификация кабелей связи
- •3.4Математические модели аналоговых линий и каналов связи.
- •3.4.1Искажения сигналов, вызванные ограниченностью ачх
- •3.4.2Искажения сигнала из-за нелинейности фчх
- •3.4.3Электрические параметры кабелей. Математическая модель кабельной цепи.
- •3.4.4Система многоканальной связи с частотным разделением каналов
- •3.4.5Системы многоканальной связи с временным уплотнением
- •3.5Каналы тональной частоты и их характеристики
- •3.6Математические модели дискретных каналов связи
- •3.6.1Модель двоичного симметричного канала
- •3.6.2Модель
- •3.6.3Модель на основе опп
- •4Помехоустойчивость передачи данных
- •4.1Общий принцип генерации сигналов – «данных»
- •4.2Восстановление вектора по сигналу
- •4.3Прием сигналов как задача теории решений
- •4.4Потенциальная помехоустойчивость
- •4.5Приемник на согласованных фильтрах
- •4.6Расчет вероятности ошибок при приеме дискретных сигналов
- •4.7Примеры помехоустойчивых систем сигналов
- •4.7.1Бинарные противоположные сигналы
- •4.7.2Бинарные ортогональные сигналы
- •4.7.4Биортогональные сигналы
- •4.7.5Сигналы с прямоугольной конфигурацией векторов
- •4.7.6Симплексные сигналы
- •5Помехоустойчивое кодирование
- •5.1Основные понятия теории кодирования
- •5.2Примеры корректирующих кодов
- •5.2.1Код с четным числом единиц
- •5.2.2Коды с постоянным весом
- •5.2.3Инверсный код с повторением
- •5.2.4Код Хэмминга
- •5.2.5Модифицированный код Хэмминга
- •5.3Классификация избыточных кодов
- •5.4Линейные коды
- •5.4.1Алгебраические основы теории кодирования
- •5.4.2Задание линейных кодов
- •5.4.3Свойства линейных кодов
- •5.4.4Декодирование линейных кодов. Алгоритм максимального правдоподобия.
- •5.4.5Синдромное декодирование
- •5.4.6Мажоритарный декодер.
- •5.5Циклические коды. Необходимое и достаточное условие цикличности.
- •5.6Способы задания и кодирование циклическими кодами
- •5.7Разложение двучленов примитивной длины на простые множители
- •6.6.1 Коды бчх. Выбор образующих многочленов.
- •5.8Разложение двучленов непримитивной длины на простые множители
- •5.9Основные теоремы об ошибках, обнаруживаемых циклическими кодами
- •5.10Способы декодирования с исправлением ошибок. Декодеры Меггита.
- •5.11Декодер Питерсона-Горенстейна-Цирлера
- •6Модемы
- •6.1Интеллектуальные возможности модемов
- •7Стандарт ат-команды
- •8Протоколы исправления ошибок arq.
- •8.1Формат кадра
- •9Схема построения сети Интернет
5.10Способы декодирования с исправлением ошибок. Декодеры Меггита.
Декодирование циклического кода в режиме исправления ошибок можно осуществлять различными способами. Ниже излагаются два способа, являющиеся наиболее простыми. В основу первого способа положено использование таблицы синдромов (декодирования), в которой каждому многочлену или образцу ошибок ei(x), соответствует определенный синдром Si(x), представляющий остаток от деления принятого слова ai(x) и соответствующего ему ei(x) на g(x). Процедура декодирования следующая. Принятое слово ai(x) делится на g(x), оперделяется Si(x) и соответствующий ему многочлен ei(x), а затем ai(x)суммируется с ei(x). В результате получаем исправленное кодовое слово, т.е. bi(x)= ai(x)+ ei(x).
В
состав декодера входят: вычислитель
синдрома (ВС), два регистра сдвига R1
и R2
и постоянное запоминающее устройство
(ПЗУ), которое содержит
слова длины n,
соответствующие многочленам ошибок
ei(x).
Принятое слово ai(x) поступает на вход вычислителя синдрома, где осуществляется деление его на g(x) и формирование Si(x), и одновременно на вход регистра сдвига, где ai(x) накапливается. Синдром Si(x) используется в качестве адреса, по которому из ПЗУ в регистр R1 записывается ei(x), соответствующий синдрому Si(x). Перечисленные операции завершаются за n тактов. В течение последующих n тактов происходит поэлементное суммирование содержимого R1 и R2, т.е операция bi(x)= ai(x)+ ei(x), и исправление ошибок.
В основе второго способа исправления ошибок, позволяющего значительно сократить объем используемых табличных синдромов и существенно упростить схему декодера, лежат следующие положения:
Синдром Si(x), соответствующий принятому слову равен остатку от деления ai(x) на g(x), а также остатку от деления соответствующего многочлена ошибок ei(x) на g(x), т.е.
Если Si(x) соответствует ai(x) и ei(x), то xSi(x) является синдромом, который соответствует
и
или
При исправлении ошибок используются синдромы образцов ошибок только с ненулевыми коэффициентами в старшем разряде.
Поэтому при реализации этого способа множество всех образцов ошибок разбивается на классы эквивалентности. Каждый класс представляет циклический сдвиг одного образца ошибок, а синдром этого класса соответствует образцу ошибок с ненулевым старшим разрядом. Если вычисленный синдром принадлежит одному из классов эквивалентности образцов исправляемых ошибок, то старший символ кодового слова исправляется. Затем принятое слово и синдром циклически сдвигается, а процесс нахождения в предыдущей по старшинству позиции повторяется.
Для исправления ошибок, принадлежащих данному классу эквивалентности, нужно произвести n циклических сдвигов.
Декодер циклического кода с таким исправлением ошибок предложил Меггит.
Пример. Рассмотрим схему и работу декодера Меггита циклического (15,7)-кода, обеспечивающего исправление одиночных и двойных ошибок,с g(x)= x8+ x7+ x6+ x4+1.
Блок декодеров настраивается на 15 синдромов, которые представлены в таблице и соответствуют классам эквивалентности с образцами ошибок в старшем разряде.
Вариант ошибки e(x) |
Синдром S(x) |
Вариант ошибки e(x) |
Синдром S(x) |
1 |
x14 |
9 |
x14+ x6 |
2 |
x14+ x13 |
10 |
x14+ x5 |
3 |
x14+ x12 |
11 |
x14+ x4 |
4 |
x14+ x11 |
12 |
x14+ x3 |
5 |
x14+ x10 |
13 |
x14+ x2 |
6 |
x14+ x9 |
14 |
x14+ x1 |
7 |
x14+ x8 |
15 |
x14+ x0 |
8 |
x14+ x7 |
|
|
Допустим, что ошибки в 3 и 5 разрядах, т.е. им соответствует многочлен ошибки e(x)= x12+ x10.
При поступлении на вход декодера искаженного кодового слова регистр и в вычислителе формирует синдром
Блок декодеров не реагирует на этот синдром.
Затем происходит сдвиг кодового слвоа в RG, а в ВС формируется новый синдром
Блок декодеров и в этом случае не срабатывает.
При следуеющем сдвиге кодового слова в RG первый искаженный разряд занимает старшую позицию в RG, а в ВС формируется синдром
,
от которого срабатывает блок декодирования.
В результате исправляется первая ошибка.
Следующий сдвиг приводит к формированию синдрома
Этот синдром соответствует многочлену ошибки e(x)= x13+ x0, т.к. первый искаженный разряд по обратной связи должен занимать младшую позицию RG.
На синдром S(13,0) , блок декодеров не реагирует.
При следующем сдвиге кодового слова в RG второй искаженный разряд занимает старшую позицию в RG, а в ВС формируется синдром
,
от которого срабатывает блок декодирования.
В результате исправляется вторая ошибка
в кодовом слове.
.