Научная статья на тему 'Анализ эффективности современных помехоустойчивых кодов'

Анализ эффективности современных помехоустойчивых кодов Текст научной статьи по специальности «Электротехника, электронная техника, информационные технологии»

CC BY
2487
506
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПОМЕХОУСТОЙЧИВОЕ КОДИРОВАНИЕ / СВЕРТОЧНЫЕ КОДЫ / ТУРБО-КОДЫ / КОДЫ РИДА-МАЛЛЕРА / КОДЫ РИДА-СОЛОМОНА / ERROR-CONTROL CODING / OVERPRECISION CODES / TURBO-CODES / REED-MULLER CODES / REED-SOLOMON CODES

Аннотация научной статьи по электротехнике, электронной технике, информационным технологиям, автор научной работы — Сидоркина Ю. А., Шахтарин Б. И., Балахонов К. А.

Приведены результаты моделирования процессов помехоустойчивого кодирования в цифровых системах связи в среде Simulink. В моделях применяются различные алгоритмы помехоустойчивого кодирования: код Рида-Маллера, Рида-Соломона, сверточный код, турбо-код. Проведен сравнительный анализ этих кодов по эффективности для работы в канале с аддитивным белым гауссовым шумом. Для оценки эффективности различных кодов были получены зависимости: вероятность битовой ошибки BER BitErrorRate) от отношения энергии одного бита к спектральной плотности мощности шума ( Eb/N0 ); вероятность пакетной ошибки (PER PacketErrorRate) от Eb/N0; распределение длин серий ошибок от Eb/N0 ; оценка математического ожидания длины серии ошибок от Eb/N0

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

EFFECTIVENESS ANALYSIS OF MODERN ERROR-CONTROL CODES

The article focuses on the process simulation results of error control coding in digital communication systems of Simulink. The following algorithms are used during error control coding: Reed-Muller codes, Reed-Solomon codes, overprecision code and turbo-code. Comparative analysis of these codes by effectiveness is provided for using them in a channel with additive Gaussian white noise. In order to estimate the various codes effectiveness the author derives the following dependences: Bit Error Rate (BER) vs ratio of one bit energy to a spectral power density of noise ( Eb/N0 ); Packet Error Rate (PER) vs Eb/N0 ; length distribution of error set vs Eb/N0 ; estimation of mathematical expectation for error set length vs Eb/N0

Текст научной работы на тему «Анализ эффективности современных помехоустойчивых кодов»

РАДИОТЕХНИКА

J

УДК 621.396

АНАЛИЗ ЭФФЕКТИВНОСТИ СОВРЕМЕННЫХ ПОМЕХОУСТОЙЧИВЫХ КОДОВ

Ю.А. Сидоркина, Б.И. Шахтарин, К.А. Балахонов

МГТУ им. Н.Э. Баумана, Москва, Российская Федерация e-mail: [email protected]; [email protected]; [email protected]

Приведены результаты моделирования процессов помехоустойчивого кодирования в цифровых системах связи в среде Simulink. В моделях применяются различные алгоритмы помехоустойчивого кодирования: код Рида-Маллера, Рида-Соломона, сверточный код, турбо-код. Проведен сравнительный анализ этих кодов по эффективности для работы в канале с аддитивным белым гауссовым шумом. Для оценки эффективности различных кодов были получены зависимости: вероятность битовой ошибки (BER-BitErrorRate) от отношения энергии одного бита к спектральной плотности мощности шума (Eb/N0); вероятность пакетной ошибки (PER-PacketErrorRate) от Eb/N0; распределение длин серий ошибок от Eb/N0; оценка математического ожидания длины серии ошибок от Eb/N0.

Ключевые слова: помехоустойчивое кодирование, сверточные коды, турбо-коды, коды Рида-Маллера, коды Рида-Соломона.

EFFECTIVENESS ANALYSIS OF MODERN ERROR-CONTROL CODES

