Научная статья на тему 'Разработка КИХ-фильтров с использованием модульных и немодульных операций системы остаточных классов'

Разработка КИХ-фильтров с использованием модульных и немодульных операций системы остаточных классов Текст научной статьи по специальности «Математика»

CC BY
171
81
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИСТЕМА ОСТАТОЧНЫХ КЛАССОВ (СОК) / ГОНАЛЬНЫЕ БАЗИСЫ / RESIDUE NUMBER SYSTEM (RNS) / МОДУЛЬНОЕ ДЕЛЕНИЕ / НЕМОДУЛЬНЫЕ ОПЕРАЦИИ / ТРАНСВЕРСАЛЬНЫЙ ФИЛЬТР / ВЫЧЕТ / МИНИМАЛЬНЫЙ СЛЕД ЧИСЛА / РАНГ ЧИСЛА / MODULAR DIVISION / NOT MODULAR OPERATIONS / TRANSVERSAL FILTER / RESIDUE / MINIMUM TRACE OF NUMBER / NUMBER RANK / ORTHOGONAL BASES

Аннотация научной статьи по математике, автор научной работы — Галанина Наталия Андреевна, Песошин Валерий Андреевич, Иванова Надежда Николаевна

Предложено решение проблемы роста результата фильтрации в СОК. Разработаны КИХ-фильтры с использованием модульного и немодульного деления. Сокращены аппаратурные затраты фильтров.

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

Похожие темы научных работ по математике , автор научной работы — Галанина Наталия Андреевна, Песошин Валерий Андреевич, Иванова Надежда Николаевна

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

DEVELOPMENT OF fir-FILTERS WITH USE MODULAR AND NOT MODULAR OPERATIONS OF residue num­ber system

The solution of a problem of growth of result of a filtration in RNS is offered. FIR-filters with use of modular and not modular division are developed. Hardware expenses of filters are reduced.

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

Литература

1. Анохин П.А. Анализ обобщения алгоритма RC4 // Информационные технологии управления в социально-экономических системах: сб. науч. ст. ВНИИПВТИ. 2009. Вып. 3. С. 146-154.

2. Анохин П.А Некоторые свойства псевдослучайной последовательности, порождаемой обобщением алгоритма RC4 // Вестник Чувашского университета. 2010. № 3. С. 283-285.

3. Анохина Е.И., Анохин П.А. Особенности этапа разработки экономико-организационной модели предприятия в системном анализе // Вестник Чувашского университета. 2011. № 3. С. 116-118.

АНОХИНА ЕЛЕНА ИВАНОВНА - кандидат экономических наук, доцент кафедры финансов и кредита, Чувашский государственный университет, Россия, Чебоксары (lena. anokhina@gmail. com).

ANOKHINA ELENA IVANOVNA - candidate of economics sciences, assistant professor of Finance and Credit Chair , Chuvash State University, Russia, Cheboksary.

АНОХИН ПАВЕЛ АНДРЕЕВИЧ - аспирант, Московский физико-технический институт (государственный университет), Россия, Москва (paul.anokhin@gmail.com).

aNokHiN PAVEL ANDREEVICH - post-graduate student, Moscow Institute of Physics and Technology (State University), Russia, Moscow.

Ключевые слова: система остаточных классов (СОК), модульное деление, немодульные операции, трансверсальный фильтр, вычет, минимальный след числа, ранг числа, ортогональные базисы.

Предложено решение проблемы роста результата фильтрации в СОК. Разработаны КИХ-фильтры с использованием модульного и немодульного деления. Сокращены аппаратурные затраты фильтров.

N.A. GALANINA, V.A. PESOSHIN, N N. IVANOVA DEVELOPMENT OF FIR-FILTERS WITH USE MODULAR AND NOT MODULAR OPERATIONS OF RESIDUE NUMBER SYSTEM

Key words: residue number system (RNS), modular division, not modular operations, transversal filter, residue, minimum trace of number, number rank, orthogonal bases.

