Научная статья на тему 'Реализация банка цифровых фильтров с пониженной вычислительной сложностью'

Реализация банка цифровых фильтров с пониженной вычислительной сложностью Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
83
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МНОГОСКОРОСТНАЯ ОБРАБОТКА СИГНАЛОВ / БАНК ЦИФРОВЫХ ФИЛЬТРОВ / БЫСТРЫЙ АЛГОРИТМ / УСТОЙЧИВОСТЬ АЛГОРИТМА (ЧУВСТВИТЕЛЬНОСТЬ К ПОГРЕШНОСТИ ВЫЧИСЛЕНИЙ) / "МЕТОД 3M" (МЕТОД 3-Х УМНОЖЕНИЙ) / РОИЗВОДИТЕЛЬНОСТЬ ПРОЦЕССОРА / MULTIRATE SIGNAL PROCESSING / BANK OF DIGITAL FILTERS / FAST ALGORITHM / STABILITY OF THE ALGORITHM (SENSITIVITY TO CALCULATION ERRORS) / METHOD 3М (METHOD OF 3 MULTIPLICATIONS) / PROCESSOR PERFORMANCE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Крейнделин Виталий Борисович, Григорьева Елена Дмитриевна

Сверхбольшие интегральные схемы, называемые чипами, могут содержать более 100 тысяч логических элементов, и поэтому теорию алгоритмов рассматривают как способ эффективной организации этих элементов. Иногда выбор алгоритма позволяет существенно улучшить характеристики чипа, не прибегая к увеличению размера чипа или к повышению его быстродействия. Например, если удастся предложить алгоритм вычисления некоторой функции цифровой обработки сигнала, содержащий только пятую часть от числа операций, входящих в традиционный алгоритм вычисления той же функции, тогда, используя этот алгоритм, можно реализовать такое же улучшение характеристик чипа, которое получается при увеличении в пять раз его размера или его быстродействия. Однако разработчик чипа должен перенести архитектуру алгоритма в архитектуру чипа, чтобы реализовать улучшение. Непродуманная конструкция может свести на нет это преимущество, увеличивая, например, сложность индексации или поток вход-выход. Разработка оптимальных конструкций в эпоху больших интегральных схем невозможна без применения быстрых алгоритмов. С первого взгляда может показаться, что эти два направления быстродействующие интегральные схемы и быстрые алгоритмы конкурируют между собой. Если можно построить достаточно большие и достаточно быстродействующие чипы, то вроде бы нет ничего страшного в том, что используются неэффективные алгоритмы. В некоторых случаях такая точка зрения не вызывает сомнений, но заведомо имеются случаи, в которых можно высказать диаметрально противоположную точку зрения. Большие цифровые процессоры часто сами создают потребность в разработке быстрых алгоритмов, так как размерность решаемых на них задач растёт. Будет ли процессорное время алгоритма, предназначенного для решения некоторой задачи, пропорционально или , несущественно при n, равном 3 или 4, но при n, равном 1000, это становится критичным. Алгоритмы обработки цифровых сигналов часто используют операцию умножения матриц, содержащих комплексные числа. При умножении двух комплексных матриц традиционным способом требуется выполнить четыре умножения и два сложения действительных матриц. Используя простое тождественное преобразование математического выражения, можно реализовать операцию умножения двух комплексных матриц с помощью трёх операций умножения действительных матриц и пяти сложений действительных матриц чисел. Этот метод позволяет получить выигрыш в вычислительной сложности примерно 12,5-25% по сравнению с традиционным методом.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Крейнделин Виталий Борисович, Григорьева Елена Дмитриевна

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

The implementation of the bank of digital filters with reduced computational complexity

