Многоканальный алгоритм wola при обработке сигналов в задачах гидроакустического мониторинга

УДК 621.391

Д. И. Каплун, Д. М. Клионский, А. С. Вознесенский, В. В. Гульванский, В. В. Геппенер Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В. И. Ульянова

Многоканальный алгоритм WOLA при обработке сигналов в задачах гидроакустического мониторинга1

Рассмотрено применение многоканального алгоритма взвешенного перекрывающегося сложения (многоканального алгоритма WOLA) для гидроакустического мониторинга. Описана постановка задачи гидроакустического мониторинга, ее особенности и основные способы решения. Приведены разработанный многоканальный алгоритм WOLA на основе модификации соответствующего одноканального алгоритма и результаты исследования его характеристик с использованием программных средств МАПАБ. Рассмотрена программно-аппаратная реализация многоканальной обработки сигналов и продемонстрированы преимущества применения для этой цели технологии СийА.

Гидроакустический мониторинг, алгоритм WOLAI многоканальная обработка, ДПФ-модулированный банк фильтров, программно-аппаратная реализация, ПЛИС, СиРА

Гидроакустический мониторинг. Понятие "мониторинг" подразумевает проведение непрерывного наблюдения и сбора информации о некотором физическом процессе, объекте, явлении и пр. [1]. В зависимости от рассматриваемых приложений мониторинг может осуществляться в широком диапазоне частот, достигающем нескольких мега- или гигагерц, а также в сравнительно узком диапазоне (что, как правило, связано с особенностями исследуемых сигналов).

Мониторинг находит широкое применение в задачах контроля радиообмена и радиоизлучения, геофизики, анализа вибрационных процессов, гидроакустики и пр. В настоящей статье рассмотрено применение мониторинга в гидроакустике (гидроакустический мониторинг - ГАМ).

Сложность проведения ГАМ обусловлена глав -ным образом существенной пространственно-временной изменчивостью гидроакустических параметров морской среды, а также климатической изменчивостью гидрометеорологических параметров.

Актуальность проведения гидроакустического мониторинга. Шельфовые районы Мирового океана содержат основную часть его запасов полезных ископаемых. Их экосистемам свойственны наибольшие разнообразие и продуктивность. Сбалансированное эффективное освоение живых и неживых ресурсов шельфа Мирового океана возможно лишь при создании систем мо-

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

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

Одним из путей снижения стоимости "подспутниковых" комплексов для океанских регионов может быть комплексное использование контактных способов наблюдения за состоянием водной среды с упомянутыми системами дистанционного мониторинга. Создание подобных комплексов, оптимально объединяющих системы первого и второго типов, позволит значительно сократить количество точек, в которых состояние среды

1 Работа выполнена при поддержке Российского фонда фундаментальных исследований по конкурсу молодежных инициативных проектов "Мой первый грант" (соглашение № 14-07-31250/14) и Минобрнауки РФ (договор № 02.G25.31.0058 от 12.02.2013). 20 © Каплун Д. И., Клионский Д. М., Вознесенский А. С., Гульванский В. В., Геппенер В. В., 2014

следует контролировать с помощью контактных способов (это и создаст указанный эффект).

Суть проблемы состоит в усовершенствовании способов обработки гидрофизической информации, обеспечивающей решение задач регионального ГАМ, в разработке принципов построения гидроакустических систем, реализующих эти способы обработки, а также в их оптимальном сочетании с контактными и дистанционными технологиями "подспутниковых" наблюдений.

Для решения этой проблемы необходимо усовершенствование математических моделей интерпретации принимаемых сигналов, учитывающих особенности их формирования в шельфовых регионах. Особенности этих моделей определяются имеющимися данными о пространственно-временной изменчивости поля скорости звука в водной среде шельфового региона, поэтому их разработку следует сопровождать океанологическими исследованиями соответствующих регионов.

Системы гидроакустического мониторинга. К числу основных задач ГАМ относятся:

- непрерывное наблюдение за подводной обстановкой в режиме шумопеленгования;

- наблюдение за подводной обстановкой в режиме гидролокации (по команде оператора);

- определение местоположения объектов в морских и речных акваториях.

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

Системы ГАМ оснащены бортовой гидроакустической антенной, состоящей из отдельных универсальных гидроакустических антенных модулей. Каждый модуль включает:

- набор акустических приемников;

- аналого-цифровой модуль предварительной обработки сигналов;

- блок формирования цифрового потока.

