4.1.4. Реализация АРР-декодера
Наиболее полезная форма порогового решающего правила задается формулой (4.5). Можно считать, что (4.5) определяет решающую функцию
которая положительна при и отрицательна при Величины в этом выражении всегда положительны, в то время как коэффициент равен если и равен —1, если Таким образом, этот коэффициент, по существу, определяет знак, с которым должен быть взят каждый вес. Поскольку каждое значение представляет собой независимую оценку то каждый член в (4.5) будет положительным, если соответствующая оценка дает и отрицательным, если эта оценка дает
При реализации этого алгоритма удобно сопоставить двоичные числа выходным уровням демодулятора таким образом, чтобы старший разряд (CP) указывал знак, а оставшиеся разряды задавали абсолютное значение. При таком сопоставлении CP задает жесткое решение, а оставшиеся разряды указывают достоверность этого решения. С использованием этого соглашения на рис. 4.2 показана схема, реализующая предложенный алгоритм. В этой схеме ортогональные проверки на четность вычисляются на основе жестких решений. Эквивалентный подход состоит в замене
Рис. 4.2. Обобщенный декодер АРР
соответствующего регистра регистром сдвига с обратными связями и в вычислении ортогональных проверок на четность (см. гл. 3).
В гл. 3 указывалось, что качество порогового декодера можно улучшить, если ввести цепь обратной связи, через которую решения подаются на вход, и производить повторные декодирования. Аналогичная процедура может быть применена к декодеру АРР, и достигаемое при этом улучшение оказывается даже значительнее. Из сказанного ранее должно быть ясно, что абсолютное значение решающей функции будет большим, когда все индивидуальные оценки характеризуются высоким уровнем достоверности, и малым, когда уровень достоверности мал. Таким образом, решающая функция может рассматриваться как мягкая оценка с Для формализации этой идеи заметим, что
Поскольку декодер принимает при положительном значении при отрицательном значении то
Таким образом, при имеем
режиме, когда основным ограничивающим фактором является время, требуемое для проведения необходимых вычислений, можно использовать несколько декодеров вместо того, чтобы повторно использовать один и тот же декодер. С другой стороны, аналогичных результатов можно достичь, вводя цепь обратной связи, подающую результат вычислений в некоторую внутреннюю точку регистра после задержки на соответствующее число тактов. Пользу этого метода и необходимое число итераций в каждом конкретном случае лучше всего определять экспериментально.
Описанный алгоритм можно дополнительно упростить при использовании трехуровневого канала. В этом случае принятые символы, попадающие в зону стирания, не могут быть использованы для проверок на четность. Выход из этой ситуации состоит в том, чтобы опускать все проверочные уравнения, в которые входит хотя бы один стертый символ, полагая соответствующие веса равными 0. Если проверочное уравнение не содержит стертых символов, то ему приписывается вес 1. При использовании этого метода вместе с описанной ранее итеративной процедурой стертые символы имеют тенденцию восстанавливаться, так что в повторных оценках будет участвовать все большее число проверочных уравнений.