Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Помехоустойчивое кодирование.docx
Скачиваний:
28
Добавлен:
25.09.2019
Размер:
602.69 Кб
Скачать

5.4.5. Спектральное описание циклических кодов

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

Пусть   – последовательность из   элементов конечного поля  , причем   делит   для некоторого  , и пусть   – примитивный элемент порядка   в расширении поля  . Дискретным преобразованием Фурье вектора   над конечным полем   называется последовательность   элементов поля   задаваемая равенством

,   .

(5.22)

В матричной форме ДПФ может быть записано следующим образом

.

 

Такое определение аналогично определению ДПФ в поле комплексных чисел, где   заменяется на корень  -й степени из единицы, равный   В связи с такой аналогией оказывается удобным называть индекс   «дискретным временем», а последовательность   – временной последовательностью (функцией). Тогда индекс   можно назвать «частотой», а последовательность   – частотным спектром или просто спектром.

Если векторы   и   связаны равенством (5.22), то существует обратное преобразование Фурье

.

(5.23)

Равенства (5.22) и (5.23) часто называют парой преобразований Фурье. Укажем на два наиболее важных свойства ДПФ.

1. Пусть  ,   и   – временные последовательности, причем  . Тогда

.

 

Справедливо и обратное утверждение. Если

,  , то  .

 

Эти утверждения носят название теорем о свертке в частотной и временной областях.

2. Если вектор   во временной области и его преобразование Фурье   заданы в виде полиномов

 и  .

 

то элемент   поля   является корнем полинома тогда и только тогда, когда частотный компонент   равен нулю; элемент   является корнем   тогда и только тогда, когда  -я компонента   равна нулю.

На основе спектрального подхода можно дать еще одно равнозначное определение циклическому коду как множеству таких слов над конечным полем  , у которых все спектральные компоненты, принадлежащие заданному множеству частот, называемых проверочными, равны нулю.

5.4.6. Простейшие блочные линейные коды

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

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

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

Рассмотрим некоторые простейшие оптимальные коды.

Код с простой проверкой на четность обозначается   и содержит слова с одним проверочным символом  . Проверочный символ есть сумма по модулю 2 информационных:

.

 

Видно, что  , если число единиц в информационной последовательности нечетное, и  , если число единиц – четное. Таким образом, наличие проверочного символа позволяет всем кодовым словам придать общий признак: четность числа единиц в слове.

Порождающая матрица кода имеет   строки   столбцов:

.

 

Любые строки матрицы содержат 2 единицы и отличаются значениями символов на двух позициях, поэтому кодовое расстояние равно 2. Следовательно, код может лишь обнаруживать однократные ошибки  .

Проверочная матрица кода содержит одну строку

.

 

и указывает, что для проверки основного признака кодовых слов надо сложить по модулю 2 все принятые символы.

Декодирование кода основано на проверке четности числа единиц в принятой последовательности  . Для этого вычисляется синдром, содержащий один компонент

,

 

или с учетом   и 

.

 

Значение   соответствует четному числу единиц в  . В этом случае принимается решение об отсутствии ошибок, т.е. полагается  . Ясно, что при действии ошибки четной кратности  , и данное решение будет неправильным.

Если  , то фиксируется наличие ошибки. Очевидно, значение   даст любая ошибка нечетной кратности, т.е. код обнаруживает часть ошибок большей кратности, чем  . Несомненным достоинством этого кода является высокая скорость, характеризуемая величиной  .

Код нечетной длины с повторением обозначается  , имеет кодовые слова   с одним информационным символом и   проверочными, которые повторяют информационный:

.

 

Порождающая матрица состоит из одной строки  , так что код с повторением имеет всего два слова: одно содержит только нули, второе – только единицы. Понятно, что кодовое расстояние равно  , отсюда

.

 

Проверочная матрица кода:

.

 

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

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

Коды Хэмминга имеют кодовое расстояние  , исправляют все однократные ошибки или обнаруживают двукратные, т.е.  . Зависимости проверочных символов от информационных выбраны так, что каждой однократной ошибке соответствует свое ненулевое значение синдрома. Поэтому для кодов Хэмминга число ненулевых синдромов равно числу символов в кодовых комбинациях (числу однократных ошибок):

.

(5.24)

Следовательно, для кодов Хэмминга достигается нижняя граница числа   избыточных символов, а сами коды являются совершенными. Примеры кодов: (3, 1,3), (7,4, 3), (15, И, 3), (31,26, 3), (63, 57, 3),....

Единственный код Голея (23, 12, 7) завершает ряд совершенных кодов.

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

При добавлении проверочного символа длина кода становится четной, а соотношение (5.24) преобразуется к виду  . Расширенные коды Хэмминга образуют ряд: (4, 1,4), (8,4,4), (16, 11,4), (32, 26,4), (64,57,4),....

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

5.5. Коды Боуза-Чоудхури-Хоквингема

5.5.1. Методы задания кодов БЧХ

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

Код БЧХ длины  , исправляющий  -кратные ошибки, это циклический блочный код над полем  , корнями порождающего многочлена которого являются  , где   – элемент конечного поля  ;   – целое число.

В соответствии с этим определением и выражением (5.21) порождающий многочлен кода БЧХ может быть представлен наименьшим общим кратным

,

 

где      – минимальные многочлены элементов  .

Доказано [30, 33], что наличие   корней полинома  , указанных в определении кода, гарантирует исправление всех ошибок кратности, меньшей или равной  .

Основное внимание обратим на коды БЧХ, имеющие длину  . Такие коды называются примитивными кодами БЧХ.

Часто выбирают   (случай кодов БЧХ в узком смысле), что, как правило, приводит к порождающему полиному наименьшей степени, а значит, и к наименьшему числу избыточных символов в кодовом слове. Кроме того, целесообразно выбрать   (  – примитивный элемент поля  , поскольку при этом получается наибольшая длина кодового слова. Список порождающих многочленов кодов БЧХ различных длин (вплоть до  ) имеется, например, в [26].

Построенные таким образом коды БЧХ, исправляющие как минимум  -кратные ошибки, характеризуются конструктивным расстоянием кода  . Истинное минимальное расстояние   кода БЧХ может оказаться больше, чем  . Это означает, что ряд кодов БЧХ может исправлять ошибки кратности большей, чем та, которую задают при построении этого кода.

Найдем проверочную матрицу двоичного циклического кода БЧХ, исправляющего  -кратные ошибки. Учитывая свойство равенства минимальных многочленов с номерами   и   (см. 5.3.5), степень порождающего многочлена   может быть снижена. Действительно, если, например,  , порождающий многочлен примет вид

.

(5.25)

При этом проверочная матрица

.

(5.26)

Сравнивая эту матрицу с матрицей (5.19) кода Хэмминга, видим, что код Хэмминга представляет собой частный случай примитивного кода БЧХ, исправляющего однократные ошибки  .

Представляет интерес воспользоваться возможностью описания кодов БЧХ в спектральной области (см. 5.4.5). Как следует из свойств дискретного преобразования Фурье, спектры слов циклического кода БЧХ должны содержать нулевые компоненты с номерами  .

Таким образом, циклический код БЧХ, исправляющий  -кратные ошибки, можно определить как множество всех слов над полем  , для которых   последовательных компонентов спектра равна нулю. Указанное свойство кодов БЧХ используется при их декодировании.

К особенностям кодов БЧХ можно отнести тот факт, что с ростом длины   кода при фиксированном значении скорости кода   отношение   стремится к нулю. В результате, несмотря на наличие у кодов БЧХ отмеченных положительных свойств, при больших длинах   приходится отдавать предпочтение другим кодам [3, 30].