Устройство для вычисления свертки

 

Изобретение относится к цифровой вычислительной технике и может быть использовано автономно или в составе ЭВМ в качестве вычислителя свертки. Цель изобретения - снижение аппаратурных затрат. Результат вычислений образуется через N циклов суммирования операндов, хранящихся в N-разрядных регистрах и подаваемых на информационные входы сумматоров, на управляющие входы которых подаются значения разрядов вторых сомножителей. Особенностью работы устройства является параллельно-поточная организация вычислений. 1 ил.

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК юу 4 G 06 F 15/347

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

Н А ВТОРСНОМУ СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ

ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ

ПРИ ГКНТ СССР

1 (21) .4450013/24-24 (22) 30.05,88 (46) 30. 12.89. Be . 48 (71) Институт проблем моделирования

s энергетике АН УССР (72) Г.Е.Пухов, А.И.Стасюк, В.С.Иазурчук, Г.С.Григорян и В.В.Болкисева (53) 681.385 (088.8) (56) Kung Н.T., Ruane L.ll., Yen I M.L.

А tvo level pipelined systolic array

for convolutions. Proc. Conf. on

VLSI syst and comput oct 1981.

Springer — Uerlag, 1981, р.255-264, fig ° 4.

Авторское свидетельство СССР

И 1401477, кл. G 06 F 15/347, 1986.

Изобретение относится к цифровым вычислительным машинам и может быть использовано в самых различных областях народного хозяйства, где имеется потребность в специализированных вычислителях на основе "тейлоровских" (Т) преобразователей.

Цель изобретения - снижение аппаратурных затрат .

На чертеже представлена схема устройства для вычисления свертки.

Устройство содержит правую треугольную матрицу вычислительных модулей - 1 (i,j), i,j=1,k+1, i+j =

=k+2,2k+2 (k+1 — размерность выходного вектора), выполненных в виде управляемых сумматоров, первую - 2 (i) и вторую -,3 (i) группы регистров, первую 4 (j) и вторую - 5 (j) группы информационных входов, первый - 6 и

„„80„„1532947 А1

2 (54) УСТРОЙСТВО ДЛЯ ВЦ4ИСЛЕНИЯ СВЕРТКИ (57) Изобретение относится к цифровой вычислительной технике и может быть использовано автономно или в составе ЭВИ в качестве вычислителя свертки. Цель изобретения - снижение . аппаратурных затрат. Результат вычислений образуется через и циклов суммирования операндов, хранящихся в и-разрядных регистрах и подаваемых на информационные входы сумматоров, на управляющие входы которых подаются значения разрядов вторых сомножителей. Особенностью работы устройства является параллельно-поточная организация вычислений. ил.

\ ЮЮ второй - 7 управляющие входы, группу выходов - 8 (i).

Управляемые сумматоры и регистры второй группы выполнены п-разрядными, фф регистры первой группы - 2п-разрядны- р ми (и - разрядность элементов входного вектора). 4ь

2п-разрядные регистры 2 предназначены для накопления промежуточных результатов вычислений и формирования в нем после и циклов окончательного результата умножения. и-разрядные регистры 3 предназначены для хранения старших и разрядов соответствующих 2п-разрядных регистров 2, которые являются значениями первых слагаемых управляемых и-разрядных сумматоров 1 диагонали треугольной матрицы управляемых и-разрядных сумматоров 1.

1532947

М

Z(k) =ZX(k-1) Y(1)

1=0

Y(0) Z(0) C 1 ) Е (,1 )