Yu.A. Sidorkina, B.I. Shakhtarin, K.A. Balakhonov

Bauman Moscow State Technical University, Moscow, Russian Federation e-mail: [email protected]; [email protected]; [email protected]

The article focuses on the process simulation results of error control coding in digital communication systems of Simulink. The following algorithms are used during error control coding: Reed-Muller codes, Reed-Solomon codes, overprecision code and turbo-code. Comparative analysis of these codes by effectiveness is provided for using them in a channel with additive Gaussian white noise. In order to estimate the various codes effectiveness the author derives the following dependences: Bit Error Rate (BER) vs ratio of one bit energy to a spectral power density of noise (Eb/N0); Packet Error Rate (PER) vs Eb/N0; length distribution of error set vs Eb /N0; estimation of mathematical expectation for error set length vs Eb /N0.

Keywords: error-control coding, overprecision codes, turbo-codes, Reed-Muller codes, Reed-Solomon codes.

В настоящее время подавляющее большинство радиосистем являются цифровыми. В качестве примеров систем цифровой связи можно привести следующие: сотовая связь (GSM, CDMA, системы 3-го поколения (CDMA-2000, UMTS(WCDMA), мобильный интернет (GPRS и др.), беспроводные локальные сети (IEEE 802.11 Wi-Fi), беспроводные сети городского покрытия (IEEE 802.16 WiMax), системы подвижной связи (TETRA и др.). Цифровая радиосвязь используется в радиолокации, навигации, спутниковом вещании, телефонии (DECT) и в специальных задачах.

При передаче информации по каналу связи с помехами в принятых данных могут возникать ошибки. Для уменьшения числа ошибок может быть использовано кодирование в канале или помехоустойчивое кодирование [1].

Возможность использования кодирования для уменьшения числа ошибок в канале теоретически была показана К. Шенноном в 1948 году в работе "Математическая теория связи", в которой утверждалось, что если скорость создания источником сообщений (производительность источника) не превосходит некоторого значения, называемого пропускной способностью канала, то при соответствующем кодировании и декодировании можно асимптотически свести вероятность ошибок в канале к нулю.

Вскоре стало ясно, что фактические ограничения скорости передачи зависят не только от пропускной способности канала, но также от сложности схем кодирования и декодирования. Поэтому усилия разработчиков и исследователей в последние десятилетия направлены на поиски эффективных кодов, создание практически реализуемых схем кодирования и декодирования, которые по своим характеристикам приближались бы к предсказанным теоретически [1-4].

В настоящей работе ставится задача сравнить эффективность современных алгоритмов помехоустойчивого кодирования с кодовой скоростью 1/2 (такое ограничение выбрано с учетом высоких требований к скорости передачи в современных системах и, как следствие, нежелательности увеличения избыточности кода до больших значений): кодирование Рида-Маллера, Рида - Соломона, сверточного кода и турбо-кода. Задача возникла при выборе наиболее подходящей системы кодирования для разрабатываемой цифровой радиостанции. За точку отсчета была принята существующая в одной из взятых на вооружение армии система, точнее код Рида - Маллера с длиной блока 8 бит и кодовой скоростью 1/2. На первом этапе анализа выпонялось сравнение с более современным кодом Рида - Соломона примерно той же избыточности и длиной блока 7 бит. Далее были взяты еще более поздние коды: сверточные и турбо-коды, а как ограничение уже принималось только время декодирования пакета, которое при условии современной элементной базы (последние поколения ПЛИС) оказалось незначительно влияющим фактором. Такого сравнения до сих пор не проводилось. Для решения поставленной задачи в среде МаИаЪ81шиКпк были созданы модели цифровых систем связи (ЦСС) с различными кодерами в своем составе, в чем, по мнению авторов, состоит новизна настоящей работы. Для оценки эффективности различных кодов были получены зависимости:

— вероятность битовой ошибки (БЕЯ — БйЕггогЕ.а1е) от отношения энергии одного бита к спектральной плотности мощности шума (Еъ/Ко);

— вероятность пакетной ошибки (PER — PacketErrorRate) от Eb/N0;

— распределение длин серий ошибок от Eb/N0;

— оценка математического ожидания (МО) длины серии ошибок от

Eb/No.

Код Рида-Маллера (линейный двоичный блочный код) при определенном построении может быть систематическим. Декодер может быть построен более просто по сравнению с другими рассматриваемыми кодами на мажоритарной логике [4]. В настоящей работе рассматривается код первого порядка (8,4), т.е. имеющий кодовую скорость 1/2, который применяется в некоторых средствах современной отечественной радиосвязи.

Код Рида - Соломона представляет собой недвоичный циклический код, исправляющий ошибки в блоках данных. Этот код является частным случаем БЧХ-кода (Боуза-Чоудхури-Хоквингхема). Для декодирования используется алгоритм Берлекэмпа - Мэсси [5]. Широко используется в системах восстановления данных с компакт-дисков, при передаче данных по сетям WiMAX, в оптических линиях связи, в спутниковой и радиорелейной связи. В настоящей статье рассматривается код (7,4), для которого кодовая скорость близка к 1/2.

Сверточные коды являются непрерывными рекурсивными кодами, т.е. кодируемая последовательность не разделяется на блоки, а выход кодера — это свертка отклика линейной системы на входную информационную последовательность [6, 7]. Для декодирования используется алгоритм Витерби (преимущество которого перед алгоритмом полного перебора состоит в том, что сложность декодера не является функцией числа символов в пакете). В данном случае рассматривается код с избыточностью 1/2. Многие исследователи используют (1, 5/7, 5/7) — сверточный кодер. Он имеет отличные характеристики по сравнению с другими кодерами той же сложности [8]. Сверточное кодирование используется вместе с кодом Рида-Соломона для передачи данных: видео, мобильной связи, спутниковой связи, а также в протоколе IEEE 802.11a на физическом уровне.

Турбо-коды используют комбинацию разных алгоритмов кодирования, что позволяет получать высокую эффективность кода [8, 9]. Для декодирования используется алгоритм максимума апостериорной вероятности, который выдает "мягкие" решения между итерациями. В настоящей статье рассматривается сверточный турбо-код, состоящий из двух сверточных кодов (параметры те же, что и у сверточного кодера (1, 5/7, 5/7), использованного для сравнения), выходные данные которых передаются в закодированную последовательность поочередно вместе с исходной последовательностью. Код также имеет избыточность 1/2.

Описание имитационной модели Simulink. Структурная схема имитационной модели ЦСС изображена на рис. 1.

Рис. 1. Схема имитационной модели:

1 — генератор псевдослучайной битовой последовательности; 2 — кодер; 3 — модулятор; 4 — модель канала с АБГШ; 5 — демодулятор; 6 — декодер; 7 — программный блок сравнения последовательностей

В качестве генератора псевдослучайной последовательности используется источник Бернулли, который генерирует последовательность нулей и единиц, разбитую на фреймы с длиной, соответствующей длине пакета.

Модель канала связи с аддитивным белым гауссовым шумом (АБГШ) изменяет отношение Eb/N0. В настройках блока указывается число информационных бит на символ и длительность символа в секундах. Энергия сигнала равна 1 Вт.

В качестве модуляции использовалась фазовая манипуляция с числом позиций M = 2 (2-ФМ). Последовательности объединяются в пакеты по 1024 бита, после кодирования соответственно длина пакета приблизительно будет равна 2048 битам.

Модель демодулятора выделяет две квадратуры сигнала, ликвидирует поворот фазы созвездия, после чего принимает решение о принятом символе [10, 11].

Задавая отношение Eb/N0, в программном блоке сравнения последовательностей можно, например, получить значение вероятности битовой ошибки и оценить энергетическую эффективность, например, выбранного вида кодирования.

Результаты имитационного моделирования. Основная характеристика, описывающая эффективность кода — BER в зависимости от Eb/N0. На рис.2 видно, что наименьшее отношение Eb/N0 на всем исследуемом интервале у турбо-кода, после него — сверточный код. И значительно хуже работают коды Рида - Соломона и Рида-Маллера.

Поскольку описываемые коды используются для пакетной передачи данных, рассмотрим другую характеристику, которая более точно описывает реальную применимость кода: PER от Eb/N0 (рис.3). Эта зависимость получена при условии, что необходима передача без ошибок, т.е. пакет стирается, если произошло ошибочное восстановление.

В этом случае задавалось критическое значение приемлемой вероятности пакетной ошибки, равное 0,1. Это означает, что если 9 из 10 пакетов будут переданы без ошибок, то кодирование удовлетворяет требованиям качества связи. Из рис. 3 следует, что турбо-код может использоваться для работы с ограничениями начиная от отношения битовой энергии к спектральной плотности шума в 1,55 дБ, сверточный код от 3,4 дБ, код Рида -Соломона от 7,8 дБ, а код Рида-Маллера от 8,4 дБ.

Рис. 2. BER в зависимости от Е — Ъ/М0 для различных кодов:

1 — турбо-код; 2 — сверточный код; 3 — код Рида-Соломона; 4 — код Рида-Маллера

Рис. 3. PER в зависимости от E — b/N0 для различных кодов:

1 — турбо-код; 2 — сверточный код; 3 — код Рида-Соломона; 4 — код Рида-Маллера

Для выбранных кодов было проанализировано распределение серий ошибок в пакете. Для этого смоделировано шумовое воздействие АГБШ в диапазоне Еъ/Ы0 от - 5 дБ до 15 дБ. На рис. 4 показано распределение ошибок, добавленных каналом. Число ошибок определенной длины по отношению к общему числу ошибок изображено интенсив-

1 2 3 4 5 6 7

Длина серии ошибок

Рис. 4. Распределение серий ошибок, добавленных каналом

ностью цвета, в частности, чем более темная зона, тем большее число ошибок было зафиксировано. На рис. 4 по оси абсцисс откладываются длины серий ошибок, по оси ординат — Eb/N0, а число ошибок — в каждой зоне изображается интенсивностью цвета. На рис. 4 видно, что в менее зашумленном сигнале заметны только однобитовые ошибки, а в более зашумленном появляются многобитовые.

Распределение длин серий ошибок в декодированном сигнале для различных кодов изображено на рис.5. Из полученных зависимостей следует несколько выводов: 1) при больших Eb/N0 все коды существенно "очищают" данные от ошибок, а при малых Eb/N0 у всех кодов преобладают одиночные ошибки; 2) графики подтверждают полученные данные (см. рис. 2) о том, что при Eb/N0, больших чем 2 дБ, турбо- и сверточный коды имеют гораздо меньшую BER, чем коды Рида-Маллера и Рида-Соломона; 3) если рассматривать сверточный и турбо-код на границе их работы (при Eb/N0 от 2 до 3дБ), то заметно, что у сверточных кодов преобладают однобитовые ошибки, а у турбо-кодов численность однобитовых и двухбитовых ошибок примерно равна.

