DOI 10.25987/VSTU.2019.15.4.012 УДК 621.3.049.77
РЕЛАКСАЦИОННЫЙ ПОЛУСТОХАСТИЧЕСКИЙ ИТЕРАЦИОННЫЙ ДЕКОДЕР ДЛЯ LDPC-КОДОВ
М.В. Хорошайлова, И.В. Свиридова Воронежский государственный технический университет, г. Воронеж, Россия
Аннотация: представлен релаксационный полустохастический (РП) с низкой плотностью проверки на четность (от англ. low-densityparity-check, LDPC) алгоритм декодирования, который использует некоторые элементы алгоритма суммарного произведения (от англ. thesum-product algorithm, SPA) в своих переменных узлах, но поддерживает пере-межитель низкой сложности и структуру проверочного узла, характерную для стохастических декодеров. Алгоритм основан на принципе последовательной релаксации для преобразования двоичных стохастических потоков в представление логарифмического отношения правдоподобия (LLR). Переменные узлы используют метод, аналогичный последовательной релаксации для оценки текущего значения входящих стохастических потоков. Моделирование (2048, 1723) кода RS-LDPC показывает, что релаксационный полустохастический алгоритм может превосходить 100-итерационное декодирование sum-product алгоритма с плавающей точкой. Представлены подходы для реализации релаксационного полустохастического алгоритма с низкой сложностью. Кроме того, показано, как стохастическая природа распространения доверия может быть использована для снижения уровня ошибок. Свойства случайной сходимости являются естественной частью всех стохастических декодеров и играют важную роль в улучшении существующих алгоритмов итеративного декодирования, делают их еще более привлекательными для высокоскоростных приложений с низким BER. Исследована упрощенная реализация алгоритма с фиксированной запятой, производительность которого близка к идеальному алгоритму
Ключевые слова: стохастическое декодирование, низкоплотностный декодер, проверочный и переменный узлы, sum-product алгоритм
Введение
Стохастическое декодирование было введено как альтернатива алгоритму суммарного произведения (SPA) с низкой сложностью, который потенциально мог достичь аналогичной производительности. Тем не менее, только декодирование коротких кодов привело к желательной производительности. Затем был усовершенствован алгоритм стохастического декодирования, чтобы добиться хорошей производительности декодирования для больших кодов [1, 2].
Привлекательность стохастических декодеров состоит в том, что им требуется только два соединения на двунаправленный край графа Таннера, поэтому используется соединение схемы в его простейшем выражении. Узлы проверки также чрезвычайно просты и содержат только ячейки XOR(ИЛИ-НЕ). Эта структура делает возможным рассмотрение полностью параллельных реализаций длинных кодов. Контрольные узлы для декодеров SPA и алгоритма с минимальной суммой (MSA) этого кода имеют различные реализации даже для последовательных битовых декодеров MSA. В дополнение к низкой сложности еще одним
© Хорошайлова М.В., Свиридова И.В., 2019
важным преимуществом стохастических декодеров является возможность добавлять этапы конвейера на некоторых или на всех этапах перемежителя, не влияя на эффективность исправления ошибок. Это обеспечивает более высокую тактовую частоту, а для реализации ASIC может облегчить компоновку и маршрутизацию.
Основываясь на простой проверке узлов и структуре перемежителя, мы искали способ улучшения производительности по битовой частоте ошибок (BER) в стохастических декодерах. В статье представлен релаксационный полустохастический алгоритм декодирования, который обрабатывает сообщения проверочных узлов, используя методы стохастического декодирования, и сообщения переменных узлов, используя обновление переменных узлов SPA (и MSA). Здесь приводится метод для эффективного преобразования сообщений между стохастическим и вероятностным (и логарифмически-правдоподобным) представлениями. В отличие от предыдущих достижений, которые представляют вероятности фиксированным числом битов в стохастическом пакете и имеют значительное ухудшение BER, наш алгоритм не пакетируется и работает на побитовой основе, обновляя сообщения вероятности в переменных узлах, основан на принципе по-
следовательной релаксации. Моделирование показывает, что алгоритм РП значительно улучшает производительность BER, превосходя алгоритм суммирования произведений с плавающей запятой [3].
Стохастическое декодирование
Стохастические декодеры представляют информацию о вероятности в форме двоичных стохастических потоков, то есть случайных последовательностей Бернулли произвольной длины, а информация, содержащаяся в последовательности, является ее статистикой первого порядка. Это полезно, когда средняя функция потока интерпретируется как вероятность. В этом случае могут быть разработаны переменные и проверочные узлы низкой сложности. Несмотря на простую реализацию, стохастическое представление потока может иметь произвольную точность, и по этой причине стохастическое декодирование было предложено как альтернатива для декодирования SPA низкой сложности.
Учитывая функцию проверки узла степени 3 (два входа и один выход), пусть ожидаемое значение текущих входных битов будет p0 и pi. Применяя функции XOR на входах ожидаемое значение выхода равно pout = p0q1 + q0p1 (где q;= 1 - pj), что является точной функцией проверки узла SPA в области вероятности. Поскольку функция не ссылается ни на какие предыдущие значения входных потоков, она остается действительной для нестационарных потоков. Функция легко расширяется до узлов более высокой степени путем объединения нескольких узлов степени 3.
Для работы с переменным узлом был предложен ряд функций, одна из которых приведена ниже. Эта функция определена для переменного узла степени 3 (входы {a, b}, выход
с) и имеет только 1 бит состояния. Легко показать, что если каждый входной поток предполагается стационарным, ожидаемое значение выходного потока представляет желаемую вероятность.
с = ■
I a если j,
a = b jj
с
i -1, иначе
Релаксационный полустохастический алгоритм
Как было отмечено, разрыв между производительностью SPA с плавающей точкой и стохастическим декодированием обусловлен реализацией переменных узлов. Алгоритм RHS повышает точность работы переменного узла за счет извлечения информации в стохастическом потоке и выполнения точных операций в области LLR. Под точными операциями мы подразумеваем, что функция переменного узла SPA используется напрямую. Остальная часть декодера остается стохастической, и обмен информацией между переменными и контрольными узлами происходит в виде стохастических потоков. Переменный узел в РП алгоритме создается путем расширения узла переменных SPA для обработки входящих стохастических потоков и преобразования их в значения LLR, чтобы иметь возможность генерировать стохастические потоки на выходе. Переменный узел RHS создается путем расширения узла переменных SPA для обработки входящих стохастических потоков и преобразования их в значения LLR, чтобы иметь возможность генерировать стохастические потоки на выходе. Результирующая функциональность переменного узла проиллюстрирована на рис. 1.
Рис. 1. Функциональное представление переменного узла. Показан только один вход и один выход
Результаты моделирования для релаксационного полустохастического алгоритма
Структура моделирования состоит из случайного источника с кодером, модуляции / демодуляции BPSK и канала AWGN. Все моделирования выполняются с максимум 1000 циклами декодирования с использованием досрочного завершения. Цикл декодирования соответствует 1 биту, обрабатываемому переменными узлами, отправляемому на контрольные узлы и отправляемому обратно переменным узлам. Отметим, что цикл декодирования в алгоритме стохастического декодирования не эквивалентен итерации в алгоритме передачи сообщений таком, как SPA. Для моделирования используется (6, 32) - регулярный код LDPC на основе RS размером 2048 и скоростью 0,84 с обхватом 6. Этот код был выбран в недавнем стандарте IEEE 802.3an для 10-Гбит / сEthemet через кабели CAT6. Описанный здесь декодер представлен с плавающей точкой [4].
Влияние коэффициента релаксации в представлено установочными кривыми на рис. 2. Кривые показывают частоту ошибок кадра декодера как функцию максимального количества циклов декодирования (от англ. Decodingcycles, DC) при 4,2 дБ. Когда максимальное число DC находится приблизительно между 115 и 740, наилучшая производительность достигается при в = 1/16, тогда как в = 1/32 немного лучше, когда предел DC выше 740. С другой стороны, декодер сходится быстрее в среднем для более высоких значений в, как показано, когда начальная часть кривых находится слева. Среднее число циклов декодирования при 4,2 дБ составляет 20 в случае в = 1/8 и 30 для в = 1/16. Используя в = {1/4, 1/8, 1/16} в последовательности в течение процесса декодирования, это число может быть уменьшено до 15 без какого-либо снижения производительности декодирования. Кривая, показанная на рис. 2, использует в = 1/4 для циклов [0, 33], в = 1/8 для циклов [34, 110], а затем в = 1/16. Глядя на график, мы можем предположить, что дополнительные циклы декодирования обеспечат небольшую дополнительную производительность.
Показатель BER РП-декодера показан на рис. 3 вместе с SPA с плавающей запятой с 100 итерациями и 5-битной демодуляцией. Кривая, называемая «ASPA», представляет собой декодер «приближенного SPA со смещением» с 4-битным квантованием. На рисунке представ-
лена 7-битная реализация SPA, представленная в [5], а также стохастический декодер, разработанный в соответствии с архитектурой, представленной в [6]. Этот декодер моделируется с помощью 64-битных запоминающих устройств с ограничением в 1000 циклов декодирования. В области спада, при BER 10-8, РП-декодер превосходит все другие декодеры, но самое главное 100 итераций SPA с плавающей точкой. Стоит отметить, что моделирования подтверждают, что РП-декодер соответствует производительности оптимизированного релаксационного SPA при использовании достаточно малого фактора релаксации.
|\ 1-1 V х I: \ 1 1 1 1 ■ 1 — (3=1/4 ---(3-1/8 .......(3=1/16 ------(3-1/32 -(3={1/4*1/8,1/16}
I - * А 1 IV \ 1\ V V :
V \ \ ч \
0 200 400 600 BOO 1000
Циклы декодирования
Рис. 2. Декодирование сходимости РП-декодера при 4,2 дБ
.............
-*-RH8: 1К DCs, (4=1/16
1 -ММ- 1 1 ' Г Mtv 11 -е- FP SPA. 100 Iter ASPA
.......... ........
ч
'! •!!! !!! * f X. 11(11 1;1 ..... ... Stochastic -е- 7-Mt SPA 200 iter
\ \
1'!1 11 1:1
V- ::: .....д а
I::!!!!:! ::::::::: Ч
**•: :::*:;:::*::::*: :::* ::;: :::: ::::;
........ Л V
..;... ;.. . .;..
:........ i А..........Т-з:
- .;... !!!! !;:!! !!!
:::::::::: V:
Ы :
i i 1 í i
З.В 4 4.2 4.4 4.6 4.8
ЕЫНо ЩВ]
Рис. 3. Производительность BER РП-декодера с использованием 100 или 160 циклов декодирования по сравнению с другими подходами
На рис. 4 показано, что метод перекодирования может значительно снизить минимальный уровень ошибок РП-декодера. Решение проблемы минимального уровня ошибки также было представлено в [7], где была введена методика постобработки, основанная на предварительной характеристике наборов перехвата кода. Постобработка выполняется путем применения тщательно выбранных смещений к сообщениям вблизи не учтенных контрольных узлов. Производительность этого ASPA-декодера с постобработкой также показана на рис. 4. При 4,5 дБ производительность, достигнутая РП-декодером, эквивалентна производительности, полученной с помощью метода постобработки. Предел ошибок РП с повторным декодированием ниже, чем SPA, и имеет ту же форму. При более низких коэффициентах ошибок кадров наблюдаемая тенденция указывает на то, что РП-декодер будет превосходить декодер ASPA с постобработкой.
. 1
-s ".'".A".■■■.■ ■. > :::::::: ::::::::■!..................
...... ........;>.......■......... Щ \ ■ ■ ...........i--------¡"I"!!?';":"'
V, \ » » V . . . . 1 ЧЕ Vi-j ■■■;■ ■ ■ V
V \......:........;.........
J JHHIII .....
... .ж*. \ ...... .......\........ ....
* ч i
-0- 100iter. FP SPA ■ -+-РШ5,р=1Л6 RHS + redecoding -A-AS РА ■ - м -ASPA postprocessing - В - POO iter 7—hit SPA J-. .
4 \ .....• .% ..'■.. .. .............V......... ■■ V ..
З.В З.е 4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 Eb/No [dB]
Рис. 4. Влияние метода перекодирования на частоту ошибок кадра РП-декодера
Заключение
Мы представили алгоритм стохастического декодирования для кодов LDPC, который имеет два основных новых аспекта. Во-первых, переменные узлы используют метод, аналогичный последовательной релаксации, для оценки текущего значения входящих стохастических потоков. Вместе с использованием операций в области LLR это создает очень точный стохастический переменный узел, о чем свидетельствуют отличные характеристи-
ки исправления ошибок, полученные на рис. 4. Во-вторых, мы показали, как случайное поведение сходимости декодера может быть использовано для снижения минимального уровня ошибок, который ограничивает производительность декодирования при высоких SNR. Затем была представлена упрощенная реализация с фиксированной запятой, производительность которой близка к идеальному алгоритму. Несмотря на повышенную производительность, РП-декодер сохраняет преимущества других стохастических декодеров в отношении реализации высокоскоростных полностью параллельных декодеров. Минимальный перемежитель, простые проверочные узлы и возможность произвольного конвейерного пе-ремежения являются большими преимуществами в этом декодере.
Свойства случайной сходимости могут играть важную роль в улучшении существующих алгоритмов итеративного декодирования для преодоления структурных недостатков в кодах. Тот факт, что эти свойства являются естественной частью всех стохастических декодеров, делает их еще более привлекательными для высокоскоростных приложений с низким BER.
Литература
1. Ali Nandrei, ShieMannor, Mohamad Sawan Warren J. Gross. Relaxed stochastic decoder of LDPC codes // IEEE transaction on signal processing. 2011. Vol. 59. Pp. 5617-5626.
2. Хорошайлова М.В. Verilog-описание и реализация на плис LDPC-декодера для высокоскоростной передачи данных / М.В. Хорошайлова // Вестник Воронежского государственного технического университета. 2018. Т. 14. № 2. С. 120-124.
3. Хорошайлова М.В. Архитектура канального кодирования на основе ПЛИС для 5G беспроводной сети с использованием высокоуровневого синтеза // Вестник Воронежского государственного технического университета. 2018. Т. 14. № 2. С. 99-105.
4. Башкиров А.В., Хорошайлова М.В. Использование вынужденной конвергенции для снижения сложности LDPC-декодирования // Вестник Воронежского государственного технического университета. 2017. Т. 13. № 1. С. 69-73.
5. Design of LDPC decoders for low error rate performance / Z. Zhang, L. Dolecek, B. Nikolic, V. Anantharam, and M. Wainwright // submitted to IEEE Trans. Comm., www. eecs.berkeley. edu/ ~ananth/2008+ /TCOM0303.pdf
6. Sharifi Tehrani S., Mannor S. and Gross W. Fully parallel stochastic LDPC decoders // IEEE Trans. on Signal Processing. 2008. Vol. 56. № 11. Pp. 5692-5703.
7. Lowering LDPC error floors by postprocessing / Z. Zhang, L. Dolecek, B. Nikolic, V. Anantharam, and M. Wainwright // In Proc. of Globecom. 2008. Pp. 1-6.
Поступила 09.06.2019; принята к публикации 29.07.2019
Информация об авторах
Хорошайлова Марина Владимировна - ассистент, Воронежский государственный технический университет (394026, Россия, г. Воронеж, Московский проспект, 14), e-mail: [email protected], ORCID: https://orcid.org/0000-0001-9167-9538 Свиридова Ирина Владимировна - старший преподаватель, Воронежский государственный технический университет (394026, Россия, г. Воронеж, Московский проспект, 14), e-mail: [email protected], ORCID: https://orcid.org/ 0000-0001-5279-0807
RELAXATION ITERATION SEMISTOCHASTIC DECODERS FOR LDPC CODES
M.V. Khoroshaylova, I.V. Sviridova Voronezh State Technical University, Voronezh, Russia
Abstract: the article presents a semi-stochastic relaxation (SSR) with a low density parity check (LDPC) decoding algorithm that uses some elements of the sum-product algorithm (SPA) in its variable nodes, but it maintains a low complexity in-terleaver and a check node structure characteristic of stochastic decoders. The algorithm is based on the principle of sequential relaxation to convert binary stochastic flows into a log-likelihood ratio (LLR) representation. Variable nodes use a method similar to sequential relaxation to estimate the current value of incoming stochastic flows. Modeling (2048, 1723) of the RS-LDPC code shows that a relaxation semi-stochastic algorithm can exceed 100-iterative decoding of the sum product floating-point algorithm. The work presented approaches for the implementation of a relaxation semi-stochastic algorithm with low complexity. In addition, it shows how the stochastic nature of the propagation of trust can be used to reduce the level of errors. Random convergence properties are a natural part of all stochastic decoders and play an important role in improving the existing iterative decoding algorithms, making them even more attractive for high-speed applications with low BER. Also the article studies a simplified implementation with a fixed comma, the performance of which is close to the ideal algorithm
Key words: stochastic decoding, low-density decoder, check and variable nodes, sum-product algorithm
References
1. Nandrei A., Mannor S., Sawan M., Gross W.J. "Relaxed stochastic decoder of LDPC codes", IEEE Transaction on Signal Processing, 2011, vol. 59, pp. 5617-5626.
2. Khoroshaylova M.V. "Verilog description and implementation on the FPGA LDPC decoder for high-speed data transmission", The Bulletin of Voronezh State Technical University (Vestnik Voronezhskogo Gosudarstvennogo Tekhnicheskogo Universi-teta), 2018, vol. 14, no. 2, pp.120-124
3. Khoroshaylova M.V. "Architecture of FPGA based channel coding for 5G wireless network using high-level synthesis", The Bulletin of Voronezh State Technical University (Vestnik Voronezhskogo Gosudarstvennogo Tekhnicheskogo Universiteta), 2018, vol. 14, no. 2, pp.99-105
4. Bashkirov A.V. "Use forced to reduce the convergence complexity LDPC decoding", The Bulletin of Voronezh State Technical University (Vestnik Voronezhskogo Gosudarstvennogo Tekhnicheskogo Universiteta), 2017, vol. 13, no. 1, pp. 69-73
5. Zhang Z., Dolecek L., Nikolic B., Anantharam V., Wainwright M. "Design of LDPC decoders for low error rate performance," submitted to IEEE Trans. Comm., available at: www.eecs.berkeley.edu/~ananth/2008+ /TC0M0303.pdf
6. SharifiTehrani S., Mannor S., Gross W., "Fully parallel stochastic LDPC decoders," IEEE Trans. on Signal Processing, Nov. 2008, vol. 56, no. 11, pp. 5692-5703
7. Zhang Z., Dolecek L., Nikolic B., Anantharam V., Wainwright M. "Lowering LDPC error floors by postprocessing", Proc. of Globecom 2008, Dec. 2008, pp. 1-6.
Submitted 09.06.2019; revised 29.07.2019 Information about the authors
Marina V. Khoroshaylova, Assistant, Voronezh State Technical University (14 Moskovskiy prospekt, Voronezh, 394026, Russia), [email protected], tel. 8-910-732-66-13, ORCID: https://orcid.org/0000-0001-9167-9538
Irina V. Sviridova, Assistant Professor, Voronezh State Technical University (14 Moskovskiy prospekt, Voronezh 394026, Russia), e-mail: [email protected], ORCID: https://orcid.org/ 0000-0001-5279-0807