Антенные модули предназначены для приема

сигналов, аналоговой предварительной обработки и формирования цифрового потока данных, а также для передачи сформированного потока в вычислительный комплекс, где осуществляется дальнейшая обработка.

Вычислительный комплекс проводит комплексную обработку входного многоканального сигнала, контроль и диагностику системы ГАМ на

основе системы технического диагностирования, а также отображает полученные результаты.

Анализ алгоритмов обработки сигналов в таких системах позволяет представить их обобщенную структуру, включающую в себя следующие группы алгоритмов:

- алгоритмы первичной обработки сигналов, обеспечивающие пространственно-временной анализ, спектральный анализ, адаптивное накопление и пороговое обнаружение сигналов;

- алгоритмы вторичной обработки полученной информации, решающие задачи уточнения координат целей, построения трасс их движения, классификации и подготовки данных для предъявления оператору;

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

Структура также обеспечивает выдачу данных в систему отображения информации и в другие (внешние) системы. Кроме того, имеется система регистрации и документирования информации и управления.

Гидроакустический мониторинг на основе цифровой фильтрации. В настоящее время в задачах ГАМ широко применяются цифровые КИХ-фильтры, синтезированные методом окон или наилучшей равномерной (чебышевской) аппроксимацией [2]. Широкое практическое применение КИХ-фильтров обусловлено возможностью получения линейной ФЧХ (отсутствием фазовых искажений), устойчивостью при любых параметрах, меньшим (по сравнению с БИХ-фильтрами) влиянием шума округления и ошибок квантования, отсутствием эффекта распространения ошибки (в силу отсутствия обратной связи) [2].

Поскольку полосы пропускания фильтров составляют до нескольких десятков и сотен килогерц, а частоты дискретизации значительно выше (достигают, как было отмечено ранее, нескольких десятков мегагерц или нескольких гигагерц), порядки фильтров порой исчисляются сотнями и тысячами. Это приводит к значительным программно-аппаратным затратам, а следовательно, к значительным массогабаритным характеристикам и высокой стоимости таких фильтров. Чем жестче требования к коэффициенту прямоугольности АЧХ и к значению перекрытия полос соседних фильтров, тем существеннее рост программно-аппаратных затрат.

В случае симметрии АЧХ фильтра относительно четверти частоты дискретизации

для уменьшения порядка фильтра-прототипа возможно применение каскадов из двух фильтров с уменьшенным числом ненулевых (значимых) коэффициентов по сравнению с исходным КИХ-фильтром высокого порядка. Выигрыш в аппаратных затратах может достигать 20-30 % (в отдельных случаях до 50 %), а при многоканальной обработке он становится еще существеннее.

Для упрощения аппаратно-программной реализации, уменьшения внутренних шумов и увеличения ширины частотного диапазона также применяются фильтры без умножителей, позволяющие уменьшить количество операций фильтра, приходящихся на один отсчет входного сигнала. Однако в таких фильтрах отсчеты обрабатываются последовательно, а не параллельно, что снижает скорость обработки и затрудняет ее проведение в режиме, близком к режиму реального времени.

Рост объема вычислений также наблюдается при проведении многоканальной обработки, необходимость которой обусловлена требованием контроля огромных пространств и объемов, а также требованием сокращения времени анализа. Одним из подходов к многоканальной обработке является применение банка (ансамбля) цифровых фильтров [3]-[5].

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

Многоканальный алгоритм WOLA (weighted overlap-add) может рассматриваться как обобщение соответствующего одноканального алгоритма [5]. Предложенная в настоящей статье модификация позволяет вычислительно эффективно обработать векторный (многоканальный) входной сигнал, а также осуществить аппаратную реализацию с использованием современной высокопроизводительной аппаратно-программной базы.

В отличие от полифазного представления многоканального банка фильтров, допускающего применение как БИХ-, так и КИХ-фильтров, алгоритм WOLA работает только с КИХ-фильт-рами, поскольку исходный сигнал умножается на 22

окно анализа Ъ (-г) конечной длины. Данный факт не является существенной проблемой, поскольку КИХ-фильтры применяются в задачах мониторинга значительно чаще, чем БИХ-фильт-ры. Применение полифазных банков фильтров наиболее эффективно с вычислительной точки зрения при критической децимации, т. е. при М = К, где М - коэффициент децимации; К - количество каналов банка фильтров. WOLA, напротив, может применяться при произвольном соотношении между М и К, что является его несомненным преимуществом для практики.

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