Более информативную зависимость можно получить, если для каждого Eb/N0 рассчитать оценку МО длины пакета ошибок (рис. 6).

Заключение. Среди рассмотренных методов помехоустойчивого кодирования наименьшую вероятность битовой и пакетной ошибки имеют турбо-коды. Это означает, что для задач, в которых пакет с ошибками стирается и PER не превышает заранее заданного предела, они подойдут лучше остальных. Однако их использование ограничивает временная задержка декодирования, связанная с тем, что нельзя раскодировать даже часть пакета, пока он не придет полностью

Рис. 5. Распределение длин серий ошибок для различных кодов после декодирования:

а — код Рида-Маллера; б — код Рида -Соломона; в — сверточный код; г — турбо-код

Рис.6. Оценка МО длины пакета ошибок в зависимости от Еь/N0 для рассматриваемых кодов:

1 — турбо-код; 2 — сверточный код; 3 — код Рида - Соломона; 4 — код Рида - Маллера

(в остальных кодах такое возможно). В случаях же когда данные с ошибками используются и одиночные ошибки более приемлемы, чем множественные, лучше подходят сверточные коды, так как для турбо-кодов обнаруживается область, в которой преобладают серии ошибок из двух бит.

Работа выполнена в рамках проекта № 1543 по государственному