Ultra-large integrated circuits, called chips, can contain more than 100 thousand logic elements, and therefore the theory of algorithms is considered as a way to effectively organize these elements. Sometimes the choice of algorithm can significantly improve the performance of the chip, without having to increase the size of the chip or to improve its performance. For example, if it is possible to propose an algorithm for calculating some function of digital signal processing, containing only a fifth of the number of operations included in the traditional algorithm for calculating the same function, then using this algorithm, you can implement the same improvement in the characteristics of the chip, which is obtained by increasing five times its size or its speed. However, the developer of the chip should move the algorithm architecture the architecture of the chip, to implement the improvement. An ill-conceived design can negate this advantage by increasing, for example, the complexity of indexing or the input-output flow. The development of optimal designs in the era of large integrated circuits is impossible without the use of fast algorithms. At first glance it may seem that these two directions fast integrated circuits and fast algorithms compete with each other. If you can build large enough and fast enough chips, it seems that there is nothing wrong with the fact that inefficient algorithms are used. In some cases, this point of view is not in doubt, but there are certainly cases in which it is possible to express a diametrically opposite point of view. Large digital processors themselves often create the need to develop fast algorithms, as the dimension of the problems solved on them is growing. Whether the processor time of an algorithm designed to solve some problem is proportional to or is irrelevant at n equal to 3 or 4, but at n equal to 1000, it becomes critical. Digital signal processing algorithms use the multiplication of matrices containing complex numbers. When multiplying two matrices of complex numbers in the traditional way, it is required to perform four multiplications and two additions of matrices of real numbers. Using a simple identical transformation of a mathematical expression, it is possible to implement the operation of multiplication of two matrices of complex numbers by three operations of multiplication of matrices of real numbers and five additions of matrices of real numbers. This method reduces the number of arithmetic operations by about 12.5 25% vs. traditional method.

Текст научной работы на тему «Реализация банка цифровых фильтров с пониженной вычислительной сложностью»

РЕАЛИЗАЦИЯ БАНКА ЦИФРОВЫХ ФИЛЬТРОВ С ПОНИЖЕННОЙ ВЫЧИСЛИТЕЛЬНОЙ СЛОЖНОСТЬЮ

DOI 10.24411/2072-8735-2018-10290

Крейнделин Виталий Борисович,

МТУСИ, Москва, Россия, vitkrend@gmail.com

Григорьева Елена Дмитриевна,

МТУСИ, Москва, Россия, ed.grigorieva@yandex.ru

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

Сверхбольшие интегральные схемы, называемые чипами, могут содержать более 100 тысяч логических элементов, и поэтому теорию алгоритмов рассматривают как способ эффективной организации этих элементов. Иногда выбор алгоритма позволяет существенно улучшить характеристики чипа, не прибегая к увеличению размера чипа или к повышению его быстродействия. Например, если удастся предложить алгоритм вычисления некоторой функции цифровой обработки сигнала, содержащий только пятую часть от числа операций, входящих в традиционный алгоритм вычисления той же функции, тогда, используя этот алгоритм, можно реализовать такое же улучшение характеристик чипа, которое получается при увеличении в пять раз его размера или его быстродействия. Однако разработчик чипа должен перенести архитектуру алгоритма в архитектуру чипа, чтобы реализовать улучшение. Непродуманная конструкция может свести на нет это преимущество, увеличивая, например, сложность индексации или поток вход-выход. Разработка оптимальных конструкций в эпоху больших интегральных схем невозможна без применения быстрых алгоритмов. С первого взгляда может показаться, что эти два направления - быстродействующие интегральные схемы и быстрые алгоритмы - конкурируют между собой. Если можно построить достаточно большие и достаточно быстродействующие чипы, то вроде бы нет ничего страшного в том, что используются неэффективные алгоритмы. В некоторых случаях такая точка зрения не вызывает сомнений, но заведомо имеются случаи, в которых можно высказать диаметрально противоположную точку зрения. Большие цифровые процессоры часто сами создают потребность в разработке быстрых алгоритмов, так как размерность решаемых на них задач растёт. Будет ли процессорное время алгоритма, предназначенного для решения некоторой задачи, пропорционально или , несущественно при п, равном 3 или 4, но при п, равном 1000, это становится критичным. Алгоритмы обработки цифровых сигналов часто используют операцию умножения матриц, содержащих комплексные числа. При умножении двух комплексных матриц традиционным способом требуется выполнить четыре умножения и два сложения действительных матриц. Используя простое тождественное преобразование математического выражения, можно реализовать операцию умножения двух комплексных матриц с помощью трёх операций умножения действительных матриц и пяти сложений действительных матриц чисел. Этот метод позволяет получить выигрыш в вычислительной сложности примерно 12,5-25% по сравнению с традиционным методом.

Информация об авторах:

Крейнделин Виталий Борисович, Московский технический университет связи и информатики, заведующий кафедрой ТЭЦ, профессор, д.т.н., Москва, Россия

Григорьева Елена Дмитриевна, Московский технический университет связи и информатики, доцент кафедры ТЭЦ, к.т.н., Москва, Россия

Для цитирования:

Крейнделин В.Б., Григорьева Е.Д. Реализация банка цифровых фильтров с пониженной вычислительной сложностью // T-Comm: Телекоммуникации и транспорт. 2019. Том 13. №7. С. 48-53.

For citation:

Kreyndelin V.B., Grigorieva E.D. (2019). The implementation of the bank of digital filters with reduced computational complexity. T-Comm, vol. 13, no.7, pр. 48-53. (in Russian)

7TT

Введение

Цифровые фильтры используются повсюду, где выполняется обработка, хранение, сжатие и восстановление данных. I {апример, в медицинской электронике, в системах связи и управления, при компенсации "электрического эха в системах связи, при обнаружении объектов и картографировании земной поверхности в радиолокации, при обработке звука и изображении. Сложность решения задач данного класса связана с высокими порядками адаптивных КИХ-фильтров (сотни н даже тысячи), приводящими к колоссальному возрастанию вычислительных затрат j I ]. Широкое Применение цифровых фильтров в массовых масштабах порождает ещё более широкий спрос на цифровые процессоры и предъявляет требования к качеству и эффективности их работы. Одним из путей удовлетворения них потребностей является выбор эффективно построенных алгоритмов работы цифровых процессоров. Вместо того чтобы повышать быстродействие процессора, например, от 1 GIPS (Giga Instructions per Second - миллиард операции в секунду) до 2 GIPS, можно для некоторых задач попытаться так организовать вычисления, чтобы быстродействия в 1 С IPS оказалось бы достаточно ДЛЯ получения удовлетворительного результата обработки данных.

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

Частота дискретизации находится в прямой зависимости от требуемой скорости обработки цифровых сигналов. Поэтому понижение скорости вычислений в цифровых фильтрах получают, применяя мпогоскоростпую обработку сигналов (mnltirale processing) в системах, называемых банками фильтров [4|, |?].

Постановка задачи.

Цифровая фильтрация по объёму вычислений в среднем занимает от 20 до 60% от общего объёма операций цифровой обработки сигналов |4|. Для того чтобы свести к минимуму возможные потери информации и повысить качество ее обработки, цифровые фильтры должны обеспечивать возможность быстрой работы с большими блоками данных. Одним из вариантов решения ЭТОЙ задачи является применение многоскоростной адаптивной фильтрации сигналов и синтеза систем обработ ки сигналов на основе использования банка фильтров [5]. Благодаря тому, что полоса частот полезною сигнала имеет ширину, намного меньшую частоты дискретизации, можно перейти к новой пониженной частоте дискретизации и вести фильтрацию и адаптацию на ней, что Существенно снизит вычислительную сложность.

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

Структура банка фильтров

Банк цифровых фильтров предназначен для разбиения входного сигнала на несколько субканалов.

На рисунке 1 представлена общая структура канальной системы обработки сигналов на базе банка из К цифровых полосовых фильтров [4], [5], [б], Операция децимации преобразуемых сигналов на структурной схеме обозначена знаком а интерполяция обозначена |у. В рассматриваемом случае банк фильтров — совокупность однотипных полосовых фильтров, перекрывающих весь исследуемый частотный диапазон.

В состав сис темы входят:

• полосовые фильтры /-/Д/с«),/ — ¡...А* блока анализа и полосовые фильтры ^(¡со),! блока синтеза; полосовые фильтры И,{]ф) строятся, как фильтры-дециматоры,

понижающие в V раз частоту дискретизации канальных сит-патов л*(/г/Г,),/ = 1...А'. а полосовые фильтры /"( ¡а>) - как

фиЛЬтры-интерполяторы, повышающие в V раз частоту дискретизации преобразованных компонент:

• преобразователь капельных сигналов, в зависимости от конкретной цели "Ъ" применения системы, он может выделять и подавлять отдельные компоненты х^шТ,),{=].„К

входного процесса повышать или понижать их час-

тогу дискретизации, производить адаптивную обработку по каждому из каналов, оценивать параметры компонент с целью распознавания или сжатия информации о процессе ф7|), «перемешивать» каналы и переставлять сегменты

компонент и выполнять другие операции.

х(пГ|)

HiOtuI ' IV

l-bjcuj

\,(ltlT:l

I *s(mTi)

Ну (Jul

¿V

*llmT2)

J'.nnTj)

I- Л.шТ:)

yjImT;)

ViUllTi)

Tv"U F]{jo)

