2.2.4. Другой метод кодирования циклических кодов
Мы показали, что кодер полиномиального -кода может быть построен в виде регистра сдвига с ячейками, цепи обратной связи которого задаются порождающим многочленом. Иногда более удобной оказывается другая реализация кодера, в. которой используется регистр сдвига с ячейками. Оказывается, что структура этого регистра задается проверочным многочленом
Проиллюстрируем структуру этого кодера на примере уже рассматривавшегося -кода.
В подразд. 2.2.2 было отмечено, что проверочную матрицу кода, порожденного многочленом можно получить, подав на вход регистра сдвига с обратной связью символ 1 и произведя семь сдвигов. В результате получится матрица
Эта операция эквивалентна делению на при котором частное появляется в виде последовательных символов в цепи обратной связи. Таким образом, первая строка (2.12) записывается как
Добавляя первую строку (2.12) к последней строке, получаем матрицу
в которой каждая строка — результат циклического сдвига первой строки. Таким образом, каждый проверочный символ матрицы является одной и той же линейной комбинацией четырех стоящих от него справа символов. Поэтому для построения кодера можно использовать схему, показанную на рис. 2.7. Обратная связь в ней задается проверочным многочленом (предполагаем, что В общем случае кодов над GF (q) член обратной связи из ячейки умножается на меняется от 0 до и сумматор является сумматором в поле Предполагается, что ячейка наименьшего порядка изображена на этом рисунке справа.
Работа кодера (рис. 2.7) начинается с того, что в регистр с отключенной цепью обратной связи заносятся четыре информационных символа. Затем цепь обратной связи включается и регистр сдвигается семь раз. Первые четыре символа, поступающие в канал, являются информационными, а следующие три — проверочными.
Другой способ получения того же результата основан на том, что результат приведения по модулю произведения на произвольное кодовое слово равен 0; в самом деле,
Следовательно, каждый коэффициент полученного многочлена равен 0. Для коэффициента при получаем
Шесть других коэффициентов приводят к аналогичным выражениям, в которых индекс подвергается циклическому сдвигу, как и ранее. Таким образом, коэффициенты образуют правильные проверки на четность, и, используя этот факт, можно непосредственно построить матрицу
Из этих наблюдений можно сделать важный вывод, состоящий в том., что код с порождающим многочленом дуален коду с
Рис. 2.7. Кодер с использованием регистра сдвига, задаваемого многочленом