The solution of a problem of growth of result of a filtration in RNS is offered. FIR-filters with use of modular and not modular division are developed. Hardware expenses of filters are reduced.

При обработке сигналов, кодированных в системе остаточных классов (СОК), весовые коэффициенты цифрового фильтра (ЦФ) необходимо масштабировать относительно расчетных до целого значения A,■=Maг-, где M- множитель. Увеличение аг- до A,■ приводит к возрастанию максимально возможного результата фильтрации pmax, следствием чего является рост числа каналов СОК, что является свидетельством необходимости применения операции деления [3, 4]. В теории СОК различают 2 вида модульного деления: формальное деление (т.е. случай, когда делимое делится на делитель нацело) и деление без остатка на основание системы NS, когда происходит деление числа X на один из модулей N1,N2, ..., NS, ..., Nv-1. Кроме деления нацело (модульного деления), возникают случаи деления с остатком (деление на модуль Nv с получением дробной части в частном). Такие операции называются немодульными.

По правилам деления формальное частное представляется в виде:

УДК 621.372.54

Н.А. ГАЛАНИНА, В.А. ПЕСОШИН, Н.Н. ИВАНОВА

РАЗРАБОТКА КИХ-ФИЛЬТРОВ С ИСПОЛЬЗОВАНИЕМ МОДУЛЬНЫХ И НЕМОДУЛЬНЫХ ОПЕРАЦИЙ СИСТЕМЫ ОСТАТОЧНЫХ КЛАССОВ

X =(x1,..,:xs,:::,xv) NS (,...,ns ,...,nv)

соответственно вычеты СОК делимого (X) и делителя Л); у1;...,у^- цифры

хі + кЛг

частного, которые однозначно находятся из соотношения: уі =------------[1].

пі

Таким образом, деление в случае, когда оно точно выполнимо (т.е. когда X кратно Лх), может осуществляться поразрядным делением хі на п. Здесь поразрядное деление понимается в том смысле, что если хі непосредственно не делится на пі, то к хі прибавляется столько раз Л8, чтобы хі + кЛ делилось нацело на пі (і = 1, 2, ..., V). При условии, что к < Л8, такое деление единственным образом определит цифру уі. Заметим, что такое деление выполнимо при дополнительном условии пі ф 0.

Если при делении на модуль возникает неопределенность ух = 0/0, тогда все

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

Суть этого метода заключается в следующем. Введем число Оно называется минимальной формой X, а цифра 8Х по основанию Л - минимальным следом числа X. Задача нахождения частного сводится к нахождению цифры у8.

Алгоритм раскрытия неопределенности у5 = 0/0 состоит в следующем [1, 5]:

1. Находится 8 =_|(xV - S'X)/ _ (_ I - операция округления в сторону меньшего

целого) по известным SX, ху и Л8.

2. Определяется минимальный след частного: S=уу-8 .

3. Вычисляется сумма 0 =< + Sу*2 + . + Sу*s-l + Sу*s+l +... + 5*^ >^.

Отсутствующая среди слагаемых суммы 0 цифра S*s находится последовательно

через минимальные псевдоортогональные числа М(аі) = (0,0,.,аі = 1,...,0,SУs), где S*s - минимальный след числа М: аі = 1, а все его позиции равны нулю, кроме і-й.

4. Находится фиксированный след SУs числа у8 )ф = ( S^ - 0) . По

\ ”7 /лу

)ф ищется цифра у& для которой разность - (S's )ф) принимает минималь-

ное значение.

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

V

мы П Лі был превзойден при переходе от представления в СОК к его позиционному пред-

і=1

ставленик» через систему ортогональных базисов В.

Рассмотрим пример вычисления по описанному алгоритму для конкретных оснований. Например, рассмотрим СОК с модулями Л1 = 3; Л2 = 13; Л3 = 17 и ортогональными базисами 01 = 442; 02 = 612; 03 = 273. Л = ПЛs = 663. Делитель равен

S

Л2 = 13 = (2, 0,13).

1) Найдем первую цифру частного у і в канале Л1 = 3:

