DEVELOPMENT AND INTEGRATION OF ADAPTIVE SCL DECODER INTO HARDWARE FPGA PLATFORM XILINX ARTIX-7 XC7A100T


如何引用文章

全文:

详细

The process of adaptation (adjustment) to external influences is the driving force of the development of any natural (biological) and technical (anthropogenic) system. An attempt to develop and subsequently implement such a system turns out to be, in fact, a search for a scheme that takes into account all or the most probable operation modes. However, in reality, the designer of such devices solves the problem of minimizing the cases of system blocking. In the course of work, a team of authors made a fairly successful attempt to create an adaptive decoder on the basis of a programmable logic integrated circuit. By adaptation, the authors mean the search for the optimal scheme according to the following criteria: correction and bandwidth, delay. As a proposed solution, a device configuration has been created that includes: Arikana serial decoder, Tala-Vardi and cyclic redundancy code decoder. FPGA Xilinx Artix-7 is used as a platform. Some of the most important benefits of Xilinx’s Artix-7 platform include 50 % less power consumption compared to competitors, support for DDR3 at 1066 Mbps, shipping with an annual license, and use of the 28nm process technology. The results obtained make it possible to assert that the created adaptive decoder based on polar codes is expedient to use in control channels (critical to delays and functioning in the absence of local stationarity) of high-speed and mobile communication systems.

全文:

Введение В 2008 году Эрдал Арикан открыл явление по- ляризации канала, что стало базисом разработан- ных в дальнейшем полярных кодов (ПК) [1; 2]. Применение концепции ПК обусловлено рядом положительных свойств данного класса блоковых кодов: достижением асимптотически возможной пропускной способности двоичного канала без памяти и возможностью свободного выбора тре- буемого кодового расстояния в рамках метрики Хэмминга на базе расстояния Бхаттачария (РБх). Проведенные научные изыскания в этой пред- метной области позволили создать достаточно эффективные алгоритмы обработки кодовой по- следовательности с эффектом поляризации: клас- сический алгоритм Арикана (последовательный декодер отмены), алгоритм Тала - Варди (списоч- ный декодер), алгоритм Кёттера, алгоритм Думе- ра - Шабунова и другие [2]. Универсальность, гибкость и простота их реализации позволили группе 3GPP (3-rd Generation Partnership Project - консорциум, разрабатывающий спецификации для мобильной связи) использовать ПК в каналах управления высокоскоростных и подвижных си- стем связи (например, 5G/IMT-2020) [3]. За по- следние 5 лет наиболее важные заседания 3GPP (R1-87Nov. 2016AI: 7.1.5.1 и R1-88bApr. 2017AI: содержали следующие результаты: принять ПК (за исключением очень малых длин блоков) для каналов управления восходя- щей линией связи; в качестве рабочего предположения приме- нять ПК (за исключением очень малых длин бло- ков) для каналов управления нисходящей линией связи; пришли к соглашению, что методы построе- ния полярного кода будут изучены без снижения производительности коэффициента блоковых ошибок или задержки. Тем не менее анализ современных источников показал, что среди научных статей достаточно мало работ, в которых описывается интеграция существующих алгоритмов (разработка и вне- дрение новых) в FPGA (Field-Programmable Gate Array - программируемая логическая интеграль- ная схема). Это доказывает актуальность пред- ставленного в нашей работе исследования. Особенности и ограничения FPGA Xilinx Artix-7 XC7A100T При разработке адаптивного SCL (Successive Cancellation of List - последовательная отмена списков - алгоритм Тала - Варди) декодера не- обходимо учитывать особенности платформы, на базе которой происходит прототипирование. FPGA Xilinx Artix-7 XC7A100T обеспечивают наивысшую производительность и скорость ли- нии приемопередатчика. Они сочетают низкую стоимость с минимальным энергопотреблением, что идеально подходит для производства разно- образных портативных устройств. На рисунке 1 показано, как выглядят FPGA. «Infokommunikacionnye tehnologii» 2021, Vol. 19, No. 3, pp. 357-365 Рисунок 1. FPGA Xilinx Artix-7 XC7A100T Данная платформа имеет высокопроизводи- тельные логические ресурсы, реализованные на базе 6-входовых таблиц преобразования (6-LUTs (Logic Units Table - логически-элементные та- блицы), которые также могут конфигурироваться как распределенная память, и 2-портовая блочная память BlockRAM (36 Кбит) со встроенной логи- кой FIFO (First Input-First Output - первый вход- первый выход). Блоки ввода-вывода, исполь- зующие технологию SelectIO, поддерживают высокоскоростные дифференциальные сигналь- ные стандарты, включая поддержку интерфейса памяти DDR3 (до 1866 бит/с). Реализация адаптивного SCL-декодера Как отмечалось ранее, применение ПК в кана- лах управления обусловлено их простотой и гиб- костью. Это достигается за счет использования ряда математических инструментов: образование порождающей матрицы на основе произведения Кронекера, гибкое управление избыточностью с помощью РБх и унифицированный подход к формированию индексов LLR (Log-Likelihood Ratio - логарифмическое отношение правдопо- добия) [1; 2; 4]. Выражение для формирования РБх [4; 5] Высокоскоростные приемопередатчики, по- 2Z - Z 2 i , i , äëÿ j N -1 0,e 0 i, зволяющие реализовать последовательную пе- Z2i 1, j Z 2 äëÿ j N -1 0 i, (1) редачу данных со скоростью от 600 Мбит/с до i , 0,o 28 Гбит/с, поддерживают специальный режим где i N / 2 -1, j 0,1, 2,..., N -1 , j N -1 0,e - эленизкого потребления и оптимизированы для менты множества только с четными номерами и межкристальной коммутации. Двойные 12-битj N -1 0,î - элементы множества только с нечетными ные аналого-цифровые преобразователи (ADC) общего назначения с производительностью 1 млн номерами, начиная с нуля, а довой комбинации. N 2m - длина ковыборок в секунду имеют встроенные датчи- ки контроля температуры и напряжения. Блоки управления и синтеза сигналов синхронизации позволяют обеспечить высокую точность сиг- налов и низкий уровень джиттера. Аппаратные блоки PCI Express поддерживают порты x8 Gen3 Endpoint и RootPort. Важно отметить, что техническая реализа- ция выполнена для пула размерностей кодовой комбинации до 1024 бит. Большие размерности потенциально возможны, но ввиду особенности FPGA Xilinx Artix-7 XC7A100T допустимы лишь для этапа симуляции. Это обусловлено тем, что количество LUTs элементов ограничено. Адаптивный декодер целесообразно рассма- тривать как комбинацию независимых модулей SC (Successive Cancellation - последовательная отмена списков - последовательный декодер Ари- кана), SCL и CRC (Cyclic Redundancy Check - Ци- клический избыточный код) декодеров. Ресурс- ные затраты, задержка и пропускная способность адаптивного SCL-декодера показаны в таблице 1. При реализации точность входного LLR деко- дера SC равна PSCD = 6 бит. Хотя точность входно- го LLR декодера SCL равна Pi = 6 бит, т. к. было использовано дополнительно log N бит, чтобы гарантировать, что декодер не перегрузится и не перейдет в режим блокировки. Таким образом, Таблица 1. Результаты реализации классического SCL-декодера N L FFs LUTs RAM Период, нс Min-Max задержка, с Min-Max пропускная способность, Мбит/c 256 2 7806 12589 14 7,38 152-1534 12-197 4 10217 16565 28 8,23 152-1539 11-177 8 15241 28438 56 9,67 152-1800 8-150 1024 2 27690 45021 16 7,78 548-6640 10-225 4 34099 53972 32 8,43 548-6645 10-208 Таблица 2. Процент используемых ресурсов в финальной схеме N L Тип декодера FFs, % LUTs, % BRAM, % 256 2 SC 67,2 72,2 6,7 SCL 31,9 25,1 93,3 CRC 0,9 2,7 0,0 4 SC 51,0 53,5 3,4 SCL 48,3 44,4 96,6 CRC 0,7 2,1 0,0 8 SC 34,0 30,9 1,8 SCL 65,5 67,9 98,2 CRC 0,5 1,1 0,0 1024 2 SC 74,6 80,2 5,3 SCL 25,1 16,2 94,7 CRC 0,3 3,6 0,0 4 SC 60,4 66,8 2,9 SCL 39,4 30,2 97,1 CRC 0,2 3,0 0,0 внутренняя LLR точность декодера SCL состав- ляет PSCLD = 6 + log N бит. Количество установлен- ных LPU (List Processing Unit - блок обработки списка) равно V = 4, и используется FRBS (Fast Random Bit Sorter - быстрый рандомный бито- вый сортировщик) для сортировки значений в декодере SCL. Адаптивный SCL-декодер показывает свою максимальную задержку и минимальную про- пускную способность, когда CRC не действите- лен (переходит в режим блокировки, или данные не могут быть восстановлены) в конце декоде- ра SC и классического декодера SCL. При этом SCL-декодер показывает минимальную задержку и максимальную пропускную способность, когда после выхода декодера SC результат работы CRC действителен (штатный режим функционирова- ния). дерами. Для всех случаев CRC-декодер использу- ет наименьшее количество ресурсов [6-8]. Результаты пропускной способности реализа- ций варьируются в зависимости от Eb/No. В об- ласти низких значений Eb/No декодеры SC и SCL работают неэффективно [9; 10]. Поэтому декодер SCL часто активируется после сбоя CRC в конце декодера SC. При увеличении значений Eb/No де- кодер SCL реже активируется, и пропускная спо- собность адаптивного декодера SCL улучшает- ся. Пропускная способность относительно Eb/No показана на рисунках 2 и 3. Потеря производи- тельности из-за реализации FRBS показана на рисунках 4 и 5 для длин кодовой комбинации N = 256 и K = 128 [6; 11]. Важно отметить, что наблюдается незначительная потеря производительности в кривых вероятности ошибок на бит (BER) и частоты появления ошибок (FER) при размерах списка L = 32 и L = 16 соответственно. Увеличение использования BRAM (Block Также стоит отметить, что E /N и SNR (Signal b o Random Аccess Memory - блок оперативной памяти) вызвано шириной асимметричных вход- ных данных BRAM в декодере SCL. Процент ре- сурсов декодеров SC, SCL и CRC в адаптивном SCL-декодере показан в таблице 2. По мере уве- личения размера списка SCL-декодер использует больше ресурсов по сравнению с другими деко- Noise Ratio - соотношение сигнал/шум) тожде- ственно равны. На рисунках используется аббре- виатура SNR, которая используется в языке про- граммирования Vivado компании Xilinx. Для N = 1024 и K = 512 производительность адаптивного декодера SCL с битовым сортиров- щиком показана на рисунках 6 и 7. Рисунок 2. Пропускная способность адаптивного SCL-декодера с параметрами N = 256, K = 128 при длине списка L = 8 Рисунок 3. Пропускная способность адаптивного SCL-декодера с параметрами N = 1024, K = 512 при длине списка L = 4 Рисунок 4. Значения BER для адаптивного SCL-декодера с применением битовых сортировщиков при N = 256, K = 128 Рисунок 5. Значения FER для адаптивного SCL-декодера с применением битовых сортировщиков при N = 256, K = 128 Рисунок 6. Значения BER для SCL-декодера с применением битовых сортировщиков при N = 1024, K = 512 Рисунок 7. Значения FER для SCL-декодера с применением битовых сортировщиков при N = 1024, K=512 Рисунок 8. Значения BER для SCL-декодера при различной точности P при N = 256, K = 128 Рисунок 9. Значения BER для SCL-декодера при различной точности P при N = 1024, K = 512 FRBS вызывает потерю производительности более 0,5 дБ при L = 32. Причинами этой поте- ри производительности могут быть кандидаты в трудные решения, которые имеют более одного действительного CRC в конце декодера SCL. В дополнение к этому производительность BER адаптивного SCL по отношению к точности битов показана на рисунке 8, и производитель- ность FER показана на рисунке 9. Хотя декодер SCL использует P = Pi + log N, точность P = 11 битов достаточна для N = 1024, K = 512, L = 16, Pi = 6 из-за результатов BER и FER. Заключение Адаптивный декодер SCL состоит из трех ос- новных модулей: блока обработки списка, блока обновления частичной суммы списка и сорти- ровщика. Наибольший практический интерес представляет собой блок сортировщика. Для реализации LPU в количестве V LPU использу- ется полупараллельная архитектура, каждая из которых состоит из V элементов маршрутизатора с мягким решением и V L элементов обработки списка. При реализации адаптивного декодера SCL устанавливается V = 4. В разработанном прототипе используется древовидная структура, чтобы минимизировать задержку. Таким обра- зом, мы имеем N - 1 элементов маршрутизатора для принятия жестких решений. Для сортировки было реализовано несколько вариаций битовых сортировщиков: быстрый битовый сортировщик и быстро восстановленный битовый сортиров- щик. Был выбран FRBS как основной сортиров- щик, чтобы минимизировать задержку и исполь- зование ресурсов, вызванных сортировщиком в SCL-декодере. FRBS вводит некоторые незначительные потери производительности, которые были показаны на рисунках и в таблицах выше. Задержка декодера CRC устанавливается рав- ной 2 для реализации адаптивного декодера SCL. В результате была получена реализация FPGA адаптивного SCL-декодера с пропускной способ- ностью до 225 Мбайт/с. Анализ 256 битовой комбинации показывает, что при изменении длины списка с дискретными значениями 2, 4, 8 количество затраченных ре- сурсов и памяти распределяется следующим об- разом: SC-декодер (60÷30), SCL-декодер (40÷70), CRC-декодер (в районе 1 %). Анализ битовых со- ртировщиков показал, что при применении FRBS можно получить дополнительный выигрыш по- рядка 0,2 дБ, а также сокращение временных за- держек на 31,3 %, уменьшение вычислительной мощности на 17,1 % и снижение использования памяти на 10,4 %. Сравнение аналитической и имитационной моделей показало незначительное расхождение (порядка 9,32 %), что является нор- мальным и доказывает корректность переноса разработанного кода в FPGA.
×

作者简介

N. Chilikhin

Ulyanovsk State Technical University

Email: n.chilikhin@gmail.com
Ulyanovsk, Russian Federation

E. Karpukhina

Ulyanovsk State Technical University

Email: elena.k.karpukhina@gmail.com
Ulyanovsk, Russian Federation

A. Goryunov

Ulyanovsk State Technical University

Email: gorun05@mail.ru
Ulyanovsk, Russian Federation

参考

  1. Arikan E. Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless channels // IEEE Transactions on Information Theory. 2009. Vol. 55, no. 7. P. 3051-3073.
  2. Gladkikh A.A., Chilikhin N.Y., Mishin D.V. Improving efficiency of fiber optic communication systems with the use of lexicographic decoding of polar codes // Proceedings of SPIE - The International Society for Optical Engineering. 2018. P. 1077402.
  3. Parity-check polar coding for 5G and beyond / H. Zhang [et al.] // IEEE International Conference on Communications (ICC). 2018. P. 1-6.
  4. Methods of coherent networks matching with codecs computational capabilities / A.A. Gladkikh [et al.] // Proceedings of SPIE - The International Society for Optical Engineering. 2019. P. 1114605.
  5. Ганин Д.В., Наместников С.М., Чилихин Н.Ю. Модифицированные алгоритмы лексикографического декодирования полярных кодов в системе обработки изображений // Вестник НГИЭИ. 2017. № 11 (78). С. 7-22.
  6. Sarkis G., Gross W.J. Increasing the throughput of polar decoders // IEEE Communications Letters. 2013. Vol. 17, no. 4. P. 725-728.
  7. Fast polar decoders: Algorithm and implementation / G. Sarkis [et al.] // IEEE Journal on Selected Areas in Communications. 2014. Vol. 32, no. 5. P. 946-957.
  8. Hashemi S.A., Condo C., Gross W.J. Fast and flexible successive-cancellation list decoders for polar codes // IEEE Transactions on Signal Processing. 2017. Vol. 65, no. 21. P. 5756-5769.
  9. PolarBear: A 28-nm FD-SOI ASIC for decoding of polar codes / P. Giard [et al.] // IEEE Journal on Emerging and Selected Topics in Circuits and Systems. 2017. Vol. 7, no. 4. P. 616-629.
  10. Карпухина Е.К. Методы защиты номера кластера в процедуре лексикографического декодирования блоковых кодов // Современные проблемы проектирования, производства и эксплуатации радиотехнических систем: сб. науч. трудов. 2019. С. 130-132.
  11. Наместников С.М., Чилихин Н.Ю., Карпухина Е.К. Концептуальная модель принятия решения квазиинтеллектуальным декодером при обработке информации в канале связи с неизвестными параметрами // Радиолокация, навигация, связь: сб. трудов XXV Международной научно-технической конференции, посвященной 160-летию со дня рождения А.С. Попова: в 6 т. 2019. С. 177-182.

补充文件

附件文件
动作
1. JATS XML

版权所有 © Chilikhin N.Y., Karpukhina E.K., Goryunov A.O., 2021

Creative Commons License
此作品已接受知识共享署名-非商业性使用-禁止演绎 4.0国际许可协议的许可。