УДК 004.31:517.443:681.5 ББК З811
НА. ГАЛАНИНА, В. А. ПЕСОШИН, Н.Н. ИВАНОВА
РАЗРАБОТКА УСТРОЙСТВ ЦИФРОВОЙ ФИЛЬТРАЦИИ И СПЕКТРАЛЬНОГО АНАЛИЗА С ИНДЕКСИРОВАНИЕМ ДАННЫХ В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ
Ключевые слова: быстродействие, индекс (антииндекс), модуль, система остаточных классов (СОК), ортогональные базисы, быстрое преобразование Фурье (БПФ).
Для повышения быстродействия устройств цифровой фильтрации и спектрального анализа предложено использовать теорию индексов СОК. Разработана схема КИХ-фильтра с индексированием данных в СОК, не содержащая умножителей. Проведено моделирование устройства спектрального анализа с индексированием данных в СОК в MatLab.
N. GALANINA, V. PESOSHIN, N. IVANOVA DEVELOPMENT OF DEVICES OF DIGITAL FILTRATION AND SPECTRAL ANALYSIS WITH THE INDEX OF THE DATA IN RESIDUE NUMBER SYSTEM Key words: speed, index (anti-index), module, Residue number system (RNS), orthogonal basises, Fast Fourier Transform (FFT).
RNS index theory was proposed for speed improvement of the devices for the digital filtration and spectral analysis. FIR-filters scheme without the multiplying devices using RNS index theory was developed. MATLAB simulation of the device for digital filtration and spectral analysis using RNS index theory was developed.
Одним из основных требований, предъявляемых к устройствам цифровой фильтрации и спектрального анализа при их синтезе, является обеспечение высокого быстродействия. Так, в некоторых практических случаях скорость обработки сигналов недостаточна из-за наличия в схеме фильтрации умножителей. Одним из возможных способов решения этой проблемы является использование теории индексов [2, 5, 6, 8, 9] и, как следствие, цифровых фильтров (ЦФ) в системе остаточных классов (СОК) с индексированием данных.
Цифровая фильтрация в СОК с использованием теории индексов. Известно, что в позиционных системах счисления (ПСС) для исключения операций умножения используется ряд математических приемов, связанных с вычислением логарифмов [1]. В случае же применения СОК их использование приводит к существенным ошибкам и поэтому предлагается альтернативное решение - проведение вычислений с помощью таблиц индексов.
В системе остаточных классов за индекс J целого числа C принимается такое целое число y=J(G), которое является решением уравнения вида
qy = C mod Ns , (1)
где q - первообразный корень модуля NS (или основание индекса), т.е. такой корень с = q сравнения с Ns 1 = 1mod NS, при котором это сравнение имеет единственное решение. Очевидно, что для различных значений взаимно простых NS первообразные корни могут и отличаться, и совпадать. Кроме того, для одного и того же значения NS может быть определено несколько первообразных корней. Необходимым и достаточным условием того, что q - первообразный корень простого числа NS, является выполнение только одного из сравнений:
q (N-1)/ *i = l(mod NS); q(N-1)/= 1(mod NS);
(2)
д (^-1)/я з = 1(тоа ^ ),
где Ль п2,..., п - простые делители числа (N3 - 1).
Как уже указывалось выше, особенность индексов роднит их с логарифмами и позволяет заменить умножение чисел сложением их индексов с последующим переходом от индекса произведения к самому произведению. Этот переход от индекса к фактическому числу осуществляется с помощью антииндексов. Их находят из тех же таблиц. Таблицы индексов (антииндексов) записываются в ПЗУ.
Схема КИХ-фильтра с индексированием данных в СОК, характерной особенностью которого является замена умножителей сумматорами и перекодирование шифраторов (дешифраторов) в связи с введением индексов J и антииндексов J-1, представлена на рис. 1 [5].
^-разрядные числа х(пТ) с выхода АЦП подаются на входы блоков определения индексов входного сигнала, реализованных на ПЗУ-1, ПЗУ-2, ..., ПЗУ-Б, ..., ПЗУ- V Для всех выбранных модулей N3 заранее находятся первообразные корни qS, Б = 1, V и значения индексов, имеющих разрядность = 1 1о§2^ Г. Вычисленные индексы J[x(nT)]Ns, J[x(nT+Т)],..., J[x(nT+шТ)]ы поступают на входы сумматоров БМ-Б-1, БМ-Б-2, ..., БМ-Б-ш, где происходит их сложение с индексами коэффициентов ЦФ J[а1 N, J[а2N,..., J[аш. Результаты сложения J(ASi) разрядности поступают на входы блоков определения антииндексов .Г1: ПЗУ-Б-1, ПЗУ-Б-2, ..., ПЗУ-Б-ш, которые хранят и таблицы антииндексов для заданных NS и qS. В основном сумматоре по модулю NS антииндексы J-1(ASг■) складываются. Так образуется вычет гБ(пТ) результатов фильтрации в Б-м канале. В схеме восстановления результата, являющейся выходным блоком ЦФ, по вычетам гБ(пТ) в СОК восстанавливается общий результат У(пТ) в позиционной системе счисления в соответствии с китайской теоремой об остатках (3):
Y(nT) = [Jj-s (nT )GSJ mod N, (3)
v mN где N = П Ns ; Gs - ортогональные базисы СОК [2] (Gs =-, ms - нату-
s=i Ns
ральное число, называемое весом ортогонального базиса, которое выбирается
таким образом, чтобы имело место сравнение/ msN\ mod Ns = 1).
\ Ns /
Существующие алгоритмы индексирования не позволяют вычислять первообразные корни, индексы и антииндексы для произвольно больших чисел. Разработанный алгоритм позволяет решить эту задачу и, таким образом, уменьшить число каналов до двух, что представляет интерес при реализации устройств в СОК на цифровых сигнальных процессорах.
Л*(и7)к
ПЗУ-З
Определитель индексов
т-1 т-1 т-1
■(аг)к
■(ат)Ы
8М-3-1 8М-3-2 8М-3-т
(дополни- (дополни- (дополни-
тельный) тельный) тельный)
ПЗУ-З-1
(определитель антииндексов)
ПЗУ-З-2
(определитель антииндексов)
ПЗУ-З-т
(определитель антииндексов)
■ "Ч Ат )
■ "'( А, 2)
■ "Ч Ая)
8М-3
(основной)
ЫпТ)
У(пТ)
ПЗУ-У
Определитель
ЦЛЗ-У
■(а2)л
■(ат)М.
8М -V (дополнительный)
ПЗУ -V (определитель антииндексов)
БМ^
(основной)
rv(nT)
3
Рис. 1. Схема КИХ-фильтра с индексированием данных в СОК
Моделирование устройства спектрального анализа с индексированием данных в СОК. Моделирование вычислений проводилось в интегрированной среде программирования Ма1;ЬаЬ. Схема устройства БПФ в СОК с индексированием данных представлена на рис. 2.
В состав комплекса входят аналого-цифровой преобразователь; блок предварительной обработки данных - подготавливает данные для передачи в канал БПФ-СОК; сортирует массив данных в нужном порядке; канал БПФ-СОК - вычисляет непосредственно БПФ; счетчик циклов - считает количество циклов при вычислении БПФ; параллельно-последовательный регистр -объединяет потоки данных с трех каналов в один поток; блок вывода на экран.
Рис. 2. Схема устройства БПФ в СОК с индексированием данных
Схема одного канала БПФ-СОК изображена на рис. 3.
Блок
индексов
Рис. 3. Схема одного канала БПФ-СОК с индексированием данных
Результаты моделирования представлены на рис. 4.
0,08 0,07 " 0,06
0,072
512 1024 204!
^точечное БПФ
Вычисление БПФ традиционным способом -Вычисление БПФ с индексным алгоритмом
Рис. 4. Зависимость времени вычисления БПФ от длины двоичного кода входной последовательности
Результаты моделирования подтверждают преимущество в быстродействии устройств БПФ в СОК с индексированием данных перед устройствами БПФ, реализованными в позиционной системе счисления. Выигрыш становится особенно заметным, начиная с 512-точечного ДПФ, причем с ростом размера входной последовательности он увеличивается [5].
Литература
1. Акушский И.Я., Юдицкий Д.И. Машинная арифметика в остаточных классах. М.: Сов. радио, 1968. 440 с.
2. Амербаев В.М. Теоретические основы машинной арифметики. Алма-Ата: Наука, 1976. 196 с.
3. Амербаев В.М., Малашевич Д.Б. Анализ эффективности реализации модульных операций индексной модулярной арифметики // Известия вузов. Сер. Электроника. 2009, № 6(80). С. 13-18.
4. Блейхут Р. Быстрые алгоритмы цифровой обработки сигналов: пер. с англ. М.: Мир, 1989. 448 с.
5. Галанина Н.А. Методы и вычислительные устройства цифровой обработки сигналов в системе остаточных классов: дис. ...докт. техн. наук. Казань, 2010.
6. Галанина Н.А. Непозиционные алгоритмы и устройства цифровой фильтрации и спектрального анализа. Чебоксары: Изд-во Чуваш. ун-та, 2009. 208 с.
7. Галанина Н.А. Особенности синтеза цифровых фильтров в СОК // Информационные технологии в электротехнике и электроэнергетике: материалы III Всерос. науч.-техн. конф. Чебоксары: Изд-во Чуваш. ун-та, 2000. С. 246-249.
8. Корнилов А.И., Семенов М.Ю., Ласточкин О.В. Принципы построения модулярных индексных умножителей // Известия вузов. Сер. Электроника. 2004. № 2. С. 48-55.
9. Лебедев Е.К. Быстрые алгоритмы цифровой обработки сигналов. Красноярск: Изд-во Краснояр. ун-та, 1989. 192 с.
10. Лебедев Е.К., Галанина Н.А., Давыдов О.Е., Егоров Г.Е. Методы синтеза цифровых фильтров в системе остаточных классов // Вестник Чувашского университета. 2000. № 3-4. С. 145-156.
11. Лебедев Е.К., Галанина Н.А., Иванова Н.Н., Буланкина Е.Ю. Оптимизация непозиционных устройств цифровой обработки сигналов // Динамика нелинейных дискретных электротехнических и электронных систем: материалы V Всерос. науч. конф. Чебоксары: Изд-во Чуваш. ун-та, 2003. С. 199-203.
ГАЛАНИНА НАТАЛИЯ АНДРЕЕВНА - доктор технических наук, профессор кафедры математического и аппаратного обеспечения информационных систем, Чувашский государственный университет, Россия, Чебоксары (galaninacheb@mail.ru).
GALANINA NATALIYA - doctor of technical sciences, professor of Math and Hardware Information Systems Chair, Chuvash State University, Russia, Cheboksary.
ПЕСОШИН ВАЛЕРИЙ АНДРЕЕВИЧ - доктор технических наук, профессор, заведующий кафедрой компьютерных систем, Казанский национальный исследовательский технический университет, Россия, Казань (pesoshin@evm.kstu-kai.ru).
PESOSHIN VALERIY - doctor of technical sciences, professor, head of Computer Systems Chair, Kazan National Research Technical University, Russia, Kazan.
ИВАНОВА НАДЕЖДА НИКОЛАЕВНА - кандидат технических наук, доцент кафедры математического и аппаратного обеспечения информационных систем, Чувашский государственный университет, Россия, Чебоксары (naadeezdaa@rambler.ru).
IVANOVA NADEZHDA - candidate of technical sciences, associate professor of Math and Hardware Information Systems Chair, Chuvash State University, Russia, Cheboksary.