у1 = — = — = х1 = 0 V1V 2. п1 2

2) Вторую цифру у2 в канале Л2 = 13 по вышеуказанному правилу найти невозможно (пі = п2 = 0). Поэтому определим третью цифру у3 в канале Л3 = 17. Имеем

Уз =

хз + к 17. Необходимо подобрать такое к, чтобы числитель дроби нацело делился

13

на 13. Получим к = 3х3: у3 =

х3 + к -17 52х3 .

—-----------=------ У3 = 4х3.

13 13

3) Две цифры частного найдены, осталось найти третью, т.е. у2 в канале N = 13. Для этого вычислим минимальный след делимого X:

если XI = 0, то след находится как (0, 0, БХ): 0 • 442 + 0 • 612 + 8Х• 273 = 663, следовательно, БХ = ] 663/273 [ = <3>17 = 3;

если XI = 1, то след находится как (1, 0, £Х): 1 • 442 + 8Х • 273 = 663, следовательно, Бх = ] (663 - 442)/273 [ = <1>17 = 1;

если XI = 2, то след находится как (1, 0, £Х): 2 • 442 + 8Х • 273 = 663, следовательно, БХ = ] (663 - 2 • 442)/273 [ = <0>17 = 0.

у3 ~ $Х

4) Вычисляется минимальный след частного SX =у3 -

N

. Для уп-

рощения алгоритма уберем у3, и прибавим его на предпоследнем этапе. При отрицательном значении следа необходимо прибавить N по законам СОК. Обозначим по-

лученную величину О. То есть О = ( N3 -

Х3 - SX

N2

17

если (XI = 0 и х3 < 13) или (XI = 1 и х3 > 13), или (XI = 2 и х3 < 13), то О = 0; если (X! = 1 и x3 < 13) или (X! = 0 и x3 > 13), или (X! = 2 и x3 > 13), то О = 16;

5) Вычислим сумму Q = ^* + S* +... + S.* ^ + S*.++... + S*^ .

Для заданной СОК Q = ^S*l ^ :

если XI = 0, то г =

Х1

если XI = 1, то г =

Х1

если XI = 2, то г =

0 - 2

3

1-2" ~Г_ 2 - 2 ~

+1 — 1, а X,. —

+1 = 1, а =

" (1-3 - 0 - 2)17 _ 3 .

(1-3 -1-2)17 3 .

(2 - 2 - 2 - 2)17' 3

+ 1) = 1;

17

+1) =6.

17

+А = 1.

17

К полученному значению прибавим ^. То есть Q = N3 + Q.

6) Вычислим ) ф = / S*X_ - Ш .

\ Р, I N..

О^у, )ф = + у3 + Q, + N3 - Nз)NS = (у3 + О + QХ7.

Выпишем минимальные числа для основания N2 и по ^У )ф определим цифру у2, для которой разность Sy - )ф минимальна: (0, 1, 7); (0, 2, 2); (0, 3, 8); (0, 4, 4);

(0, 5, 9); (0, 6,6); (0, 7, 10); (0, 8, 8) и т.д. Получим <(612 + 7 • 273)>17 = 7, т.е у2 = 7.

Существенным недостатком указанного алгоритма является его сложность. Для упрощения его аппаратурной реализации возможно использование логического подхода к реализации делителей [6].

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

Если значение масштабирующего множителя совпадает с величиной модуля ^, то результат фильтрации в СОК можно делить на N до его перевода в позиционный

код в схеме восстановления результата. В этом случае число V параллельных каналов СОК не изменится. Требуется останавливать выбор на такой величине N. при которой пересчитанные значения весовых коэффициентов ЦФ а, приближаются к значениям ЦФ в ПСС а, (а, = ]аг-М.[ / N., где ] [ - операция округления, позволяющая получить наилучшее приближение).

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