Определим входной сигнал

X

в виде набора одноканальных сигналов х,(п), г = 0, ..., 5 -1; п = 0, ..., N -1, представленных прямоугольной матрицей с размерами 5 х N (N -длина (число отсчетов) сигналов х, (п), 5 - количество одноканальных сигналов); т - символ транспонирования.

Входными данными разработанного многоканального алгоритма WOLA являются:

- многоканальный сигнал в матричной форме (1), подматрицы которого (каждая подматрица соответствует отдельному одноканальному сигналу) имеют вид

хг =[х (0) х (1) . х ^ -1)]т, г = 0, ..., 5 -1;

- коэффициент децимации М = 1, К;

- импульсная характеристика (ИХ) ФНЧ-про-тотипа И (п) (вектор-строка размером Nъ ).

ФНЧ-прототип определяет характеристики многоканального банка фильтров: ширину полосы канала, значение перекрытия соседних каналов и т. д. В алгоритме WOLA ИХ ФНЧ-про-тотипа используется в качестве окна анализа для взвешивания сигнала.

В случае критической децимации (М = К) вычисление выходных сигналов полифазного банка фильтров эквивалентно применению алгоритма WOLA, однако в отличие от полифазного

г =

банка фильтров алгоритм WOLA ориентирован на поблочный анализ.

Для эффективного вычисления дискретного преобразования Фурье (ДПФ) необходимо, чтобы

длина N была целой степенью числа 2: N = 2й , где и - натуральное число. Если данное условие не выполнено, все одноканальные сигналы Ху (п), I = 0,..., 5 -1; п = 0,..., N -1, дополняются требуемым количеством нулевых отсчетов. Если длина сигналов N не кратна длине окна N фильтра Ь (п), сигналы также дополняются необходимым количеством нулевых отсчетов.

Взвешивание сигнала X(п) окном описыва-

(

¿00

г 00

(1) .

¿0, р-1 ( 0) г 0, Р-1 (1) • ¿5-1, 0 (0) ¿5-1, 0 (1) • ¿5 -1, р-1 (0) ¿5 -1, р-1(1).

¿00

Л

¿0, Р-1

¿5 -1, 0

¿5-1, Р-1

,

ется в следующем виде:

Ш1

у = 0,

(п) = Ь (шм - п) ху (п), ..., 5 -1; п = 0, ..., N -1,

где ш - номер блока длины N. Общее количе-ство блоков Р длины Nh с перекрытием

N - Nu

Nh - М определяется как Р = 1 + - , где

I М _

символ и означает округление до ближайшего целого в сторону уменьшения. В результате выполнения (2) формируется матрица X взвешенных отсчетов сигнала:

X

г = 0,

5 -1.

состоящая из подматриц, имеющих по Р строк, соответствующих блокам длины N одного однока-нального сигнала Ху (п), I = 0, ..., 5 -1. С учетом изложенного матрица 2 имеет размеры (Р5) х К.

После суммирования всех блоков каждого од-ноканального сигнала к матрице 2 применяется ДПФ. Данная операция может быть реализована на основе алгоритмов векторного ДПФ [6], предназначенных для вычисления ДПФ векторных (многоканальных) данных:

У = УББТ {2 },

где У - результирующая матрица ДПФ векторного сигнала; УББТ - оператор векторного (многоканального) ДПФ.

В настоящее время в основном применяются два подхода к вычислению векторного ДПФ. Первый, тривиальный, предполагает применение одномерного ДПФ к каждой строке матрицы 2. При этом требуется вычислить Р5 одномерных ДПФ размера К. Второй подход базируется на вычислении одного одномерного ДПФ размера Р5К :

у = ББТ{|¿00

Далее блоки взвешенного сигнала длиной N разбиваются на неперекрывающиеся сегменты длины К, эти сегменты суммируются. Количество сегментов длины К в пределах блока длины Nfo определяется как Q = |~Nh/K ], где символ

[•] обозначает округление до ближайшего целого в сторону увеличения. В результате получим:

Дг)= Е Хш (г + 1К),

у = 0,

Р -1;

I=-ю

5 -1; ш = 0, г = 0, ..., К -1. На основе (3) может быть введена матрица

где ББТ - оператор одномерного ДПФ. При вычислении одномерного ДПФ матрица 2 записывается как последовательность своих строк (после данного преобразования она превращается в вектор-строку).

В настоящей статье выбран именно такой подход по следующим причинам:

