Устройство для вычисления свертки
Изобретение относится к вычислительной технике и может быть использовано в высокопроизводительных специализированных вычислительных машинах и устройствах обработки сигналов для вычисления свертки (фильтрации с бесконечной импульсной характеристикой). Цель изобретения - сокращение аппаратурных затрат. Поставленная цель достигается тем, что устройство содержит матрицу lx max(Po, Pi) вычислительных модулей, где I - размерность выходного вектора YI (i - 0,1-1), Ро и Pi -соответственно размерности векторов весовых коэффициентов а) (I) 0, Ро-1) и n (I 3i, PI), причем каждый вычислительный модуль содержит семь регистров, умножитель , сумматор, два триггера, четыре группы элементов И и группу элементов ИЛИ. В основу работы устройства положена параллельно-поточная организация вычислений . 2 ил., 3 табл.
союз соВетских
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (я)5 G 06 F 15/347
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4688858/24 (22) 10.05.89 (46) 23.09.91. Бюл. М 35 (72) В.П. Якуш, Н,А. Лиходед, В.В. Косьянчук и П.И. Соболевский (53) 681.3 (088.8) (56) Кунг Х.Т. Вычисления на СБИС. Системы параллельной обработки, — M.: Мир, 1985, с, 348, рис. 16.8.
Авторское свидетельство СССР
l4 1587539, кл, G 06 F 15/347, 26.06.88. (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ
СВЕРТКИ (57) Изобретение относится к вычислительной технике и может быть использовано в высокопроизводительных специализированных вычислительных машинах и устройИзобретение относится к вычислительной технике и может быть использовано в высокопроизводительных специализированных вычислительных машинах и устройствах обработки сигналов для вычисления свертки (фильтрации с бесконечной импульсной характеристикой).
Целью изобретения является сокращение аппаратурных затрат.
На фиг. 1 приведена структурная схема устройства для вычисления свертки (I = 3, Р0
=3, Р1=2); на фиг.2 — функциональная схема вычислительного модуля (I, Р0 и P> — соответственно размерности вектора выходных отсчетов У, векторов весовых коэффициентови3 и г).
„., ЯЦ„„1679502 А1 ствах обработки сигналов для вычисления свертки (фильтрации с бесконечной импульсной характеристикой). Цель изобретения — сокращение аппаратурных затрат.
Поставленная цель достигается тем, что устройство содержит матрицу 4 п ах(Ро, Pi) вычислительных модулей, где I - размерность выходного вектора Yi (i =-О, 1-1), Ро и Р1 — соответственно размерности векторов весовых коэффициентов + (I) = О, Ро-1) и г (I = 31, Р1), причем каждый вычислительный модуль содержит семь регистров, умножитель, сумматор, два триггера, четыре группы элементов И и группу элементов
ИЛИ. В основу работы устройства положена параллельно — поточная организация вычислений. 2 ил., 3 табл, Устройство для вычисления свертки содержит первую группу информационных входов 1, вторую группу информационных входов 2, третью группу информационных входов 3, настроечный вход 4i (I = 1, тах(Ра, Р1), синхровход 5, вычислительные модули
6» (j = 1, 1), регистры71 (= 1, 1), группы элементов ИЛИ 81 (j = 1, I) и группу выходов
9)0=1, I).
Вычислительный модуль 6 содержит первый информационный вход 10, второй информационный вход 11, третий информационный вход 12, четвертый информационный вход 13, настроечный вход 14, синхровход 15, регистры 16 — 22, умножитель 23, сумматор 24, триггеры 25 и 26, группы элементов И 27 — 30, группу эле ;онтов
1679502
ИЛИ 31, первый информационный выход 32, второй информационный выход 33, третий информационный выход 34, четвертый информационный выход 35 и настроечный выход 36.
Свертка (фильтрация с бесконечной импульсной характеристикой) определяется формулой
P) — 1
Yl = g copxl +, Гр Yl — р, !==О,I — 1 (1) р=О р =1
10
Разобьем задачу(1) на две подзадачи ро
Zl= а Xl — . (2) р=о
Р1
Y, =Zl+g r, Yl— (3)
Р=1
Представим подзадачи (2) и (3) в виде 20 следующих рекуррентных соотношений пои вычислении значений У для! = () И, Zl
У(о) = 7 Yl(p) = У (р 1J+ г У Yl = Yl(p р = 1, Р1, которые положены в основу работы 25 устройства.
При описании работы устройства в обозначении Z ) индекс i в скобках указыва ) ет номер рекуррентного шага, а в обозначении Z индекс! без скобок — номер такта 30 работы устройства.
Рассмотрим работу вычислительного модуля 6. Вычислительный модуль 6 работает в двух режимах, Первый режим работы задается единичным разрядом, котбрый по- 35 дается на вход 14 и устанавливает триггер
25 в единичное состояние. При этом на входы 10, 11 и 12 подаются соответственно значения У, Х и со . Значение Y записывается в регистр 16, с выхода которого через 40 открытую группу элементов И 27 (с прямого выхода триггера 25 на первый вход группы элементов И 27 подается единичный сигнал), группу элементов ИЛИ 31 подается на вход сумматора 24. Значение Х записывает- 45 ся в регистр 17, с выхода которого подается на вход умножителя 23. Значение азаписывается в регистр 19 и подается на вход умножителя 23, на выходе которого формируется значение вХ. 50
На выходе сумматора 24 формируется значение У = У+ вХ, которое через откры1 тую группу элементов И 28 подается на выход 34 вычислительного модуля. Значение Х подается на выход 33 с задержкой на два 55 такта регистрами 18 и 20. Значение а подается на выход 34 с задержкой на один такт регистром 21, Настроечный сигнал задерживается также на один такт триггером 26.
Второй режим работы задается нулевым настроечным разрядом, который устанавливает триггер 25 в нулевое состояние. При этом группы элементов И 29 и 30 открываются, на входы 11, 12 и 13 подаются соответственно значения Y, r и У, которые записываются соответственно в регистры 17, 19 и 22. На выходе умножителя 23 формируется значение гУ, а на выходе сумматора 24 — значение
Y = У + rY, которое подается через группу элементов И 29 на выход 35 вычислительного модуля. Значение Y задерживается на два такта регистрами 18 и 20, а значение r задерживается на один такт регистром 21;
Рассмотрим работу устройства для 1 =
Р = 3 и Р1= 2 (фиг. 1). Состояние регистров и триггеров вычислительных модулей устройства приведены в табл. 1, 2 и 3. Особенностью работы устройства является то, что только с элементами r подаются нулевые управляющие разряды. Кроме того, если Ро>
>Р1, то на входы 31, Çz, ..., ЗРО - P1 подаются нулевые значения вместе с нулевыми настроечными разрядами соответственно в моменты времени Ро, Ро+1, ..., Ро+(Ро+ Р1-1).
Если Ро < Р1, то на входы 31, Зг, ..., Зр1 - ро подаются нулевые значения с единичным настроечным разрядом в моменты времени
Ро, Ро+1, ..., Ро+(Р1- Ро-1). В данном случае
Ро = 3, P1 = 2 (Ро > P1), и на вход 31 подается на третьем такте (Po = 3) нулевое значение, а на вход 41 — нулевой разряд.
Рассмотрим формирование значения
Уо. На нулевом такте на вход 2з1 подается элемент Хо, на вход Зз — элемент ab, а на вход 4з — единичный разряд. При этом в вычислительном м 1 уле 6з1 формируется значение Zo ) = Zo + йъХо. На первом такте на вход 2z1 подается элемент X-1, на вход Зг — элемент в1, а на вход 4г — единичKblA разряд. В вычислительном уодуле 6z1 формируется значение Zo(= Р + в1 Х-1.
На втором такте на вход 211 подается элемент Х-z, на вход 31 — значение очаг а на вход
41 — единичный разряд. В вычислительном модуле 611 формируется значение Yo(= Ео (о) Дг
1)
= Zo + cuz Х-г, которое с выхода 32 вычислительного модуля 611 подается на вход 13 вычислительного модуля 611. На третьем такте на вход 31, 41 и 211 вычислительного модуля 611 подаются нулевые значения, при этр(1 на у ходе 35 формируется значение Z = Yo . На четвертом такте на вход
Зг подается значение rz, на вход 4г — ну евой разряд, а на вход 2г1 — значение Y-г При этом в вычислительном модуле 6z1 формируется значение Yo(- Yo(+ rzY-ã. На пятом такте на вход 2з1 подается значение Y-1, на вход-Зз — значение rl, на вход 4з — нулевой
1679502 разряд. При этом в вычислительном модуле бз1 формируется значение Yo = Уо = Уо + г1Y->, которое задерживается регистром 7i на один такт и подается на выход 91 устройства на шестом такте. Значения Yi и У2 формируются аналогичным образом в соответствии с табл. 2 и 3 и выдаются соответственно на выходы 9z и 9з устройства.
Значение У! формируется на выходе 9! устройства на (2max(Po, Р1) + 2!)-м такте.
В емя вычисления всех значений Y (i = О.
-1) устройством равно 2rnax(Po, Р1) + 2I-1 тактов. Период ввода элементов в поточном режиме для вычисления свертки равен двум тактам (в табл. 1, 2 и 3 приведены состояния регистров и триггеров в поточном режиме для-вычисления свертки).
Формула изобретения
Устройстводля вычисления свертки,содержащее матрицу I x J вычислительных модулей и регистров (J = max(Po, Pi); I, Ро и
Р1 — соответственно размерности вектора выходных отсчетов У, векторов весовых коэффициентов сд и i), причем — и информационный вход первой группы устройства (i = 1, I) подключен к первому информационному входу (J, I)-го вычислительного модуля матрицы, первый информационный вход (j,piro вычислительного модуля матрицы (l = 1, J1) подключен к первому информационному выходу (j + 1, i) — го вычислительного модуля матрицы, (k, 1) — и информационный вход второй группы устройства подключен к второму информационному входу (К1) — ro вычислительного модуля матрицы (k =- 1, J).âòoðoé информационный выход (I, m) го вычислительного модуля матрицы (! = 2, J, m = 1, !-1) подключен к второму информационному входу (! -.1, m+1) — ro вычислительного модуля матрицы. k-й информационный вход третьей группы устройства подключен к третьему информационному входу (k, 1)-ro вычислительного модуля матрицы, третий информационный выход (k, m)- ãî вычислительного модуля матрицы подключен к третьему информационному входу (k, m+1)— го вычислительного модуля матрицы, синхро вход устройства подключен к синхровходам всех вычислительных модулей матрицы и всех регистров, о т л и ч а ющ е е с я тем, что, с целью сокращения аппаратурн ых затрат, устройство содержит !
-1 групп элементов ИЛИ, причем первый
5 информационный выход (1, i) — го вычислительного модуля матрицы подключен к его четвертому информационному входу, четвертый информационный выход 0, !}-ro вычислительного модуля матрицы подключен
10 к четвертому информационному входу 0+1, i) ro вычислительного модуля матрицы, четвертый информационный выход (J, I) — го вычислительного модуля матрицы подключен к информационному входу i — ro регистра, вы15 ход которого подключен к 1 — му выходу группы устройства, выходы m-го регистра подключены к первым входам элементов
ИЛИ m — и группы, вторые входы и выходы которых подключены соответственно к (J, 20 m+1) — м информационным входам второй группы устройства и к вторым информационным входам (J, m+1) — го вычислительного модуля матрицы, k— - и настроечный вход устройства подключен к настроечному входу(К
25 1) — го вычислительного модуля матрицы, настроечный выход (k, m) — го вычислительного модуля матрицы подключен к настроечному входу (k, гп+1) — го вычислительного модуля матрицы, причем каждый вычислительный
30 модуль матрицы выполнен с возможностью реализации функции +г
Ьг+3 br г+1 r
d " = d + сгЬ, если a(=. 0 а +1 = а + с Ь, если d = 1, где а, b, с и d — значения на первом, втором, третьем и четвертом информацион40 ных входах вычислительного модуля íà r — м такте; а", Ь ", с и d — значения на первом, втором, третьем и четвертом информационных выходах вычислительного модуля на r45 м такте; аг и фг- значение на настроечных входе и выходе вычислительного модуля на г — м такте соответственно.
1.6Т9502! о» л йо р» » 0
1 дм
5»л
»о о»
«» o
О O
»» о
1
ΠΠ(—
) "м .» СЧ о о
«о
О М О о о
>0
«0 0О
О )) I 1
„! РСД О р
О О
О О
О
I о
I о
О М
0 л
1 Р» р о
Г, 1 °
О о
О 3 Н о !
) 3
«о
«о
-о
О Ь»
Ю M 1
О О» О О» О
° - 0 т
M т 0
M о
«О
) — — — ) )-» с
О и О
O - О л
»» о
»
»» о
O M
<4 0
О О
) 0 о
1 ) О оо
M оо
О
1 о» т
I т»
I т ь»
1 !
1 х.ь т
»» I c.л о 1 л— ю
О I
1 С. о
1 Р»)» З
С4
)»
«о- - »»0 о
»» 0
M О
Ф4 о
О M
1 Р
CV ) О " О " Π— О» л с40 т»о»»о»чо
О М О М О. и О М О
L0 Со)
Ю Р» 4
I ! о!
M о
О M
- o
О M т О
N : о
M е»
О Х т» !
0 л ! Р»
O 4 О Р4 О Х
0 Ch
3 о
»»
3 (U
Я
»» ь
O О O О О O
О О О О О О О О О О
О M О N О») О
» »0 О»» о »о и О N О M О й
»4 т»»4
Э О ) О 3 О
»4 С Ъ t Itl О f СО Ch
) 1!! т. ! » !
I
О I
-„.1
10
1679502
1 е.
1 а 44»4
44 Г»
»» о
L Л
1 а
4 — — — 4
3 а
1 CO
О
l о о
» д CV
° °
М о
Ъ о
1 1.Л
1 а
I
Г 4
1 1 4.44
l а
М
Щ ГГ) 4 4 ЪЯ О
"-!
4 1 ! f4 1
О 1
1 P,444
& 4 1
4»».
О N!
1
1
М
D N О
g N а с 4
N О N O
О! г а
Г
1 c,ст
1 а—
Ю I»41 O а
Э
О
i .а »Г1
-A ГГ)
1 ,44 CV ! 4 !
I I а Г4
4-4
I !
Г 4
С 4
Г.4 1 Рс
Ю О О О О О » O
О O O О Ю H О 9 4-> о»"D N О N О N О 4- 4
1
4 — О
О О O О О 14» O Q О
О О О Q O O О O O
О К Q >» » Х о о о Э О q Q 1 3 и Э
O O Q 4 О .» О
О Я О N О N О
»- »- »- О О О
44»- 4 ° Ъ
О О О М О N О N
N Q N О N О Я О о е4 Т - О»4 О
Р4 О Х М
3 О g Н 3 Н 3 Н
4- »4
О N О N О N О
»- О - О - О
4.1 О N О 4 О N 3 О 3 О 3 О
Ю
Ю СЧ С»4 -Ф 44 \ 44:4 4 CO 4.44
1679502
12! й"
Г \
Сс1
pv cM ч 04
М о о о Р о
r»4 с4 и о и о и о
I u II о - a м о о и
Ф4 о и а О1 о и о и о о е1 и г ф
М 4
« » о
И О Х
С Р
1 Р »М с4 Ре4. о и о и о о о ач ц о и о и о
5и — I о а л 1 с л
Р»
1I
L Ch
1 Р
Л а е
1J &
1 Е hC ! ЛГ
И
О О О О О О
О О О О О Рч О
Ое4 0N ре и о и о и о и
«М
О О О О О О
О О О О О О О м t4 el »- И
И о К О Х Р Х о O о 0
3 О О 3 М 3 3 ь g н 3 н н « « 1 и о и о "и
»»4 . «<ц и о и о и о о Q ьс о с о
3 о 3 о 3
1
О
4 с N IA о л со сл
187п. п2
О
p) =No Р1 7
g$ = 2 oP>
О /2 2(z-2) цВ,О х -2(и) ц
rg Фиг,1 ти
Гу) Закаэ 3216 Тираж 38б Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., 4/5
Производственно-издательский комбинат "Патент", г, Ужгород, ул.Гагарина, 101
@uz. 2
Составитель К,Кухаренко
Редактор. О,Стенина Техред M,Ìoðãåíòàë Корректор С.Шевкун
1
-+ »! о! ь<
«:!
I






