УДК 621.391
КОДИРОВАНИЕ ИНФОРМАЦИИ ПОЛЯРНЫМИ КОДАМИ
Г. С. Тимофеев, В. Е. Петренко Научный руководитель - А. Н. Бочаров
Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
Е-mail: t1 [email protected]
Представлена аппаратная реализация систематического кодирования информации полярными кодами в виде IP-ядра с поддержкой шины Wishbone.
Ключевые слова: помехоустойчивое кодирование, полярные коды, IP-ядро, Wishbone.
INFORMATION ENCODING WITH POLAR CODES
G. S. Timofeyev, V. E. Petrenko Scientific Supervisor - A. N. Bocharov
Reshetnev Siberian State Aerospace University 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: t1 [email protected]
The paper presents a hardware implementation of the systematic encoding of information with polar codes in the form of an IP core supporting the Wishbone bus.
Keywords: error correcting codes, polar codes, IP-core, Wishbone.
Системы помехоустойчивого кодирования являются неотъемлемой частью современных систем передач данных, в том числе систем спутниковой связи. Полярные коды, предложенные Ариканом в [1] достигают пропускной способности двоичного симметричного канала без памяти (ДСКБП). Кроме того, стоит отметить простоту процедур их построения, кодирования и декодирования, что делает их одним из наиболее перспективных направлений в теории помехоустойчивого кодирования [2].
В работе [3] была выделена операция «Прекодирование» - преобразование K информационных бит в N бит в соответствии с маской полярного кода. Предложенная в работе [3] схема прекодирования обладает следующим недостатком: прекодирование P бит осуществляется за P+2 такта, при этом кодирование P бит осуществляется за 1 такт. На рис. 1 представлена схема блока «прекодер», которая позволяет осуществить прекодирование P бит за 1 такт.
Предлагаемая в работе [3] схема систематического кодера была реализована в виде IP-ядра «Систематический полярный кодер», на рис. 2 представлена его структурная схема. Блок включает в себя схему прекодера, систематического кодера, CRC 32 (для случаев использования списочных алгоритмов декодирования [4]), буферы FIFO для хранения промежуточных результатов, регистры полярных кодов, содержащих информацию о длине кодового слова, размере информационной части кодового слова и адресе начала маски выбранного кода. Маски полярных кодов содержатся в памяти маски. Разработанный блок поддерживает до 32 различных полярных кодов с длиной кодового слова 1024, 2048, 4096 и 8192 бит.
Для интеграции разработанного IP-ядра в системы на кристалле реализована поддержка шины Wishbone [5]. На рис. 3 представлена предполагаемая схема включения систематического полярного кодера в систему на кристалле по шине Wishbone.
Секция «Информационно-управляющие системы»
NXTINTO
PRECDDNE_0
Рис. 1. Схема блока «прекодер»
Рис. 2. Структурная хема IP-ядра «Систематический полярный кодер»
Рис. 3. Схема включения IP-ядра «Систематический полярный кодер» по шине Wishbone
Для проведения функциональной верификации IP-ядра «Систематический полярный кодер» по шине Wishbone была разработана компьютерная модель в среде MATLAB. Результаты работы кодера на 100 % соответствуют данным, полученным при моделировании. В таблице представлены режимы, в которых проводилось тестирование, в каждом режиме использовалось по 10000 сообщений.
Режимы тестирования IP-ядра «Систематический полярный кодер
Длина кодового слова N Кодовая скорость K/N
1024 1/4, 1/2, 3/4
2048 1/4, 1/2, 3/4
4096 1/4, 1/2, 3/4
8192 1/4, 1/2, 3/4
Дальнейшим направлением исследования является изучение эффективных алгоритмов декодирования и разрабтка аппаратной реализации декодирования полярных кодов.
Библиографические ссылки
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. Doi: 10.1109/TIT.2009.2021379.
2. Тимофеев Г. С. Применение полярных кодов в современных системах связи // Решетнев-ские чтения. 2016. Т. 1. С. 297-299.
3. Тимофеев Г. С. Аппаратная реализация кодирования информации систематическими полярными кодами // Вестник СибГАУ. Т. 18, № 1. С. 97-104.
4. Opencores. SoC Interconnection: Wishbone [Электронный ресурс]. URL: https://opencores. org/opencores,wishbone (дата обращения: 03.03.2017).
5. Tal I., Vardy A. List decoding of polar codes // IEEE International Symposium on Information Theory, 2011. P. 1-5.
© Тимофеев Г. С., Петренко В. Е., 2017