fv Fi(ju»

fv F ¡(J")

:

tv FKO'OI

Vint])

АНАЛИЗ

СИНТЕЗ

Рис, 1. Структурная схема банка фильтров

Представленная па рис. I общая структура А'-канальпой системы анализа-синтеза сигналов использует децимацию и интерполяцию преобразуемых сигналов п относится к классу систем частотной селекции с прореживанием по времени [6]. Существуют и имеют практическое применение альтернативные подходы к построению системы анализа-синтеза сигналов. Например, банк фильтров, использующий децимацию и интерполяцию импульсных характеристик набора полосовых фильтров. Подобный класс систем частотной селекции относится к классу систем с прореживанием по частоте, так как в основе синтеза их структуры лежит одно-ил и многоступенчатое соединение параллельного набора цифровых гребенчатых фильтров.

В современных системах связи постоянно возникает необходимость реализации банков фильтров с очень большим числом каналов К, что приводит к высоким вычислительным затратам. Поэтому актуальной является проблема снижения необходимых вычислительных затрат без снижения эффективности обработки сигналов [ I ]. |7], (К).

7ТТ

Блок анализа банка цифровых фильтров

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

Пусть алгоритм работы £-го фильтра описывается уравнением свёртки [31. ¡1)]:

а-= Ш

щ

где К число цифровых фильтров; N —длина импульсной реакции одного цифрового фильтра; Ьк ~ /-Й временной отечет на выходе А-го цифрового фильтра.

Комплексные отсчёты входного сигнала Образуют комплексный вектор-столбец:

0|

а =[£/,;..,а,,;...Од, ]'' =

Комплексные отсчеты импульсной характеристики к-то фильтра образуют комплексную вектор-строку:

г де векторы-строки h чость iV.

и век гор-столбец а имеют размер-

ti

b =lif а

-э*

Ь =b а

= а

Рис. 2. Структурная схема блока анализа банка цифровых фильтров

Комплексная матрица импульсные реакций всех цифровых филы ров имеет размерность KxN :

II-

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

Ь, = Н - а. (2)

Алгоритм (2) с целью последующего анализа его вычислительной сложности может быть записан в более развернутой форме:

"h1'

h II

ьК

h\ . ., h), . • 4

., ií .

h* . . h,f hK ■ /7,v

Ь, = Н-а =

h1 a "h>"

b¡ h h* a = h<

A hЛ ■a hA

(3)

Оценка вычислительной сложности традиционного алгоритма реализации банка цифровых фильтров

Оценим число арифметических операций, необходимое для традиционной реализации алгоритма, описываемого выражением (3). Для вычисления одного элемента К - мерного комплексного вектора Ь,. очевидно, требуется выполнить N умножений комплексных чисел и TV — I сложений комплексных чисел f 10]. Тогда для получения всего вектора требуется выполнить:

• K-N умножении комплексных чисел;

• К) сложений комплексных чисел.

Умножение двух комплексных чисел е использованием

традиционного алгоритма

г - (,v, -I- j ■ х,) (v, + j • v\) - 2, + j ■ г,,

.--v-H-r-v (4)

S\ ~ Л! Щ ~2 Ух>

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

требует выполнения четырёх ум ножен нй действительных чисел и двух сложений действительных чисел. Сложение двух комплексных чисел

(.V, +. j - Хг) + (г', + j ■ у2) - (.V, + V,) + j-{х2 + Уг) (5)

Требует выполнения двух сложений действительных чисел.

Из выражений (4) и (5) следует, что для вычисления вектора b требуется выполнить

4 K-N (6)

умножении действительных чисел и

2K-N + 2K-(N-\) = 4K-N-2K (7)

сложений действительных чисел.

В случае, если для реализации банка фильтров используется сигнальный процессор, в котором время выполнения операций умножения и сложения одинаково, то вычислительная сложность алгоритма определяется суммой числа умножений и сложений (6) и (7):

8 K-N-2K. (8)

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

Упрощенный алгоритм реализации банка цифровых фильтров и опенка его вычислительной сложности

Традиционный алгоритм (4) умножения двух комплексных чисел гребу ет четырех умножений действительных ч и -сел. Известен метод, решающий ту же задачу, но требующий только трех умножений действительных чисел. Этот метод называется методом ЗМ (т.е. методом трех умножений, 3 Multipljcations) и описывается следующими выражениями [12], [13]:

т, =(ji-A-2)-.V3+Л-

(9)

z: = (A'i ~ х2)1 Уч + Х2' (У) + У i} ■

СКметим, что выражения (9) являются тождественными преобразованиями традиционных выражений (4). Алгоритм

(9) содержит три умножения действительных чисел и пять сложений действительных чисел. Таким образом, сокращение на одно умножение приводит к увеличению па три сложения. С точки зрения вычислительной сложности, это может быть выгодным, если время выполнения операции сложения существенно меньше времени выполнения операции умножения. Метод ЗМ может быть применен к задаче (2) вычисления произведения матрицы на вектор, т.е. к задаче анализа банка цифровых фильтров \ 1З].

