РАЗРАБОТКА И ИНТЕГРАЦИЯ АДАПТИВНОГО SCL ДЕКОДЕРА В АППАРАТНУЮ ПЛАТФОРМУ FPGA XILINX ARTIX-7 XC7A100T
- Авторы: Чилихин Н.Ю1, Карпухина Е.К1, Горюнов А.О1
-
Учреждения:
- Ульяновский государственный технический университет
- Выпуск: Том 19, № 3 (2021)
- Страницы: 357-365
- Раздел: Статьи
- URL: https://journals.eco-vector.com/2073-3909/article/view/112230
- DOI: https://doi.org/10.18469/ikt.2021.19.3.13
- ID: 112230
Цитировать
Полный текст
Аннотация
Процесс адаптации (подстройки) под внешнее воздействие является движущей силой развития любой естественной (биологической) и технической (антропогенной) системы. Попытка разработки и последующего внедрения такой системы оказывается, по сути, поиском схемы, которая учитывает все или наиболее вероятные режимы функционирования. Однако в реальности проектировщик подобных устройств решает задачу минимизации случаев блокировки системы. В рамках работы коллективом авторов предпринята достаточно успешная попытка создания на базе программируемой логической интегральной схемы адаптивного декодера. Под адаптацией авторами понимается поиск оптимальной схемы по критериям: корректирующая и пропускная способности, задержка. В качестве предложенного решения создана конфигурация устройства, включающая в себя: последовательный декодер Арикана, декодер Тала - Варди и циклического избыточного кода. В качестве платформы используется FPGA Xilinx Artix-7. Среди наиболее важных преимуществ платформы Artix-7 компании Xilinx следует выделить следующие: уменьшенное энергопотребление на 50 % по сравнению с конкурентами, поддержка DDR3 со скоростью 1066 Мбит/с, поставка с годовой лицензией и использование технологического процесса 28 нм. Полученные результаты позволяют утверждать, что созданный адаптивный декодер на базе полярных кодов целесообразно применять в каналах управления (критичны к задержкам и функционируют в условиях отсутствия локальной стационарности) высокоскоростных и подвижных систем связи.
Полный текст
Введение В 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.×
Об авторах
Н. Ю Чилихин
Ульяновский государственный технический университет
Email: n.chilikhin@gmail.com
Ульяновск, Россия
Е. К Карпухина
Ульяновский государственный технический университет
Email: elena.k.karpukhina@gmail.com
Ульяновск, Россия
А. О Горюнов
Ульяновский государственный технический университет
Email: gorun05@mail.ru
Ульяновск, Россия
Список литературы
- 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.
- 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.
- Parity-check polar coding for 5G and beyond / H. Zhang [et al.] // IEEE International Conference on Communications (ICC). 2018. P. 1-6.
- 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.
- Ганин Д.В., Наместников С.М., Чилихин Н.Ю. Модифицированные алгоритмы лексикографического декодирования полярных кодов в системе обработки изображений // Вестник НГИЭИ. 2017. № 11 (78). С. 7-22.
- Sarkis G., Gross W.J. Increasing the throughput of polar decoders // IEEE Communications Letters. 2013. Vol. 17, no. 4. P. 725-728.
- 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.
- 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.
- 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.
- Карпухина Е.К. Методы защиты номера кластера в процедуре лексикографического декодирования блоковых кодов // Современные проблемы проектирования, производства и эксплуатации радиотехнических систем: сб. науч. трудов. 2019. С. 130-132.
- Наместников С.М., Чилихин Н.Ю., Карпухина Е.К. Концептуальная модель принятия решения квазиинтеллектуальным декодером при обработке информации в канале связи с неизвестными параметрами // Радиолокация, навигация, связь: сб. трудов XXV Международной научно-технической конференции, посвященной 160-летию со дня рождения А.С. Попова: в 6 т. 2019. С. 177-182.
Дополнительные файлы
