Алгоритм декодирования LDPC WBF (ВИБ)

На настоящий момент известно множество модификаций АИБ. Такой интерес к этому алгоритму вызван его чрезвычайной просто­той, а также неплохой эффективностью, демонстрируемой для некото­рых классов кодов. В отличие от алгоритмов, основанных на АРД, главной задачей которых было максимальное снижение вычислительных затрат по сравнению с алгоритмом АРД при минимальной потере в эффективно­сти, для алгоритмов основанных на АИБ стоит противоположная задача - максимальное повышение эффективности декодирования с минималь­ным увеличением сложности. Одной из наиболее простых модификаций АИБ является взвешен­ный алгоритм ИБ (алгоритм ВИБ, АВИБ, англ. weighted bit-flip, WBF). Как следует из названия, алгоритм ВИБ использует мягкие реше­ния демодулятора относительно принятых бит. Для его работы модем должен оценивать достоверность каждого из этих решений. В простейшем случае достоверность - это модель ампли­туды принятого сигнала для соответствующего бита. Шаги, выполняемые алгоритмом ВИБ, совпадают с шагами алгоритма ИБ, отличие заключается только в расчете сообщений от проверочных узлов. При их вычислении используются оценки достоверности принятых бит:

где α - знак, β – модуль сообщения от i-го информационного узла к j-му проверочному узлу. Таким образом, каждая проверка характеризуется не только тем, выполняется она или нет, но и достоверностью этого суждения. При этом достоверность проверки определяется её самым ненадежным би­том. Полученное таким образом значение также можно рассматривать как достоверность того, что рассматриваемая проверка содержит иска­женный бит. Опираясь на все вышесказанное, АВИБ можно представить в обоб­щенном виде следующим образом.

Шаг 1. Инициализация. Для всех информационных узлов i ини­циализировать сообщения α i , хранящиеся в информационных узлах, жёсткими оценками принятых бит.

Шаг 2. Обновление проверочных узлов. Для всех проверочных узлов CN вычислить исходящие сообщения Lji:

и передать их соответствующим информационным узлам VN.

Шаг 3. Обновление битовых узлов. Вычислить сообщения L i→j , исходящие от информационных узлов VN:

и передать их соответствующим проверочным узлам.

Шаг 4. Получение окончательных решений. Для всех i =0,1,...,N−1 найти жёсткие решения, а для

выполнить инверсию:

Шаг 5. Проверка правильности декодирования. Вычислить син­дром:

где H - проверочная матрица LDPC кода. Если s= 0 или число итераций достигло максимума – вычисления прекращаются, а полученное жесткое решение считается результатом декодирования, в противном случае вы­числения продолжаются с шага 2.

Сопутствующие материалы:

  1. Zhang, J.A Modified weighted bit-flipping decoding of low­-density parity-check codes / J. Zhang, M. P. C. Fossorier //IEEE Communications Letters. — 2004. — Т. 8, No 3. — С. 165–167.
  2. Nouh, A. Bootstrap decoding of low-density parity-check codes /A Nouh, A. H. Banihashemi //IEEE Communications Letters. — 2002.— Т. 6, No 9. — С. 391–393.23.