Заметим, что при разработке ЦФ-СОК невыгодно использовать позиционные прототипы, так как коэффициенты ЦФ-ПСС а, в двоичном коде уже «загрублены» вследствие ограничения разрядной сетки. Поэтому при синтезе ЦФ-СОК возможен выигрыш по отношению к позиционному прототипу. Естественно, что чем больше N. тем ближе а, приближается к значению а,. Покажем это на примере. Известен

прототип с весовыми коэффициентами а! = 2,625 (010.101); а2 = -3,625 (111.101). Так как при синтезе ЦФ в СОК пересчитанные весовые коэффициенты определяются по формуле

а, = , (1)

г N..

’ V

12 625 13Г 35

то для N = 13 получаем а, = —,-------------------= — = 2,692; Аа = 2,692-2,625 = 0,067;

1 13 13

а2 = -3,692.

Аналогично, для N,=17 а1 =2,588, а2 =-3,588 (А^ = 0,037 ); для N = 31 а1 =2,645, а2 =-3,645 (Аа = 0,02); для N = 61 ах =2,639, а2 =-3,639 (Аа = 0,014).

Следовательно, чем больше N, тем а, ^ а,. Исключение составляет вариант двоичного представления а,.

Недостатком СОК является сложность выполнения немодульных операций, к которым относится и деление с остатком. Поэтому алгоритмическое решение этой проблемы представляет большой практический интерес. Деление с остатком можно осуществить с помощью расширения системы оснований (ввода канала Лу и вычисления позиционных характеристик числа (добавка А в результат сумматора в СОК) [1].

Обозначим целое число в позиционной системе какX, а его представление в СОК по выбранным основаниям (хх,х2,...,х,), где 1, 2..., V - каналы (основания или модули

СОК), а х =(Х)^ , х2 = {Х)Л^, ..., х, =(Х)Л . Делить будем на модуль который представим в СОК в виде остатков (вычетов) NV = (п1,п2,...,п,)СОК , где п1 = {NV)N ,

П2 = (ЮN2, ., nv= (ЮNV .

При делении на N получаем

У = X / Л, = (х1, х2,..., х,) /(пь п2,..., п,) = (х1/п1, х2/п2,..., х, / п,).

Так как X не делится на Л, нацело, то его преобразуем к виду

х • N

X + А = (х1, х2,..., ху) + (0,0,..., ху). Получим X (А) = X + А. Число А = —:,-------, где

Nv

N = N • N2 N5-. •NV.1, вычисляется таблично и вычитается при А < 0 из результата или

прибавляется при А > 0 к нему.

Отметим, что немодульный алгоритм деления на N существенно проще, чем модульное деление на N5. В случае деления на N в зависимости от цифры (остатка) в у-м канале КИХ-фильтра фильтра с делением логическими схемами ЬБ формируется добавка в позиционный результат сумматора [2, 3]:

А =

г О

если Гу < -

Nv

(Nv - )Су

К,

N±.

2 ’

~ N если гу > —-.

у 2 '

(2)

где Оу - вес у-го канала, т.е. О, =

N

, где N = П N5 .

Nv 5=1

Во всех других каналах с номерами 5 < у происходит формальное деление, которое учитывается при рассмотрении таблиц истинности разрабатываемых арифметико-логических устройств. При этом деления на ноль нет, так как N5 < N и 5 Ф у.

На рисунке показана схема трансверсального фильтра п-го порядка с делением на N в СОК .

Схема трансверсального фильтра п-го порядка с делением на N в СОК

Трансверсальный фильтр на рисунке работает следующим образом. На вход схемы поступает число X в позиционном коде. С помощью шифраторов СБ, находятся вычеты по основаниям СОК (х,). В предлагаемой схеме фильтра происходит деление числа (х) на последнее основание (Ю. Логическая схема Ь8 формирует добавку к позиционному результату деления, которая затем складывается с основным результатом в сумматоре, стоящем после дешифратора БС. Сделаем несколько пояснений.

1. Вес канала равен Оу= N / Nv.

2. Перевод результатов фильтрации, заданных вычетами, в позиционную систему счисления, осуществляемый в дешифраторе, требует использования аппарата ортогональных базисов СОК. Ортогональные базисы представляются в виде [1]

т, -П Nг

В, =-----—— для і = 1, 2, ., п, (3)

N

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

т, п N1

---^— = 1(шоё N). (4)

N

П N

Для вычисления м, введем обозначение Ф, = ——. Найдем остаток от деления

N

Ф,

8, = —-; м, определится как решение сравнения м,8, = 1(modN,).

Ni

Для проверки правильности вычисления базисов можно использовать формулу

ЕД = 1(mod П N,). (5)

i=1 i=1

3. Необходимо выбирать такое Nv, при котором а, ^ а,. Здесь ~ - коэф-

~ ]а•N [

фициент, получаемый по формуле а, = —----------------— (] [ - операция округления, дающая

N

наибольшее приближение); а, - весовой коэффициент позиционного прототипа.

4. Коэффициенты фильтра А, = M- ~ должны быть равны или кратны Nv. Тогда в последнем v-м канале не будет умножения и уменьшится число сложений, что упрощает вычисления. Из рассмотрения схемы на рисунке следует, что применение режима деления уменьшает на Rv разрядность дешифратора DC, что приводит к сокращению аппаратурных затрат ЦФ.

Литература

1. Акушский И.Я., Юдицкий Д.И. Машинная арифметика в остаточных классах. М.: Сов. радио, 1968. 440 с.

2. Амербаев В.М., Стемпковский А.Л., Широ Г.Э. Быстродействующий согласованный фильтр, построенный по модулярному принципу // Информационные технологии. 2004. № 9. С. 5-12.

3. Галанина Н.А. Анализ непозиционных цифровых фильтров по квазипозиционной модели // Вестник Чувашского университета. 2000. № 3-4. С. 116-121.

4. Галанина Н.А., Песошин В.А., Иванова Н.Н. Введение режима деления при синтезе КИХ-фильтров в модулярном коде // Информационные технологии в профессиональной деятельности и научной работе (Информационные технологии 2010): материалы Всерос. науч.-практ. конф. / Марийский гос. техн. ун-т. Йошкар-Ола, 2010. Ч. 2. С. 41-45.

5. Лебедев Е.К. Ошибки округления в спецпроцессорах непозиционной обработки сигналов // Цифровая обработка многомерных сигналов: материалы Всерос. науч. конф. Йошкар-Ола: Луч, 1996. С. 98-101.

6. Сидоркина И.Г., Егошин А.В., Шумков Д.С., Кудрин П.А. Прогнозирование сложных сигналов на основе выделения границы реализаций динамических систем // Научно-технический вестник СПб ГУ ИТМО. 2010. № 2(66). С. 49-53.

ГАЛАНИНА НАТАЛИЯ АНДРЕЕВНА - доктор технических наук, профессор кафедры математического и аппаратного обеспечения информационных систем, Чувашский государственный университет, Россия, Чебоксары (galaninacheb@mail.ru).

GALANINA NATALIYA ANDREEVNA - doctor of technical sciences, professor of Math and Hardware Information Systems Chair, Chuvash State University, Russia, Cheboksary.

ПЕСОШИН ВАЛЕРИЙ АНДРЕЕВИЧ - доктор технических наук, профессор, заведующий кафедрой компьютерных систем, Казанский национальный исследовательский технический университет, Россия, Казань (pesoshin@evm.kstu-kai.ru).

PESOSHIN vAlERIY ANDREEVICH - doctor of technical sciences, professor, head of Computer Systems Chair, Kazan National Research Technical University, Russia, Kazan.

ИВАНОВА НАДЕЖДА НИКОЛАЕВНА - кандидат технических наук, доцент кафедры математического и аппаратного обеспечения информационных систем, Чувашский государственный университет, Россия, Чебоксары (naadeezdaa@rambler.ru).

IVANOVA NADEZHDA NIKOLAEVNA - candidate of technical sciences, associate professor of Math and Hardware Information Systems Chair, Chuvash State University, Russia, Cheboksary.

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