Компьютерная модель и сравнение пропускной способности каналов для различных помехоустойчивых кодов
Программно-аппаратные средства для мониторинга сигналов в реальном времени предъявляют особые требования к производительности. Дается оценка пропускной способности помехоустойчивых кодов, которые могут быть реализованы в составе системы программного радио SDR (software-defined radio), на обычном настольном ПК. Сравнивается производительность кодеков, широко используемых в современных беспроводных системах.
Баринов В.В., Кузнецов В.С., Смирнов А.В., Перцев Л.В.,
НИУ МИЭТ, [email protected]
Введение
В настоящее время быстрое развитие радиосистем приводит к возникновению проблем автоматизированного мониторинга радиосигналов. Оперативный мониторинг радиоэфира позволяет определять и предотвращать несанкционированный доступ к эфиру, искать направление и вычислять координаты источника сигналов, распознавать сигналы и перехватывать радиосвязь, анализировать и оптимизировать использование частотных и канальных ресурсов. Эти задачи играют ключевую роль в радиоэлектронной разведке и радиоэлектронной борьбе в интересах национальной безопасности.
Одна из особенностей систем мониторинга и распознавания радиосигналов в реальном времени - требование к высокой производительности для выполнения множества операций. Однако динамика разработки современных радиосистем настолько высока, что все попытки своевременного ответа на радиосистемы с новыми сигнально-кодовыми конструкциями неизбежно приводят к недопустимому уменьшению уровня контроля радиоэфира.
Адекватное решение для таких систем -разработка промышленной технологии для создания универсальной аппаратной платформы для мониторинга и распознавания радиосигналов в реальном времени. Такие устройства должны обеспечивать высокую производительность, используя широкополосные приёмники и аппаратные средства для параллельной обработки радиосигналов со сложной сигнальнокодовой конструкцией. Однако разработчики аппаратных решений обеспечивают анализ радиосигналов только на физическом уровне без помехоустойчивого декодирования. В данной статье мы проанализируем производительность систем, способных обрабатывать несколь-
Т-Сотт #4-2013
ко потоков данных, закодированных с помощью различных помехоустойчивых кодов. Примером такой системы может служить программно-определяемая радиосистема (SDR) [1].
При использовании SDR большая часть работ по обработке сигнала ложится на программное обеспечение, которое может быть реализовано на цифровых сигнальных процессорах, на быстродействующих ПЛИС специального DSP - назначения или на персональном компьютере. Цель такого подхода - создавать системы, которые могут принимать и передавать практически любые радиосигналы с любыми типами аналоговой и цифровой модуляции и схемами помехоустойчивого кодирования.
Обычно процессы кодирования/декодирования требуют большого объёма вычислений и использования высокопроизводительных интегральных схем для разгрузки основного процессора. Однако в таких схемах отсутствует возможность менять параметры кодов "на лету", без перепрограммирования.
Уже достаточно продолжительное время некоторыми исследовательскими центрами ведутся разработки основных программно-аппаратных модулей для обработки радиосигналов. Агентство передовых оборонных исследовательских проектов (США) разрабатывает универсальный приёмник с многопроцессорной цифровой обработкой сигналов в рамках проекта "Advanced Digital Receiver" [2], который будет включён в дальнейшие разработки различных радиосистем для мониторинга радиосигналов.
Существующие системы радио мониторинга не полностью отвечают интересам государственных и гражданских органов. В результате существует потребность в универсальной системе, которая бы обеспечивала улучшения в:
• эффективности и продуктивности гражданских средств радио мониторинга;
• своевременности и обоснованности принятия решений при управлении войсковыми частями в различной обстановке.
Обычно для сравнения производительности различных помехоустойчивых кодеков используется аппаратная реализация, поэтому существует небольшое количество материала по программной реализации.
Разработанное ПО
Для реализации помехоустойчивых кодеков мы использовали язык программирования C++ и среду разработки MS Visual Studio 2012. Разработанная библиотека содержит общий интерфейс (AbstractTransform) для реализации всех кодеков (рис. 1): сверточный кед, коды БЧХ [3], коды Хэмминга [4], коды Рида-Соломона [5] и Турбо-коды на основе кодов Хэмминга и БЧХ. Основные особенности реализованных кодеков:
• Глубина решётки для свёрточного кода ограничивается величиной 5х(К — 1) для скорости 1 /2, где К — кодовое ограничение. Для свёрточного кода используется декодер Витер-би с мягкими и жёсткими решениями;
• При декодировании БЧХ и РС кодов используется алгоритм Берлекемпа-Мэсси [6], как наиболее эффективный для программной реализации поиска коэффициентов полинома локатора ошибок;
• Параметры всех кодеков могут изменяться "на лету".
Кроме этого была разработана модель АБГШ канала, в том числе двоичного симметричного (ДСК). АБГШ — наиболее распространённый вид шума, используемый для расчёта и моделирования систем радиосвязи. ДСК часто употребляется теоретиками как простейший канал с шумом. В теории связи множество проблем в приложении к ДСК.
Оценка эффективности декодеров
Мы использовали простую программу для тестирования, которая генерирует массив двоичных данных в случайном порядке, а затем использует функции библиотеки для кодирования и декодирования указанным кодом. После декодирования входной и выходной массивы дво-
29
Рис. 1. Диаграмма классов разработанной библиотеки
Код Хэмминга
£ 500
О
о 400
О
о
5 300 к
(О
| 200 >ч
С
О. 100
(9,4) (15,11) (31,26) (63,57) (127,120)
Код
Рис. 2. Пропускная способность декодера Xэмминга
Код БЧХ
100.-------------------------.---------------
(li.11) (31,6) (16200,16008) (43200,43040)
Код
Рис. 3. Пропускная способность БЧX декодера
ичных данных сравниваются для подсчёта ошибок. Для анализа использовались кодеки, которые широко распространены в современных беспроводных системах связи, таких как DVB-S, DVB-S2 [7], Intelsat [8]. Все разработанные кодеки поддерживают мультипроцессорные конфигурации, а также x86 и x86-64 архитектуры. В таблице 1 представлены параметры ДО ПК, на котором проходило тестирование.
Мы анализировали пропускную способность реализованных кодеков, сравнивая различные параметры кодов, и как эти параметры влияют на производительность.
На рисунке 2 показана пропускная способность декодера Xэмминга для различного числа информационных и проверочных бит в каждом кодовом слове. Пропускная способность декодера особо не меняется ввиду лёгкости процесса декодирования.
На рисунке 3 показана пропускная способность декодера БЧX. Скорость декодирования БЧX кода зависит от корректирующей способности кода. Чем больше ошибок может исправить код, тем медленнее он будет работать ввиду увеличения числа итераций при вычисле-
30
нии синдрома, коэффициентов полинома локатора ошибок и процедуры Ченя. Кроме этого, чем больше длина кодового слова, тем больше итераций необходимо произвести при вычислении синдрома.
На рисунке 4 показана пропускная способность декодера Витерби. Скорость декодирования по алгоритму Витерби во многом зависит от кодового ограничения, от которого, в свою очередь, зависит память кода и размер решётчатой диаграммы. Чем больше кодовое ограничение, тем больше итераций необходимо выполнить для нахождения "вьжившего пути". При увеличении кодового ограничения на единицу количество итераций возрастает в 2 раза.
На рисунке 5 изображена пропускная спо-
собность декодера Рида-Соломона. Программный код данного декодера по большей части основан на коде декодера БЧХ. Поэтому скорость декодера Рида-Соломона напрямую зависит от корректирующей способности кода.
На рисунках 6 и 7 показана пропускная способность ТРС декодеров на основе блочных кодов Хэмминга и БЧХ. Скорость декодирования напрямую зависит от количества итераций декодирования.
Выводы
Программно-аппаратная реализация систем мониторинга радиосигналов в реальном времени предполагает использование различ-ньх помехоустойчивых кодеков одновременно,
Таблица 1
T-Comm #4-2013
Программно-аппаратное обеспечение
Рис. 4. Пропускная способность декодера Витерби
Рис. 6. Пропускная способность декодера TPC-Hаmmingспособностъ декодера Рида-Соломона
Рис. 5. Пропускная способность декодера Рида-Соломона
Рис. 7. Пропускная способность декодера TPC-BCH
что предъявляет особые требования к производительности таких систем. В данной статье мы представили сравнительный анализ пропускной способности декодеров различных помехоустойчивых кодов. Результаты показывают, что программная реализация заметно медленнее аппаратной. Однако использование специализированных инструкций процессора и таких технологий, как NVIDIA CUDA [9], OpenCL [10], позволит повысить скорость декодирования в несколько раз и будет иметь неоспоримые преимущества в гибкости и простоте конфигурирования SDR систем.
Литература
1. http://www.wirelessinnovation.org.
2. C.L.A. Cerny, "Wideband Agile Receiver: An Integrated Photonic Electronic Digital Receiver for RF Sensing," IEEE Avionics, Fiber-Optics and Photonics Technology Conference, Victoria BC, October 2007, pp. 13-14.
3. R.C. Bose, D.K. Ray-Chaudhuri, "On a class of error correcting binary group codes," Information and Control, vol. 3, 1960, pp. 68-79.
4. R. W Hamming, "Error detecting and correcting codes," Bell System Technical Journal, vol. 29, 1950, pp. 147-160.
5. I. S. Reed, G. Solomon, "Polynomial Codes over Certain Finite Fields," Journal of the Society for Industrial
and Applied Mathematics, vol. 8, №2, 1960, pp. 300304.
6. J. L. Massey, "Shift-register synthesis and BCH decoding," IEEE Transaction on Information Theory, vol.
5, 1969, pp. 122-127.
7. http://www.etsi.org/WebSite/Technologies/ DVBS.aspx".
8. http://www.intelsat.com.
9. R Lopez, V. Baena, C. Oria, J.G. Doblado, D. Rerez-Calderon, "M-binary Turbo Decoder Acceleration using CUDA," 26th Conference on Design of Circuits and Integrated Systems, 2011, pp.79-83.
10. G.S. Falcao, Vitor M M da, LA Sousa, J. Andrade, "Rortable LDRC Decoding on Multicores Using OpenCL," IEEE Signal Rrocessing Magazine, Iss.4, vol. 29, 2012, pp.81-109.
Computer model and compare the channel capacity for the different error-correcting codes Barinov V.V., Kuznetsov V.S., Smirnov A.V., Pertsev L.V., [email protected]
Abstract
Software and hardware for monitoring real-time signal have specific performance requirements. In this article, we will assess the capacity of error-correcting codes, which can be implemented in the system software radio SDR (software-defined radio), on a standard desktop RC. Furthermore, comparing the performance of the codec is widely used in modern wireless systems.
T-Comm #4-2013 31