Процессор для умножения вектора на матрицу размером s @ n

 

СОЮЗ СОВЕТСКИХ социдлистичЕских

РЕСПУБЛИК

ГОСУДАРСТВЕ HHblй КОМИТЕТ

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

ПРИ ГКНТ СССР

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

° ° ее °

Фиа1

К АВТ0РСКОМУ СВИДЕТЕЛЬСТВУ (21) 4842682/24 (22) 22.06,90 (46) 30.07.92. Бюл N 28 (71) Минский радиотехнический институт (72) В.Г.Березовский и B.Â,Ëoñåâ (56) Авторское свидетельство СССР

N. 1280388, кл. G 06 F 15/332, 1986.

Заявка Великобритании

M 2168509, кл. G 06 F 15/347. опублик. 1987, Никонов В.В., Кравцов С.Г, и Самощин

В.Н, Систолическая обработка информации: элементная база и алгоритмы. — Зарубежная радиоэлектроника. 1987, М 7, с. 36, рис.2, 3.

„„5U„„1751780 А1

2 (54) ПРОЦЕССОР ДЛЯ УМНОЖЕНИЯ ВЕКТОРА НА МАТРИЦУ РАЗМЕРОМ S x N (57) Изобретение относится к областй вычислительной техники и может быть использовано в системах цифровой обработки сигналов, Целью изобретения является расширение области применения эа счет воэможности умножения вектора на бинарйую матрицу и упрощение устройства. Процессор для умножения вектора на матрицу содержит дешифратор 1, последовательно соединенные процессорные элементы; каждый из которых включает в себя два коммутатора 2, 3, шинный формирователь 4, 1751780 элемент ИЛИ 5, элемент И 6, два регистра 7, 11, сумматор-вычигатель 8, элемент И-НЕ 9 и блок 10 элементов И, соединенные между собой функционально, блок 12 управления и синхронизации, включающий в себя счетчик по модулю три, дешифратор, два триггера, Изобретение относится к цифровой вычислительной технике и может использоваться в системах цифровой обработки сигналов, Известно устройство для быстрого умножения вектора на матрицу, содержащее регистр сдвига, вычислительный блок, состоящий из реверсивных счетчиков и шин связи, две группы коммутаторов, шины управления, управляющий вход, элемент И и информацион н ый вход-выход. Однако это устройство может выполнять вычисления только для вектора, координатами которых являются 1,0. Это значит, что в системах обработки информации входной сигнал, использующийся в качестве вектора, должен быть проквантован на два уровня, Это приводит к сильным погрешностям вычислений и ограничивает область применения устройства.

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

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

S + N-1 последовательно соединенных процессорных элементов (ПЭ) где SxN — это размер матрицы, В свою очередь, каждый процессорный элемент содержит три регистра, сумматор, умножитель. Координаты вектора Y = А Х, имеющие в начальный момент нулевое значение, поступают и проходят через ПЭ справа налево, в то время как компоненты вектора Х двигаются слева направо. Элементы матрицы вводятся в ПЭ сверху вниз, Однако это устройство оказывается сложным при решении большого числа заэлемент НЕ, четыре элемента И, счетчик по модулям $ и N, счетчик по модулям (S+1) и (И+1) и два коммутатора, соединенные между собой функционально, и блок 13 выдачи коэффициентов матрицы. 2 з,п. ф-лы, 4 ил, дач цифровой обработки сигналов, Как правила такие задачи сводятся к умножению вектора (сигнала) на некоторую матрицу ненулевых элементов. B настоящее время на5 иболее широкое распространение в системах передачи информации, радиолокации, радионавигации получили бинарные сигналы, Для них элементами матрицы являются +.1 и, следовательно, можно изме10 нить структуру ПЭ, исключив наиболее сложный и дорогостоящий блок-умножитель. Наиболее характерными задачами являются умножение вектора на матрицу размера SxN, где S» N — задача корреля15 ционного декодирования корректирующего кода мощности S и длины N; S = N — задача поиска синхронизирующего сигнала, т.е. умножение вектора на матрицу-циркулянт. Для сигналов средних и больших длин N >

