Декодирование сверточного кода с помощью метода APP
APPDecoder Система object™ выполняет декодирование апостериорной вероятности (APP) сверточного кода.
Чтобы декодировать сверточный код с помощью метода APP:
Создать comm.APPDecoder и задайте его свойства.
Вызовите объект с аргументами, как если бы это была функция.
Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.
appDec = comm.APPDecoder создает системный объект APP-декодера, appDec, который декодирует сверточный код с использованием метода APP.
appDec = comm.APPDecoder( задает свойства, используя одну или несколько пар имя-значение. Например, Name,Value)comm.APPDecoder('Algorithm','True APP') конфигурирует объект System, appDec, чтобы реализовать истинное апостериорное декодирование вероятности. Заключите каждое имя свойства в кавычки.
appDec = comm.APPDecoder(trellis, создает объект декодера APP, Name,Value)appDec, со свойством TrellisStructure, равным trellis.
[ выполняет декодирование APP по последовательности LLR входных битов кодера, LUD,LCD] = appDec(LU,LC)LUи последовательность LLR кодированных битов, LC. Объект System возвращает LUD и LCD. Эти выходные значения являются обновленными версиями LU и LCсоответственно и получают на основе информации кодера.
выполняет декодирование APP с помощью LUD = appDec(LU,LC)LCD вывод отключен. Как отключить LCD output, установите для свойства CodedBitLLLROutablePort значение 0 (false).
Чтобы использовать функцию объекта, укажите объект System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:
release(obj)
Этот системный объект реализует алгоритм декодирования APP с мягким входом-мягким выходом согласно [1] и [2].
'True APP' вариант Algorithm свойство реализует декодирование APP по уравнениям 20-23 в разделе V [1]. Чтобы набрать скорость, 'Max*' и 'Max' значения Algorithm приближенные выражения свойства, такие как ) другими величинами. 'Max' в качестве аппроксимации используется max (ai). 'Max*' опция использует max (ai) плюс поправочный член, заданный выражением − 1 − ai |)).
Установка Algorithm свойство для 'Max*' включает NumScalingBits свойства данного объекта System. Это свойство обозначает количество битов, на которое этот системный объект масштабирует обрабатываемые данные (умножает входные данные на 2NumScalingBits и делит предварительный выход на один и тот же коэффициент). Используйте это свойство, чтобы избежать потери точности во время вычислений.
[1] Бенедетто, С., Г. Монторси, Д. Дивсалар и Ф. Поллара. «Модуль Soft-Input Soft-Output Maximum A Posterior (MAP) для декодирования параллельных и последовательных конкатенированных кодов». Доклад о ходе работы лаборатории реактивного движения TDA, 42-127 (ноябрь 1996 года).
[2] Витерби, A.J. «Интуитивное обоснование и упрощенная реализация декодера MAP для сверточных кодов». Журнал IEEE по отдельным областям в сообщениях № 16, № 2 (февраль 1998 года): 260-64. https://doi.org/10.1109/49.661114.
[3] Бенедетто, С. и Г. Монторси. «Производительность непрерывных и блоковых декодированных турбокодов». IEEE Communications Letters 1, No. 3 (май 1997 года): 77-79. https://doi.org/10.1109/4234.585802.