заданию на оказание услуг (выполнение работ) Минобрнауки РФ.

ЛИТЕРАТУРА

1. Full-Diversity Space-time error correcting codes with low-complexity receivers. M.S. Hassan, K. Amis // EURASIP Journal on Wireless Communications and Networking Vol. 2011, Article ID 653506.

2. Kumar A.A., Makur A. Improved coding-theoretic and subspace-based decoding algorithms for a wider class of dct and dst codes // IEEE Transactions on Signal Processing, February 2010. P. 695-708.

3. Bhargava K. Efficient Implementation of Error Correction Coding In a Communication System by Using VHDL // VSRD International J. of Electrical, Electronics and Communication Egineering, Vol. 2 (6), 2012. P. 359-365.

4. Мак-Вильямс Ф., Слоэн Н. Теория кодов, исправляющих ошибки. М.: Связь, 1979. 744 с.

5. Блейхут Р. Теория и практика кодов, контролирующих ошибки. М.: Мир. 1986. 576 с.

6. Viterbi A.J. Convolutional Codes and Their Performance in Communication Systems // IEEE Trans. Commun. Tech. Vol. COM-19. October, 1971. Р. 751-772.

7. Витерби А.Д., Омура Дж.К. Принципы цифровой связи и кодирования. М.: Радио и связь, 1982.