20 >2; S «N — задача г ычисления коэффициГ2, ентов корреляции между входным сигналом и S последовательностями длины N, Для решения большинства этих задач использование известного пооцессора мо25 жет быть невозможньiM ввиду сложности реализации, Цслью изобретения является расширение области применения за счет возможности умножения вектора на бинарную

30 матрицу и упрощение процессора. Процессор ориентирован на ббработку бинарных сигналов. B структуре процессора учтены современные требования к проектированию СБИС. Для этого вычислительный узел

35 процессора строится на характерных топологических фрагментах (процессорных элементах) с локальными связями между ними. Структура процессора по сравнению с прототипом позволяет с минимальной ап40 паратурной сложностью построить более ! эффективный вычислитель. решающий раз. нообразные задачи.

Поставленная цель достигается за счет того. что в процессоре, содержащем S+ Й-1

45 последовательно соединенных процессорных элементов, причем первый информационныа вход i-ãà процессорного элемента (i - 2, S+ N — ij соединен с первым информа ционным входом (i-1)-го процессорного эле50 мента. а первый информационный выход

1751780 информационной шиной, являющейся ин- 45 формационным входом-выходом процессора.

Процессорный элемент содержит ri6p-. вый и второй коммутаторы,.первый и втОрой регистры, сумматор-вычитатель, элемент И, блок элементов И, элемент ИЛИ, элемент

И вЂ” HE и шинный формирователь, причем управляющие входы первого и второго коммутаторов соединены с первым входом элемента ИЛИ, первым входом элемеита ИНЕ, входом управления шинного формирователя и являются первым входОм управления процессорного элемента,:второй вход управления которого соединен с вторым входом элемента ИЛИ, вторым вхопоследнего процессорного элемента является информационным выходом процессора, используется К последовательно соединенных процессорных элементов (К5 при S < N и К = N npu S > N), дешифратор, блок управления и синхронизации и блок выдачи коэффициентов матрицы, причем второй, информационный вход первого процессорного элемента является информационным входом процессора, второй информационный выход i-ro процессорного элемента (! = 1,K), соединен с вторым информа цион н ым входом (i+1)-го и роцессорного элемента, первые входы управления всех процессорных элементов соединены с входом управления блока управления и синхронизации, входом управления блока выдачи коэффициентов матрицы и являются входом управления режимом работы процессора, тактовый вход и вход предустановки блока управления и синхронизации являются тактовым входом и входом предустановки процессора, соответственно, первйй выход управления блока управления и синхронизации соединен с входом дешифратора, К выходов которого соединены соответственно с вторым управляющими входами К процессорных элементов, первый и второй тактовые выходы блока управления и синхронизации являются первым и вторым тактовыми выходами процессора, третий тактовый выход блока управления и синхронизации соединен с тактовыми входами всех процессорных элементов, втoрой выход управления блока управления и синхронизации соединен с адресным входом блока выдачи коэффициентов матрицы, i-й выход которого соединен с третьим информационным входом i-го процессорного элемента, а (К+1)-й выход блока выдачи коэффициентов матрицы соединен с синхровходом блока управления и синхронизации, информацин н ый вход-выход кажДого процессорного элемента соединен с общей

40 дом элемента И вЂ” НЕ и входом выборки кристалла шинного формирователя, первый вход элемента И соединен с тактовым входом второго регистра и является тактовым входом процессорного элемента, выход элемента ИЛИ-с вторым входом элемента

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

И-НЕ соединен с вторыми входами элементов И группы, выходы которых соединены с информационным входом второго регистра, выход которого соединен с первым входом первого коммутатора и является первым информационным выходом процессорного элемента, первый информационный вход которого соединен с BTopb! M входом первого коммутатора, второй информационный вход процессорного элемента соединен с первым входом второго коммутатора; второй вход которого соединей с группой выходов шинного формирователя.

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

1751780

25

40

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

На фиг.1 представлена структурная схема процессора для умножения вектора на матрицу; на фиг.2 — блок управления и синхронизации; на фиг,З вЂ” временные диаграммы, поясняющие работу процессора в режиме 1; на фиг.4 — временные диаграммы, поясняющие работу процессора в режиме 2.

Процесор содержит дешифратор 1, последовательно соединенные ПЭ, каждый из которых включает в себя первый коммутатор 2, второй коммутатор 3, шинный формирователь 4, элемент ИЛИ 5, элемент И 6, первый регистр 7, сумматор-вычитатель 8, элемент И вЂ” Н Е 9, блок 10 элементов И, второй регистр 11, блок 12 управления и синхронизации (УС), блок 13 въ дачи коэффициентов матрицы (ВКМ), тактовый вход 14, вход 15 предустановки, вход 16 управления режимом, информационный вход 17, информационный вход-выход 18, информационный выход 25, В свою очередь, блок 12 УС, представленный на фиг.2, включает в себя первый тактовый выход 19, второй тактовый выход 20, третий тактовый выход 22, первый выход 21 управления, второй выход 24 управления, синхровход 23. первый счетчик 27 по модулю 3. дешифратор 28, первый триггер 29, инвертор 30, первый элемент И 31, второй элемент И 32, второй триггер 33, второй счетчик 34 с двумя коэффициентами пересчета, соответственно, по модулю S u по модулю N, третий счетчик 35 с двумя коэффициентами пересчета, соответственно, по модулю (N+1) и модулю (5+1) третий элемент И 36, четвертый элемент И 37, первый коммутатор 38, второй коммутатор 39.

Рассмотрим основные функции, выполняемые каждым из структурных компонентов процессора.

Дешифратор 1 предназначен для подключения i-го ПЭ к общей шине 17 при установлении на его входе кода числа i. При этом на 1-ом выходе дешифратора появляется положительный потенциал — "1". Может использоваться стандартная схема, например, как микросхема (МС) К155ИДЗ.

Первый и второй коммутаторы 2 и 3 предназначены для формирования двух режимов работы ПЭ. Они подключают свой выход к первому входу, если на входе управления.присутствует "1", и ко второму входу, если на вход управления подается "0". Могут использоваться стандартные схемы, например мультиплексор МС К555КП11.

Шинный формирователь 4 предназначен для организации связи ПЭ с общей шиной 17. Может выполняться на основе стандартных решений, например МС К589

АП16, Элемент ИЛИ 5 предназначен для формирования сигнала разрешения прохождения тактового сигнала через элемент И 6 к регистру 7 в ПЭ. Может использоваться, например. MC К555ЛЕ1, Элемент И 6 позволяет или запрещает прохождение тактового сигнала к регистру

7 в ПЭ. Может использоваться МС, например, К555ЛИ1.

Первый регистр 7 предназначен для за-. писи координат вектора X. Это регистр— защелка и может выполняться как схема параллельно записывающих триггеров (cM, МС

К555И Р22).

Сумматор-вычитатель 8 выполняет операцию суммирования операндов, если на управляющем входе "1", и вычитает из опе- . ранда на первом входе операнд на втором входе, если на входе управления "0". Может выполняться, как MC АЛУ К155ИПЗ.

Элемент И-НЕ предназначен для фор-. мирования сигнала разрешения прохождению информации с выхода сумматоравычитателя 8 через блок 10 элементов И на вход регистра 11. Может использоваться

МС К555ЛАЗ.

Блок 10 элементов И представляет собой и двухвходовых элементов И (n — разрядность сумматора-вычитателя 8), вторые входы которых объединены и образуют второй вход блока, а первые входы образуют вход блока. Если на втором входе установлена "1", то информация с выхода суммато1751780

10 ра-вычитателя 8 проходит через блок 10 к регистру 11; если "0", то на выходе блока устанавливается нулевой код.

Второй регистр 11 предназначен для хранения координат вектора Y. Его реализа.ция аналогична регистру 7.

Блок 12 УС управляет работой вычислительного узла, а также синхроиниэирует работу блока 1) ВКМ и внешних устройств, Вариант рер изации представлен на фиг,2.