- алгоритм расчета векторного ДПФ определяет объем вычислительной памяти и общее число коммутаторов параллельно-поточного БПФ-процессора (ППБПФ-процессора). Сведение многомерного ДПФ к одномерному позволяет минимизировать общий объем вычислительной памяти и, следовательно, оптимизировать структуру ППБПФ-процессора;

- вычисление одномерного ДПФ размера Р5К позволяет проще реализовать вычислительную процедуру в ППБПФ-процессоре по сравнению с вычислением Р5 различных ДПФ размера К.

После вычисления ДПФ (6) вектора у размера Р5К его элементы распределяются по строкам матрицы. При этом размеры матрицы У в (6) совпадают с размерами матрицы 2. Матрица У, как и матрица 2, состоит из подматриц:

У (г) = [У) (г) ... У (г) ... У5-1 (г )]т;

Уг

Угт (г) = [Угт (0) - У(т (г) - У(т (К -1)] г = 0, ..., К -1; г = 0, ..., 5 -1; т = 0, ..., Р -1.

В заключение формируется матрица У умножением строк матриц У, на поворачивающие

„ „„ ш-тгМ - 1'2жтгМ1К . множители уук = 5 :

Угт ( г ) = Угт ( г )^тгМ , г = 0, ..., К -1; г = 0, ..., 5 -1; (10) т = 0, ..., Р -1.

Алгоритм содержит следующую последовательность шагов:

1) взвешивание входного сигнала х(п) с помощью окна для получения сигнала X(п) в соответствии с (2)-(4);

2) разбиение взвешенного сигнала (3) на неперекрывающиеся сегменты длины К и суммирование сегментов каждого одноканального сигнала в соответствии с (5);

3) применение векторного ДПФ (6) к матрице 2 с помощью одномерного ДПФ (8) размера Р5К и получение матрицы У в виде (9);

4) формирование результирующей матрицы У в соответствии с (10).

Многоканальный алгоритм WOLA-синтез является дуальным по отношению к алгоритму WOLA-анализ, представленному в настоящей статье.

Программно-аппаратная реализация многоканального алгоритма WOLA. Определяющим фактором вычислительной сложности при программно-аппаратной реализации банка цифровых фильтров с использованием многоканального алгоритма WOLA является ФНЧ-прототип, формирующий частотную характеристику одного канала банка фильтров. Порядок ФНЧ-прототипа определяется исходя из параметров, задаваемых при разработке системы мониторинга: ширины полосы канала,

коэффициента прямоугольности АЧХ и ее неравномерности в полосе пропускания.

В ходе программной реализации многоканального алгоритма WOLA в MATLAB при

N = 106 для числа входных каналов S = 2, 5, 10 и 20 оценки времени выполнения алгоритма составили t = 5, 10, 20 и 40 с соответственно. Таким образом, зависимость времени выполнения алгоритма от числа входных каналов близка к линейной.

Поскольку в банке фильтров входной сигнал (в рассматриваемом случае - многоканальный) обрабатывается параллельно, для повышения эффективности программно-аппаратной реализации наиболее целесообразным представляется использование вычислителей с параллельной структурой. Такие вычислители могут быть реализованы на базе ПЛИС. Для этой же цели применяются устройства обработки с технологией CUDA [7]. Суть этой технологии заключается в использовании набора параллельно работающих графических процессоров (Graphics processing unit - GPU) для решения неграфических задач. GPU - специализированное вычислительное устройство, которое:

- является сопроцессором к центральному процессору (CPU);

- обладает собственной памятью;

- дает возможность параллельно выполнять большое количество фрагментов единой программы.

К преимуществам технологии CUDA следует отнести кроссплатформенность, наличие набора готовых библиотек, использование расширенной версии языка С с дополнительными средствами для параллельного программирования и создания многопоточных приложений на CUDA для написания программ, а также отказ от применения графического интерфейса программирования приложений (API), имеющего ряд ограничений при эффективной организации многопоточных вычислений.

Эксперимент по синтезу банка фильтров реализован в вычислительной системе со следующими параметрами: процессор Intel Core i7 3630QM 2.4 ГГц; ОЗУ DDR3 16 Гбайт; ОС Windows 7 64 бита; видеокарта NVidia GeForce GT650M (384 ядра GPU, частота ядра 850 МГц, память видеокарты 2 Гбайта).