Y (2 ) = Z (2 ) (3) Y(k} Z(k) Матрица X(lj =

x(o)

Х(1) Х(0) е ° ° ° е ° е ее

X(k) Х(1 -1),...,Õ(1) Х(0) z(1) = () Обозначим Y(11=

Z (О)

Z(1) Y(0)

Y(1) Z (k) Y(k) е е ° е ° ° ° ° ° ° е ° ° е ° ° ° °

Управляемые и-разрядные сумматоры

1 предназначены для сложения двух

-разрядных слагаемых.

Операции свертки соответствует выражение

Х(О)

Х(1) Х(0)

Х(г) Х(1) Х(О)

Ф

° ° е e ° ° е ° ° e ° е е

X(k) XCk-1),...,X(1) X(0) 1 редставляет собой сокращенную леночную матрицу, столбцами которой являются векторы X(lj =Х(0) Х(1) Х(2), ...,X(k),ãäå 1=0,k, причем k-й столбец сдвинут на один элемент вниз 25 относительно k-1 -го столбца.

Сформируем вектор бинарных элементов из m-ых компонент элементов вектора Y(1), Y„=Y(0) У(1) 2 (2),. е ., Y(k), (4) где н=й1, а и-разрядность элемен- 35 тов вектора Y lj.

Тогда значения элементов вектора

Zf1j можно определить следующим об, разом:

5 40

Z (13 -2 Х.(1) 7„

К(1)=2 " ".ХЯ <„„+Z(1) (5) 7.(1)й2 Х (lj Y, +4 (11

Рассмотрим численный пример, когда

1с=О 3.

Элементы вектора Y(lj представим в двоичной форме с четырьмя разрядами .(п4) после запятой, а элементы век50 .тора Х (1) представим в десятичной

Форме.

Пусть X(0)=0.3 7(0)=0.1011

Х(1)0.2 7(1)=0.0101

Х(2)=0.7 Y(2) =0.11131

X(3) 0,6 Y(3)=0.1001

Согласно выражению (5) на первом шаге подучим или при k=o Z(0)=X(0)Y(0)

k=1 Z(1) =Х(1) Y(0)+Х(0) Y(1)

k=2 2(2) =Х(2) Y(0)+X(1) Y(1)+X(0) Y(2) (2)

° e ° ° e ° ° е ° ° е ° ° ° е ° ° ° ° ° e е ° 4

Z(k) =X(k) Y(0)+X(k-1) Y(1)+... +

+X(O)Y(k)

Выражение (2) можно представить в виде произведения

4.

ДлЯ k=O Z(0)=X(0)Y(0)=2 1.0 3=0,018;

4 . Ф

ДлЯ k=1 Z(1)=X(1)Y(0)+X(0)Y(1)

=2 (о,2 1+о,3 1)=о,о3, ((. для k=2 Z(2)=Х(2)Y(O)+X(1}Y(1) +

+xCo)Y(2}=0,О75;

4 Ф длЯ k=3 Z(3)=Х(3;.Т(0)+X(2)Y(1) +

+X(1) Y(2)+X(0) Y(3)-О, 11, Определим значения для k=O Z(O)=Z(0)+X(O)Y(O)=0,018+

+2 3 1 0,3=0,05625;

АпА k=1 X (l ) =#1) + tX(1) Y(O) +X(O) Y (1)) =

0,0925;

1 з з

ДлЯ k=2 Z (2) =Z (2)+ gx (2) Y (0)+X() ) Y (1)+

+x(o}Y(2)) =0,1625)1

2 ъ ф

ДлЯ 1с=З Е(3) =Z(3)+ iх(3) Y(0)+X(2)Y(1)+

3 з

+x(1) Y(2)+x(o) Y(3)) =о,1875.

Аналогичным образом определим значения

2 2 для k=0 Z(O)=Z(0)+X(0)Y(0)=0,05625;

2 2 2 для 1=1 ZP)=z(1)+X(1)Y(0)+X(0)Y(1)=

=О, 1675;

2 2 для k=2 Z(2) =Z(2)+X(2) Y(0)+X(1) Y(1)+

+X(0) Y(2) =О, 2875;

3 и для k=3 Z(3) =Е(3)+Х(3) У(0)+Х(2) Ф(1)+

+X(t) Y(2)+X(0} Y(3) =0,4125.

После последнего шага получим конечные значения элементов вектора

Z (11 для k=o Z(0} =Z(0)+X(0) Y(0) 0,20625;

5 15 для k=1 Z (1)=:7.(1)+X(l)7{0)+

+X(0)Y(1)= 0,2675; з Ф 4 для k=2 Z(2> =Z(2)+X (2) 7(0)+X(1) 7(1) (4

+X(0) Y(2)i=0, 7875; з (. а для 1<=3 Е(3)=2(3)+Х(3)7(0)+Х(2)7(1)+

Ф 4.

+X(f) Y(2)+X(0>Y(3> =0,9625.

Устройство работает следующим образом.

На входы первой группы информационных входов 4(1), 4(2), 4(3), 4(4) подаются значения переменных Х(0), Х(1), Х(2), Х(3) соответственно.

На входы второй группы информационных входов 5(1), 5(2), 5(3) 5(4) подаются значения младших разрядов (. (. Ф 4

Y(0}, Y(1), Y(2), Y(3) переменных

Y{0), 7{1), Y(2}, Y(3) соответственно. С подачей сигнала на второй управляющий вход 7 и в 2п»разрядных регистрах 2 образуются значения

Z(0) = 2 X(0)Y(0);

Z (1) =2 jX(1) Y (0) +X(0) 7 (1)j;

Z(2) =2 (Х(2) 7(0)+Х(1) 7(1)+

+Х(0) 7(2 )1;

Z(3) =2 (X(3) Y(0)+X{2) Y(1) + ф 4

+Х (1) 7 (2 ) +Х(0) 7 (3)j соответственно. Носле подачи сигнала на первый управляющий вход 6, старшие

4 разряда содержимого 2п-разрядных регистров 2 записываются в соответствующие и-разрядные регистры 3.

В начале второго цикла на входы второй группы информационных входов

5(1), 5(2), 5(3), 5(4) поступают эна3 3 чения следующих разрядов 7(p) 7(1), 3 з

Y(2 ), 7(3) переменных Y (О), Y(1), 7(2), Y(3) соответственно. С подачей сигнала нв второй управляющий вход 7в 2п-разрядных регистрах 2 образуются значения

2 (3 . Z(0) =Z(0)+2- *Х(0) 7(О};

Z(1) =Z(1)+2 3 1Х(1) Y(0)+X(0) Y(1)); г (t) 3 3

Z(2) =Z(2)+2- з (X(2 ) 7(o}+Х(1) 7(1)+ з

+Х(0) Y(2 )1

32947

6 г з

Е(3) =Е (3)+2 s (Х(3) Y(0)+Х(2 ) Y(1)+

+X (l ) Y (2 )+X(0) Y (3 )) соответственно. После подачи сигнала на первый управляющий вход 6 старшие

4 разряда содержимого 2п-разрядных регистров 2 записываются в соответствующие и-разрядные регистры 3.

10 Через четыре цикла на выходах

8(1), 8(2), 8(3), 8(4) образуются результаты вычислений Z(0) Z(1), Z(2 ), Z(3) соответственно. !

15 Формула и зобретения

Устройство для вычисления свертки, содержащее матрицу (i j}, i j=1 k+1, (k+1 - размерность выходного вектора) вычислительных модулей, причем выход (1,m)-го вычислительного модуля соединен с первым информационным входом (1, и(+1)-го вычислительного модуля, 1=2Дс+Г m=1,k, о т л и ч а ющ е е с я тем, что, с целью снижения аппаратурных затрат, матрица вычислительных модулей выполнена треугольной. (i+j=k+2, 2k+2), каждый вычислительный модуль выполнен в виде управляемого сумматора и в устройство дополнительно введены первая и вторая группы регистров, причем информационный вход i-ro регистра первой группы соединен с выходом (i,k+1)-го вычислительного модуля, а управляющие входы всех регистров первой группы соединены с первым управляющим входом устройства, выход i-го регистра первой группы является i-м выходом группы выходов устройства, выход i»»ro регистра второй группы соединен с первым информационным входом (i,1)-го вычислительного модуля, а информационный вход i-ro регистра второй груп" пы соединен с i-м выходом устройства, управляющие входы всех регистров второй группы соединены с вторым управляющим входом устройства, второй информационный вход (i, j)-ro вычисли5р тельного модуля соединен с 1-м входом первой группы информационных входов. устройства, а управляющий вход (i,j)ro вычислительного модуля соединен с и-и входом второй группы информационных входов устройства (n=i+ j-k-1).

1532947

$(() S(2) $(J) 1(4)

4Щ 4Щ 4ф

Составитель К Кухаренко редактор И.Недолуженко Техред И.Ходанич Корректор Т.Палий факаэ 810)/ 4 Тираж 668 Подписное фЯКИПЯ Государственного комитета по изобретениям и открытиям при ГКНТ СССР

113035, Москва, Ж-35, Раушская наб., д. 4/5

Производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, 101

Устройство для вычисления свертки Устройство для вычисления свертки Устройство для вычисления свертки Устройство для вычисления свертки 

 

Похожие патенты:

Изобретение относится к вычислительной технике и может быть использовано в специализированных машинах и устройствах обработки данных для обращения плотных (N<SP POS="POST">.</SP>N) - матриц

Изобретение относится к вычислительной технике и может быть использовано при построении специализированных устройств, предназначенных для решения систем линейных уравнений

Изобретение относится к вычислительной технике и может быть использовано для вычисления произведения ленточной матрицы на вектор при решении систем линейных уравнений, построении цифровых фильтров

Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении специализированных устройств, предназначенных для решения систем линейных уравнений

Изобретение относится к вычислительной технике и может быть использовано для решения систем линейных уравнений и обращения матриц

Изобретение относится к вычислительной технике и может быть использовано в специализированных вычислительных машинах для вычисления свертки потока векторов X(L, M) ={X<SP POS="POST">1</SP>(M), X<SP POS="POST">2</SP>(M), ...X<SP POS="POST">L</SP>(M)} с вектором Ω(N)

Изобретение относится к вычислительной технике и может быть использовано в специализированных вычислительных машинах и устройствах цифровой обработки сигналов для вычисления деконволюции для потока векторов с фиксированными значениями коэффициентов импульсной характеристики

Изобретение относится к автоматике и вычислительной технике и может быть использовано в высокопроизводительных и специализированных ЭВМ

Изобретение относится к вычислительной технике и может быть использовано в специализированных вычислительных системах

Изобретение относится к вычислительной технике и может быть использовано для операций над матрицами

Изобретение относится к области вычислительной техники и может быть использовано в специализированных вычислительных системах для вычисления сверстки

Изобретение относится к вычислительной технике и может быть использовано в специализированных вычислительных системах для вычисления двумерной свертки

Изобретение относится к области вычислительной техники и может быть использовано в специализированных вычислительных системах для вычисления собственных значений матрицы (n n)

Изобретение относится к вычислительной технике и может быть использовано в специализированных вычислителях для решения задач, содержащих цифровую обработку сигналов и изображений

Изобретение относится к области спектрального анализа и может быть использовано при классификации квазипериодических сигналов

Изобретение относится к вычислительной технике и может быть использовано в системах интеллектуального анализа данных, в том числе при обработке и анализе геолого-геофизической информации и других данных, полученных при исследовании природных или социально-экономических объектов или явлений

Изобретение относится к вычислительной технике, а именно к устройствам обработки числовых массивов информации, предназначенным для перестановки строк и столбцов двумерного массива данных, представленного в виде матрицы
Наверх