Рассмотрйм основные функции элементов, составляющих предлагаемый вариант реализации блока 12 УС.

Счетчик 27 по модулю. 3 с последсвательно включенным дешифратором 28 формируют разделенные во времени сигналы для тактирования счетчика 34, счетчика 35, процессорных элементов. Для реализации могут использоваться стандартные ИС.

Триггер 29 с последовательно включенным элементом И 31 обеспечивают тактирование счетчика 35 только в определенные интервалы времени (см, диаграммы фиг.3, 4), В качестве триггера может использоваться МС 555 ТМ2.

Через инвертор 30 синхросигнал, поступающий на вход 23, устанавливает прямой выход триггера 29 в единичное состояние.

Может использоваться стандартная ИС, На элементе И 32 формируется тактовый сигнал, синхронизирующий подачу координат на информационный вход-выход 18 в первом режиме работы процессора и выдачу вычисленных координат во втором режиме.

На триггере 33 формируется момент времени (прямой выход устанавливается в

"1"), с которого разрешается прохождение через элемент И 36 и элемент И 37 сигналов, тактирующих выдачу координат выходногО вектора У, соответственно, в режиме 1 и в режиме 2. В качестве триггера может ис. пользоваться ИС 15 5ТМ2, а в качестве элементов И 31, 32, 36. 37 стандартная ИС

