УДК 321.732.54
НА. ГАЛАНИНА
СИНТЕЗ НЕРЕКУРСИВНЫХ ЦИФРОВЫХ ФИЛЬТРОВ В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ
Ключевые слова: система счисления в остаточных классах (СОК), комбинационные логические схемы, режим деления, индексы, антииндексы.
Разработаны структурные и функциональные схемы модулей комбинационных логических схем и цифровых нерекурсивных фильтров на их основе. Синтезированы нерекурсивные цифровые фильтры с режимом деления. Предложены схемы цифровой фильтрации сигналов с использованием таблиц индексов.
N.A. GALANINA THE DESIGN OF NONRECURSIVE DIGITAL FILTERS USING REMAIN CLASS SYSTEM
Key words: Remain class System, Combination Logical Schemes, Division Mode, Index (anti-Index).
The structural and functional schemes of combinational logic schemes modules and digital Nonrecursive Filters were designed on their basis. Nonrecursive Digital Filters were synthesized with Division Mode.
Digital Signals Filtration Schemes which are wing of the index tables were proposed.
При синтезе ЦФ в СОК следует ориентироваться на свойства непозиционных кодов. Модульные сумматоры и умножители сложны, поэтому в непозиционных устройствах используют функциональные ОЗУ и ПЗУ элементы табличной арифметики, в которых операции вычитания, сложения и умножения по модулю S-го канала NS выполняются заранее на этапе проектирования, а результаты записываются в ОЗУ или запрограммированы по отдельности в элементах на
ПЗУ, имеющих объем памяти 22Rs . При этом наблюдается небольшой коэффициент использования таблиц sS =NS/22Rs . Например, при N=13, Rs=4, 8=0,05.
Непозиционные ОУ целесообразно строить на комбинационных логических схемах (КОС). Причем с целью исключения громоздкости схемы предлагается использование одной матрицы конъюнкций, совмещающей свойства сумматора и умножителя [7]. Следует заметить, что именно матрицы конъюнкций составляют наиболее громоздкую часть модульных комбинационных схем, в то время как значительные части матриц дизъюнкций можно выполнять монтажно [2].
На рис. 1 показана структурная схема КОС, содержащая два мультиплексора MS1, MS2, матрицу конъюнкций МК, две матрицы дизъюнкций MD1 и MD2 и два регистра RG. Матрицы MD1 и MD2 собирают термы, соответствующие единицам в j-x разрядах (j = 1, S) отдельно для умножения (выход «Г») и для сложения (выход «С»).
Пример модуля функциональной схемы КОС (без MS и RG) для случая Ns=5 приведен на рис. 2.
Цифровой непозиционный фильтр на КОС (рис. 3) содержит:
- блок АЦП 1;
- блоки определения вычетов 2-1, 2-2,.. ,,2-S,.. ,,2-v;
- v цифровых (m-1) - каскадных линий задержки 3-1, 3-2, ., 3-S, ., 3-v;
- v узлов логической обработки 4-1, 4-2, ..., 4-S, ..., 4-v, каждый из которых включает в себя умножитель, регистр и (m-1) комбинационную схему КОС-1, КОС-2,. КОС-^-1);
- блок восстановления результата 5.
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
10
0
0
0
0
10
0
0
0
10
0
0
0
0
5 6
Рис. 1. Структурная схема КОС
Рис. 2. Функциональная схема модуля КОС
Рис. 3. Цифровой фильтр на КОС
Цифровой фильтр работает следующим образом. Сигналы x(kT) с выхода АЦП 1 поступают одновременно на v схем определения вычетов 2-1, 2-2,. 2-v. С выходов S-й цифровой линии задержки отсчеты вычетов x\=xs(t), x2s=xs(t+T),., X(m_i)s=xs[t+(m-1)T] взвешиваются в соответствующей КОС с
Aj = (а j) mod NS
вычетами весовых коэффициентов
j = 1, m -1 S = 1, v .
отсчет хтх взвешивается в «^-м умножителе с весом Атх. В КОС происходит также и сложение взвешенных комбинаций. С выходов (т-1)-го КОС пока-нальные результаты в непозиционном коде подаются на дешифратор 5.
Связи в цифровом фильтре организованы так, что реализована классическая схема последовательного суммирования. Она легко изменяется соответствующей перекоммутацией. Если все КОС, входящие в устройство логической обработки (УЛО), разбить на пары, то число одновременно выполняемых сложений увеличится, число тактов для реализации в УЛО алгоритма т-кратной цифровой фильтрации сократится. Матрицы МК и МБ в комбинированных операционных схемах КОС строятся по законам алгебры логики, а их синтез сравнительно просто автоматизируется. Фильтры, ориентированные на непозиционные операционные устройства, имеют меньшие аппаратные затраты [3, 4, 5, 6].
Следующим шагом на пути минимизации аппаратурных затрат является объединение непозиционного АЛУ и шифратора. На рис. 4 представлена схема «^-го канала цифрового фильтра, использующего совмещение функции шифратора, умножителя и сумматора. Фильтр работает следующим образом (описываем «^-й канал):
1) С1 = x1 =< xS1 + xS2 > mod NS; Y2 = A2 x2;Y3 = A3 x3;
2) C3 = Y2 + Y3; Y1 = A1 x^
3) C 2 = C3 + Y1.
Выход С2 является выходом S-го канала.
Выход
Рис. 4. Цифровой фильтр с минимизированным шифратором (Б-й канал)
Разработка нерекурсивных ЦФ с режимом деления. При переходе к вычислениям в модулярных кодах весовые коэффициенты округляются относительно расчетных до целого значения, что приводит к увеличению максимально возможного результата и числа каналов СОК [8]. Это дополнительно свидетельствует о необходимости введения режима деления результатов У (в том числе и промежуточных) на %. При этом возникают ошибки округления. Частное О от деления У на N можно записать в следующем виде:
О = У | м = (У^ У 2 , • • •, Уя-^ Уя , Уя ±1,-к Уу ) =
5 («1, «2,к, п8-1,0,Ы8 ,..., N5 )
=" у± у^ у^ 0 ^£±1 л*.' =
ч «1 ’ъ’"' Х-1 V NS NS у
= ^ ё1, ё 2 ,к, ёЯ-1 ,"0, ёз ±1 ,к, ё V ^
Формально деление всех цифр У, кроме 5-й, заключается в таком наращивании уі (і Ф 5) на kNi, к = 1, Ni-1 , пока уі ± kNi не разделится нацело на пі . При этом, если У не делится нацело на NS , то, изменяя его на А = (0,0,0,..., уд,... ,0), получим У (А) = У ± А . Число А = у А N INV вычисляется таблично и вычитается (при А<0) или прибавляется (при А>0) к общему результату.
Для определения ёя = 010 вводится число У *=(у1, У 2,к, yV)< N < NV
Оно называется минимальной формой У , а цифра yV - минимальным следом.
Алгоритм раскрытия неопределенности ё5 = 010 следующий [1, 8]:
1. По уі, yv и определяется 5=] (yv - У*)/N Г, где ] Г - операция округления в сторону меньшего целого.
2. Вычисляется минимальный след частного: g* = gу - 5 .
3. Определяется сумма Е = (т* + т* + к + т*-1 + т*+1 + к + m*-1)modN . Цифры т* находятся последовательно через минимальные псевдоорто-
гональные числа М(аі) = (0,0,к,аі = 1,...,0,т*), где т* - минимальный след числа М , когда все его позиции, кроме і-й, равны нулю, но аі = 1.
4. Определяется gф = (g * - Е)mod . По gф находится цифра gs, для которой разность (/* - gф) минимальна.
Алгоритм деления можно существенно упростить, если делитель равен Nv . В этом случае логическими схемами ЛС формируется добавка в позиционный результат сумматора в зависимости от цифры ~ в у-м канале:
^ •
2 ’
А =
если к, <-
если к, <-
N.
2
Во всех остальных каналах с номерами S < V осуществляется формальное деление, учитываемое при анализе таблиц истинности синтезируемых поканаль-ных АЛУ. При этом деление на ноль отсутствует, так как S Ф V и N5 < NV.
На рис. 5 показана схема нерекурсивного фильтра второго порядка с делением на Nv [8], из рассмотрения которой следует, что аппаратные затраты ЦФ с делением меньше, чем у ЦФ без деления, так как существенно меньше дешифратор ДІІІ- разрядность которого на меньше, чем в схеме ЦФ без деления.
Рис. 5. Нерекурсивный фильтр второго порядка с делением
Устройство ЦФ-СОК с индексами. Одним из основных требований, предъявляемых к синтезу как рекурсивных, так и нерекурсивных фильтров, является требование обеспечения необходимого быстродействия. В рассмотренном выше непозиционном фильтре на КОС (рис. 3) скорость обработки сигналов недостаточна из-за наличия в схеме умножителей. Одним из возможных способов решения этой проблемы является использование теории индексов и, как следствие, индексных схем ЦФ.
Известно [2], что в позиционных системах счисления для исключения операций умножения используется ряд математических приемов, связанных с вычислением логарифмов. В случае же применения модулярной арифметики их использование приводит к существенным ошибкам, и поэтому предлагается альтернативное решение - проведение вычислений с помощью таблиц индексов.
В модулярной арифметике за индекс J целого числа C принимается такое целое число y = J(Q, которое является решением уравнения вида
qy = CmodNS , (1)
где q - первообразный корень модуля NS (или основание индекса), т.е. такой корень с=q сравнения сNs-1 = 1mod NS, при котором это сравнение имеет единственное решение.
Особенность индексов роднит их с логарифмами и позволяет заменить умножение чисел сложением их индексов с последующим переходом от индекса произведения к самому произведению. Этот переход от индекса к фактическому числу осуществляется с помощью антииндексов. Их находят из тех же таблиц. Таблицы индексов (антииндексов) записываются в ПЗУ. Отличиями таких схем ЦФ, одна из которых приведена на рис. 6, являются замена умножителей сумматорами и перекодирование шифраторов (дешифраторов) в связи с введением индексов J и антииндексов J. Кроме того, в предлагаемых схемах уменьшено число каналов СОК, хотя модули NS могут принимать большие значения.
С выхода АЦП R-разрядные числа x(nT) поступают на v блоков определения индексов входного сигнала, которые реализованы на ПЗУ (ПЗУ-1, ПЗУ-2, ..., ПЗУ-S, ..., ПЗУ- к). Для выбранных модулей NS (их число равно v) значения индексов вычисляются заранее, кроме того, предварительно определяются первообразные корни (или основания индексов) qS, S = 1, v . Разрядность индексов чисел в каждой параллельной ветви ЦФ RS =]log2 NS[. Индексы чисел в S-м канале J[x(nT)] , J[x(nT + T)]ns , k , J[x(nT + mT)]^ поступают на входы m
дополнительных сумматоров SM-S-1, SM-S-2, ..., SM-S-m, где складываются с индексами коэффициентов фильтрации J[а:] ,J[а2] ,...,J[ат] . Получен-
ные числа J A) , имеющие разрядность RS , поступают на входы m блоков определения антииндексов J-1: ПЗУ-S-!, ПЗУ-$-2, ..., ПЗУ-S-m, в которых хранятся записанные на этапе проектирования таблицы антииндексов для заданных NS и qS . Антииндексы J-1 (ASi) складываются в основном сумматоре по модулю NS , образуя вычет rS (nT) результатов фильтрации в S-м канале.
- АЦП
х(пТ) К
ПЗУ-1
Определитель
индексов
1[х(пТ)\щ
ЦЛЗ-1
J(am)Nl
ЭМ-1 (дополнительный)
I
I
ПЗУ-1 (определитель антииндексов)
ЭМ-1
(основной)
Тт_(гіТ)
ПЗУ-2
Определитель
^х(пТ)]и
ЦЛЗ-2
./(«2),
ЭМ-2 (дополнительный)
ЭМ-2
1 1 1 •
• (основной)
ПЗУ-2 (определитель антииндексов)
Г2(пТ)
/[х(пГ)\к
ПЗУ-5
Определитель
индексов
/(al)N
тг
/(a2)N
т-1
т-1
^/(am)N
ЭМ-5-1 ЭМ-5-2 ЭМ-5-т
(дополни- (дополни- (дополни-
тельный) тельный) тельный)
ПЗУ-5-1
(определитель
антииндексов)
ПЗУ-5-2
(определитель
антииндексов)
ПЗУ-5-т
(определитель
антииндексов)
/( )
/ (45 2 )
/ (4,1)
ЭМ-5
(основной)
Г&Т
Ц
ПЗУ-v
Определитель
J(a.\)N
ЦЛЗ-v
/(^А
J(am)N
ЭМ^ (дополнительный)
ЭМ-у
1 1 1 •
• (основной)
ПЗУ -V (определитель антииндексов)
ЫпТ)
Восста-
новление
результата
у(п1)
Рис. 6. Непозиционный индексный ЦФ Вычеты г, (пТ) позволяют восстановить общий результат У (пТ) в СОК по
V
модулю N = П N, > Утах , где Утах - максимально возможный результат по за-
5=1
данному алгоритму цифровой фильтрации. Схема восстановления результата переводит числа в позиционную систему счисления и является выходным блоком ЦФ.
В результате проведенного автором исследования реализации рассмотренной схемы индексного ЦФ для различных вариантов элементной базы были получены практические доказательства теоретических предположений [3].
Литература
1. Акушский И.Я. Машинная арифметика в остаточных классах / И.Я. Акушский, Д.И. Юдицкий. М.: Сов. радио, 1968. 440 с.
2. Алексенко А.Г. Микросхемотехника: учеб. пособие для вузов / А.Г. Алексенко, И.И. Шагурин. - М.: Радио и связь, 1982. - 416 с.
3. Галанина Н.А. Методы синтеза цифровых фильтров в системе остаточных классов / Н.А. Галанина, Е.К. Лебедев, О.Е. Давыдов, Г.Е. Егоров // Вестник Чувашского университета. 2000. № 3-4.
4. Галанина Н.А. Особенности синтеза цифровых фильтров в СОК / Н.А. Галанина // Информационные технологии в электротехнике и электроэнергетике: материалы III Всерос. на-уч.-практ. конф. Чебоксары: Изд-во Чуваш. ун-та, 2000.
5. Галанина Н.А. Реализация блоков шифрации и дешифрации сигналов в непозиционных устройствах ЦОС / Н.А. Галанина, Н.Н. Иванова, А.А. Иванов // Вестник Чувашского университета. 2007. № 2. С. 166-173.
6. Галанина Н.А. Синтез оптимальных непозиционных фильтров при аппроксимации сигналов полициклическими марковскими цепями 2-го рода / Н.А. Галанина, Г.Е. Егоров, Н.Н. Иванова // Динамика нелинейных динамических систем: материалы IV Всерос. науч.-техн. конф. Чебоксары: Изд-во Чуваш. ун-та, 2001. С. 219-222.
7. Лебедев Е.К. Методы синтеза непозиционных нерекурсивных и рекурсивных фильтров / Е.К. Лебедев, А.А. Бормотин, Д.В. Федоров // Информационные технологии в электронике и электроэнергетике: материалы Всерос. науч.-практ. конф. - Чебоксары: Изд-во Чуваш. унта. 1996. С. 72-74.
8. Лебедев Е.К. Реализация алгоритмов деления в коммутативном кольце целых чисел для спецпроцессоров в СОК / Е.К. Лебедев, М.Ю. Галютин // 100 лет радио: сб. науч. трудов. Йошкар-Ола, 1995. С. 112-116.
ГАЛАНИНА НАТАЛИЯ АНДРЕЕВНА - кандидат технических наук, доцент кафедры математического и аппаратного обеспечения информационных систем, Чувашский государственный университет, Россия, Чебоксары ([email protected]).
GALANINA NATALIYA ANDREEVNA - candidate of technical sciences, associate professor of math and hardware information systems char, Chuvash State University, Russia, Cheboksary.