8. Морелос-Сарагоса Р. Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение. М.: Техносфера, 2006. 320 с.

9. Дьяконов В.П. MATLAB 7.7R2006/R2007: Самоучитель. М.: ДМК Пресс, 2008. 768 с.

10. Дьяконов В.П. Simulink 5/6/7: Самоучитель. М.: ДМК Пресс, 2008. 784 с.

11. Варгаузин В.А., Цикин И.А. Методы повышения энергетической и спектральной эффективности цифровой радиосвязи. СПб.: БХВ-Петербург, 2013. 352 с.

REFERENCES

[1] Hassan M. S., Amis K. Full-diversity space-time error correcting codes with low-complexity receivers. EURASIP J. on Wireless Communications and Networking, 2011, ID 653506. DOI: 10.1155/2011/653506

[2] Kumar A.A., Makur A. Improved coding-theoretic and subspace-based decoding algorithms for a wider class of dct and dst codes. IEEE Transactions on Signal Processing, 2010, vol. 58, iss. 2, pp. 695-708.

[3] Bhargava K. Efficient implementation of error correction coding in a communication system by using VHDL. VSRD International J. of Electrical, Electronics and Communication Engineering, 2012, vol. II (6), 359-365.

[4] MacWilliams F.J., Sloane N.J.A. The Theory of Error-Correcting Codes. Elsevier/ North-Holland Publishing Company, 1977. (Russ. Ed.: Mak-Vil'yams F.G., Sloen N.G.A. Teoriya kodov, ispravlyayushchikh oshibki. Per. s angl. Moscow, Svyaz' Publ., 1979. 744 p.).

[5] Blahut R.E. Theory and practice of error control codes. Massachusetts, Addison -Wesley Publishing Company, Inc. (Russ. Ed.: Bleykhut R.E. Teoriya i praktika kodov, kontroliruyushchikh oshibki. Per. s angl. Moscow, Mir Publ., 1986. 576 p.).