555ЛИ1, Счетчик 34 с двумя коэффициентами пересчета в режиме 1 (на управляющий вход счетчиков 34, 35 подается "0") выполняет счет по модулю числа S, а в режиме 2 (на управляющий вход счетчиков 34, 35 подается "1") — по модулю числа N, Счетчик 35 с двумя коэффициентами пересчета в режиме I выполняет счет по модулю числа (N+1), а в режиме 2 — no модулю числа (S+1). Счетчик 34, 35 реализуются по известным схемам, Коммутаторы 38, 39 соединяют в режиме 1 первый вход с выходом, а в режиме 2— второй вход с выходом.

Сигнал на выходе коммутатора 38 предназначен для синхронизации подачи координат вектора Х, сигнал на выходе коммутатора 39 предназначен для синхронизации выдачи координат выходного вектора Y. В качестве этих коммутаторов могут и с пользоваться мультиплексоры 555П11.

Блок 13 В KM осуществляет выдачу коэффициентов матрицы на соответствующие входы ПЭ, а также синхросигнала на вход 23 блока 12 УС. Блок может быть выполнен как

ПЗУ с двумя страницами информации, В

10 режиме 1 (в режиме 2) на старший разряд

ПЗУ с входа 16 подается "0" ("1") и выдается первая (вторая) страница информации, Информация, которую необходимо записать на первой странице, представлена на фиг.3.

45 считает по модулю $, счетчик 35 считает по модулю (N+1), в блоке 12 ВКМ будет выдаваться первая страница хранящейся информации; коммутаторы 2 и 3 всех ПЭ подключают свои вторые входы к выходу, шин н ые формирователи 4 переключаются на прием информацйи с шины данных 18, на втором входе блока 10 элементов И устанавливается уровень "1", позволяющий прохождению информации с выхода сумма50 тора-вычитателя 8 к входам второго регист- ра 11. Подключение)-ro ПЭ к общей шине 18 происходит в том случае, если на вход дешифратора 1 подается код числа j. Если на

55 его вход подается нулевой код. то ни один

ПЭ не подключается через свой шинный По каждому адресу от нуля до (S — 1) (см. выход 25 на диаграмме) записывается N бит информации о коэффициентах матрицы (третьи входы ПЭ) и один бит информации