Формулу (2} можно представить в следующем виде: Ь = Н а = Ь,с + / ■ Ь,., - (Н,. + У ■• Н,) ■ (ас +у ■ а(). ( И))

где нижний индекс С означает действительную часть комплексного вектора или матрицы; нижний индекс означает мнимую часть комплексного вектора или матрицы.

Применяем метод ЗМ (9) для вычислений по формуле

(10) не к отдельным числам, а к матрицам и векторам:

Как следует из выражений (II), умножение двух комплексных матриц требует выполнения следующих операций:

• 3 умножения действительной матрицы размерности К х. N на действительный вектор размерности /V ;

• I сложение действительных матриц размерности Ах/У;

• 2 сложения действительных векторов размерности А/ ,

• 2 сложения действительных векторов размерности К . Оценим теперь вычислительную сложность реализации с

помощью {11) банка пнфровых фильтров.

Умножение KxN мерной действительной матрицы па N - мерный действительный вектор требует выполнения следующих операций:

• К ■ N умножений действительных чисел;

• А" ■ ( Л' — 1) сложений действительных чисел.

Сложение двух К х N - мерных действительных матриц требует К^ сложений действительных чисел.

Сложение двух Л' - мерных действительных векторов требует N сложений действительных чисел. Аналогично, сложение К - мерных действительных векторов требует К сложений действительных чисел.

Тогда для выполнения вычислений по формулам (11) требуется всего выполнить:

3 КЫ (12)

умножений действительных чисел и

ЗК-[М-\) + К-К + 2К + 2К=4К^ + 2М~К 03)

сложений действительных чисел.

Общее количество операций определяется суммой числа умножений и сложений (12) и (13):

1К • N + - К < (14)

Сравнительный анализ вычислительной сложности традиционного и упрощенного вариантов реализации банка цифровых фильтров

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

рые надо выполнить за время, равное периоду дискретизации Т..

с1

Рассмотрим сначала случай, когда время выполнения операций сложения и умножения одинаково, т.е. когда в процессоре операция умножения реализована аппаратпо.

В этом случае минимальная требуемая производительность процессора при использовании традиционного алгоритма (8) реализации банка цифровых фильтров определяется следующим образом:

(15)

j'

где f —-L — частота дискретизации в МГц; v - пронзво-J ,1 ^ 'd

лительноеть процессора в MIPS (Mega Instructions Per Second, миллион операций в секунду).

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

V=\1KN+1N-K)fir (16)

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

