SU1585804A1 - Устройство дл умножени матриц - Google Patents
Устройство дл умножени матриц Download PDFInfo
- Publication number
- SU1585804A1 SU1585804A1 SU884497393A SU4497393A SU1585804A1 SU 1585804 A1 SU1585804 A1 SU 1585804A1 SU 884497393 A SU884497393 A SU 884497393A SU 4497393 A SU4497393 A SU 4497393A SU 1585804 A1 SU1585804 A1 SU 1585804A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- inputs
- output
- outputs
- blocks
- computational
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Изобретение относитс к вычислительной технике и может быть использовано в высокопроизводительных специализированных процессорах дл обработки больших массивов данных. Цель изобретени - снижение аппаратурных затрат. Устройство содержит вычислительные блоки, сгруппированные в вычислительные модули, блоки суммировани , информационные входы и выходы, входы управлени . Каждый вычислительный модуль содержит информационные входы и выходы, мультиплексоры, элементы задержки, блоки пам ти и входы управлени . Блок суммировани содержит информационные входы и выходы, сумматоры. Вычислительный блок содержит информационные входы и выходы, регистры операндов, умножитель и регистр результата. В основу работы устройства положен рекуррентный алгоритм перемножени N . N матриц, разбитых на блоки размерностью P . P (N кратно P). 3 з.п. ф-лы, 5 ил.
Description
1
(21)4497393/24-24
(22)21.10.88
(46) 15.08.90. Бюл. № 30
(72) А.В. Демидов, А.Н. Бондарь,
В.Г. Гриневич и А.Н. Семашко
(53)681.38(088.8)
(56)За вка Великобритании № 2144245, кл. G 06 F 7/52, 1985.
Гун Суньюань. Систолические и волновые матричные процессоры дл высокопроизводительных вычислений, ТИИЭР, т. 72, 1984, № 7, с. 140, рис. 8.
(54)УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ МАТРИЦ
(57)Изобретение относитс к вычислительной технике и может быть использовано в высокопроизводительных специализированных процессорах дл обработки больших массивов данных.
Цель изобретени - снижение аппаратурных затрат. Устройство содержит вычислительные блоки, сгруппированные в вычислительные модули, блоки суммировани , информационные входы и выходы , входы управлени . Каждый вычис- лительньш модуль содержит информацион- ные входы и выходы, мультиплексоры, элементы задержки, блоки пам ти и входы управлени . Блок суммировани содержит информационные входы и выходы, сумматоры. Вычислительный блок содержит информационные входы и выходы, регистры операндов, умножитель и регистр результата. В основу работы устройства положен рекуррентный алгоритм перемножени пхп матриц, разбитых на блоки размерностью р х р (п кратно р). 3 3.п. ф-лы, 5 ил.
(Л
СП
00
сд
00
( Sf
фиг i
10
15
Изобретение относитс5г к вычислительной технике и может быть использовано в высокопроизводительных специализированных процессорах дл обработки больпшх массивов данных.
Цель изобретени - снижение аппаратурных затрат.
На фиг. 1 представлена структурна схема устройства дл умножени матриц А и В размерности п х п (пункти- . ром выделен фрагмент, вход управлени не показан); на фиг. 2-4 - составные элементы устройства дл умножени матриц . А и В дл случа п х п 8x8 и рхр 2x2, где р - размерность блоков, на которые разбиваютс перемножаемые матрицы (на фиг, 2 - структурна схема вычислительного мрдул ; на фиг„ 3 - структурна схема блока суммировани ; на фиг« 4 - структурна схема вычислительного блока); на фиг, 5 - последовательность ввода данных и получени результатов.
Устройство (фиг. 1) содержит ин- 55 формационные входы 1, вычислительные модули выходы 3 вычислительных модулей ,, входы блоков 4 суммировани , ; блоки 5 суммировани , выходы 6 блоков j суммировани , входы 7 блока суммиро- i вани , блок 8 суммировани , выход 9 устройства
Вычислительньй модуль (фиг„ 2) со-, держит первую 10 , и 10 и вторую Ю. и 104- группы информационных входов, мультиплексоры 11, элементы 12 задерж-35 ки, вычислительные блоки.13, блоки 14 пам ти, первый 15 и второй 16 управл ющие входы, группу выходов 17,
Блок суммировани (фиг. 3) содер
о
ч
о, 1 i j 8 ;
.- г k
а.Ь,, ,8.
(2)
Сгруппируем элементы матриц Аи В (1) в блоки размерности рхр 2x2 и обозначим блоки матрицы А h,j(i 1 J ) а блоки матрицы
Результирующа матрица С также будет блоки р х р 2 х 2 f,- (, 1 1,4; j ),
Q
11
4i
3f
4f
rz 11
-«
2-2 23 (|
32
f33 34
- 1 t 4.3 14,
Блоки fjj матрицы С также будут вычисл тьс по рекуррентной формуле (2)
0. 1 f .
ij 1J IK
i, J
q
Ki
,,4.
(3)
30
Следовательно, no рекуррентной
формуле (3) сразу будут вычисл тьс
р элементов результирующей матриды
С одного блока f,-;. Соотношение (3) положено в основу работы предлагаемого устройства дл умножени матриц.
Устройство работает следующим образом .
В статическом режиме на входы 15 и 16 управдени подаетс разрешающий сигнал логической 1. При этом через
-. - v-v.-.x-K ciii-HciJi ли ичаикои I . ири этом через
жит первую 18 и вторую 19. группы вхо-40 мультиплексоры 11 разрешаетс прохождов , сумматоры 20, группу выходов 21, В ычислительный блок (фиг. 4) содержит первый 22 и второй 23 входы, per,, гистры 24 и 25, умножитель 26, первый 27 .и второй 28 выходы, регистр 29 и третий выход 30.
Работу устройства можно по снить на примере умножени квадратных 8x8 матриц А .и В; А В С„
дение данных с информационных входов устройства к вычислительным блокам. Все регистры и сумматоры обнулены.
На первом такте (фиг. 5) на информационные входы устройства 1,-(,4) поступают 4 элемента а , соответственно блоков h
11 S
12
Чэ
И 4
элемента b ,, блоков q . , q ,,,, 4,,q, 50 причем элементы a,-j поступают на, вхо55
ды 10 , а элементы h,-j - на входы вычислительных модулей 2. ( ,4). На входы 15 и 16 управлени подаетс разрешающий сигнал логиче ка 1. Операнды а , через мультипл
Каждый элемент с результир-ующей матрицей С определ етс : по рекуррентной формуле
, соры 11 поступают на первые входы
вычислительного блока 13,, а опера Ь через мультиплексоры 11 j- на вт рые входы вьшислительного блока 13
о
ч
о, 1 i j 8 ;
.- г k
а.Ь,, ,8.
(2)
Сгруппируем элементы матриц Аи В (1) в блоки размерности рхр 2x2 и обозначим блоки матрицы А h,j(i 1 J ) а блоки матрицы
15
Результирующа матрица С также будет блоки р х р 2 х 2 f,- (, 1 1,4; j ),
11
rz 11
-«
Q
4i
2-2 23 (|
3f
32
f33 34
4f
- 1 t 4.3 14,
Блоки fjj матрицы С также будут выисл тьс по рекуррентной формуле (2)
0. 1 f .
ij 1J IK
i, J
q
Ki
,,4.
(3)
Следовательно, no рекуррентной
формуле (3) сразу будут вычисл тьс
р элементов результирующей матриды
С одного блока f,-;. Соотношение (3) положено в основу работы предлагаемого устройства дл умножени матриц.
Устройство работает следующим образом .
В статическом режиме на входы 15 и 16 управдени подаетс разрешающий сигнал логической 1. При этом через
ciii-HciJi ли ичаикои I . ири этом через
мультиплексоры 11 разрешаетс прохож40 мультиплексоры 11 разрешаетс прохож
дение данных с информационных входов устройства к вычислительным блокам. Все регистры и сумматоры обнулены.
На первом такте (фиг. 5) на информационные входы устройства 1,-(,4) поступают 4 элемента а , соответственно блоков h
11 S
12
Чэ
И 4
элемента b ,, блоков q . , q ,,,, 4,,q, 0 причем элементы a,-j поступают на, вхо10 ,
5
ды 10 , а элементы h,-j - на входы вычислительных модулей 2. ( ,4). На входы 15 и 16 управлени подаетс разрешающий сигнал логическа 1. Операнды а , через мультиплексоры 11 поступают на первые входы
соры 11 поступают на первые входы
вычислительного блока 13,, а операнды Ь через мультиплексоры 11 j- на вторые входы вьшислительного блока 13 „
(фиг. 2). Операнды а, записываютс в первые 24, а операнды Ь,, - во вторые 25 регистры операндов (фиг. 4). После этого умножители 26 вычислительных блоков 13, выполн ют ойерацию умножени а-Ь и результаты записываютс в регистры 29 результатов. На этом первый такт работы устройства заканчиваетс . Остальные вычислительные блоки 13 вычислительных модулей 2j и сумматоры 20 блоков 5 и 8 суммировани произ- вод т операции с нулевыми операндами, так как перед началом работы они были обнулены.
Таким образом, после первого такта работы в регистрах 29 результата вычислительного блока 13 вычислительных модулей 2 будут следующие операнды: a;,,b,- в вычислительном модуле 2.; a,b.j,- в вычислительном модуле a,j Ь ,j-,- в вычислительном модуле 2 ; а f-fb Tf- в вычислительном модуле 2.
На втором такте на информационные входы устройства поступают элементы
12
Зц
П
Ь, тех же блоков
25
h,-;(j 1 ,4) и qj,(,4), причем элементы аj поступают на входы 10, а элементы а а, - на входы 10, элементы Ь,,- на входы 10 J, элементы b ,- на входы всех вычислительных блоков 2 (,4), Элементы а , перепись вают- с из регистров 24 вычислительных
30
Вычислительные операции выполн ютс аналогично описанным. Исключение составл ют операции сложени в сумматорах последнего блока 8 суммировани , в котором в накапливающих сумматорах 20 к ранее вычисленным операндам производитс прибавление операндов , поступающих на первые и вторые входы блока 8 j суммировани . Обнуление этих сумматоров происходит на следующем такте после вычислени каждого элемента с результирующей матрицы С.
На чертертом такте на первые входы 18 блока 8 суммировани поступают oneблоков 13„ в регистры 24 вычислитель- рации с выходов 21 блока 5 суммировани , а на вторые входы 19 - с выходов
ных блоков 1 3 jj. Элементы b переписываютс из регистров 25 вычислительных 35 блоков 13, в регистры 25 вычислительных блоков 13,. Операнды из регистров 29 результата вычислительных блоков 13,j всех вычислительных модулей попарно поступают,на сумматоры 20 бло- 40 ков 5 и 5 суммировани . Элементы u ai II b г,записываютс в первые 24 и вторые 25 регистры вычисли21 блока 5,j суммировани .
В конце четвертого такта работы устройства на выходах блока 8 суммировани будут сформированы следующие операнды: на выходе 21 с ,,а ,,Ь , +
+а,, Ьэ1+ а,Ь 5-,+ г + а, Ь4,+ ,+
47
bа
fZ
+ а
1Ъ
211 - а ,1 b
на выходе 21j - , +
п Т2
23 3
.+ а.
а ,j bg, ; нл выходе J1+ а
+ на выходе 21 4 - 0.
тельных блоков 13, 13,
3 1. В
результате выполнени операций умножени в регистрах 29 результата вы- числительных модулей 2 . в конце 2-го такта будут следующие операнды: а fibi а, b,; (); на выходе 21, блока 5y. - a bji-b a jbjt;, на выходе 21гблока 5 а ,
5i на выходе 2 Ij, блока
n TI
на выходе 21.блока
+ а -рb-yi ; J, + а 5 2 - 0.
В регистрах 29 результата вычислительных блоков 13 вычислительных модулей 2 будут сформированы произведени в соответствии с поступившими операндами (фиг. 2 и 5).
85804
кого О,
10
На четвертом такте сигналы логичес- задержанные на один такт в элементах 12 блоков 2, (,4), поступают соответственно на третьи входы мультиплексоров 11. Эти сигналы запрещают прием операндов по первым и одновременно разрешают прохождение операндов по вторым входам мультиплексоров 112. Через эти мультиплексоры проход т операнды соответственно с первых выходов вычислительных блоков 13 . Кроме этого, операнды Ь,блоков
q „, Чг, 1}, ,
q с вторых выходов.
15
20
25
-
30
вычислительных блоков 13 записываютс соответственно в первые регистры блоков 142 пам ти всех вычислительных модулей.
Вычислительные операции выполн ютс аналогично описанным. Исключение составл ют операции сложени в сумматорах последнего блока 8 суммировани , в котором в накапливающих сумматорах 20 к ранее вычисленным операндам производитс прибавление операндов , поступающих на первые и вторые входы блока 8 j суммировани . Обнуление этих сумматоров происходит на следующем такте после вычислени каждого элемента с результирующей матрицы С.
На чертертом такте на первые входы 18 блока 8 суммировани поступают one5 0
21 блока 5,j суммировани .
В конце четвертого такта работы устройства на выходах блока 8 суммировани будут сформированы следующие операнды: на выходе 21 с ,,а ,,Ь , +
+а,, Ьэ1+ а,Ь 5-,+ г + а, Ь4,+ ,+
47
bа
fZ
+ а
1Ъ
211 - а ,1 b
на выходе 21j - , +
п Т2
23 3
.+ а.
5
0
а ,j bg, ; нл выходе J1+ а
+ на выходе 21 4 - 0.
Таким образом, в конце 4 такта на сумматоре 20, блока 8 суммировани будет сформирован первый элемент с, результирующей матрицы С, а на сумматорах 21 ,j и 21 - начнетс формирование соответственно элементов с , и с.;,.
Аналогично вычисл ютс остальные элементы матрицы-результата С.
55
Claims (4)
- Формула изобретени1 . Устройство ДД1Я умножени матриц , содержащее m рп вычислительных (Модулей (п - размерность обрабатываемых матриц, кратна р; р - размерности блоков обрабатываемых матриц)„ i-e и j-e информаи юнные входы которых (,p; j p+1;2p) образуют соответственно первую и вторую группы информационных входов устройства, отличающеес тем, что, с целью снижени аппаратурных затрат, устройство содержит 1-1 блоков суммировани (), причем входы первой и второй групп К-го (,1/2) блока суммировани подключены к соответству юрдим выходам групп выходов соответственно (2К-1)-го и 2К-ГО вьиислитель- модулей группа выходов (1-1.)го б1пока сумматоров вл етс группой выходов устройства, входы первой и второй групп З-го блока с ммировани (:S r-J-1; r+t; r l/2+l/4+.o,+l/2t;tтиплексоров,щ, р вычислительных блоков151/2) подключены к соответствующим вы- х:одам групп выходов соответственно (S-2t)-ro и (S+2t-f1)-ro блоков суммировани , управл ющие входы вычисли- тельных модулей образуют группу управл ющих входов устройства о
- 2. Устройство по п. 1, отличающеес тем, чтоJкаждый вычислительный модуль содержит 2р муль- 2р-1 элементов задержИ р бло-к|ов пам ти, причем i-e входы первой и в1торой групп инфорк ационных входов ззычислительного модул соединены с первыми информационны ш входами соот- Е1етственно i-ro и (i+p)-ro. мультиплексоров , рервый и втррой управл ющие входы вычислительного модул , подключены соответственно к управл ющим входам первого и (р+1)-го мультиплексоров , управл ющие выходы i-ro и (i+p)- го мультиплексоров подключены к входам соответственно i-ro и (i+p)- г6 элементов задержки, выходы которых подключены к управл юпщм )зходам соот- зетственно (i-H)-ro и (i-bp+1)-ro мультиплексоров , информационный выход,5005Q051-го мультиплексора подключен к первому входу (i, 1)-го вычислительного блока, первый выход (1, v)-ro. вычислительного блока (,p-1) подключен к первому входу (i,v+1)-ro вычислительного блока, а первый выход (1,р)-го вычислительного блока подключен к второму информационному входу i-ro мультиплексора, информационный выход (i+p)-ro мультиплексора подключен к второму входу (l,i)-ro вычислительного блока, второй выход (v,i)-ro вычислительного блока подключен к второму входу (v+1,i)-ro вычислительного блока, второй выход (p,i)-ro вычислительного блока подключен к входу i-ro блока пам ти, выг ход которого подключен к второму информационному входу (i+p)-ro мульти- апексора, третий выход (i,j-)-ro вычислительного блока подключен к ((i-1)p+j)-My выходу вычислительного модул .
- 3.Устройство по п. 1, отличающеес тем, что блок суммировани содержит р сумматоров, первые и вторые входы которых образуют соответственно первую и вторую группы входов блока суммировани , группу выходов .которого образуют выходы сумматоров .
- 4.Устройство по п. 2,отличающеес тем, что вычислительный блок содержит три регистра и умножитель , первый и второй входы которого подключены соответственно к первому и второму выходам вычислительного блока, первый и второй входы которого подключены к входам соответственно первого и второго регистров, выходы которых подключены соответственно к первому и второму входам умножител , выход которого вл етс третьим выходом вычислительного бло- , ка.игЗФигЛ
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU884497393A SU1585804A1 (ru) | 1988-10-21 | 1988-10-21 | Устройство дл умножени матриц |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU884497393A SU1585804A1 (ru) | 1988-10-21 | 1988-10-21 | Устройство дл умножени матриц |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1585804A1 true SU1585804A1 (ru) | 1990-08-15 |
Family
ID=21405577
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU884497393A SU1585804A1 (ru) | 1988-10-21 | 1988-10-21 | Устройство дл умножени матриц |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1585804A1 (ru) |
-
1988
- 1988-10-21 SU SU884497393A patent/SU1585804A1/ru active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4354249A (en) | Processing unit for multiplying two mathematical quantities including at least one complex multiplier | |
US6286023B1 (en) | Partitioned adder tree supported by a multiplexer configuration | |
EA200000462A1 (ru) | Арифметическое устройство для работы с целыми числами с многократно увеличенной точностью | |
US4692888A (en) | Method and apparatus for generating and summing the products of pairs of numbers | |
SU1585804A1 (ru) | Устройство дл умножени матриц | |
CN108255463B (zh) | 一种数字逻辑运算方法、电路和fpga芯片 | |
US6249799B1 (en) | Selective carry boundary | |
JPS63147255A (ja) | 複数の直列接続段を有する計算用プロセッサおよびこのプロセッサを応用したコンピュータならびに計算方法 | |
SU1425722A1 (ru) | Устройство дл параллельной обработки видеоинформации | |
SU1727136A1 (ru) | Устройство дл поклеточного умножени матриц | |
SU1644158A1 (ru) | Устройство дл вычислени быстрого преобразовани Фурье | |
SU1444759A1 (ru) | Вычислительное устройство | |
RU2022334C1 (ru) | Устройство для перемножения числовых матриц | |
CA2147314A1 (en) | A configurable vector processor | |
KR960016574A (ko) | 신호처리장치 | |
RU2022339C1 (ru) | Множительное устройство | |
SU1659998A1 (ru) | Устройство дл сортировки чисел | |
RU1835548C (ru) | Устройство дл умножени матриц | |
SU1621033A1 (ru) | Устройство дл умножени чисел с контролем | |
SU1716536A1 (ru) | Устройство дл умножени матриц | |
SU1092495A1 (ru) | Двоичный сумматор | |
SU1394218A1 (ru) | Устройство дл решени систем линейныых алгебраических уравнений | |
RU1807499C (ru) | Устройство дл умножени матриц | |
SU849208A1 (ru) | Устройство дл умножени | |
SU1721612A1 (ru) | Устройство дл операций над матрицами |