20 (вход 24 диаграммы), который используется для синхронизации моментов ввода коэф7.". фициентов вектора X (в эти моменты по соответствующим адресам записывается в

ПЗУ единица). Информация, которую необ25 ходимо записать на второй странице, представлена на фигА. По каждому адресу от нуля до (N — 1) (вход 25) записывается S бит информации о коэффициентах матрицы (третьи входы ПЭ) и один бит информации

30 (вход 24), который используется для синхронизации моментов вывода коэффициентов выходного вектора Y (по адресам записывается единица), Устройство работает следующим обра - :

35 зом.

Существуют два режима работы. flepвый режим работы используется для умножения вектора Хи =(х1, х2, ..., xf4) на матрицу т

А = (ai ) размера Яхй, где S > N, i = 1,S; j40 =1 N, т.е. Уэ = А Хи.

Для этого на первый информационный вход первого ПЭ подается нулевой код, на вход 16 управления режимом подается уровень "0", после чего в блоке 12 УС счетчик 34

1751180 формирователь 4 к общей шине 18. На третьи информационные входы ПЭ подаются столбцы матрицы А так, чтобы на J-й ПЭ подавался J-й столбец. Причем, (J+1)-й столбец подается с временным запаздыванием в один такт по отношению к j-My столбцу, Координаты вектора Хи подаются последовательно на шину 18 и х1-координата записывается в первый регистр 7 J-ro ПЭ по переднему фронту тактового импульса, приходящего с выхода 22 блока 12.УС, при условии, что на вход дешифратора 1 подается код числа J. Временные диаграммы, поясняющие организацию вычислительного процесса при первом режиме работы процессора, приведены на фиг,3, В начальный момент на вход 15 предустановки подается импульс отрицательной полярности, устанавливающий на выходах 24 и 21 блока

12 УС нулевые коды. Иэ тактового сигнала, поступающего на вход 14, формируется с помощью счетчика 27 и дешифратора 28 три последовательности импульсов с частотой f = f /3, разделенных во времени. В дальнейшем везде будем обозначать сигнал, поступающий с i-ro выхода дешифратора 28 через S (!), где! = 1,3. а также будем под тактом работы процессора понимать период последовательности S (1). По переднему фронту импульсов последовательности S (1) происходит установка адреса на счетчике 34 и выдача коэффициентов матрицы на третьи информационные входы ПЭ.

По переднему фронту импульсов последовательности S (2) в определенные интервалы времени ("1" на входе 23) подаются коэффициенты вектора на общую шину 18, э также выполняется смена кода на входе дешифратора 1, По переднему фронту импульсов последовательности S (3) тактируется работа ПЭ и синхронизируется выдача вычисленных коэффициентов выходного вектора Y. В первом такте на шину данных

18 выставляется координата х1, на вход дешифратора 1 подается код единицы, при котором происходит выборка кристалла шинного формирователя 4 первого ПЭ (считается, что выборка кристалла осуществляется единичным уровнем). По переднему фронту тактового импульса последовательности S (3) координата защелкивается в регистр 7 первого ПЭ. Во втором такте на третий информационный вход первого ПЭ подается элемент матрицы а11, на общую шину 18 выставляются координата х2, на вход дешифратора 1 — код двойки, при котором произойдет выборка кристалла шинно: го формирователя второго ПЭ, По условию матрица А является бинарной, т.е. alai =+1.

Сумматор-вычитатель 8 вычитает из операнда на первом входе операнд, присутствующий на втором входе, если на третьем информационном входе ПЭ присутствует низкий логический уровень операнда, и складывает операнды, если уровень высокий, Значит элементу ал = — 1 соответствует

"0", ал - 1 соответствует "1". По переднему фронту второго тактового импульса последовательности S (3) в регистр 11 первого ПЭ

