(21)4329786/24-24
(22)17.11.87
(46) 15.08.89.БГОЛ. № 30 (71 ) Киевский политехнический институт им„50-летия Великой Октябрьской социалистической революции (72) ЮоС.Каневский и Л.М Логинова (53) 681„32 (088.8)
(56)Авторское свидетельство СССР ;№ 1241258, кл. G 06 F 15/353, 1986.,
Авторское свидетельство СССР № 1387014, кл. G 06 F 15/353, 1987.
Х54) ЦИФРОВОЙ ФИЛЬТР
(57)Изобретение относится к вычис-г лительной технике и может быть использовано в системах сейсмических;
акустических, видео- и других сигналов. Цель изобретения - расширение области применения за счет выполнения многомерной фильтрации. Это достигается за счет того, что в состав цифрового фильтра входят N/4 (N - длина импульсной характеристики) вы- чи-слительных модулей и блок управления, при -этом каждый вычислительный модуль содержит входной и выходной регистры, два регистра, три буферных регистра, два блока памяти, два умножителя, сумматор произведений,выходной сумматор, два сумматора промежуточных результатов, коммутатор,триггер, элемент И с соответствующими связями между узлами устройства«4 ил,
(Л
название | год | авторы | номер документа |
---|---|---|---|
Цифровой фильтр | 1986 |
|
SU1357976A1 |
Устройство для цифровой фильтрации | 1985 |
|
SU1325511A1 |
Устройство для матричных операций | 1989 |
|
SU1777154A1 |
Устройство для цифровой фильтрации | 1984 |
|
SU1211748A1 |
Систолический процессор для вычисления полиномиальных функций | 1988 |
|
SU1608689A1 |
Цифровой фильтр | 1988 |
|
SU1555826A1 |
Цифровой фильтр | 1986 |
|
SU1387015A1 |
Устройство для быстрого преобразования Фурье | 1984 |
|
SU1206802A1 |
Устройство для операций над матрицами | 1988 |
|
SU1575205A1 |
Процессор для цифровой обработки сигналов | 1985 |
|
SU1257662A1 |
Изобретение относится к вычислительной технике и может быть использовано в системах сейсмических, акустических, видео- и других сигналов. Цель изобретения - расширение области применения за счет выполнения многомерной фильтрации. Это достигается за счет того, что в состав цифрового фильтра входят N/4 (N - длина импульсной характеристики вычислительных модулей) и блок управления, при этом каждый вычислительный модуль содержит входной и выходной регистры, два регистра, три буферных регистра, два блока памяти, два умножителя, сумматор произведений, выходной сумматор, два сумматора промежуточных результатов, коммутатор, триггер, элемент И с соответствующими связями между узлами устройства. 4 ил.
Изобретение относится к вычисли- - тельной технике и может быть использовано в системах сейсмических,акустических, видео- и других сигналов
Цель изобретения - расширение области применения цифрового фильтра за счет вьтолнеНия многомерной фильтрации.
На фиг.1 представлена схема циф- ровт)го фильтра; на фиг. 2 - схема вычислительного модуля; на фиг.З - схема блока управления; на фиг.4 - временные диаграммыо
Цифровой фильтр (фиг.1) содержит N/4 вычислительных модулей Го1-1аИ/4 (N - длина импульсной характеристики), каждый из которых включает входной регистр 2.1 (i 1, N/4), информационный вход 3 цифрового фильтра.
регистры 4.1 и 5oi, буферные регистры 6ai и 7oi, блоки 8oi и 9 памяти, умножители lOoi и П, сумматор 12.1 произведений, выходной сумматор 3oi, выходной регистр 14oi, сумматоры 15.i и 16Л промежуточных результатов, буферный регистр 17 о i, коммутатор 18.1, триггер 19oi, элемент И 20.1, информационный вход 21, управляющий вход 22, тактовые входы 23.1 и 24.1, адресные входы 25.1 и 26.1, регистр 27о 1 адреса, коммутатор 28э адресный выход 29, блок 30 управления, адресный выход 31 и тактовые выходы 32-35,
Блок 30 управления (фиГоЗ) образуют генератор 36 тактовых иьптуль- сов, счетчик 37, узел 38 постоянной
СП
00 00
3150
памяти, коммутатор 39, счетчик 40 и элемент НЕ 41 о На фиГоЗ обозначен вход 42 выбора режима
Устройство работает в двух режимах, которые задаются с входа 42 выбора режима работы блока 30 управления о Нулевое значение на входе 42 соответствует первому режиму - умно
жение матрицы, а единичное - второму режиму - фильтрации,
В общем случае при умножении матрицы на матрицу устройство вычисляет выражения в виде
, it
С А В
к
где с ,е - ZLaij Ъ J4,
А - матрица размерностью В - матрица размерностью К х L; С - матрица размерностью М х L;
J 1.К, 1 1,L.
Рассмотрим случай умножения квадратных матриц, т.е К L М N/2 (при N 8, К L М 4).
, С целью упрощения описания работы устройства будем считать, что прием информации во все регистры и тригге- ры, переключение: счетчиков осущест- вляется положительным перепадом синхроимпульса, блоки Boi и 9oi памяти имеют по два адресных входа,причем на первый адресный вход подается адрес записи, а на-второй - адрес чте- ния, режиму чтения из этих блоков памяти соответствует единичное значение на управляющем входе, а режиму -.- записи - единичное значение на з прав .ляющем входе, можно одновременно производить запись и чтение; сумматоры ISoi и 16oi работают в двз режимах: суммирование (нулевое значение на управляющем входе) и пропуск операнда по второму входу (единичное значение на управляющем входе),сумма торы 13„1 работают только в режиме суммирования; на выходе коммутаторов 28 и 18oi по нулевому значению на управляющем входе появляется информация с второго входа, а по единичному значению - с первого входа.
Предположим, что после вьтолне- ния умножения С А В необходимо выполнить следующую операцию D A-G В этом случае во время вычисления матрицы С желательно обеспечить непрерывную подзагрузку элементов матрицы G в блоки В Л и 9о1 памяти с
целью минимизации последуюших простоев оборудования модулей о
Пусть в исходном состоянии счет- чик 40 установлен в нуль, счетчик 37 - в 01 , в регистре 2,2 хранится значение а„ , а в регистре 2,1 - зна
«
чение а,2 о Блоки В, 8„2, 9.1 и 9.2 памяти заполнены следующим образом: в блоке 8.1 хранятся элементы Ъ, ,
4г - 41
г-г Ъ-гз
Ь,я ,Ъ
44 м;
в блоке 9о1 - Ъ в блоке 8о2 - Ъ
з г
в блоке 9о2 - Ъ„ ,b,j, ,
.т-; И записи А,„,
tJ - и ° Адреса чтения А,
в блоки Boi и 9oi памяти формируются на счетчиках 37 и 40 и на коммутаторе 30„4 блока ЗОо Адрес чтения из блоков В„2 и 9о2 памяти поступает с выхода 31 блока 30 на вход регистра 27о2 адреса С выхода этого регистра адрес поступает на вторые адресные входы блоков 8.2 и памяти и на пятый выход модуля 1о2, т.е на вход регистра 27.1 адреса Таким образом, чтение из блоков памяти модулей 1 и происходит по адресам, отличающимся на единицу.
В первом такте на вход 3 устройства поступает значение элемента матрицы а,з а на четвертом входе модуля присутствует уровень логической единицы Триггер по синхроимпульсу, поступающему на вход 22.2 модуля 1.2, устанавливается в единичное состояние. На элементе И 20о 2 в этом такте формируется синхроимпульс приема в регистры 4.2 и 5„2 соответственно элементов матрицы а и а, о Указанные значения поступают на вторые входь умножителей и По2, на первые входы которых поступают считанные по адресу
МТ4
000 из блоков и памяти соответственно значения Ъ и
li
В этом же
произведения а ,, Ъ
такте полученные
3(, суммируются на сумматоре Полученная сумма а,|Ъ(, + , поступает на первый вход сумматора 12.2, на второй вход которого с выхода коммутатора 28 поступает уровень логического нуля (нулевое значение на управляющем входе коммутатора 28) В этом же такте в регистры 2 и 2.2 принимаются соответственно значения а ,. и о Во втором такте полученное в сумматоре 13,2 значение а, Ъ, +
+ а ,j. hj,. принимается в регистр 1Ао2 и поступает на второй вход сумматора 13,1 На вход устройства поступает значение элемента матрицы я, В этом же такте триггер 19,1 устанавливается в единичное состояние, а триггер 19о2 - в нулевое (в соответствии с нулевым значением на выходе 35 блока 30).
Таким образом, в этом такте происходит прием значений я и а ответственно в регистры 4,1 и 5.1 и в регистры 2о1 и 2„2„ Прием информамирование следующих значении: в моции в регистры и 5.2 блокируется 15 В модулях I и происходит djop- нулевьм значением на выходе триггера 19о2, и в этих регистрах сохраняются соответственно значения а и а .
3
а
(
+ a,
дуле 1.1 - с
+ a,jb3i модуле 1.2 О (( И -12 14 20 Состояние регистров 4о1, 5о1 4о2 и 5о2 в этом такте не меняется В регистры 2о1 и 2о2 принимаются значения a,j и а2, .
Значения я , а с выходов регистров 4,1 и 5.1 поступают на вторые входы умножителей 10 1 и 11 „1, на первые входы которых поступают считанные из блоков 8о1 и 9о1 памяти соответственно значения Ъ и bj, (а 000) о В Э.ТОМ же такте полученные произведения и а Ъ-з поступают на сумматор 12о1. Полученная сумма а 1 Ъ, + , поступает на nepBbtfi вход сумматора 13 „ 1, на второй вход которого поступает сумма а Ь + ., . На выходе сумматора 13о1 получаем первое значение результирующей матрицы с, а,Ь„ +
+ а,( +
+ )
произведения: а, ния b 2J и Ь,
В этом же такте в модуле 1.2 происходит формирование следующей суммы
+ ,значе- считываются соответственно из блоков 8 с, 2 и 9 о 2 памяти по адресу А, 001 и поступают на первые входы умножителей 10.2 и 11.2 С выхода регистров 4.2 и 5о2 значения а „ , а поступают на вторые входы умножителей. Полученные произведения а, и a, поступают на входы сумматора 12о2о Полученная сумма поступает на вход сумматора 13о2, где складывается с нулем:
ti 0°
В третьем такте значение суммы
( ч4 42.2.1 принимается в регистр 14о2, а. в регистр 14.1 принимается полученное в предыдущем такте значение с
1
которое поступает
на выход устройства
В.этом же такте происходит формирование следующих, сумм аналогично вычислениям в предыдущих тактах: в модуле 1о1 - с 2. - я, Ь«2. + ai4bii+
010886
+ + в модуле 1„2 а„Ъ„
+ a,,ib.j3.
На вход уст ройства поступает значение aj „ Состояние триггеров 19.1 и 19р2 не изменяется, поэтому не вырабатываются синхроимпульсы приема информации в регистры , 5о1, 4.2 и 5о2 и их состояние не меняется 10 В регистры 2о1 и 2„2 принимаются соответственно значения а и а. В четвертом такте на вьтход устройства поступает сформированное значение c,j , а на вход 3 - значение ,
мирование следующих значении: в моВ модулях I и происходит djop-
5 В модулях I и происходит djop-
3
а
(
+ a,
дуле 1.1 - с
+ a,jb3i модуле 1.2 О (( И -12 14 0 Состояние регистров 4о1, 5о1 4о2 и 5о2 в этом такте не меняется В регистры 2о1 и 2о2 принимаются значения a,j и а2, .
В пятом такте работа устройства 5 повторяется аналогично первому такту.
Триггер 19.2 устанавливается в . . единичное состояние, в результате чего вырабатывается синхроимпульс приема в регистры и 5о2 соответствена, о
В модулях устройства в этом такте формируются следуюгхие значения: в модуле 1 Л - с ,4
0 но значений а и
+ а,,Ь + .,
а,,
+ а.,Ъу +
В: модуле 1.2 5 21 II
+ а„-Ь
22 - Ц
Аналогичным образом во всех последующих тактах до семнадцатого формируются все остальные элементы с( результирующей матрицы
0 В устройстве одновременно с выполнением вычислений осуществляется под- загрузка элементов матрицы G для следующего произведения. Подзагрузка происходит через следующие элементы
5 устройства: сумматоры 15c.i и 16„i, регистры 6oi и , коммутатор IBoio В этом режиме на сумматорах 15oi и происходит пропуск операндов по второму входу (единичное
Q значение на втором управляющем входе 23оi -модуля Igi) Элементы требуемой матрицы gjg по столбцам подаются на второй вход 21 цифрового фильтра и затем в каждом такте поочередно
е принимаются в регистры 6.1, 7о1, 6о2 и 7,2, С выхода сумматора 16 элемент матрицы поступает на тре- .тий вход модуля 1.2 через коммутатор 18,Id Загрузка одного столбца матрицы Гг происходит за 4 такта следующим образом: в первом такте элемент матрицы RII принимается в регистр 6.1о
Во втором такте в регистры 6,1 и 7о1 принимаются соответственно значения g, и g „ .
В третьем такте элементы g „ принимаются соответственно в ре гистры 6с1, 7с1 и 6.2о В четвертом такте, кроме приема элементов . gi, вз Sio 6и в регистры 6о1, 7о1, 6.2 и 7о2, происходит запись этих же значений в блоки 8,1, 9о1, 8о2 и 9о2 памяти по адресу , 100
Аналогичным образом элементы остальных столбцов в каждом четвертом такте записьшаются в соответствующие блоки памяти по следующим адресам:
101, ПО, П1о Таким образом,чтение и запись элементов матрицы происходит из двух разных областей блоков 8oi к 9oi памяти
Устройство в режиме фильтрации работает аналогично известному устройству
При реализации процедуры цифровой фильтрации устройство должно вы- числять выражение вида
Y(n) W(i)x(n-i+l),
где W(i) - коэффициенты импульсной характеристики цифрового фильтра;
X(i) - входные отсчеты;
У(п) - выходные отсчеты;
IT - количество коэффициентов импульсной характеристики цифрового фильтрао
Рассмотрим пример работы фильтра при N 8 В этом случае число модулей равно N/4 2о При работе в режиме фильтрации на первые входы умножителей lOoi и 11,i поступают с выходов блоков 8oi и 9oi памяти соответственно коэффициенты h и i-t Значения этих коэффициентов в исходном состоянии в соответствующих блоках памяти: W(4) - в блоке W(3) - в блоке 9,1, W(2) - в блоке 8о2, W(l) - в блоке 9о2с
На вход устройства 21 подается в этом режиме уровень логического нуля Все регистры в исходном состоянии установлены в нуль Коммутатор 28 подключает третий выход модуля 1,2 к второму входу этого же модуля
о
5
0
5
0
5
В первом такте в регистры 4о1 и 2о1 принимается входной отсчет X(l), который поступил на вход 3 цифрового фильтра В умножителе формируется произведение X(l)w(4), которое через сумматор 12 поступает в выходной сумматор 13.1 и в следующий такт принимается в выходной регистр Одновременно произведение X(l)W(4) поступает на первый вхоД сумматора , суммируется с нулем и поступает на вход регистра .
Во втором такте в регистры 4 и 2 принимается входной отсчет Х(2), а в регистр 5 - X(l) В умножителях 10 и llol формируются соответственно произведения x(2)W(4) и X(l)w(3) На выходе сумматора 12о1 получаем сумму x(2)w(4) + X(l)w(3), которая суммируется с нулем в сумматоре 13 и поступает на вход регистра В этом же такте в регистры 14,1 и 6,1 принимается сумма X(l)w(4)+0 Одновременно на первый вход модуля 1 о 2 поступает входной отсчет X(l), который принимается в регистр 2,2 В умножителе формируется произведение X(l) х W(2), которое через сумматор 12,2 поступает на вход выходного регистра 14,2
В третьем такте происходит формирование, следующих произведений и сумм: в модуле .умножитель Ю - X( 3)W(4); умножитель 11 - X(2)w(3); сумматор 12 - X(3)w(4) + X(2)W(3); 13,1 - X(3)W(4) + X(2)W(3) + + X(1)W(2),
В регистры , 6 и 7,1 принимаются соответственно значения X(2)W(4) + X(1)W(3); X(2)W(4); X(1)W(3),
В модуле 1,2: умножитель 10.2 - .X(2)W(2); умножитель - X()W(l); сумматор 12,2 - X(2)W(2) + X(l)W(.l).
В этом же такте сумма X(2)W(4) + + X(l)W(3) принимается в регистр 14о1 и поступает на выход устройства
Аналогичным образом на этом выходе устройства в следующих тактах формируются следуюпще значения: 4-й такт - X(3)W(4) + X(2)W(3) + + X(1)W(2); 5-й такт - X(4)W(4) + + X(3)W(3) + X(2)W(2) + X(1)W(1); 6-й такт - X(5)W(4) +X(4)W(3) + + X(3)W(2) + X(2)W(l); 7-й такт - X(6)W(4) + X(5)W(3) + X(4)W(2) + + X(3)W(I) + X(2)W(l) + X(1) W(2); 8-Й такт - X (7)W(4) + X(6)W(3) +
+ X(5)W(2) + XC4)W(1) + X(3)W(1) + + X(2)W(3) + X(1)W(3); 9-Й такт - X(8)- W(4) + X(7)W(3) + X(6)W(2) + + X(5)W(1) + X(4) W(l) + X(3)W(2) + + X(2)W(3) + X(1)W(1).
Таким образом, за восемь тактов работы устройства происходит формирование выходного отсчета У(п) В дальнейшем устройство работает аналогично описанному.
.Форм ула изобретения
Цифровой фильтр, содержащий блок управления, ТТ/4 вьгаи ел и тельных модулей (N - длина импульсной характеристики), причем первый выход (j-1)- го вычислительного модуля (,N/4) подключен к первому информационному входу j-ro вычислительного модуля, второй выход которого подключен к второму информационному входу (j-1)- го вычислительного модуля, а первый и третий информационные входы перво- го вычислительного модуля являются соответственно первым и вторым информационными входами цифрового фильтра, второй выход первого модуля является информационным выходом устройства, при этом каждьй вьгаисли- тельный модуль содержит входной и выходной регистры, два умножителя, сумматор произведений, выходной сумматор, два сумматора промежуточных результатов и три буферных регистра, причем информационный вход входного регистра является первым входом вычислительного модуля,первым
выходом которого является выход вход- 40 ному входу J-ro вычислительного модуного регистра, выходы первого и второго умножителей подключены соответственно к первому и второму входам сумматора произведений, выход которого подключен к первому входу выход ного сумматора, второй вход которого является вторым информационньгм входом вычислительного модуля, выход выходного сумматора подключен к информационному входу выходного регистра, выход которого является вторым выходом вьиислительного модуля, выход первого умножителя подключен к первому входу первого сумматора проме-
жуточных результатов, второй вход ко- третьего буферного регистра, выход
торого является третьим информацион- Зо.1м входом вычислительцого модуля, выход.первого сумматора промежуточных результатов подключен к информавторого сумматора промежуточных результатов подключен к второму инфор мационному входу коммутатора, выход которого является обратным выходом
0
5
0
5
0
5
ционному входу первого буферного регистра, выход которого подключен к информационному входу второго буферного регистра, выход второго умножителя подключен к первому в ходу второго сумматора промежуточных результатов, второй вход которого подключен к выходу второго буферного регистра, выход второго сумматора промежуточных результатов подключен к информационному входу третьего буферного регистра, а первый тактовый выход блока управления подключен к первому тактовому входу i-го вычисли тельного модуля, отличающий- с я тем, что, с целью распп-грения области применения за счет выполнения многомерной фильтрации, в него введен коммутатор, первый информационный вход которого подключен к третьему выходу Ж/4-го вычислительного модуля, второй информационный вход которого подключен к выходу коммутатора, второй информационный вход которого является входом задания логического нуля фильтра, первый адресный выход блока управления подключен к первому адресному входу 1-го (i 1, N/4) вычислительного модуля, второй, третий и четвертый тактовые выходы блока управления подключены к соответствзтощим одноименным тактовьЫ входам i-ro вычислительного модуля, управляющий вход коммутатора подключен к второму тактовому выходу блока управления, третий выход (j-l)-го вычислительного модуля подключен к третьему информацион-
5
0
ля, четвертый выход которого подключен к четвертому тактовому входу (j-l)-ro вычислительного модуля,второй адресный вход К/4-го вычислительного модуля подключен к второму адресному выходу блока управления, а пятый выход J-ro вычислительного модуля подключен к второму адресному входу J-ro вычислительного модуля, причем в 1-й вычислительный модуль введены регистр адреса, два регистра, два блока памяти, триггер,элемент И и коммутатор, первый информационный вход которого подключен к выходу
второго сумматора промежуточных результатов подключен к второму информационному входу коммутатора, выход которого является обратным выходом
11
вычислительного модуля, выходы первого и второго буферных регистров подключены, к информационным входам соответственно первого и второго блоков памяти, выходы которых подклю че- ны к первым входам соответственно первого и второго умножителей,вторые входы которых подключены к выходам соответственно первого и второго регистров, информационный вход первого регистра подключен к первому информационному входу вычислительного модуля, выход входного регистра - к информационному входу второго регистра, первым адресным входом вычисли тельного модуля являются соединенные первые адресные входы первого и второго блоков памяти, вторые адресные входы которых со.единены с информационным входом регистра адреса и являются вторым адресньм входом вычисли- модуля, четвертым тактовым.
191
-
108812
входом которого является информационный вход триггера, выход которого является четвертым выходом вычисли- - тельного модуля и подключен к первому входу элемента И, выход которого подключен к тактовым входам первого и второго регистров, выход регистра адреса является пятым выходом вычис10 лительного модуля, вторым тактовым входом которого являются соединение второй вход элемента И, тактовые входы триггера, входного и выходного регистров, первого, второго и третье15 го буферньрс регистров, входы синхронизации первого и второго сумматоров промежуточных результатов, управляющий вход коммутатора соединены и являются первым входом вычислительного
20 модуля, третьим тактовым входом которого являются соединенные входы разрешения записи считывания первого и второго блоков памятио
1
fCy fC|D г:
in
36 h
f
Фи8.
Авторы
Даты
1989-08-15—Публикация
1987-11-17—Подача