Изобретение относится к автоматике и вычислительной технике и может быть использовано при построении специализированных, в том числе и систолических устройств, предназначенных для выполнения операций над матрицами.
Цель изобретения - расширение функциональных возможностей за счет умножения трех матриц.
На фиг, 1 представлена функциональная схема устройства для умножения матриц; на фиг. 2 - функциональная схема вычислительного модуля первого ти.па; на фиг. 3 - функциональная схема вычислительного модуля второго типа; на фиг. 4 - функциональная схема блоков регистров; на фиг. 5 - схема блока управления; на фиг.
6 - временная диаграмма сигналов, управляющих работой вычислительных модулей.
Устройство для умножения матриц (фиг. 1) содержит N вычислительных модулей 1 первого типа, (2N-2) триггеров 2, блок 3 управления, N мультиплексоров 4, N вычислите л ьных модулей 5 второго типа Вычислительный модуль 1.i первого типа (i 1,N) содержит триггер 6, умножитель 7, регистр 8, мультиплексор 9, регистры 10 - 12, сумматор 13, блок 14 регистров, триггеры 15- 17 фиг. 2.
Вычислительный модуль 5.I второго типа (i 1,N) содержит регистр 18, блок 19 регистров, умножитель 20, мультиплексор 21, регистры 22, 23, сумматор 24, регистр 25 фиг. 3. 00
о
Ю Ю -I.
ы
Блоки регистров 14 и 19 (фиг. 4) содержат N последовательно соединенных регистров 26.i.
Блок 3 управления (фиг, 5) содержит счетчики 27, 28 и регистры 29. 30.
При реализации процедуры умножения матриц устройства вычисляет выражение:
, ; .
причем
D AxB,
где А - матрица А порядка. М х К;
В - матрица В порядка К х М;
D - промежуточная матрица, получен- . ная в результате умножения матриц А х В, элементы которой вычисляются согласно выражению .
du
1
aikbkj, i,j 1,M
С - матрица С порядка М х К; F - результирующая матрица, элементы которой получаются следующим образом;
f|J -2, C|m dmj М 1
Рассмотрим работу устройства. Для простоты описания и без потери общности положим N 3. Условимся,.что прием информации в триггеры и регистры происходит по переднему фронту синхроимпульса/т, е. в начале такта. Будем рассматривать случай квадратных матриц К М, Количество регистров в блоках регистров 14 и 19 будет N. В данном устройстве будет три регистра. Все регистры внутри блоков регистров соединены последовательно и информация передается с входного регистра в последующий. При подаче активного управляющего сигнала на первый управляющий вход вычислительных модулей 1.1 и 5.1 происходит разрешение записи информации в регистры 8 и 22, а мультиплексоры-9 и 21 производят передачу информации с первого. входа1 на его выход. Активный сигнал поступает через каждые два такта на третий. Условимся также, что на первый информационный вход устройства элементы матрицы А подаются по столбцам, на второй информационный вход устройства элементы матрицы В - по строкам, на третий информационный вход устройства элементы матрицы С- по строкам....
В первом такте на входы умножителя 7.1 поступают элементы an и bn, умножаются и результат aiibn. пройдя через сумматор 13.1. записывается в блок регистров 14,1. Элемент an записывается в регистр 8.1, а Ьп - в регистр 11.1.
Во втором такте с выхода умножителя 7.1 выдается произведение 32ib2i и, пройдя
через сумматор 13.1, записывается в блок регистров 14.1. Элемент a2i поступает на первый вход мультиплексора 9.1 и, пройдя его, записывается в регистр 10.1, a bi2 записывается в регистр 11.1, с выхода которого
0 bn перепишется в регистр 12.1.
В третьем такте в вычислите л ьном модуле 1.1 с выхода умножителя 7.1 выдается эз1Ь1зи, пройдя сумматор 13.1, записывается в блок регистров 14.1,-Элемент аз1, пройдя
5 через мультиплексор 9.1, записывается в регистр 10,1, а элемент bi3 VB регистр 11.1, с .. выхода которого bia переписывается в регистр 12.1. В это же время в вычислительном модуле 1.2 на входы умножителя 7.2 посту0 пают элементы 321 и bn, где умножаются, и произведение -aai bn, пройдя сумматор 13.2, записывается в блок регистров 14.2, элемент 321 записывается в регистр 8.2, а элемент Ьц-в регистр 11.2.
5В четвертом такте в вычислительном мо дуле 1.1с выхода умножителя 7.1 выдается 321021 и поступает на первый вход сумматора 13.1,.на второй вход с выхода блока реги -стров 14.1 поступает anbn и сумма anbnj- 0 .+ ai2b2i снова записывается в блокрегист- ров 14,1. Элемент ai2 записывается в ре- гистр.8.1, а элемент 021 - в регистр 11.1, с выхода которого bia переписывается в регистр 12.1. В это.же время в-вычислительном 5 модуле 1.2 на входы умножителя 7.2 поступают элементы азт и bi2, где умножается и
произведение asibi2 пройдя сумматор 13.2 записывается в блок регистров 14.2. Элемент аз1 пройдя мультиплексор 9.2, записы- 0 вается в регистр 10.2, элемент bi2 - в . регистр 11.2, с выхода которого bn переписывается в регистр 12.2.
В пятом такте вычислительном модуле
1.1 с выхода умножителя 7.1 выдается 322b22 5 и поступает в сумматор 13,1, на второй вход с выхода блока регистров 14.1 поступает . a2fbi2 и сумма (a2ibi2 + 322b22) снова записывается в блок регистров 14.1. Элемент 322 записывается в регистр 10.1, а элемент D22 0 -в регистр 11.1, с выхода которого Ь21 переписывается в регистр 12.1. В вычислительном модуле. 1.2 на входы умножителя 7.2 поступают элементы an и bis, где умножаются, и произведение anbis, пройдя сумма- 5 тор 13.2, записывается в блок регистров 14.2. Элемент ап,пройдя мультиплексор 9.2, записывается в регистр 10.2, элемент Ьтз - в регистр 11,2, с выхода которого bi2 переписывается в регистр 12.2. В вычислительном модуле 1.3 с выхода умножителя 7.3
выдается произведение aai bn и, пройдя сумматор 13.3, записывается в блок регистров 14.3. Элемент аз1 записывается в регистр 8.3, а элемент b n - в регистр 11.3.
В шестом такте в вычислительном модуле 1.1 с выхода умножителя 7.1 выдается аза Ьгз и поступает в сумматор 13.1, на второй вход с выхода блока регистров 14.1 поступает аз1 bis и сумма (аз1Ь1з+ + аз2Ь2з) снова записывается в блок регистров 14.1. Элемент аз2 записывается в регистр 10.1, а элемент Ьаэ - в регистр 11.1, с выхода которого 022 переписывается в регистр 12.-1. В вычислительном модуле 1.2 на входы умножителя 7.2 поступают элементы 322 и D21, где умножаются, и произведение 322 D21 поступает в сумматор 13.2, где суммируется с 321 bn и сумма (a2ibn+ + 322b2i) записывается в блок регистров 14.2. Элемент 322 записывается в регистр 8.2, элемент Ь21 -в регистр 11,2, с выхода которого bis переписывается в регистр 12.2. В вычислительном модуле с выхода умножителя 7.3 выдается произведение anbi2 и, пройдя сумматор 13.3, записывается в блок регистров 14.3. Элемент an записывается в регистр 10.3, а элемент bi2 - в регистр 11.3, с выхода которого bn переписывается в регистр .12.3.
В седьмом такте в вычислительном модуле 1.1 с выхода умножителя 7,1 выдается Э1зЬз1 и поступает в сумматор 13.1, с выхода которого anbii +ai2bai + 31зЬз1 dn выдается на третий информационный выход и поступает на первый вход мультиплексора 4,1, передается на его выход и записывается в блок регистров 19.1. Элемент ai3 записывается в регистр 8.1, а элемент Ьз1 - в регистр 11.1, С ВЫХОДа КОТОРОГО 023
переписывается в регистр 12.1. В вычислительном модуле 1.2 с выхода умножителя 7.2 произведение аз2 Ь22 поступэет в сумматор 13.2, с выхода которого (asibi2 + азаЬ22) записывается в блок регистров 14.2. Элемент аз2 записывается в регистр 10.2, элемент b22 в регистр 11.2, с выхода которого bat переписывается в регистр 12.2. В вычислительном модуле 1.3 с выхода умножителя 7.3 выдается произведение 321 bis и, пройдя сумматор 13,3, записывается в блок регистров 14.3, Элемент aai записывается в регистр 10.3, а элемент bis - в регистр 11.3, с выхода которого bi2 переписывается в регистр 12.3.
В восьмом такте в вычислительном модуле 1.1с выхода умножителя 7.1 выдается 323 Ьза и поступает в сумматор 13.1, с выхода КОТОРОГО 32lbl2 + 322b22 + Э23Ь32 d22
выдается на третий информационный выход
и поступает на первый вход мультиплексора 4.1, передается на его выход и записывается в блок регистров 19.1. Элемент ааз записывается в регистр 10.1, а элемент Ьза - в 5 регистр 11.1, с выхода которого Ьз1 переписывается в регистр 12.1. В вычислительном модуле 1.2 с выхода умножителя 7.2 произведение ai2 D23 поступает в сумматор 13.2, с выхода которого anbis + aiab23 записыва0 ется в блок регистров 14.2. Эпемент ai2, записывается в регистр 10.2, элемент 023 - в регистр 11.2. с выхода которого baa переписывается в регистр 12.3. В вычислительном модуле 1.3 с выхода умножителя /-3
5 выдается произведение 332021 и поступает в сумматор 13.3, с выхода которого выдается сумма (asibn + 332021) и записывается в блок регистров 14.3. Элемент аза записывается в регистр 8.3, а элемент Ь21 - в регистр 11.3, с
0 выхода которого bis переписывается в1 регистр 12.3.
В девятом такте в вычислительном модуле 1.1с выхода умножителя 7.1 выдается аззЬзз в регистр 12.3.
5 В девятом такте в вычислительном модуле 1.1с выхода умножителя 7.1 выдается азз Ьзз и поступает в сумматор 13.1, с выхода которого asibi3 + эзаЬаз + аззЬзз d33. пройдя мультиплексор 4.1, записывается в
0 блок регистров 19.1. Элемент азз записывается в регистр 10.1, а элемент Ьзз в регистр 11.1, с выхода которого Ьза переписывается в регистр 12.1, В вычислительном модуле 1.2 с выхода умножителя 7.2 произведение
5 Э2зЬз1 поступает в сумматор 13.2, с выхода которого выдается 32ibn + 322021 + Э2зЬз1 d2i и, пройдя мультиплексор 4.2, записывается в блок регистров 14,2. Элемент 323, записывается в регистр 8.2, элемент Ьзт - в
0 регистр 11.2, с выхода которого Ь23 переписывается в регистр 12,2. В вычислительном модуле 1.3 с выхода умножителя 7.3 выдается произведение 312022 и поступает в сумматор 13.3, с выхода которого выдается сумма
5 aiibia + aiab22 и записывается в блок регистров 14.3. Элемент ai2 записывается в регистр 10.3, а элемент D22 - в регистр 11.3, с выхода которого b2i переписывается в регистр 12.3.
0 В десятом такте в вычислительном модуле 1.1 элемент Ьзз с регистра 11.1 перепи- сывается в регистр 12.1. На входы умножителя 7.1 поступают элементы новых матриц А и В, а в вычислительном модуле 5.1
5 на входы умножителя 20.1 поступают элементы си и dn, где умножаются,и произведение си dn, пройдя сумматор 24.1, записывается в регистр 25.1. Элемент си записывается в регистр 22.1, а элемент dn
с выхода блока регистров 19.1, поступая на второй вход умножителя 20.1, одновременно через второй вход мультиплексора 4.1 снова поступает в блок регистров 19.1. В вычислительном модуле 1.2 с выхода умножителя 7.2 произведение аззЬза поступает в сумматор 13.2, С выхода которого выдается аз1 bis + 332022 + аззЬз2 d32 и, пройдя мультиплексор 4.2, записывается в блок регистров 19.2. Элемент азз записывается в регистр 10.2, элемент Ьз2 - в регистр 11.2, с выхода которого bsi переписывается в регистр 12.2.В вычислительном модуле 1.3 с выхода умножителя 7.3 выдается произведение 322 Ьаз и поступает в сумматор 13.3, с выхода которого выдается сумма (aaibis + +322023) и записывается в блок регистров 14,3. Элемент аз.2 записывается в регистр 10.3, а элемент D23 - в регистр 11.3, с выхода которого Ь22 переписывается в регистр 12.3. В одиннадцатом такте в вычислительном модуле 5.1 с выхода ум ножителя 20.1 поступает ci2d22 и, пройдя сумматор 24.1, записывается в регистр 25.1, с выхода которого сti dn переписывается в регистр 18.1. Элемент ci2. пройдя сумматор 21.1, записывается в регистр 23.1, а элемент D22, пройдя мультиплексор 4.1, записывается в блок регистров 19.1. В вычислительном модуле 1.2 с выхода умножителя 7.2 произведение ai3 Ьзз поступает в сумматор 13.2, с выхода которого выдается antm + ai2b23 + + 31зЬзз dia и, пройдя мультиплексор 4.2, записывается в блок регистров 19.2. Элементам записывается в регистр 10.2, а элемент Ьзз в регистр 11.2, с выхода которого Ьза переписывается в регистр 12.2. В вычислительном модуле 1.3 с выхода умножителя 7.3 выдается произведение азз Ьз1 и поступает в сумматор 13.3, с выхода которого выдается сумма asibn + аз2Ь21 +аззЬз1 dsi и записывается в блок регистров 19.3. Элемент азз записывается в регистр 8.3, а элемент bsi - в регистр 11.3, с выхода которого Ь22 переписывается в регистр 12.3.
В двенадцатом такте в вычислительном модуле 5.1 с выхода умножителя 20.1 поступает произведение с-Ызз и, пройдя сумматор 24.1, записывается в регистр 25.1, с выхода которого ci2d22 переписывается в регистр 18,1. Элемент ci3, пройдя мультиплексор 21.1, записывается в регистр 23.1, а элемент dss, пройдя мультиплексор 4.1, зэписывзется в блок регистров 19.1. Элемент ds3 с выхода регистра 11.2 переписывается в регистр 12.2. В вычислительном модуле 5.2 с выхода умножителя 20.2 произведение поступает в сумматор 24,2, с выхода которого выдается (cudn + ciadzi) и
записывается в регистр 25,2. Элемент ai2 записывается в регистр 22.2, элемент Ь21 - в блок регистров 19.2. В вычислительном модуле 1.3 с выхода умножителя 7.3 выдается произведение 313032 и поступает в сумматор 13.3, с выхода которого выдается сумма aiibi2 + ai2b22 + Э1зЬз2 di2 и записывается в блок регистров 19.3. Элемент ai3 записывается в регистр 10.3, а элемент Ьз2 - в
0 регистр 11.3, с выхода которого Ьзт переписывается в регистр 12.3.
В тринадцатом такте в вычислительном модуле 5.1с выхода умножителя 20.1 посту- naeTC2idnH, пройдя сумматор 24.1, записы5 вается в регистр 25.1, с выхода которого cisdss переписывается в регистр 18.1. Эле- .мент С21 записывается в регистр 22.1, а элемент dn, пройдя мультиплексор 4.1, - в . блок, регистров 19.1. В вычислительном мо0 дуле 5.2 с выхода умножителя 20.2 произведение 31зЬз2 поступает в сумматор 24.2,, с выхода которого выдается (ci2d22 + ci3d32J и записывается в регистр 25.2, с выхода которого сумма (cudn + ciad2i) переписывается
5 в регистр 18,2, Элемент С1з записывается в регистр 23.2, элемент d32 - в блок регистров 19,2. В вычислительном модуле 1.3 с выхода умножителя 7.3 выдается произведение Э2зЬзз и поступает в сумматор 13.3, с выхода которого
0 выдается сумма 32ibi3 + 322b23 + 32зЬзз das и записывается в блок регистров 19.3. Элемент Ьз2 записывается в регистр 12.3.
В четырнадцатом такте в вычислительном модуле 5.1 с выхода умножителя 20.1
5 поступает C22d22 и, пройдя сумматор 24.1, записывается в регистр 25.1, с выхода которого C2idn переписывается в: регистр 18.1. Элемент С22, пройдя мультиплексор 21.1, записывается в регистр 23.1, а элемент d22,
0 пройдя мультиплексор 4.1, - в блок регистров 19.1, В вычислительном модуле 5.2 с выхода умножителя 20.2 произведение ciidss поступает в сумматор 24,2, с выхода которого выдается (стзйзз + спйзз) и записьи
5 вается в регистр 25. 2, с выхода которого сумма (ci2d22 + ci3d32) переписывается в регистр 18.2. Элемент си, пройдя мульти-.: плексор 21.2, записывается в регистр 23.2, а элемент dss - в блок регистров 19.2. В
0 вычислительном модуле 5.3 с выхода умножителя 20,3 выдается произведение cisdsi и поступает в сумматор 24.3, с выходе которого сумма cudn + ci2d2i + cisd3i fn записывается в регистр 25.3, Элемент cis
5 записывается в регистр 22.3, а элемент dsi - в блок регистров 19.3.
В пятнадцатом такте в вычислительном модуле 5.1 с выхода умножителя 20.1 .поступает C23d33 и в сумматоре 24.1 суммируется с нулем и записывается в регистр 25.1, с
выхода которого caadaz переписывается в регистр 18.1. Элемент С23, пройдя мультиплексор 21.1, записывается в регистр 23.1, а элемент d33 - в блок регистров 19,1. В вычислительном модуле 5.2 с выхода умно- жителя 20.2 произведение C22dai поступает а сумматор 24.2, с выхода которого выдается (c2idn + C22d2i) записывается в регистр 25.2, с выхода которого сумма (cisdss + + cndaa) переписывается в регистр 18.2. Элемент С22 записывается в регистр 22.2, а элемент d2i - в блок-фегистров 19.2. В вычислительном модуле 5.3 с выхода умножителя 20,3 выдается произведение cndi2 и поступает в сумматор 24,3, с выхода которо- го сумма ci2d22 +ci3ds2 + cndi2 fi2 записывается в регистр 25.3, с выхода которого fn переписывается в регистр 18,3. Элемент си записывается в регистр 22 Д а элемент di2 - в блок регистров 19.3.
В шестнадцатом такте в вычислительном модуле 5.1 с выхода умножителя 20.1 поступает C3idu в сумматор 24.1, с выхода которого czsdas переписывается в регистр 18.1. Элемент сз1 записывается в регистр 22,1, а элемент dn - в блок регистров 19.1. В вычислительном модуле 5.2 с выхода умножителя 20.2 произведение C23d32 поступает в сумматор 24.2, с выхода которого выдается (C22d22 +. C23d32) и записывается в регистр 25.2, с выхода которого сумма (C2idn + C22d2i) переписывается в регистр 18.2. Элемент С23 записывается в регистр 23.2, а элемент d32 - в блок регистров 19.2, В вычислительном модуле 5.3 с выхода ум- ножителя 20.3 выдается произведение ci2d23 и поступает в сумматор 24.3, с выхода которого сумма-ci3d3i + cnd33 + ciad23 di3 записывается в регистр 25,3, с выхода которого fi2 переписывается в регистр 18.3, с выхода которого на входе.устройства выдается fn - первый элемент матрицы F, Элемент С12 записывается в регистр 23.3, а элемент d23 - в блок регистров 19.3.
В семнадцатом такте в вычислительном модуле 5.1 с выхода умножителя 20.1 поступает C32d22 и поступает в сумматор 24.1, с выхода которого csidn переписывается в регистр 18.1. Элемент сз2 записывается в регистр 23.1, а элемент d22 - в регистр 18.1. В вычислительном модуле 5.2 с выхода умножителя 20.2 произведение C2id33 поступает в сумматор 24.2, с выхода которого выдается (C23d33 + C2id33) записывается в регистр 25.2, с выхода которого сумма (c22d22 + C23d32) переписывается в регистр 18.2. Элемент С21 записывается в регистр 23.2, а элемент йзз - в блок регистров 19.2. В вычислительном модуле 5.3 с выхода ум- . ножителя 20.3 выдается произведение С23
dsi и поступает в сумматор 24.3, с выхода которого сумма C2idn + C22d2i + C23d3i fai записывается в регистр 25.3, с выхода которого fis переписывается в регистр 18.3, с выхода которого на выход устройства выдается fi2i Элемент С23 записывается в регистр 23.3, с элемент dsi - в блок регистров 19.3. В восемнадцатом такте в вычислительном модуле 5.1 с выхода умножителя 20.1 поступает сззйзз и поступает -в сумматор 24.1, с выхода которого C32d22 переписывается в регистр 18.1. Элемент сзз записывается в регистр 23.1, а элемент d33 - в блок регистров 19,1, В вычислительном модуле 5.2 с выхода умножителя 20.2 произведение C32d2i поступает в сумматор 24.2, с выхода которого выдается (csidn + C32d2i) записывается в регистр 25.2, с выхода которого сумма (C23d33 + G2id33) переписывается в регистр 18,2. Элемент сз2 записывается в регистр 22.2, а элемент d2i - в блок регистров 19,2. В вычислительном модуле 5.3 с выхода умножителя 20.3 выдается произведение C2idi2 и поступает в сумматор 24.3, с выхода
КОТОРОГО Сумма C22d22 + C23d32 + P2ldl2 f22
записывается в регистр 25.3, с выхода которого f2i переписывается в регистр 18,3, с выхода которого на выход устройства выдается fi3. Элемент С21 записывается в регистр 23.3, а элемент di2 - в блок регистров 19.3,
В девятнадцатом такте в вычислительном модуле 5.1 с выхода регистра 25.1 в регистр 18.1 переписывается произведение C33d33. С выхода умножителя 20.2 выдается произведение cssd32 и поступает в сумматор 24,2, с выхода которого выдается сумма (C33d22 + C33d32) и записывается-в регистр 25.6, с выхода которого сумма (сз-idn + + C23d2i) переписывается в регистр 18.2. Элемент сзз записывается в регистр 23.2, а элемент d32 - в блок регистров 19.2. В вычислительном модуле 5.3 с выхода умножителя 20.3 выдается произведение C22d23 и поступает в сумматор 24,3, с выхода которого сумма C23d33 + C2id33 + C22d23 f23 записывается в регистр 25.3, с выхода которого f22 переписывается в регистр 18.3, с выхода которого-на выход устройства выдается f2t. Элемент С22 записывается в регистр 23.3, а элемент d23 - в блок регистров 19.3.
В двадцатом такте в вычислительном модуле 5.2 с выхода умножителя 20,2 выдается произведение C3id33 и поступает в сумматор 24.2, с выхода .которого выдается сумма (cssdas + сзтйзз) и записывается в регистр 25.2, с выхода которого сумма (C32d22+ + C33ds2) переписывается в регистр 18,2, Элемент сзт записывается в регистр 23.2, а элемент бзз - в блок регистров 19.2. В вычислительном модуле 5.3 с выхода умножителя 20.3 выдается произведение cssdsi и поступает в сумматор 24.3, с выхода которого сумма C3idn + C32d2i + сззйз тэт записывается в регистр 25.3, с выхода которого f23 переписывается в регистр 18.3, с выхода которого на выход устройства выдается f22. Элемент сзз записывается в регистр 23.3, а элемент dsi - в блок регистров 19.3,
В двадцать первом такте с выхода регистра 25.2 сумма (C33d33 + сз10зз) переписывается в регистр 18.2. В вычислительном модуле 5.3 с выхода умножителя 20.3 выдается произведение csidi2 и поступает в сумматор 24.3, с выхода которого сумма C32d22+ + сззс1з2 + C3idi2 f32 записывается в регистр 25.3, с выхода которого fsi переписывается в регистр 18.3, с выхода которого на выход устройства выдается f23. Элемент сз1 записывается в регистр 23.3, а элемент di2 - в блок регистррв 19.3..
В двадцать втором такте с выхода умножителя 20.3 выдается произведение сз2 d23 и поступает в сумматор 24.3, с выхода которого сумма cssdss + csidas + C32d23 fas записывается в регистр 25,3, с выхода которого f32 переписывается в регистр 18.3, с выхода которого на выход устройства выдает- ся fsi. Элемент сз2 записывается в регистр 23.3, а элемент d23 - в блок регистров 19.3.
В двадцать третьем такте с выхода регистра 25.3 fss переписывается в регистр 18.3, с выхода которого на выход устройства выдается f32. ,
В двадцать четвертом такте с выхода устройства выдается тзз - последний элемент матрицы F.
На этом вычисление матрицы x В х х С заканчивается.
Формула из обретения 1. Устройство для умножения матриц, содержащее N вычислительных модулей первого типа (где N - размерность перемножаемых матриц) и блок управления, первый и второй выходы которого соединены соответственно с первым и вторым управляющими входами первого вычислительного . модуля первого типа, первый и второй управляющие выходы i-ro вычислительного модуля первого типа (I 1, ..., N - 1) соединены соответственно с первым и вторым управляющими входами (i + 1)-го вычислительного модуля первого типа, первый и второй информационные выходы 1-го вычислительного модуля первого типа соединены соответственно с первым и вторым информационными входами (1 + 1)-го вычислительного модуля первого типа, отличающееся тем, что, с целью расширения функциональных возможностей за счет умножения трех матриц, в него введены (2N-2) триггеров, N мультиплексоров и N вычислительных модулей второго-типа, причем первый и второй информационные входы первого вычислительного модуля первого типа соединены соответственно с первым и вторым информационными входами устройства, третий информационный выход J-ro вычислительного модуля первого типа (j 1,;.., N) соединен с первым информационным вхо0 дом j-ro мультиплексора, второй информационный вход которого соединен с первым информационным выходом J-ro вычислительного модуля второго типа, а выход - с первым информационным входом j-ro вы5 числительного модуля второго типа, второй и третий информационные входы первого вычислительного модуля второго типа соединены соответственно с третьим информационным входом и входом логического нуля
0 устройства, второй и третий информационные выходы 1-го вычислительного модуля второго типа соединены соответственно с вторым и третьим информационными вхо- дамти (I + 1)-го вычислительного модуля вто5 рого типа, второй информационный вход N-ro вычислительного модуля второго типа соединен с выходом устройства, первый выход.блока управления соединен с управляющим входом первого вычислительного
0 модуля второго типа, первый управляющий выход 1-го вычислительного модуля первого типа соединен с управляющим входом (I + 1)-го вычислительного модуля второго типа, третий выход блока управления соединен с
5 управляющим входом первого,мультиплексора и входом первого триггера, выход k-ro триггера (к 1, ..., 2N-1) соединен с входом (к + 1)-го триггера, выход каждого 21-го триггера (1 1,.... N-1) соединен с управляющим
0 входом m-го мультиплексора (т 2, .... N).
2. Устройство по п. 1, о т л и ч а ю щ е е- с я тем, что каждый вычислительный модуль первого типа содержит умножитель, сумматор, четыре-триггера, четыре регистра, блок
5 регистров и мультиплексор, первый информационный вход которого соединен с информационным входом первого регистра, первым входом умножителя и первым информационным входом модуля, второй ин0 формационный вход которого .соединен с вторым входом умножителя и информационным входом второго регистра, выход которого соединен с информационным входом третьего регистра, выход которого соединен
5 с вторым информационным выходом устройства, первый информационный выход которого соединен с выходом четвертого регистра, информационный вход которого соединен с выходом мультиплексора, второй информационный вход которого соединен с
выходом первого регистра, управляющий вход которого соединен с управляющим входом мультиплексора, входом первого триггера и первым управляющим входом модуля, второй управляющий вход которого соединен с управляющим входом сумматора и входом второго триггера, выход которого соединен с входом третьего триггера, выход которого соединен с вторым управляющим выходом модуля, первый управляю- щий выход которого соединен с выходом четвертого триггера, вход которого соединен с выходом первого триггера, выход умножителя соединен с входом первого слагаемого сумматора, вход второго слагав- мого которого соединен с выходом блока регистров, вход которого соединен с выходом блока регистров, вход которого соединен с выходом сумматора и третьим информационным выходом модуля.
3. Устройство по п. 1,отличающее- с я тем, что каждый вычислительный модуль второго типа содержит умножитель, сумматор, четыре регистра, мультиплексор и блок регистров, вход которого соединен с пер-
вым информационным входом модуля, второй информационный вход которого соединен с первым входом умножителя, информационным входом первого регистра и первым информационным входом мультиплексора, второй информационный вход которого соединен с выходом первого регистра, управляющий вход которого соединен с управляющими входами модуля и мультиплексора, выход которого соединен с информационным входом второго регистра, выход которого соединен с вторым информационным выходом модуля, первый информационный выход которого соединен с выходом блока регистров и вторым входом умножителя,, выход которого соединен с входом первого слагаемого сумматора, выход которого соединен с информационным входом третьего регистра, выход которого соединен с информационным входом четвертого регистра, выход которого соединен с третьим информационным выходом модуля, третий информационный вход которого соединен с входом второго слагаемого сумматора.
Фиг.4
Фиг.5
название | год | авторы | номер документа |
---|---|---|---|
Устройство для умножения матриц | 1991 |
|
SU1835548A1 |
Устройство для перемножения матриц | 1989 |
|
SU1839262A1 |
УСТРОЙСТВО ДЛЯ ПЕРЕМНОЖЕНИЯ МАТРИЦ | 1990 |
|
RU2006937C1 |
Устройство для матричных операций | 1989 |
|
SU1777154A1 |
Устройство для быстрого преобразования Фурье | 1988 |
|
SU1524066A1 |
Устройство умножения матрицы на вектор | 1984 |
|
SU1226484A1 |
Устройство для быстрого преобразования Фурье | 1989 |
|
SU1633425A1 |
Устройство для быстрого преобразования Фурье | 1985 |
|
SU1287175A1 |
Устройство для быстрого преобразования Фурье | 1984 |
|
SU1206802A1 |
Устройство для операций над матрицами | 1990 |
|
SU1735868A1 |
Изобретение относится к вычислительной технике и может быть использовано при построении специализированных вычислительных систем, функционирующих в реальном времени. Целью изобретения является расширение функциональных возможностей за счет умножения трех матриц. Устройство для умножения матриц содержит N вычислительных модулей первого типа, (2N-2) триггеров, блок управления, N мультиплексоров, N вычислительных модулей второго типа. Умножение трех матриц в устройстве осуществляется в естественном порядке ввода исходных матриц и вывода результатов, т. е. по строкам и по столбцам на основании выражения F С х D, где D А х В , где А - матрица порядка М х К , В/ - матрица порядка К х М, D - промежу-; точная матрица.; 2 з.п. ф., 6 ил
Of 2 3 4 5 В 7 8 ff 10 ff ft /J /4
Печь для непрерывного получения сернистого натрия | 1921 |
|
SU1A1 |
Джауадиш X | |||
Д., Рао С | |||
С., Кайлат Т | |||
Матричные структуры для реализации итерационных алгоритмов | |||
ТИИЭР, Т | |||
Фальцовая черепица | 0 |
|
SU75A1 |
Аппарат для очищения воды при помощи химических реактивов | 1917 |
|
SU2A1 |
Устройство для перемножения матриц | 1989 |
|
SU1705836A1 |
Приспособление для точного наложения листов бумаги при снятии оттисков | 1922 |
|
SU6A1 |
Авторы
Даты
1993-03-07—Публикация
1991-03-05—Подача