10 заносится результат а11х1, в регистр 7 вто,- рого ПЭ заносится координата хг. В третьем такте нэ третий информационный вход первого ПЭ подается элемент матрицы а2, на общую шину выставляется координата хз, а на вход дешифратора 1 — код числа три, при котором произойдет выборка кристалла шинного формирователя третьего ПЭ. По переднему фронту третьего импульса последовательности S (3) в регистр 11 первого ПЭ

55 запишется результат а2 х>, в регистр 11 второго ПЭ запишется а11х1+ а 2х2, в регистр 7 третьего ПЭ запишется координата хз. На N-м такте будет записана последняя координата хи в регистр 7 N-го ПЭ и ввод информации прекратится, для чего в (И+1) такте на входе дешифратора 1 устанавливается нулевой код. В (N+1) такте на информационном выходе 25 процессора появится первая координата у1 вектора Ys, В последующие такты выдаются остальные координаты, т.е. íà (N+S)-м такте выдается координата Ys. Процесс умножения последующих векторов на матрицу может выполняться поточно. Для этого íà (S+1) такте, в момент, когда в регистр 11 первого ПЭ запишется азх1, нужно в регистр 7 этого же ПЭ записать координату х1 следующего вектора

1 хм и тем самым начать процесс ввода его координат с общей шины 18, Второй режим работы применяется для умножения вектора на бинарную матрицу в случае S «N. Число ПЭ равно S = N, Временные диаграммы приведены на фиг,4. На вход 16 управления режимом работы процессора подается уровень "1", после чего в блоке 12 УС счетчик 34 считает по модулю N, счетчик 35 считает по модулю (S+1). в блоке

13 BKM будет выдаваться вторая страница хранящейся информации, коммутаторы 2 и

3 всех ПЭ,подключат свои первые входы к выходу, шинные формирователи 4 ПЭ переключаются для передачи информации на общую шину 18, На третьи информационные входы ПЭ подаются строки матрицы

А так, чтобы на i-й ПЭ подалась бы I-я строка. Причем, (!+1)-я строка подается с временным запаздыванием в один такт по отношению к i-й. Координаты вектора Х подаются последовательно на информационный вход 17 процессора. По переднему

1751780

14 фронту импульсов последовательности S {1) происходит установка адреса на счетчике

34 и выдача коэффициентов матрицы на третьи информационные входы ПЭ (аналогично режиму 1), По переднему фронту импульсов последовательности S (2) синхронизируется подача на вход 17 координат вектора Х, в определенные моменты времени (н1н на входе 23) выполняется смена кода на входе дешифратора 1; синхронизируется выдача вычисленных,оординат вектора У (если "1" на входе 23, однако не ранее, чем через S тактов после предустановки), По переднему фронту импульсов последовательности S (3) тактируется работа ПЭ. 8 первом такте после предустановки процессорэ на вход 17 подается координата х1, на вход дешифратора код единицы. В результате на выходе элемента И-НЕ 9 первого ПЭ появляется уровень н0", который запретит прохождение информации с выхода сумматора-вычитателя 8 к регистру 11 через блок

10 элементов И, По переднему фронту первого импульса последовательности S (3}, в регист, 7 запишется координата х1, а в регистр 11 нулевой код. Во втором такте на вход 17 подается координата х2, на вход дешифратора 1 — код двойки, на третий информационный вход первого ПЭ вЂ” элемент матрицы а11.

По переднему фронту второго импульса последовательности S (3) для первого ПЭ в регистр 11 запишется результат а11х1, а в регистр 7 координата х2. Координата х> перепишется в регистр 7 второго ПЭ, а в регистр 11 запишется нулевой код, На третьем такте на вход 17 подается координата хз, на вход дешифратора 1 — код тройки, на третий информационный вход первого ПЭ подается элемент а г, на третий информационный вход второго ПЭ подается элемент а2, По приходу третьего импульса последовательности S (3) для первого ПЭ в регистре 11 запишется сумма а11х1+ 812х2, в регистр 7 координата хз, Во второй ПЭ в регистр 11 запишется результат а 1х1, в регистр 7 перепишется координата хг. В третьем ПЭ в регистр 11 запишется нулевой код, а в регистр

