УДК 621.513.6
Реализация алгоритмов управления адаптивными антенными решетками на базе цифрового сигнального контроллера
И.Д.Плетнева
Московский государственный институт электронной техники (технический университет)
Рассмотрена реализация на базе отечественного сигнального контроллера 1892ВМ3Т семейства «Мультикор» линейно ограниченных алгоритмов управления адаптивными антенными решетками (ААР), функционирующими по критерию постоянства модуля информационных символов. Приведены оценки требуемых объемов памяти программ и данных, а также быстродействия каждого из этих алгоритмов. Полученные оценки дают возможность выбора оптимального алгоритма с учетом требований к ААР по количеству элементов, скорости принимаемых данных, времени сходимости, значению ошибки в установившемся режиме и ресурсам вычислительной системы.
В связи с широким использованием беспроводных средств передачи цифровых данных растет количество устройств, не связанных друг с другом, но работающих в одном диапазоне частот. Поэтому подавление помех, находящихся в одной полосе частот с полезным сигналом, является актуальной проблемой современной связи. Эта задача эффективно решается с помощью адаптивных антенных решеток (ААР), позволяющих подавлять такие помехи за счет формирования провалов в диаграмме направленности в неизвестных направлениях на источники помех. В общем случае для ААР как разновидности адаптивного фильтра требуется опорный сигнал. Однако в большинстве существующих систем связи не предусмотрено формирование такого сигнала. В таких системах можно использовать линейно ограниченные (Linearly Constrained, LC) алгоритмы [1] или алгоритмы по критерию постоянства модуля информационных символов (Constant Modulus, CM) [2]. Указанные разновидности алгоритмов характеризуются известными недостатками, особенно проявляющимися при приеме помех, коррелированных с полезным сигналом. При известном направлении на источник полезного сигнала можно использовать комбинацию данных алгоритмов, что позволяет устранить указанные недостатки.
Разработка и теоретическая оценка эффективности таких алгоритмов выполнена для LC нормализованного градиентного CM-алгоритма по критерию наименьшего среднеквадратичного отклонения (Normalized Least Mean Squares, NLMS) [3], для LC рекурсивного CM-алгоритма по критерию наименьших квадратов (Recursive Least Squares, RLS) [4], а также для LC СМ-алгоритма аффинных проекций (Affine Projection, ÄP) [5].
Одной из важнейших характеристик адаптивных алгоритмов является их вычислительная сложность. ААР должны функционировать в режиме реального времени, поэтому актуальной является оценка временных характеристик работы алгоритма при его реализации в составе конкретного аппаратно-программного комплекса. Реализация алгоритма подразумевает создание программного обеспечения, оптимального с точки зрения временных затрат, что позволяет увеличить частоту дискретизации и, следовательно, полосу частот принимаемых ААР сигналов.
© И.Д.Плетнева, 2009
ААР представляет собой многоканальный адаптивный фильтр с одним весовым коэффициентом в каждом канале (рис.1), т.е. управление решеткой является типовой задачей цифровой обработки сигналов (ЦОС). При реализации различных алгоритмов управления ААР на базе систолических матричных процессоров хорошо сочетается параллельная и конвейерная обработка данных. В [6, 7] приведены примеры реализации матричных процессоров как на заказных СБИС, так и на ПЛИС.
Реализация на ПЛИС алгоритмов управления ААР [3-5], отличающихся помимо регулярности наличием большого количества рекурсивных вычислений, операций деления и т.п., приводит к созданию схемы, близкой по функциям и структуре к цифровому сигнальному процессору (ЦСП), но требующей большего времени на отладку и вызывающей трудности при внесении каких-либо изменений по сравнению с универсальными ЦСП. Выигрыш в производительности по сравнению с готовыми сигнальными процессорами может оказаться незначительным, а потери в стоимости - существенными. ЦСП (Digital Signal Processor, DSP) занимают большое место на рынке устройств ЦОС.
Отличительной особенностью алгоритмов управления ААР является большое количество операций умножения с накоплением. Большинство арифметических операций являются комплексными. Поэтому именно ЦСП, благодаря высокой производительности и ориентации их архитектуры на ЦОС, позволяют эффективно реализовать алгоритмы управления ААР.
Современные ЦСП делятся на процессоры, поддерживающие обработку данных в форме с плавающей и с фиксированной точкой. При реализации алгоритмов управления ААР для обеспечения их точности и во избежание явлений переполнения данных целесообразно представлять данные в форме с плавающей точкой. Отечественный сигнальный контроллер 1892ВМ3Т объединяет на одном кристалле два процессора: стандартный MIPS32-совместимый контроллер и оригинальный ЦСП с плавающей точкой [8]. Сравнение DSP-ядра (ELCORE-11), являющегося основой 1892ВМ3Т, и DSP-ядра семейства TMS320C54x, использованного в новой двухпроцессорной микросхеме TMS320C5471 (TI), демонстрирует ряд преимуществ в архитектуре ELCORE DSP.
Реализация алгоритмов управления ААР требует большого количества операций пересылок на каждой итерации. Перед выполнением арифметических операций необходимо извлечь из памяти значения комплексных отсчетов входного сигнала xN (к) (два 32-разрядных слова с плавающей точкой) и значения комплексных коэффициентов ААР hN (к -1) (также два 32-разрядных слова с плавающей точкой), а после вычислений записать в память новые значения. Необходимость пересылок связана с тем, что архитектура DSP-ядра предполагает выполнение всех арифметических операций в регистрах вычислительных устройств, а не в ячейках памяти. Данные операции повышают вычислительную сложность алгоритма, занимая значительную часть процессорного времени. Эта проблема в СБИС 1892ВМ3Т может быть частично решена за счет использования инструкций с одновременным выполнением арифметических операций сложения и умножения и операций пересылки. Сократить вычислительную сложность алгоритма можно также, разместив требуемые в одной арифметической операции операнды в разных блоках памяти (XRAM и YRAM), считывание из которых можно вы-
о
3 и
4
Й да
н
о
в
о
« Х2(к)>-о в в
о Ь
-с
Ч СЗ В (В о
н
о
а
о а >в о в в
о ь
В (в
о
>в о
и
§
X 3 да
Рис.1. ААР решетка без опорного сигнала
полнить одновременно за один такт. В данной реализации комплексные отсчеты входного сигнала х м (к) размещаются в блоке памяти УЯЛМ, а коэффициенты адаптивного фильтра Им (к) в ХЯЛМ. Наличие в архитектуре ББР-ядра двух устройств генерации адреса ЛОИ и ЛОИ-У со встроенными в них АЛУ, позволяет подготавливать адреса операндов для следующих операций и организовывать циклические буферы в памяти процессора параллельно с работой вычислительных устройств. Это позволяет уменьшить время выполнения одной итерации алгоритма.
Еще одна особенность алгоритмов адаптивной фильтрации - циклическое повторение одних и тех же операций с изменяющимися данными. При перемножении векторов производится перемножение со сложением соответствующих элементов строк и столбцов, количество которых определяется числом элементов ААР N. Аппаратная организация циклов позволяет реализовать эту процедуру без затрат дополнительных тактов процессора.
При расчете корреляционной матрицы в реализации ЛР-алгоритма [5] организация вложенных циклов также позволяет сократить время вычисления. Одной из сложных вычислительных задач является процедура обращения этой матрицы. В настоящей работе при реализации АР-алгоритма обращение корреляционной матрицы производилось рекурсивным методом на основе леммы об обращении клеточных матриц [9].
Для нахождения обратных величин У = 1/Х использована библиотечная процедура контроллера 1892ВМ3Т [10].
Программы реализации алгоритмов разрабатывались в интегрированной среде МСБШёю [11], которая обеспечивала полный цикл разработки и отладки программ с помощью программы-симулятора СБИС 1892ВМ3Т. Проверка корректности реализации алгоритмов на сигнальном контроллере 1892ВМ3Т проводилась путем сравнения полученных результатов с результатами моделирования в среде МЛТЬЛБ.
На рис.2 приведена блок-схема алгоритма тестирования программы реализации исследуемых алгоритмов в контроллере 1892ВМ3Т.
Формирование файла отсчетов входных сигналов для К итераций в МЛТЬЛБ
С Начало ^
Загрузка отсчетов входного сигнала в память ЯКК-ядра
Загрузка отсчетов входного сигнала для к-ой итерации из ЯКК-ядра в память БЗР-ядра
Запуск БЗР-ядра на исполнение итерации
Исполнение к-й итерации алгоритма в БЗР-ядре
Сохранение значения ошибки, полученной в к-й итерации в памяти ШвК-ядра
Сохранение значений ошибок, полученных в К итерациях в файле
т
Моделирование алгоритма для К итераций в МЛТЬЛБ
Сравнение результатов моделирования (ошибок) К итераций алгоритма, полученные в МЛТЬЛБ и в контроллере
Рис.2. Блок-схема алгоритма тестирования программы реализации исследуемых алгоритмов управления
ААР в контроллере 1892ВМ3Т
KDSP 14000 10000 6000 2000
1-
3^
Т2
0
5
10 15 20 25 30 N
Рис.3. Сравнительная вычислительная сложность алгоритмов при реализации в контроллере 1892ВМ3Т: 1 - ЬС ИЬ8-алгоритм; 2 - ЬС КЬМ8-алгоритм; 3 - ЬС АР-алгоритм
Вычислительная сложность является весьма важным показателем алгоритма, так как именно она определяет полосу частот принимаемых сигналов при реализации алгоритма на конкретной элементной базе. Этот показатель оценивается числом тактов DSP-ядра контроллера 1892ВМ3Т KDSP(N), необходимых для вычисления одной его итерации.
На рис.3 приведена полученная вычислительная сложность LC NLMS, LC RLS и LC AP-алгоритмов в виде количества тактов DSP-ядра на выполнение одной итерации алгоритма в зависимости от числа элементов ААР N.
Для AP-алгоритма вычислительная сложность определяется не только числом антенных элементов ААР, но и размером скользящего окна L, т.е. числом отсчетов обрабатываемых сигналов, на котором оценивается нормализованный градиент. Размер окна в большой степени влияет на вычислительную сложность этого алгоритма, так как сказывается сложность обращения квадратной корреляционной матрицы с числом элементов L х L . На рис.4 показана зависимость вычислительной сложности AP-алгоритма от числа антенн N при разных значениях параметра L.
Зная тактовую частоту DSP-ядра FDSP, требуемое число тактов на выполнение одной итерации алгоритма KDsP(N) при заданном N и число выборок на символ KSPS, можно определить максимальную символьную скорость информации, принимаемой ААР: Rs = FDSP/ [ (N)Ksps ].
На рис.5 представлена максимальная битовая скорость RB = BBPSRS/103 (кбит/с) принимаемой информации в зависимости от числа элементов ААР. Из рисунка видно, что при изменении N от 2 до 32 для сигнала PSK-4 (Phase Shift Keying) и двух выборках на символ при реализации цифровой ААР на одном кристалле СБИС 1892ВМ3Т c тактовой частотой FDSP = 100 МГц скорости приема данных изменяются в следующем диапазоне: для LC NLMS-алгоритма от 900 до 100 кбит/с; для LC RLS-алгоритма -от 250 до 6 кбит/с; для LC AP-алгоритма - от 100 до 30 кбит/с соответственно.
K
DSP
: 104 Г
3 2,5 2
1,5 1
0,5 0
5 —
— 6
..... 3, 4— 1, 2
Рис.4.
5 10 15 В ычислительная
20 25 30 N
Rb
кбит/с
800
600 400 200 0
,-2
/1
/3
5
10 15 20 25 30 N
сложность ЬС Рис.5. Сравнительная скорость приема дан-
АР-алгоритмов: 1, 3, 5 - теоретическая; 2, 4, ных при реализации алгоритмов в контрол-
6 - при реализации в контроллере 1892ВМ3Т лере 1892ВМ3Т: 1 - ЬС КЬ8-алгоритм;
(1, 2 - I = 4; 3, 4 - I = 8; 5, 6 - I = 16) 2 - ЬС КЬМ8-алгоритм; 3 - ЬС АР-алгоритм
Из рис.5 следует, что для ААР при N > 16 ЛР-алгоритм (при Ь = 4) дает значительный выигрыш в производительности по сравнению с ЯЬБ-алгоритмом, проигрывает в производительности КЬМБ-алгоритму, но имеет по сравнению с последним [4, 5] большую скорость сходимости и меньшее значение ошибки в установившемся режиме.
Данная оценка производительности алгоритмов включает только длительность выполнения вычислительной части алгоритма и не рассматривает время на ввод данных в ББР-ядро. Это время зависит от быстродействия применяемых аналого-цифровых преобразователей (АЦП) и способа сбора данных контроллером, т.е. от конкретной аппаратной реализации ААР.
Следует отметить, что значительного увеличения скорости потока данных, передаваемых от ШБС-ядра в память ББР-ядра, можно достичь за счет использования каналов прямого доступа в память. Контроллер 1892ВМ3Т имеет 4 таких канала, которые служат для обмена данными между внешней памятью и периферией и внутренней памятью контроллера. Организация в памяти данных ББР-ядра двух буферов для хранения входных отсчетов х N (к) позволяет избавиться от времени ожидания загрузки очередных отсчетов в память ББР-ядра перед каждой итерацией алгоритма. В то время как ББР-ядро обрабатывает данные из первого буфера в нечетной итерации, ЯКС-процессор в режиме прямого доступа загружает во второй буфер, который будет доступен для обработки в следующей (четной) итерации. Блок-схема возможного варианта организации потока входных данных ААР в контроллере 1892ВМ3Т представлена на рис.6. Внутренняя схема контроллера заимствована из [10].
1892BM3T
xl(k) I-1
| АЦП 1 |
x2(k)
x3(k)
xN(k)
АЦП 2
АЦП 3
. DDB
CDB
АЦП N |
RISC DMA LPORTs SPORTs MPORTs
1
DSP Elcore-14 ^ _
PRAM I |Buf1 Buf2| YRAM И XRAM
AGU-Y AGU
EDBS
PCU
YAB XAB
GDB
PDB
J
:iJ
YDB
EDBS
XDB
PAG
PDC
ALU
IDB+Ctr '
ALU Ctr
Y X
RF
L r
M S A 1 L
Рис.6. Блок-схема организации потока входных данных ААР в контроллере 1892ВМ3Т
На АЦП, число которых равно числу антенн N ААР, поступают аналоговые сигналы, преобразованные по частоте. АЦП осуществляют оцифровывание этих сигналов. С частотой дискретизации все N отсчетов последовательно считываются по одному из каналов прямого доступа в память (Direct Memory Access, DMA) в параллельном коде в буферы, расположенные в памяти YRAM DSP-ядра.
В случае необходимости увеличения производительности возможна реализация мультипроцессорной системы на базе сигнальных контроллеров 1892ВМ3Т или
1892ВМ2Т, связанных между собой через линковые порты (Line Ports, LPORTx), либо перенос части вычислительных функций на специализированные сопроцессоры, реализованные на FPGA.
Важным показателем эффективности алгоритма является также объем требуемой памяти программ и данных ЦСП. Современные ЦСП обладают достаточно большим объемом внутренней памяти программ и данных, так как любое обращение к внешней памяти требует дополнительных тактов при выполнении итерации алгоритма, что естественно уменьшает скорость приема данных. Так, в контроллере 1892ВМ3Т память данных DSP-ядра разделена на два блока XRAM и YRAM объемом 96 и 48 кбайт соответственно. Объем внутренней памяти программ составляет 16 кбайт.
Оценка требуемого количества 32-разрядных слов памяти данных (Data Words, DW) при реализации рассматриваемых алгоритмов в сигнальном контроллере 1892ВМ3Т в зависимости от числа элементов ААР N и размера проекции L приведена в табл. 1.
Таблица 1
Требуемый объем памяти данных (32-разрядных слов) Б8Р-ядра СБИС 1892ВМ3Т при реализации ЬС NLMS, ЬС АР и ЬС ЯЬ8-алгоритмов
N LC NLMS DW = (10 N) LC AP DW = (6L2 + 2(NL) + 5L + 14N) LC RLS DW = (2N2 + 19N + 4)
L = 4 L = 8
2 20 160 484 50
4 40 204 544 112
8 80 292 664 284
16 160 468 904 820
32 320 820 1384 2660
Требуемый объем памяти программ для данной реализации алгоритмов не зависит от числа элементов ААР, так как использован механизм аппаратных циклов. Полученный объем программных кодов для исследуемых алгоритмов равен: 196 для LC NLMS; 422 для LC AP и 472 для LC RLS 64-разрядных слов.
Выполненная оценка требуемых объемов памяти программ и памяти данных для LC NLMS-, LC RLS- и LC AP-алгоритмов при их реализации на рассматриваемом контроллере показала, что наиболее сложным и требующим большего объема как памяти программ (примерно 4 кбайт), так и памяти данных (10,7 кбайт при 32-элементной ААР) является LC RLS-алгоритм.
Оценка производительности DSP-ядра сигнального контроллера при реализации этих алгоритмов показала, что наибольшую битовую скорость принимаемых символов обеспечивает LC NLMS-алгоритм. LC АР-алгоритм занимает промежуточное положение по производительности между LC NLMS и LC RLS алгоритмами. Производительность этого алгоритма зависит от размера скользящего окна L, и он эффективно функционирует при длине окна не более 8.
Использование полученных оценок быстродействия и требуемых объемов памяти программ и данных дает возможность для каждого конкретного случая ААР выбрать оптимальный из предлагаемых алгоритмов с учетом требований по количеству элементов ААР, скорости принимаемых данных, времени сходимости, значению ошибки в установившемся режиме и ресурсам вычислительной системы.
Литература
1. Монзинго Р.А., Миллер Т.У. Адаптивные антенные решетки. Введение в теорию / Пер. с англ.
B.Г.Челпанова, В.А.Лексаченко. - М.: Радио и связь, 1986. - 448 с.
2. Gooch R., Lundell J. The CM array: An adaptive beamformer for constant modulus signals // Proceedings of the IEEE International Conference on Acoustics, Speech and Signal Processing. - 1986. - Vol. 11. -P. 2523-2526.
3. Джиган В.И., Плетнева И.Д. Линейно-ограниченный нормализованный алгоритм по критерию наименьшего среднеквадратичного отклонения для цифровой адаптивной антенной решетки // Информационные технологии. - 2008. - № 10. - C. 68-74.
4. Джиган В. И., Плетнева И. Д. Линейно-ограниченная фильтрация сигналов в адаптивной антенной решетке для систем цифровой связи // Телекоммуникации. - 2008. - № 6. - С. 2-9.
5. Джиган В.И., Плетнева И.Д. Применение СМ-алгоритма аффинных проекций с линейными ограничениями для адаптивной фильтрации сигналов в антенной решетке // Антенны. - 2008. - № 10. -
C. 14-24.
6. Nakajima A., Kim M., Arai H. FPGA implementation of MMSE adaptive array antenna using RLS algorithm // Antennas and Propagation Society International Symposium. - 2005. - Vol. 3A. - P. 303-306.
7. Asai T., Matsumoto T. A systolic array RLS processor // Vehicular Technology Conference Proceedings. - 2000. - Vol. 3. - P. 2247-2251.
8. Солохина Т., Александров Ю., Петричкович Я. Сигнальные контроллеры компании «ЭЛВИС»: первая линейка отечественных DSP // Электроника: Наука, технология, бизнес. - 2005. - № 7. - С. 70-77.
9. Giordano A.A., Hsu F.M. Least square estimation with application to digital signal processing. -Canada, Toronto: John Wiley and Sons, Inc., 1985. - 412 p.
10. Микросхема интегральная 1892ВМ3Т. Руководство пользователя. - ГУП НПЦ «ЭЛВИС». -2007. - С. 265.
11. Интегрированная среда разработки и отладки программ для модулей сигнальных контроллеров на базе ИМС платформы МУЛЬТИКОР / Никольский В., Володин В., Александров Ю. и др. // Chip News. - 2002. - № 9. - С. 36-42.
Статья поступила 11 февраля 2009 г.
Плетнева Ирина Давидовна - старший преподаватель кафедры телекоммуникационных систем МИЭТ. Область научных интересов: цифровая обработка сигналов, адаптивные антенные решетки.
Книжные новинки
Ш
МАКоролёв, Т.Ю.Крупкина, М.ГЛутря, В.И.Шевяков
Технология, конструкции и методы моделирования кремниевых интегральных микросхем: в 2 ч. / Под общей ред. члена-корр. РАН профессора Ю. А. Чаплыгина. — М.: БИНОМ. Лаборатория знаний.
Ч. 2: Элементы и маршруты изготовления кремниевых ИС и методы их математического моделирования. -422 е.: ил.-2009.
Дано представление об основных маршрутах изготовления и конструкциях изделий микроэлектроники на основе кремния. Рассмотрены основные процессы создания интегральных схем: химическая и плазмохимическая обработка материала; введение примесей в кремний; выращивание окисла кремния и его охлаждение; литография; создание металлических соединений и контактов. Приведены методы моделирования процессов распределения примесей в полупроводниковых структурах.
Для студентов и аспирантов, специализирующихся в области микроэлектроники и полупроводниковых приборов. Может быть использовано также специалистами, работающими в данной области.
ISBN 978-5-94774-585-6 (Ч. 2)
ISBN 978-5-94774-583-2 ,
конструкции и методы
моделирования кремниевых интегральных микросхем