Главная > Помехоустойчивое кодирование > Кодирование с исправлением ошибок в системах цифровой связи
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

7.2.1. Алгоритм Фано последовательного декодирования

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

Таблица 7.1. (см. скан) Правила последовательного декодирования для алгоритма Фано

Этот алгоритм, принадлежащий Галлагеру, [3], представляет собой переформулировку алгоритма Фано последовательного декодирования.

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

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

Рис. 7.13. Метрики ребер дерева, изображенного на рис. 7.1.

правил, 4 или 5, в зависимости от того, лежит ли выше или ниже текущего порога. При осуществляется переход в сторону — в следующую по достоверности вершину, если такая вершина существует, и движение назад — если такой вершины нет. Если то движение назад без нарушения порога невозможно, так что порог уменьшается на и осуществляется движение вперед. Декодер пытается теперь найти путь, остающийся выше этого уменьшенного порога. Здесь следует применять правило 2. До тех пор пока выполнено неравенство порог не может быть повышен, поскольку при его повышении декодирование станет бесконечным циклом.

Чтобы лучше понять алгоритм Фано, рассмотрим простой пример, основанный на коде с кодовое дерево которого показано на рис. 7.1. Предположим на время, что используется жесткое решение и переданная информационная последовательность имеет вид Принятая последовательность имеет вид Другими словами, в первом и четвертом ребрах появились одиночные ошибки. Метрики путей, соответствующие этому коду и данной принятой последовательности, показаны на дереве, изображенном на рис. 7.13. Считалось, что при согласованности символа с принятой последовательностью метрика увеличивается на 0,5, а при отсутствии согласованности — уменьшается на 4,5. (Такой выбор приращений метрик будет обоснован позже.) В табл. 7.2 показаны шаги алгоритма Фано. При этом считается, что при наличии двух ребер с одинаковой метрикой (как на первом шаге) в декодере всегда вначале проверяется верхнее ребро. Таким образом, выполнение алгоритма начинается с попыток поиска хорошего пути в верхней половине дерева. При Таблица 7.2. (см. скан) Дерево поиска алгоритма Фано для примера из рис. 7.13

первом шаге вперед возникает нарушение порога, в результате чего происходят шаг назад и уменьшение порога. Однако при движении вперед в том же направлении в вершину снова нарушается порог. Это вызывает движение назад и переход в нижнюю половину дерева в попытке поиска лучшего пути. Движение вперед по наилучшему пути продолжается вплоть до вершины где следующая ошибка в канале вызывает очередное нарушение порога. Затем декодер должен пройти назад по своему пути до вершины а и уменьшить порог до —10. После этого существует единственный путь, который всегда лежит над порогом. После просмотра верхней половины дерева декодер может двигаться вперед по пути нигде не нарушая порога. (Эти шаги оставлены читателю в качестве упражнения.) Тем самым декодером найден правильный путь. И, поскольку в канале больше не возникает ошибок, метрика будет непрерывно возрастать только вдоль правильного пути и декодер будет двигаться только вперед.

<< Предыдущий параграф Следующий параграф >>
Оглавление