[6] Viterbi A.J. Convolutional codes and their performance in communication systems. IEEE Transactions Commun. Tech., 1971, vol. 19, iss. 5, pp. 751-772. DOI: 10.1109/TC0M.1971.1090700

[7] Viterbi A.J., Omura J.K. Principles of digital communication and coding. 1st Thus ed. Dover Publications, 2009. 576 p. (Russ. Ed.: Viterbi A.D., Omura Dzh. K. Printsipy tsifrovoy svyazi i kodirovaniya. Moscow, Radio i svyaz' Publ., 1982. 536 p.).

[8] Robert H. Morelos-Zaragoza R.H. The art of error correcting coding. 2nd Ed. Wiley, 2006. 278 p. (Russ. Ed.: Morelos-Saragosa R. Iskusstvo pomekhoustoychivogo kodirovaniya. Metody, algoritmy, primenenie. Moscow, Tekhnosfera Publ., 2006. 320 p.).

[9] D'yakonov V.P. MATLAB 7.*/R2006/R2007: Samouchitel' [MATLAB 7.*/R2006/R2007: Teach Yourself]. Moscow, DMK-Press Publ., 2008. 768 p.

[10] D'yakonov V.P. Simulink 5/6/7: Samouchitel' [Simulink 5/6/7: Teach Yourself]. Moscow, DMK-Press Publ., 2008. 784 p.

[11] Vargauzin V.A., Tsikin I.A. Metody povysheniya energeticheskoy i spektral'noy effektivnosti tsifrovoy radiosvyazi [Methods to improve the energy and spectral efficiency of digital radio]. SPb, BKhV-Peterburg Publ., 2013. 352 p.

Статья поступила в редакцию 16.01.2014

Шахтарин Борис Ильич — д-р техн. наук, профессор кафедры "Автономные информационные и управляющие системы" МГТУ им. Н.Э. Баумана. Автор более 250 научных работ в области радиотехники, статистического анализа, фазовой синхронизации, формирования и обнаружения сигналов.

МГТУ им. Н.Э. Баумана, Российская Федерация,105005, Москва, 2-я Бауманская ул., д. 5.

Shakhtarin B.I. — Dr. Sci. (Eng.), professor of "Autonomous Information and Control Systems" department of the Bauman Moscow State Technical University. Author of more than 250 publications in the field of radio engineering, statistical analysis, phase synchronization, formation and detection of signals.

Bauman Moscow State Technical University, 2-ya Baumanskaya ul. 5, Moscow, 105005 Russian Federation.

Сидоркина Юлия Анатольевна — канд. техн. наук, доцент кафедры "Автономные информационные и управляющие системы" МГТУ им. Н.Э. Баумана. Автор более 30 научных работ в области статистического анализа и синтеза цифровых систем. МГТУ им. Н.Э. Баумана, Российская Федерация,105005, Москва, 2-я Бауманская ул., д. 5.

Sidorkina Y.A. — Cand. Sci. (Eng.), assoc. professor of "Autonomous Information and Control Systems" department of the Bauman Moscow State Technical University. Author of more than 30 publications in the field of statistical analysis and synthesis of digital systems.

Bauman Moscow State Technical University, 2-ya Baumanskaya ul. 5, Moscow, 105005 Russian Federation.

Балахонов Кирилл Андреевич — студент кафедры "Автономные информационные и управляющие системы" МГТУ им. Н.Э. Баумана. Специализируется в области систем помехоустойчивого кодирования, синхронизации радионавигационных приемников.

МГТУ им. Н.Э. Баумана, Российская Федерация, 105005, Москва, 2-я Бауманская ул., д. 5.

Balakhonov K.A. — student of "Autonomous Information and Control Systems" department of the Bauman Moscow State Technical University Specialist in the field of error-correcting codes, synchronization of radio navigation receivers. Bauman Moscow State Technical University, 2-ya Baumanskaya ul. 5, Moscow, 105005 Russian Federation.

i Надоели баннеры? Вы всегда можете отключить рекламу.