Стандартное расположение. Синдромное декодирование линейных кодов
Одной из основных причин большой популярности линейных кодов служит возможность применения метода декодирования по минимуму расстояния в особой форме, а не путем непосредственного вычисления расстояния Хэмминга между принятой последовательностью Пусть по ДСК передается одно из возможных двоичных слов
где
На следующем шаге заполнения таблицы выбирается другой вектор
Аналогичным образом осуществляется заполнение и остальных строк, причем в качестве образующего вектора берется такой, который является ближайшим к нулевому и отсутствует в предыдущих строках таблицы. Пусть, например, на
Процедура заполнения завершится тогда, когда после Таблица 6.6.
Горизонтальная черта, проведенная в таблице 6.6, учитывает кодовое расстояние Существуют два основных класса декодеров, использующих стандартное расположение: полные и неполные декодеры. Полный декодер всегда сопоставляет наблюдаемой последовательности ближайшее кодовое слово, что достигается определением столбца стандартного расположения, в котором находится вектор наблюдения, а затем выбирается кодовое слово в его верхней позиции. Неполный декодер, аналогично полному, может сопоставить принятой последовательности кодовое слово, но только тогда, когда принятая комбинация лежит выше горизонтальной линии. В противном случае принимается решение об отказе от декодирования, поскольку в принятой комбинации содержится более Пример 6.9.1. Обратимся к (5,2) линейному коду, рассмотренному в примере 6.7.2. Данный код состоит из четырех слов: {00000, 10110, 01101 и 11011} и способен исправить любую однократную ошибку. Таблица 6.7 содержит все различные слова пространства размерности 5 в соответствии со стандартным расположением. Вектора, отличающиеся от кодовых более чем в
Таблица 6.7. Очевидно, ценность стандартного расположения для процедуры декодирования относительна, поскольку для мощных кодов с большими значениями
Пример 6.9.2. Для декодирования с помощью стандартного расположения (32,26) кода Хэмминга, используемого в СРНС GPS NAVSTAR, требуется 17 Гбайт памяти. При использовании быстродействующего микропроцессора со временем обращения к памяти, равным 100 нСек, процедура декодирования может занять до 429 сек, тогда как обновление информации осуществляется со скоростью 1 слово/сек. Процедуру декодирования можно значительно упростить, используя такое понятие, как синдром. Под синдромом понимается
где Учитывая (6.10), расстояние между вектором наблюдения и кодовым словом определятся соотношением
Тогда декодированию по правилу минимума расстояния можно придать следующую интерпретацию: для декодирования Поскольку размерность вектора синдрома Лемма 6.9.1. Любые два различных вектора ошибок Доказательство. Пусть Из леммы 6.9.1 непосредственно следует, что одному и тому же значению синдрома соответствуют ровно Множество векторов ошибок, соответствующих одному и тому же синдрому, называется смежным классом. Очевидно, что число смежных классов и различных значений синдрома совпадает и равно Вектор ошибок в смежном классе, обладающий минимальным весом, называется лидером. Замечание. На основании приведенных определений таблица стандартного расположения может трактоваться как таблица разбиения векторов ошибки на смежные классы, причем лидеры последних расположены в первом столбце. Следовательно, вычисление синдрома позволяет определить вектор ошибки Окончательно, метод синдромного декодирования предполагает последовательное осуществление следующих операций: – для вектора наблюдений – для вычисленного значений синдрома в таблице лидеров смежных классов находится оценка вектора ошибки – вычитание из Проиллюстрируем действие этого алгоритма для кода, рассмотренного в примере 6.7.2. Пример 6.9.3. Каноническая проверочная матрица линейного (5,2) кода из примера 6.7.2 имеет вид
Тогда с учетом примера 6.9.1 можно определить значения лидеров смежных классов и соответствующих им синдромов, которые сведены в таблицу 6.8. Таблица 6.8.
Пусть передавалось кодовое слово 1. Вычисление синдрома:
2. По вычисленному значению синдрома из табл. 6.8. находится лидер смежного класса – 3. Осуществляется процедура декодирования вектора наблюдения
где учтено, что поэлементное вычитание осуществляется по модулю 2. В заключение следует отметить, что работа устройства, реализующего алгоритм синдромного декодирования, не лишена возможных ошибок. Последнее обусловлено тем, что одному и тому же значению синдрома отвечают ошибки разной конфигурации. Декодер же «настроен» на исправление наиболее вероятной ошибки, т.е. ошибки с малым весом (или малой кратности). Если же произойдет ошибка большей кратности, чем та, на которую рассчитан код, декодер вынесет неправильное решение. Так, в условиях примера 6.9.3 значению синдрома
|