- •Глава 1. Системные передачи дискретных сообщений 9
- •Глава 2. Защита от ошибок 25
- •Глава 3. Устройства преобразования сигналов 43
- •Предисловие
- •Глава 1. Системные передачи дискретных сообщений
- •1.1. Основные понятия и определения
- •1.2. Структурная схема системы пдс
- •Контрольные вопросы
- •Глава 2. Защита от ошибок
- •2.1. Методы защиты от ошибок в системах без обратной связи
- •2.2. Построение корректирующих кодов
- •2.3. Классификация корректирующих кодов
- •2.4. Линейные коды
- •2.5. Циклические коды
- •2.6. Системы с обратной связью
- •Контрольные вопросы
- •Глава 3. Устройства преобразования сигналов
- •3.1. Назначение и классификация устройств преобразования сигналов
- •3.2. Дискретный канал с амплитудной модуляцией
- •3.3. Дискретный канал с частотной модуляцией
- •3.4. Дискретный канал с фазовой модуляцией
- •3.5. Дискретный канал с относительной фазовой модуляцией
- •3.6. Дискретный канал с многопозиционной модуляцией
- •Контрольные вопросы
- •Глава 4. Синхронизация в системах пдс
- •4.1. Синхронизация в синхронных и стартстопных системах пдс
- •4.2. Поэлементная синхронизация
- •Управляющий сигнал
- •4.3. Групповая синхронизация
- •Контрольные вопросы
- •Глава 5. Оконечное оборудование документальной электросвязи
- •Глава 6. Устройства ввода-вывода оконечного оборудования
- •Глава 7. Принципы факсимильной передачи
- •Глава 8. Анализирующие и синтезирующие устройства факсимильной аппаратуры
- •Глава 9. Синхронизация и фазирование факсимильной аппаратуры
- •Офисный комбайн Panasonic kx-flb758ru.
- •Глава 11. Способы коммутации (кк, кс, кп)
- •Глава 12. Координатные станции коммутации каналов
- •Глава 13. Автоматическая координатная станция ат – пс – пд
- •Глава 14. Электронные станции коммутации каналов и сообщений
- •Глава 15. Каналообразующая аппаратура с врк: тву – 15, дата
- •Глава 16. Каналообразующая аппаратура с чрк: тт – 144, тт – 24
- •Глава 17. Назначение сети дионис
- •Глава 18. Система rex400
- •Глава 19. Назначение сети Internet
- •Заключение
- •Библиографический список
- •394026 Воронеж, Московский просп., 14
2.5. Циклические коды
В основе построения циклических кодов лежит представление кодовых комбинаций в виде полиномов. Так, n - элементная кодовая комбинация записывается в виде
F(x)=an-1 xn-1 + an-2 xn-2 +...+ a1 x + a0,
где коэффициенты ai равны 0 или 1, причем ai = 0 соответствует нулевым элементам комбинации, а ai = 1 - ненулевым. Например, комбинациям 1101 и 1010 отвечают полиномы F1(x)=x3 + x2 + 1 и F2(x)=x3 + x. Наивысшая степень полинома на единицу меньше числа элементов кодовой комбинации.
При построении комбинаций циклического кода часто используют операции сложения полиномов и деления одного полинома на другой. Так, сложение полиномов производится по обычному правилу, за исключением операции сложения, которое заменяется операцией суммирования по модулю два. Например,
F1(x) F2(x)=(x3 + x2 + 1) (x3 + x)=x2 + x + 1,
поскольку x3 x3=x3(1 1)=0.
Деление выполняется как обычно, только вычитание заменяется суммированием по модулю два. Например,
|
x7 |
+ |
x5 |
+ |
x3 |
+ |
x2 |
+ |
1 |
x4 |
+ |
x |
+ |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x7 |
+ |
x4 |
+ |
x3 |
|
|
|
|
x3 |
+ |
x |
+ |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x5 |
+ |
x4 |
+ |
x2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x5 |
+ |
x2 |
+ |
x |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x4 |
+ |
x |
+ |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x4 |
+ |
x |
+ |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
0 |
|
0 |
|
|
|
|
|
Разрешенные комбинации циклического кода обладают двумя очень важными отличительными признаками: циклический сдвиг элементов разрешенной кодовой комбинации дает также разрешенную комбинацию циклического кода. Все разрешенные кодовые комбинации делятся без остатка на полином P(x), называемый образующим. Эти свойства используются при построении циклических кодов, кодирующих и декодирующих устройств, а также при обнаружении и исправлении ошибок.
Найдем алгоритм построения разрешенных кодовых комбинаций циклического кода по заданным комбинациям исходного простого кода, удовлетворяющих перечисленным выше условиям.
Полином Q(x), соответствующий k-элементной комбинации простого кода, умножаем на . Умножение Q(x) на необходимо, чтобы сдвинуть информационные элементы на r разрядов влево и тем самым высвободить справа r разрядов для записи проверочных элементов. Определяем проверочные элементы в виде остатка R(x) от деления произведения Q(x) на образующий полином P(x) степени r. Проверочные элементы прибавляем к Q(x) . В результате получаем кодовую комбинацию n-элементного циклического кода
. (2.2)
Так как максимальная степень остатка всегда по крайней мере на единицу меньше степени образующего полинома, ясно, почему степень образующего полинома выбирается равной числу проверочных элементов r.
Можно заметить, что при таком способе построения комбинаций циклического кода первые k элементов являются информационными, а последующие r - проверочными, т.е. код является разделимым.
Пример 2.5. Задан полиномом Q(x) = x3 + x, соответствующий четырехэлементной комбинации простого кода. Требуется построить комбинацию циклического кода с . Этому условию удовлетворяет циклический код (7,4) (см. пример 2.3). Возьмем в качестве образующего полинома P(x)=x3 + x + 1 и разделим Q(x)xr = ( x3 + x ) x3= x6 + x4 на x3 + x + 1:
|
x6 |
+ |
x4 |
|
|
|
|
|
|
x3 |
+ |
x |
+ |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x6 |
+ |
x4 |
+ |
x3 |
|
|
|
|
x3 |
+ |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x3 |
+ |
x |
+ |
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
x |
+ |
1 |
|
|
|
|
|
Остаток от деления
R(x) = x + 1.
Соответственно полином комбинации циклического кода
F(x) = x6 + x4 + x + 1.
В циклическом коде остаток от деления R(x) играет роль синдрома. Для определения синдрома следует разделить принятую комбинацию на образующий полином. Если все элементы приняты без ошибок, то остаток равен нулю. Наличие ошибок приводит к тому, что остаток не равен нулю. По виду остатка можно определить ошибочные элементы и исправить их.
Циклические коды относятся к классу линейных кодов, которые могут быть заданы в виде произведения матриц Gn,k=|Ik Br,k|. В отличие от линейного кода, где матрица проверочных элементов определяется методом подбора строк с определенным весом, в циклических кодах матрица Br,k находится по общим правилам (2.2) с помощью деления строк матрицы Ik, сдвинутых на r разрядов влево, на образующий полином.
Производящая матрица циклического кода (7,4) (см. пример 2.3) может быть записана в виде
G7,4= |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
. |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
|
0 |
0 |
1 |
0 |
1 |
1 |
0 |
|
0 |
0 |
0 |
1 |
0 |
1 |
1 |
|
a1 |
a2 |
a3 |
a4 |
b1 |
b2 |
b3 |
Строки в матрице G7,4 содержат четыре комбинации циклического кода. Пятая комбинация является нулевой. Остальные одиннадцать комбинаций получаются суммированием по модулю два всех сочетаний строк матрицы G7,4.
Матрица проверочных элементов B3,4, как и для обычных линейных кодов, представляет собой набор синдромов – опознавателей одиночных ошибок. Первый синдром соответствует искажению элемента a1, второй – a2 и т.д.