7 координата х>. Таким образом, в первые

S тактов производится последовательйая очистка регистра 11, который вместе с сумматором-вычитателем 8 образуют накапливающий сумматора и начинает формироваться результат умножения вектбра, на 1-ю строку матрицы. С (S+1)-ro до N-го такта на входе дешифратора 1 присутствует. нулевой код и выборка кристаллов шинных формирователей не производится. Процессор может умножать вектор на матрицу поточно. Опишем, как происходит вывод

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

1. Процессор для умножения вектора на матрицу размером SxN, содержащий

30 S + N — 1 последовательно соединенных процессорных элементов, причем первый информационный вход i-го процессорного элемента (i = 2,S + М вЂ” 1) соединен с первым информационным выходом (i — 1)-го процес35 сорного элемента, а первый информационный выход последнего процессорного элемента является информационным выходом процессора, отличающийся тем, что, с целью расширения области примене40 ния за счет возможйости умножения вектора на бинарную матрицу и упрощения процессора, он содержит К последовательно соединенных процессорных элементов (К= S npu S N),дешиф45 ратор, блок управления и синхронизации и . блок выдачи коэффициентов матрицы, причем второй информационный вход первого процессорного элемента является информационным входом процессора, второй ин50 формационный выход }-ro процессорного элемента (1 = 1,К) соединен с вторым информационным входом ii+1) го процессорного элемента, первые входы управления всех процессорных элементов соедйнены

65 с входами управления блока управления и синхронизации и.блока выдачи коэффициентов матрицы и являются входом управления режимом работы процессора. тактовый вход и вход предустановки блока управления и синхронизации являются так5

25 координат вектора Ys и одновременный ввод координат следующего вектора Хи, На (N+1)-м такте в регистре 7 первого ПЭ записана координата, а на выходе сумматорэ-вычитэтеля 8 уже сформирована координата у1 вектора Уз. На информационный вход 17 подается координата х1 следующего вектора, а на вход дешифратора 1 — код единицы. В результате происходит выборка кристалла шинного формирователя 4 первого ПЭ и координата у1 выдается на общую ину 18. Этот же сигнал управления с выхода дешифратора 1 установит нОм на выходе элемейта 9 И вЂ” НЕ первого ПЭ, что запретит прохождение информаци .. с выхода сумматора-вычитателя 8 на вход регистра 11 через блок 10 элементов И. На входе регистра 11 устанавливается нулевой код.

Положительным фронтом импульса последова- тельности S (3) в регистр 7 первого ПЭ запишется координата х1, а регистр 11 обнулится и выдача координаты у1 прекращается. Таким образом на (N+S}-м шаге на общую шину 18 выдается координата ys вектора Ys

1751780

25