При использовании традиционного алгоритма (8) реализации банка фильтров минимальная требуемая производительность процессора с учетом (6 (может быть приближенно представлена следующим образом:

V^AK-N-fj. (17)

Если используется предложенный алгоритм (11) реализации банка фильтров, то оценка минимально требуемой производительности сигнального процессора с учетом (12) будет выглядеть следующим образом:

K-N-fd. (18)

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

Пример. Пусть длина импульсной реакции одного цифрового фильтра составляет Л' = 100, а число фильтров равно К = 100, при частоте дискретизации f = ] МГц. Полагаем также, что используется сигнальный процессор с встроенным аппаратным умножителем, i.e. операции умножения н сложения выполняются за одинаковое время.

Тогда, согласно (15). при традиционной реализации банка цифровых фильтров, требуемая производительность процессора определяется следующим образом: v = (& K-N-2-K)- fit = (8-100-100-2-100)-1 =810^ Mlps- (

i 1рн использовании предложенного алгоритма (11) требуемая производительность процессора будет равна, согласно выражению (16):

v={7К-N+2N-K)Ц 7-100 ■ 100+2-10Q-I ■ 100) ■ 1=7-10" MIPS. (20)

Из выражений (14) и (20) видно, что нредло-женный алгоритм (II) реализации банка цифровых филы-ров позволяет сократить вычислительную сложность по сравнению е традиционным алгоритмом (8) примерно на 12,5 %.

Рассмотрим теперь случаи, когда используется сигнальный процессор без аппаратного умножителя, т.е. операция умножения требует во много раз большего времени, чем операция сложения. Сравнивая выражения (17) и (18), можно прийти к простому выводу, что использование предложенного алгоритма (II) реализации банка цифровых фильтров позволяет получить выигрыш в вычислительной сложности примерно 25%. По сравнению е традиционным алгоритмом (8).

Выводы

Предложенный алгоритм позволяет сократить вычислительную сложность реализации банка цифровых фильтров па ¡2,5-25%, в зависимости от вида используемог о сигнального процессора. Это, в свою Очередь, позволяет:

примерно на 12,5-25% увеличить скорость передачи данных, путем увеличения частоты дискретизации /

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

Следует отметить, что снижение вычислительной сложности не приводит к какому-либо ухудшению качественных характеристик банка фильтров.

Л итература

1. Витязев ВВ., Ларин А.В. Оценка вычислительной эффективности методов построения банка цифровых фильтров-демодуляторов ¡1 Материалы II Всероссийской научно-технической конференции «Актуальные проблемы современной науки и производства», 15-17 ноября 2017 г., г. Рязань. Сборник грудон. С. 113-123,

2. Вшпязев В.В, Цифровая частотная селекция сигналов, М.: Радио и связь, 1093. 240 с.

3. Солонина Alt.. Улахоенч Д.А., Арбузов С.М. и др. Основы цифровой обработки сигналов: Курс лекций. СПб.: БХВ-Петербург, 2003. 60S с.

4. А и¡рвнков Л,Г., Канатов ИМ, Ко-и Д.И Банк цн фро вых фильтров//Компоненты и технологии. 2007, № 10. С. 156-16!.

5. Зайцев А.А, Методы построения банков цифровых фильтров: тематический обзор // [ (ифровая обработка сигналов. 2003. № I, С. 2 -1 (J.

6. Витя Зев В В.. Зайцев А.А. Основы многоскоростной обработки сигналов. Учебное пособие, ч,|. Рязанская государственная радиотехническая академия, г. Рязань, 2005. 124 с,

7. ВШпизев В.В., Витязвв С.В Методы синтеза узкополосного адаптивного КНХ-фнльтра на основе мпогоекоростной обработки И I [ифровая обработка сигналов, 2007, №4. С 13-16.

К. Гусинская Е.И., Зайце® А.А. Оптимизация банка фильтров в задачах субполосного кодирования // I (ифровая обработка ей гладов, 2001. №2. С. 2-9.

9. Бакулин jif.Г., кртidejli/H В. Б., Панкратов Д./О, Технологии в системах радиосвязи на пут и к 5G. М.: Горячая линяя - Телеком, 20!8. 280с.

И). Тыртышникоп Е,Е. Матричный анализ и линейная алгебра. М.: Физматлпт, 2007. 480 е.

11. Блейхут Р. Быстрые алгоритмы цифровой обработки сигналов, М: Мир, 1989, 448 е.

12. Higham N, Accuracy and Stability о Г Numerical Algorithms. Second edition, USA. Philadelphia, SI AM, 2002. 710 p.

13. Higham N. Stability of a Method for Multiplying Complex Matrices with Three Real Matrix Multiplications. SI AM .1. Matrix Anal. Appl, Vol.13. № 3, pp,681-687, July 1492.

THE IMPLEMENTATION OF THE BANK OF DIGITAL FILTERS WITH REDUCED COMPUTATIONAL COMPLEXITY

Vitaly B. Kreyndelin, Moscow Technical University of Communications and Informatics, Moscow, Russia, vitkrend@gmail.com Elena D. Grigorieva, Moscow Technical University of Communications and Informatics, Moscow, Russia, ed.grigorieva@yandex.ru

Abstract

Ultra-large integrated circuits, called chips, can contain more than 100 thousand logic elements, and therefore the theory of algorithms is considered as a way to effectively organize these elements. Sometimes the choice of algorithm can significantly improve the performance of the chip, without having to increase the size of the chip or to improve its performance. For example, if it is possible to propose an algorithm for calculating some function of digital signal processing, containing only a fifth of the number of operations included in the traditional algorithm for calculating the same function, then using this algorithm, you can implement the same improvement in the characteristics of the chip, which is obtained by increasing five times its size or its speed. However, the developer of the chip should move the algorithm architecture the architecture of the chip, to implement the improvement. An ill-conceived design can negate this advantage by increasing, for example, the complexity of indexing or the input-output flow. The development of optimal designs in the era of large integrated circuits is impossible without the use of fast algorithms. At first glance it may seem that these two directions - fast integrated circuits and fast algorithms - compete with each other. If you can build large enough and fast enough chips, it seems that there is nothing wrong with the fact that inefficient algorithms are used. In some cases, this point of view is not in doubt, but there are certainly cases in which it is possible to express a diametrically opposite point of view. Large digital processors themselves often create the need to develop fast algorithms, as the dimension of the problems solved on them is growing. Whether the processor time of an algorithm designed to solve some problem is proportional to or is irrelevant at n equal to 3 or 4, but at n equal to 1000, it becomes critical. Digital signal processing algorithms use the multiplication of matrices containing complex numbers. When multiplying two matrices of complex numbers in the traditional way, it is required to perform four multiplications and two additions of matrices of real numbers. Using a simple identical transformation of a mathematical expression, it is possible to implement the operation of multiplication of two matrices of complex numbers by three operations of multiplication of matrices of real numbers and five additions of matrices of real numbers. This method reduces the number of arithmetic operations by about 12.5 - 25% vs. traditional method.

Keywords: multirate signal processing, Bank of digital filters, fast algorithm, stability of the algorithm (sensitivity to calculation errors), method 3M (method of 3 multiplications), processor performance.

References

1. Vityazev V.V., Harin A.V. (2017). Estimation of computational efficiency of methods of development of bank of filres-demodulators. Proceedings of II Russian scientific-technical conference 'Actual problems of modern science and manufactoring', 15-17 November, 2017, Razyan, p. 113-123. (in Russian)

2. Vityazev V.V. (1993). Digital frequency selection of signals. Moscow: Radio and communication. 240 p. (in Russian)

3. Solonina A.I., Ulakhovich D.A., Arbuzov S.M. (2003). Fundamentals of digital signal processing: a Course of lectures. St.-Pb.: BHV-Petersburg Publ. 608 p. (in Russian)

4. Azarenkov L.G., Kanatov I.I., Kaplun D.I. (2007). Bank of digital filters. Components and technologies. No. 10, pp. 156-161. (in Russian)

5. Zaitsev A.A. (2003). Methods of Construction of Banks of Digital Filters: Thematic review. Digital signal processing. No. 1, pp. 2-10.

(in Russian)

6. Vityazev V.V., Zaitsev A.A. (2005). Basics of multi-rate signal processing. Textbook, Part 1. Ryazan state radio engineering Academy. Ryazan. 124 p. (in Russian)

7. Vityazev V.V., Vityazev S.V. (2007). Methods of synthesis of narrow-band adaptive FIR filter based on multi-speed processing. Digital signal processing. No. 4, pp. 13-16. (in Russian)

8. Gusinskaya E.I., Zaitsev A.A. (2001). Filter Bank Optimization in Subband Coding Problems. Digital signal processing., No. 2, pp. 2-9.

(in Russian)

9. Bakulin M.G., Kreyndelin V.B., Pankratov D.Y. (2018). Technologies in radiocommunication systems on the road to 5G. Moscow: Goryachaya linia - Telecom. 280 p. (in Russian)

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

10. Tyrtyshnikov E.E. (2007). Matrix analysis and linear algebra. Moscow: Fizmatgiz. 480 p. (in Russian)

11. Blahut R. (1989). Fast Algorithms for Digital Signal Processing. Moscow: Mir Publ., p. 448. (in Russian)

12. Higham N. (2002). Accuracy and Stability of Numerical Algorithms. Second edition. USA, Philadelphia, SIAM. 710 p.

13. Higham N. (1992). Stability of a Method for Multiplying Complex Matrices with Three Real Matrix Multiplications. SIAM J. Matrix Anal. Appl. Vol.13. no. 3, pp.681-687, July 1992.

Information about authors:

Vitaly B. Kreyndelin, Moscow Technical University of Communications and Informatics, chief of the Department of electric circuit theory, Moscow, Russia, Elena D. Grigorieva, Moscow Technical University of Communications and Informatics, member of the Department of electric circuit theory, Moscow, Russia

7ТЛ

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