Реализован банк фильтров, имеющий пять входных каналов (предназначенный для обработки пятиканального входного сигнала). Рабочий диапазон частот 0...12 кГц. Основой банка являлся ФНЧ-прототип, синтезированный методом окон с использованием окна Кайзера при частоте дискретизации 24 кГц. Параметры ФНЧ-прототипа

Таблица 1

Параметр Значение

Порядок фильтра 5141

Ширина полосы пропускания (односторонняя), Гц 94

Коэффициент прямоугольности фильтра 1.24

Подавление на границе полосы пропускания, дБ 1

Подавление на границе полосы задерживания, дБ 80

Неравномерность АЧХ в полосе пропускания, дБ 0.5

чиваемого на реализацию банка фильтров, по сравнению с CPU;

- увеличение размера исходных данных приводит к росту выигрыша технологии CUDA по отношению к CPU по времени обработки;

- передача данных между ОЗУ и памятью видеокарты занимает около половины общего вре-

Таблица2

Объем входных данных Технология реализации

CUDA CPU

без передачи данных между ОЗУ и видеокартой с передачей данных между ОЗУ и видеокартой

отсчеты Мбайты Количество машинных циклов длительностью 5 мс

3 000 000 11 293 508 46 931

8 000 000 30 320 895 122 656

16 000 000 61 346 1496 246 834

30 000 000 114 437 2593 459 354

приведены в табл. 1. Прототип позволил получить банк фильтров, имеющий 128 частотных полос.

Сравнительная оценка временных затрат, требуемых при реализации банка фильтров на основе многоканального алгоритма WOLA с использованием CPU или технологии CUDA, при различном объеме входных данных приведена в табл. 2. Анализ результатов позволяет сделать следующие выводы:

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

мени обработки, в связи с чем необходимо дальнейшее совершенствование технологии CUDA.

В настоящей статье представлен многоканальный алгоритм WOLA, позволяющий проводить обработку векторных (многоканальных) сигналов в режиме реального времени с использованием векторного ДПФ. Данный алгоритм может быть применен для обнаружения сигналов в радиоэфире и последующего оценивания их характеристик во временной и частотной областях. Показано, что при программно-аппаратной реализации многоканальной обработки с использованием технологии CUDA время обработки может быть сокращено более чем в 10 раз по сравнению с обработкой на CPU.

СПИСОК ЛИТЕРАТУРЫ

1. Рембовский А. М., Ашихмин А. В., Козьмин В. А. Радиомониторинг: задачи, методы, средства. 2-е изд. М.: Горячая линия - Телеком, 2010. 624 с.

2. Солонина А. И., Арбузов С. М. Цифровая обработка сигналов и MATLAB. СПб.: БХВ-Петербург, 2013. 512 с.

3. Antoniou A. Digital filters: analysis, design, and applications. Blacklick, Ohio: McGraw-Hill, USA, 1993. 689 р.

4. Цифровые банки фильтров: анализ, синтез и применение в мультимедиа системах / А. А. Петров-

ский, М. Парфенюк, А. Борович, М. З. Лившиц. Минск: Бестпринт, 2006. 82 с.

5. Crochiere R. E., Rabiner L. R. Multirate digital signal processing. Englewood Cliffs, NJ: Prentice-Hall, 1983. 411 р.

6. Петровский Ал. А., Станкевич А. В., Петровский А. А. Быстрое проектирование систем мультимедиа от прототипа. Минск: Бестпринт, 2011. 412 с.

7. Боресков А. В., Харламов А. А. Основы работы с технологией CUDA-М. М.: ДМК Пресс, 2010. 232 с.

D. I. Kaplun, D. M. Klionskiy, A. S. Voznesenskiy, V. V. Gulvanskiy, V. V. Geppener Saint-Petersburg electrotechnical university "LETI"

Multichannel WOLA algorithm for signal processing in hydroacoustic monitoring tasks

Hydroacoustic monitoring with the help of multichannel weighted overlap-add algorithm (multichannel WOLA-algo-rithm) is considered. Hydroacoustic monitoring task and the main ways of its solution are discussed. The multichannel WOLA-algorithm is developed on the basis of modifying the corresponding one dimensional algorithm and the characteristics of the suggested algorithm are investigated using MATLAB. Software-hardware implementation is considered for multichannel signals and the advantages of CUDA technology are demonstrated.

Hydroacoustic monitoring, WOLA-algorithm, multichannel processing, DFT-modulated filter bank, software-hardware implementation, FPGA, CUDA

Статья поступила в редакцию 15 апреля 2014 г.