55 товым входом и входом предустановки процессора соответственно, первый выход управления блока управления и синхронизации соединен с входом дешифратора, К выходов которого соединены соответственно с вторыми управляющими входами К процессорных элементов, первый и второй тактовые выходы блока управления и синхронизации являются первым и вторым тактовыми выходами процессора, третий тактовый выход блока управления и синхронизации соединен с тактовыми входами всех процессорных элементов, второй выход управления блока управления и синхронизации соединен с адресным входом блока выдачи коэффициентов матрицы, i-й выход которого соединен с третьим информационным входом l-ro процессорного элемента, а (K+1)-й выход блока выдачи коэффициентов матрицы соединен с синхровходом блока управления и синхронизации, информационный вход-выход каждого процессорного элемента соединен с общей информационной шиной, являющейся информационным входом-выходом процессора, 2, Процессор по п.1, о тл ич а ю щийс я тем, что процессорный элемент содержит первый и второй коммутаторы, первый и второй регистры, сумматор-вычитатель, элемент И, блок элементов И, элемент ИЛИ, элемент И вЂ” НЕ и шинный формирователь, причем управляющие входы первого и второго коммутаторов соединены с первым входом элемента ИЛИ, первым входом элемента И вЂ” НЕ, входом управления шинного формирователя и являются первым входом управления процессорного элемента, второй вход управления которого соединен с вторым входом элемента ИЛИ, вторым входом элемента И-НЕ и входом выборки кристалла шинного формирователя, первый вход элемента И соединен,с тактовым вхо дом второго регистра и является тактовым входом процессорного элемента, выход элемента ИЛИ соединен с вторым входом элемента И, выход которого соединен с тактовым входом первого регистра. выход первого коммутатора соединен с первым информационным входом сумматора-вычитателя, второй информационный вход которого соединен с выходом первого регистра и является вторым информационным выходом процессорного элемента, выход второго коммутатора соединен с информационным входом первого регистра, разрядные выходы сумматора-вычитателя соединены соответственно с первыми входами элементов И блока и с группой входов шинного формирователя, группа входов-выходов которого является информационным входом-вы ходом и роцессор ного элемента. выход элемента И- HF. соединен с вторыми входами элементов И блока. выходы которых соединены с информационным входом второго регистра, выход которого соединен с первым входом первого коммутатора и является первым информационным выходом процессорного элемента, первый информационный вход которого соединен с вторым входом первого коммутатора, второй информационный вход — с первым входом второго коммутатора, второй вход которого соединен с группой выходов шинного формирователя.

3, Процессор по п.1, о т л и ч а ю щ и йс я тем. что блок уг,равления и синхронизации содержит первый- третий счетчики. первый и второй триггеры, первый и второй коммутаторы, дешифратор, первый — четвертый элементы И и элемент НЕ, причем тактовый вход блока управления и синхронизации соединен со счетным входом первого счетчика, вход установки в "0" которого соединен с входами установки в "0" второго и третьего счетчиков. первого и второго триггеров и является входом предустановки блока управления и синхронизации. вход управления режимом которого соединен с входами управления второго и третьего счетчиков и первого и второго коммутаторов, выходы которых являются первым и вторым тактовыми выходами блока управления и синхронизации, первый и второй выходы управления которого соединены соответственно с выходами третьего и второго счетчиков, выход первого счетчика соединен с входом дешифратора. первый выход которого соединен со счетным входом второго счетчика. второй выход дешифратора соединен с первыми входами первого и второго элементов И и с вторым входом первого коммутатора. первый вход которого соединен с выходом второго элемента И, второй вход которого является вхо- . дом синхронизации блока управления и синхронизации, третий тактовый выход которого соединен с третьим выходом дешифратора. тактовым входом первого триггера и первым входом третьего элемента И, выход которого соединен с первым входом второго коммутатора, второй вход которого соединен с выходом четвертого элемента И, первый вход которого соединен с выходом второго элемента И, второй вход четвертого элемента И соединен с вторым входом третьего элемента И и с прямым выходом второго триггера, информационный вход которого соединен с шиной логической единицы. выход первого элемента И соединен со счетным входом третьего счет1751780 чика, второй вход второго элемента И вЂ” с входом элемента HF. выход которого соединен с тактовым входом второго триггра и входом установки в "1" первого триггера, информационный вход когпрого соединен с шиной логического нуля, прямой выход первого три гера соединен r, вторым входом первого элемента И.

1751780 а,„

dy2

d t аг, gsА1 us-4?

Э ° °

И%И

<3t6iOOta +

ga

1751780

° °

Составитель B. Березовский

Техред М.Моргентал Корректор B.Петрами

Редактор .О. Спесивых

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

Заказ 2б9З Тираж . Подписное

8НИИПИ Государственного комитета по йзобретениям и открытиям при ГКНТ СССР

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

Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n Процессор для умножения вектора на матрицу размером s @ n 

 

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

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

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

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

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

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

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

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

Изобретение относится к электронным играм

Микроэвм // 2108619
Изобретение относится к области микропроцессорной техники, в частности, может применяться для реализации обмена информацией

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

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

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

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

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

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