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

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и может использоваться для создания высокопроизводительных специализированных и универсальных ЭВМ. Цель изобретения - повышение быстродействия и уменьшение аппаратных затрат. Для достижения поставленной цели в устройстве, представляющем собой регулярную матрицу вычислительных блоков, вычислительные блоки выполнены разнотипными (всего пять типов). Операции над данными и переносами разнесены во времени и соответствуют длительности и паузе синхронизирующего импульса. Пары чисел поступают последовательными кодами. Повышение быстродействия достигается за счет разнесения во времени и пространстве обработки данных и переносов, конвейеризации этих процессов при выполнении векторной операции. 8 ил.

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

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

РЕСПУБЛИН ($g)$ С Об F 7 544

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

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

ПРИ ГКНТ СССР (21) 431 2186/24-24 (22) 02. 10. 88 (46) 07.06.90. Бюл. 1 21 (71) Институт кибернетики им. В.М.Глушкова АН УССР (72) В.А.Вишинский, З.Л.Рабинович и Б.М.Тихонов (53) 681.325.5(088.8) .(56) Авторское свидетельство СССР

Ф 1166101, кл. G 06 F 7/52, 1984.

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

Р 905814, кл. С 06 F 7/52, 1980, (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ СУММ

ПРОИЗВЕДЕНИЙ (57) Изобретение относится к вычислительной технике и может использоваться для создания высокопроизводительных специализированных и универсальИзобретение относится к вычислительной технике, в частности к устройствам обработки массивов информации, и может быть использовано при построении как универсальных ЭВМ, так и специализированных вычислительных машин, ориентированных на исполнение в микроэлектронной интегральной технологии.

На фиг. 1а,б представлена структурная схема устройства; на фиг. 2 — б— функциональные схемы вьгчислительных блоков, на основе которых формируется вычислительная матрица устройства; на фиг. 7 — функциональная схема блока управления.

Структурная схема устройства представлена на фиг. 1.

„„SU„„1569826 А 1 ных 3ВМ. Цель изобретения — повышение быстродействия и уменьшение аппаратных затрат. Для достижения поставленной цели в устройстве, представляющем собой регулярную матрицу вычислительных блоков, вычислительные блоки выполнены разнотиптн. ми (всего пять типов). Операции нлд данными и переносами разнесены во времени и соответствуют длительности и паузе синхронизирующего импульса. Пары чисел поступают последовательными кодами, Повышение быстродействия достигается засчет разнесения во времени и пространстве обработки данных и переносов, конвейеризации этих процессов при С2

Cl выполнении векторной операции. 6 з.п. ф-лы, 7 ил, 2 табл.

Устройство содержит матрицу 1 вычислительных блоков и блок 2 управления. Матрица 1 вычислительных блоков содержит и информлционных входов

3 (1=1 Q) и один информационный выход 4. Матрица состоит из п+? строк, ка:тсцая из первых и+1 строк состоит из и+2 вычислительных блоков. Число входов определяется ко тичеством пар сомножителей, результат считывлется с информационного выхода 4.

Управление устройством осуществляется по управляющему входу 5.

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

1569826

Блок содержит элемекг 2И IIJIH 6.

7. триггppbt 8 H 9, ИЛ1 10, элементы И 11 и 12, триггеры

13 и 14, элементы 2И-ИЛИ 15 и 16, элементы И 17 и 18„триггеры 19 и 20 и элемент ?И-ИЛИ 21.

На фиг. 3 представлена функциональная схема вычислительного блока втсрого типа, предназначенного для формирования первого столбца первых г строк, Блок содержит элемент 2И-ИГЛ

22,, сумматор 23, триггеры 24 и 25,, элемент ИЛИ 26, элементы И 27 и 28,, элемент 2И-ИГК 29, элементы И 30 и 31,15 триггеры 32 и 33, элемента 2И-ИЛИ 34, триггер 35, элемент 2И-ИЛИ Зб, элемент И 37, триггер 38, полусумматор

39, триггеры 40 и 41, элемент И 42, .-1а фиг. 4 представлена функциональ-20 ная схема вычислительного блока третьего гила, из которого формируются (и+ l) — и и (n+2) — и столбцы первых и, строк матрицы. Блок содержит суыитор 43,. два триггера 44 и 45„,. эле-- 25 мент ИИ 46, два элемекта И..47 и 48, На фиг. 5 представлена фунциональная схема вычислительного блока четвертого типа,. предназначенного для формирования (и+1)-й строки матрицы 1 -.:„; (блоки 1.1,(п+1)-1.(и+2).(и+ 1). Блок содержит элемент 2И-ИЛИ 49, сумматор

50„ триггеры 1 и 52, элемент ИЛИ 53, элементы И 54 и 55, .триггеры 56 и 57, элементы 2И-ИЛИ 58 и 59, элемент И 6n.„

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

AopMирования (и+2) -й строки матрицы.

Блок содержит элемент 2И-ИЛЛ 61., сумматор 62, триггеры 63 и 64, элемент

И3И 65, элементы И бб и 67 триггер 68 ., На фиг. 7 представлена функциональ-ная схема блока 2 управления,. который содержит генератор 69 сикхроимпульсов, (и+3)-paapaprrba» сдвиговый ре— гистр 70,. состоящий из двойных М.-S триггеров, и+4 элемента ИЛИ 71 (1=(-пг4) ., Вычислительные блоки содержат слеп дующие входы! выходы.

Вычислительный блок первого типа (фиг,2) содержит вход 72 данных, вход

73 второго переноса, вход 74 суммы, вход 75 первого переноса, информационный 76 и управляющий.77 входы, вход

78 управления передачей cour вход

79 синхронизации вход 80 формирования допольп»тельного кода... выход 8 1 первого переноса, выход 82 суммы, выход 83 второго переноса, выход 84 данных.

Вычислительный блок второго типа (фиг.З) содержит вход 85 данных, вход

86 второго переноса, вход 87 суммы, вход 88 первого переноса, информационный вход 89, вход 90 разрешения записи, управляющий вход 91, вход 92 управления передачей суммы, вход 93 синхронизации, вход 94 формирования дополнительного кода, выход .95 первого переноса, выход 96 суммы, выход 97 данных, первый управляющий выход 98„ второй управляющий выход 99.

Вычислительный блок третье.го типа (фиг. 4) содержит вход 100 перекоса, вход 101 суммы, вход 102 формирования дополнительного кода, вход 103 управления передачей суммы, вход 104 синхронизации, выход 105 суммы, выход

106 переноса.

Вычислительный блок четвертого типа (фиг.5) содержит вход 107 второго переноса, вход 108 суммы, вход

l09 первого переноса, первый 110 и второй 111 информациокные входы, управляющий вход 112, вход 113 управления передачей суммы, вход 114 синхронизации, выход 115 первого переноса, выход 116 суммы, выход 117 второго переноса.

Вычислительный блок (фиг. 6) содержит вход 118 второго переноса, вход l19 суммы, вход 120 первого переноса, информационный вход 121, управляющий вход 122, вход 123 разрешения записи, вход 124 синхронизации, выход 125 суммы, выход l26 переноса.

Для удобства чтения схем приведена сводная таблица входов/выходов:

Входы вычислительных элементов мат-рицы по своему функциональному назначению разделены на 12 типов, а именно: входы 72 и 85 данных; входы 75, 88,109 и 120 первого переноса; входы 73,86.,100,107 и 118 второго перекоса входы 74,,87,101,108 и 119 суммы; первые информационные входы 76, 89,110 и 121; второй информационный вход.111; вторые управляющие входы

112 и 122; входы 90 и 123 разрешения записи; первые управляющие входы 77 и 91; входы 78,92, 103 и 113 управления передачей суммы, входы 80,94 и 102 форьирования дополнительного кода; входы 79,93,104 114 и 124 синzpонизации, 5

1569826

Выходы вычислительных элементов также подразделяются по функциональному назначению: выходы 81,95 и 115 первого переноса; выходы 83,106, 117 и 176 второго переноса; выходы 82,96, 105,116 и 125 суммы; выходы 84 и 97 данных; первый управляющий вьиод 98; второй управляющий выход 99.

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

По входам 72 и 85 данных на каждом такте работы устройства в вычислительные блоки первых и строк производится перезапись разрядов сомножителей с выхода данных соседнего слева вычислительного блока. Входы 75,88 и 109 первого переноса (i,j)-ro вычислительного элемента в строках матрицы .с 1-й по.(и+1)-й предназначены для приема переноса, возникающего на выходе первого переноса в (i-1, j+1) вычислительном блоке при сложении младших разрядов данных при действии синхроимпульса С, . В (n+2) é строке по входу 120 первого переноса осуществляется прием разрядов переноса из (и+1)-й строки при наличии управляющего сигнала на входе 122.

Входы 73,86,100,107 (i,j) второго переноса вычислительного блока в строчках с 1-й по (и+1)-ю матрицы предназначены для приема переноса, возникающего при сложении старших рязрядов данных с выхода второго переноса в (i-1, j 1) вычислительном блоке при действии синхроимпульса

В (и+2)-й строке на вход 118 второго переноса поступает сигнал переноса

1 с выхода второго переноса своего же вычислительного блока.

Входы 74,87,101 и 108 суммы (i,j) вычислительных блоков в (n+",) строках матрицы предназначены для приема разряда суммы, возникающего на выходе суммы (i-1,j) вычислительного блока при наличии управляющего сигнала на входе управления передачи суммы.

В (n+2)-й строке на этот вход 119 суммы поступает значение суммы с соседнего справа вычислительного блока.

Первые информационные входы 76 и 89 (i,j) вычислительного блока, где х=1-п, 1=1-п, предназначены для приема сигнала с первого управляющего выхода (х,1) вычислительного блока и формирования соответствующего разряда частичного произведения. В (n+1) -й и (и+2)-м столбцах матрицы на этот вход 102 поступает сигнал для формирования дополнительного кода, в, (n+1)-й строке матрицы на первый ин5 формационный вход 110 поступает сигнал переноса с соседнего справа вычислительного блока, в (n+2)-й строке матрицы на первый информационный вход 121 поступает значение суммы с (n+1)-й строки матрицы при наличии управляющего сигнала на входе 122.

Второй информационный вход 111 в вычислительных блоках,(n+1)-й строки матрицы предназначен для приема сиг15 нала переноса с выхода 117 второго переноса соседнего слева вычислительного блока. На управляющие входы 112 и 122 вычислительных блоков (n+1) и (n+2) строк поступает сигнал с выхо20 дов устройства управления. При поступлении сигнала на вход 112 в вычислительных блоках (и+1) — и строки запрещается прием информации по 110 и 111 входам, в вычислительных блоках (n+2)-й строки происходит запрещение приема информации по входам 118 и 119 разрешения приема информации по входам 120 и 121.

Вход 90 разрешения записи в вычис30 лительных блоках первого столбца в и первых строках предназначен для управления записи информации в триггер

41, в вычислительных блоках (n+2)-й строки при наличии сигнала на этом входе 123 происходит запись информации с входа 121 в триггер 68.

Первые управляющие входы 177 и 91 в вычислительных блоках первых 1 строках предназначены для запрещения пеАо редачи информации между вычислительными блоками, при наличии на них управляющего сигнала с выходов устройства управления.

При наличии управляющего сигнала

45 на входах 78,92, 103.и 113 производится передача значения разрядов суммы в верхний соседний вычислительный блок.

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

При наличии сигнала на входах 80 и 94 формирования дополнительного кода производится преобразование прямого кода разрядов частичного произведения в дополнительный код .

На первом управляющем входе 98 вычислительных блоков первого столбца

j формируется управляющий сигнал Qz, 1569876 значение которого соответствует значению управляющей переменной для формирования разрядов частичного произведения.

На втором управляющем выходе 99 формируется управляющий сигнал () :, значение которого соответствует значению знака произведения.

Работа вычислительных блоков мат- 1р рицы 1 предлагаемого устройства синхронизируется импульсами, вырабатываеиьп и устройством 2 управления и поступающими на вход синхронизации блоков. Суть работы вычислительных блоков заключается в суммировании битов данных, поступающих на различные информационные входы вычислительных блоков. Причем, существенной особенностью работы устройства является 20 возможность производить сложение данных на сумматоре в каждый момент действия синхроимпульсов, т.е. если такт работы вычислительных блоков, а следовательно, и всего устройства саста- 25 ит иэ синхроимпульсов, и ь, го сум матор производит сложение данных, поступающих на его входы как по С,, так и по С . Рассмотрим работу вычислительного блока, набор которых входит в матрицу 1, начиная с второго по п-й столбец в и строках матрицы.

Па входу данных при отсутствии управляющего сигнала на первом управляющем входе разряды данных последовательно

35 поступают на входы триггеров 19 и 20.

При наличии синхросигнала информация записывается в триггер 19, при отсутствии синхросигнала данные записываются в триггер 20. Наличие синхросиг- о нала считается действием синхроимл пульса,, отсутствие Г считается действием синхроимпульса, где „

= л . . Под воздействием синхроимпульса л

, информация считывается с выхода триггера 19 и через элемент 21 поступает на выход 84 данных блока и на второй вход элемента И 17. При наличии управляющего сигнала на первом информационном входе 76 информация с

5О выходов элемента 17 поступит на входы элемента 2И-ИЛИ 15, в зависимости от управляющего сигнала на входе 80 формирования дополнительного кода блока, на выходе элемента 15 появится информация либо с прямого, либо

55 с инверсного выхода элемента 17 и да— .пее через элемент ИЛИ 10 поступит на второй вход сумматора. На первый вход сумматора при поступлении синхросиг/ » нала о информация поступает с входа первого переноса блока, при действии синхросигнала с с входа 73 второго переноса блока на третий вход сумматора с выходов триггеров 9 и 14 поступает значение суммы, образованной в предыдущем такте работы вычислительного блока, Таким образом, сумматор 7 вычислительного блока по, оби рабатывает информацию, поступившую на его входы с входа 75 первогэ переноса блока, с выхода триггера 19 и выхода триггера 9, по синхрасигналу л а обрабатывается информация с входа

73 второго переноса блока и с выходов триггеров 20 и 14. Образованная в результате суммирования сумма записывается по синхросигналу р, в триггер 9, по синхросигналу в триггер

14, получившийся в данном такте перенос по синхросигналу записывается в триггер 8, а rro синхросигналу в триггер 13. Информация с выходов триггеров 8 и 13 поступает на выходы 81 и 83 первого и второго переносов блока соответственно. Б зависимости от наличия управляющего сигнала на входе 78 управления передачей суммы эле-. мента информация с выходов триггеров

9 и 14 может поступать либо на выход

82 суммы элемента, либо на вход сумматора.

Работа вычислительного блока первого столбца первых п строк аналогична. работе описанного блока. Отличие заключается в следующем, информация с выхода сумматора 23 записывается в триггеры 24 и 25 по синхросигналу а информация, вырабатываемая по с, не используется, причем триггер

24 осуществляет задержку сигнала с выхода сумматора на полутакт работы устройства. Кроме .того, в данном элементе вырабатывается управляющий сигнал на первом управляющем выходе 98 элемента, для этого используется выход основного триггера 33 и выход дополнительного триггера 32, который задерживается на полутакт триггером

35, при этом по синхросигналу ., на первом управляющем выходе 98 появится сигнал с выхода основного триггера 33, а по С с выхода триггера 35. Кроме того, в вычислительных блоках первого столбца и строк матрицы вычислительных блоков формируется управляющий сигнал на втором управляющем вы156982 ходе 99. блока, который равен сумме по mod 2 битов данных, поступивших в блок по входу 85 данных при наличии управляющего сигнала на первом управ5 ляющем входе 91. Информация, поступ пившая в блок по синхросигналу 1 задерживается триггером 38 на полутакт и на входе полусумматора 39 совпадает по времени с информацией, поступившей по синхросигналу z и дал лее, сложившись, записывается в триггер 40 и затем при наличии управляющего сигнала на входе 90 разрешения записи записывается в триггер 41. Вы- 15 числительные блоки (и+1) и (и+2)-го столбцов суммируют по синхросигналу данные, поступающие в блок по входу 100 второго переноса, входу 101 суммы и входу 102 формирования допол- 20 нительного кода с суммой, образованной в предыдущем такте ° Образованные в данном такте перенос и сумма в следующем такте появляются на выходе

106 второго переноса блока, и в за- 25 висимости от значения управляющего сигнала на входе 103 управления передачей суммы блока, либо на выходе 105 суммы, либо вновь поступает на вход сумматора 43. 30

Вычислительные блоки (n+1)-й строки матрицы по синхросигналу о, суммирует сигналы, поступающие с входа

109 первого переноса и информационного входа со значением суммы предыдущего такта, которое хранится в триггере 52. Полученные по синхросигналу в данном такте перенос и сумма записываются в триггерах 5 1 и 52 соответственно. По . синхросигналу

Полученные перенос и сумма записываются в триггеры 55 и 57 соответственно. Наличие управляющего сигнала на втором управляющем входе 112 запрещает подачу сигналов с первого и 5О второго информационных входов 110 и

111 блока на сумматор.

Вычислительные блоки (и+2)-й строки работают по синхросигналу, причем при наличии управляющего сигнала на 55 втором управляющем входе 122 сумматор 62 суммирует данные, поступающие с входа 120 первого переноса и первого информационного входа 121 блока со

6 10 значением, записанным B триггере 68, при этом сумма и перенос поступают соответственно в триггеры 64 и 63.

При отсутствии управляющего сигнала сумматор 62 принимает информацию с входа 118 второго переноса и входа

119 суммы блока.

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

А=а,а à ...a è B=b,Ь ...b„.

Суммирование строк таблицы позволяет получить результат умножения чисел А и В. Управляющими переменными для левой половины таблицы является последовательность значений разрядов сомножителя В, начиная с младшего разряда b> для верхней строки и кончая разрядом Ь< для нижней строки. Дпя правой половины таблицы управляющими переменными являются значения разрядов сомножителя А — от старшего разряда а„ до младшего а . Таким образом, при подаче в устройство двух сомножителей последовательным кодом, причем один из сомножителей старшими разрядами вперед, а второй — младшими, можно совместить введение чисел с операцией формирования и суммирования строк таблищt частичных произведений.

В (п+1)-й строке матрицы вычислительных элементов производится суммирование данных, которые поступают на каядом такте работы устройства из и-й строки матрицы.

Последняя (и+2) -я строка матрицы преобразует двухрядный код, поступающий в нее из (n+1) — и строки в окончательный результат, представляющий собой сумму парных произведений сомножителей. Работа матрицы гычислительных элементов conòntãã и следующем: по информационно г нх<. iу .3.1 B первую строку матрицы в пг(t« ì такте поIl 156982 ступают значения знаков первой пары сомножителей: А=ад,a,a ...а и В=Ь,, Ь(Ь .<...Ь, где и — разрядность сомножителей, последовательно друг эа друА, 5 гом: по (,, знак Ь одного сомножителя, rio знак а — второго. Под воздействием управляющего сигнала 7,,длитель- . ность которого равна (, +(.„ они поступают в первый вычислительный элемент первой строки. Знак одного из сомножителей задерживается триггером

38 на. время действия синхросигнала (,, -для того, чтобы на входы полусумматора 39 знаки поступили одновременно.

Значение суммы знаков, которое соответствует значению знака произведения сомножителей, записывается в триггер 40 и затем перепишется при наличии управляющего сигнала в триггер 4 1. 29

Таким образом, на шестом выходе вычислитепьного элемента 1. t.1 на третьем такте работы устройства будет ( сформирован управляющий сигнал Ц соответствующий знаку произведения. 25

На втором такте работы устройства по информационному входу 3.1 в вычислительный блок 1.1.1 поступают старший разряд а „ одного из сомножителей и младший разряд Ь „ сомножителя Б, 30 которые записываются: Ь вЂ” в основной триггер 32 по сигналу g, и а, — в основной триггер 33 по сигналу (соответственно. В следующем такте по сигналу (, происходит перезапись значения разряда Ь > с выхода триггера 32 в триггер 35, кроме того, значение его поступит на вход элемента И 30 и на выход 97 данных блока 1.1.1 для записи в триггер 19 соседнего вычис- @ лительного блока 1.1.2. С выхода триггера 33 значение разряда а, записывается в дополнительный триггер, поступает первый управляющий сигнал на выход 98 вычислительного блока для ( формирования управляющего сигнала Q

Значение сигнала Q поступает на пер2 вый информационный вход 89 элемента и на выходе элемента И 30 формируется первое частичное произведение п„=а„Ь „. 50

В зависимости от значения управляюще( го сигнала,, которое соответствует знаку произведения, сформированное частичное произведение поступит на вход сумматора 23 либо в прямом, ли- 55 бо в обратном коде. С выхода сумматора сигналы, соответствующие сумме и переносу, записываются в триггере 25 и 24. По этому сигналу в триггер 32 б

l2 производится запись следующего разряда Ь (,.(сомножителя В, а значение разряда Ъ „ переписывается в триггер

19 блока 1.1.2. n.

В этом такте по синхросигналу (д значение разряда а с выхода триггера 33 поступает на вход элемента И 30 и выход 97 данных блока; сигнал с выхода триггера 35, соответствующий значению разряда Ь „,, поступает на первый управляющий выход 98 блока в далее, на первый информационный вход 89 .

Вследствие этого на выходе элемен-, та 39 сформируется частичное произведение Ь а,. Однако запоминание результата суммирования не производится, так как он дублирует действия, выполненные по сигналу (, В результате выполнения данного такта в триггеры 32 и 33 вычислительного блока

1.1 будут записаны значения разрядов

Ь „,и а, в триггеры 24 и 25 будут записаны значения переноса и суммы от сложения частичного произведения П со значением, записанным в предыдущем такте в триггер 25 и сигналом, поступившим по входу 88 первого переноса блока 1.1. В триггеры 19 и 20 вычислительного блока 1,2 будут записаны значения разрядов Ьд,а

В четвертом такте по сигналу в вычислительном блоке 1.1.1 будут произведены следующие действия: в триггер

32 запишется значение разряда Ь „, с помощью элементов 34 и 30 сформируется разряд частичного произведения

П =а,Ь „, и просуммируется с предыдущим частичным произведением а,Ъ,„, записанным в триггеры 25: сформируется управляющий сигнал Q,,равный значению разряда 0 сомножителя А, При действии сигнала (., значение управляющего сигнала 0 будет соответствовать значению разряда Ь g сомножителя В.

В вычислительном блоке 1.1.2 при действии сигнала произойдет запись в триггер 19 значения разряда Ь,.

Кроме того, с помощью элементов 21 и 17, а также управляющего сигнала О, поступающего на первый информационный вход блока, будет сформирован следующий старший разряд частичного произведения П =а Ь „ „ . В зависимости от значения управляющего сигнала (на ( входе 80 формирования дополнительного кода блока, прямой или обратный код этого разряда подается на сумматор 7 и далее полученная сумма и перенос

1569826 записываются в триггеры 9 и 8. С выхода 84 данных вычислительного блока 1.1.2 значение сигнала, соответствующее разряду b, поступит на вход

72 данных блока 1.1.3 и запишется в

5 триггер 19. По сигналу в блоке

1.1.2 произойдет запись в триггер 20 значение разряда a : будет сформира ван с помощью тех же элементов 21 и

17 младший разряд частичного произведения П =а Ь„. Результат суммирования записывается в триггеры 23 и 24 с выхода 72 данных вычислительного блока. Значение сигнала, соответствующее разряду а,, перепишется в триггер 20 блока 1.1.3.

В каждом последующем i-м такте по информационному входу 3.1 в вычислительный блой 1.1.1 поступает новая пара разрядов а; и Ь„-(ь-1) сомножителей. В вычислительных блоках строки с помощью связей между выходом и входом данных происходит сдвиг разрядов сомножителей в сторону п+2-го блока, 25 причем продвигаются элементы сомножил теля В, по ь — элементы сомножителя А.

Запоминание разрядов сомножителя В производится триггером 19, сомнохжтеля А — триггером 20.

По синхросигналу, в вычислительных блоках строки с помощью элементов 21 и 17 формируются младшие разряды П;, =а;, Ь,„(„г), а;, Ь „() ...a,„„- -b „ частичного произведения, начиная с блока 1.1, в котором формируется.разряд a, b„, и по блоку 1.2, в котором формируется разряд, равный а,Ь „ (; ). Формирование частичного произведения производится подвоздейст.„ вием управляющего сигнала (» который поступает с первого управляющего выхода блока 1.1.1 на первые информационные входы вычислительных блоков строки; значение (1 в данном случае соот- 45 ветствует значению управляющей переменной a . В зависимости от. знака произведения сомножителей, который формируется в первом блоке строки иде управляющего cHrHKHa Q 1 c BTo 50 ( рого управляющего выхода, он поступает на входы формирования дополнительного кода блоков с 1.1.1 по 1.1. »+ .

На сумматоры 7 частичное произведение поступает либо в прямом коде с

55 прямого выхода элемента И 17, либо в обратном — с инверсного выхода элемента 17. Промежуточная сумма младших разрядов произведения, полученная как результат суммирования частичного nðîизведения П, » поступившего на второй вход сумматора, с информацией, полученной с входа первого переноса блока и данными, поступающими с выходов триггеров 9, записывается в триггеры 9 и используется в следующем такте. Промежуточные переносы записываются в триггеры 8 и в следующем такте поступают на выходы первого переноса вычислительных блоков. Суммирование частичных произведений-отрицательных чисел в обратном коде требует наличия цепи обратной связи, для того чтобы избежать этого в преДлагаемом устройстве производится преобразование обратного кода в дополнительный за счет введения связи с второго управляющего выхода первого блока на вход первого переноса блока 1.1.n2., т.е. в младший разряд сформированного частичнога произведения производится добавление единицы, за счет чего происходит преобразование обратного кода в дополнительный.

По сигналу в вычислительных блоках строки с помощью элементов 21 и 17 формируются старшие разряды П „ 1 =

1 И-(1-C) » 2 И-(l-2)» » 1- 2 ((- (1- 2) частичного произведения, начиная с блока 1.1.2, в котором формируется разряд, равный а; в Ь „ (; ). Для формирования частичного произведения в вычислительные блоки на первый информационный вход поступает управляющий сигнал () с первого управляющего выхода блока 1.1.1, значение Ц в данном случае соответствует значению управляющей переменной b (; ). В зависимости от знака произведения сомножителей, который формируется в первом блоке строки, управляющий сиг-! нал Q с второго управляющего выхода поступает на входы формирования дополнительного кода блоков, начиная с 1.1.1 по 1.i.n+2. В вычислительных блоках на сумматоры 7 поступает частичное произведение в прямом коде, если знак произведения положительный, либо в обратном, если знак произведения отрицательный. В блоках 1.1.n+1—

1.1.п+2 строки знак произведения непосредственно подается на сумматор 43 и в результате в (n+2)-м блоке строки будет сформирован окончательный знак произведения.

Промежуточная сумма с выхода сумматора 7 записывается в триггеры 14 и

156 98 26 в следующем такте поступает через элементы И 11 и ИГК 16 на третий вход сумматора, Промежуточные переносы записываются в триггеры 13 вычислитель5

rrrx блоков и в следующем такте посту.— пают на выходы второго перенося вы--числительных блоков. В и+1 такте

i рабаты.устройства в триггеры 19 вычислительных блоков будут записаны все разряды сомножителя В, а в триггеры,20 — все разряды сомножителя ПЛ, причем в блоке 1.1.1 разряды а и Ь

:в 1.1.2 а„, и Ь в 1.1.3 — а „и Ъ в 1,п-a „, e Ь„,. В следующем II+2 такте на первые управляющие входы 9 блоков первой строки падается управляющий сигн" ë У с первого выхода устройства управления. По этому сигналу в .блок !.1 запишется новая пара знаков сомножителей,, а в остальных блоках

Праизоидет обнуление триггеров 19 и 2О. Кроме того, в этом такте будет формировано П частичное праизвецение и просумчирована в промежуточной 25 суммой предыдущих тактов, которая хранится в триггерах 9 и 14 вычислительных блоков. Таким образам, цикл работы умножителя составляет n+1 такт.

,"аждяя следующая стракя матрицы Вы- 4Q числительных блоков принимает: пары сомнож-=|телей со сцвигом на адин такт,, т.е. если B .первую строку поступают

a, и Ь „, paapÿäür сомножителей Л < и Б,, то во вторую а, и b разряды сомножителей А и Bz, в третью а, „. и Ь „(,1 рЯзряды сомножителей А g

:.-" Â и т.д. Работы остяльньг" и-1 строк вычислительных блоков аналогичны рабате описанной первой строки.

В процессе выполнения операции ум. нажения пар сомножителей между и пер— вьми строками матрицы осуществляется передача промежуточных переносов, возникающих на каждом такте и запи-сываемых в триггеры 8 и 13, в соседнюю верхнюю строку о Для oTOI выход переноса 1 -го вычислительнога блока нижней строки соединяется с входам первого переноса 1-1) вычислительг 50 нсго блока соседней верхней строки„ при этом по этой связи передается значение мпадших разрядов промежуточных переносов Выход второ« а переноса i-го вычислительного блока соединен с входом второго переноса i+1 вычистжтельнаго блока соседней верхней строки, при этом по этой связи передается значение старших разрядов промежуточных переносов.

Таким образом, на любом такте работы каждой строки матрицы (умножителе) осуществляется поступление по входу 3 новой пары разрядов сомножителей; суммирование сформированного частичного произведения с промежуточной суммой, полученной в предыдущем такте и считываемой с выходов триггеров 9 для младшей половины разрядов и с выходов триггеров 14 для старшей половины разрядов, и с промежуточными переносами, поступающими с нижней соседней строки матрицы, причем Iro входу первого переноса б.чоков поступают переносы младшей половины разрядов, а по входу второго переноса — старшей половины разрядов. Результат сумьирования в виде вновь полученной промежуточной суммы и переносов записывается в триггеры 9, 1ч и 8,13 соответственно. По окончании каждого цикла работы умножителя в ега выходных триггерах (8, 13 9,14) будет записано произведение пары сомножителей, .представленное двухрядным кодам,, т.е . в ниде кода перекосов и кода суммы. В каждом третьем такте цикла двухрядный код произведения передается в соседнюю верхнюю строку матрицы, для этого в вычислительные блоки строки с соответствующего выхода блока управления поступает управляющий сигйал У;+, где i — rroMep строки. IToII воздействием этого сигнала,. поступающего на входы управления передачей сумьщ блоков, выходы триггеров 9 и 14, с которых считывается значение разрядов суммы соединяются с помощью элементов И 12 с í гходами сутры вычислительных блоков.

Сигнал с выхода суммы, вычислительных блоков i-й строки поступает на третий вход суммы соседнего сверху вычислительнога блока (i+1) é строки и далее через элемент 6 на второй вход сужжтара 7. В момент передыи сумы и переносов для строки (i+1) будет второй такт работы, в катарам по входу З.i+1 и (+1.1)-й вычислительный блок только поступает первый значащий разряд пары сомножителей и, поэтому наложение сигналов на втором входе сумматора не произойдет.

Таким образам, па окончании процесса умножения чары сомножителей в и-й

18

17

1569826 строке матрицы 1 в нее поступают результаты операции умножения предыдущих пар сомножителей из нижней строки .

По мере освобождения строк матрицы в нее может поступать новая последовательность пар чисел.

В (n+1)-й строке матрицы вычислительных блоков производится суммирование переносов, возникающих на каждом такте работы п-й строки матрицы, поступающих с выхода первого переноса, для младшей половины разрядов и с выхода второго переноса, для старшей половины разрядов, выходов блоков на входы первого и второго переносов блоков (и+1)-й строки. В процессе работы возникающие переносы в вычислительных блоках и+1 строки передаются между элементами для каждой половины разрядов с выхода первого переноса на первый информационный вход соседнего слева вычислительного блока и с выхода второго переноса на второй информационный вход соседнего справа 25 вычислительного блока для старшей половины разрядов. Значение разрядов промежуточной суммы в виде двухраэрядного кода записывается в триггеры 5 1 и 52 для младших разрядов и триггеры 3р

56 и 57 для старших разрядов. Цикл работы вычислительных блоков (п+1)-й строки составляет также n+1 такт. Результат умножения пары сомножителей иэ 1-й стРоки матрицы 1 поступает на, входы суммы вычислительных блоков (n+1)-й строки. Для этого, на входы управления передачей суммы вычислительных блоков (и+1)-й строки поступает управляющий сигнал У „+, кото- 4О рый подключает выходы триггеров 52 и 57 на выходы суммы вычислительных блоков и в это время на .входы суммы вычислительных блоков поступает код

c I с и Й строки матрицы С выходов 45 суммы вычислительных блоков разряды данных поступают в вычислительные блоки (и+2) -й строки. В следующем такте работы (n+1)-й строки матрицы старшие разряды сформированного в вы- о числительных блоках двухрядного кода дпя преобразования в окончательный результат передаются в вычислительные блоки (n+2) é строки. В вычислительных блоках (n+1) и строки в момент передачи необходимо для установки в ноль триггеров 51 и 56 разорвать цепи распространения внутренних переносов.

Для осуществления этих действий на входе управления передачей суммы сохраняется сигнал Y „„ (т.е. длительность сигнала Yö+ равна двум тактам), а на второй управляющий вход поступает сигнал У <, который отключает второй вход сумматора 50. Таким образом, второй и третий входы сумматоров 50 будут отключены от источников данных и, следовательно, не произойдет искажения разрядов числа, поступающего по входам первого и второго переносов вычислительного блока.

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

Вычислительные блоки (n+2)-й строки матрицы 1 принимают двухрядный код, поступающий с (и+1)-й строки и за (п+1) так формируют окончательный и-разрядный Результат операции суммиРования пар произведений. Окончательный результат формируется на информационном выходе 4 устройства последовательно разряд за разрядом, начиная с младшего n-ro разряда и кончая знаковым разрядом произведения. Разряды данных, поступающие с первого информационного входа вычислительного блока, записывающего в триггер 68 под воздействием управляющего сигнала

У,, поступающего на вход разрешения записи вычислительного блока с (и+2)-го выхода блока управления.

Триггер 68 осуществляет задержку сиг-. нала на один такт работы устройства для временного согласования.с информацией, которая поступает на вход первого переноса и первый информационный вход вычислительных блоков п+2 в следующем такте. Прием информации с (n+1) -й строки в (и+2)-ю осуществляется под воздействием управляющего сигнала поступающего на Второй управ ляющий вход вычислительных блоков, при этом обрываются связи .передачи значений суммы и переносов между вычислительными блоками и за счет этого происходит обнуление триггеров 63 и 64. Поступающая в данном такте информация с входа первого переноса и первого информационного входа складывается со значением разрядов числа, считываемого с выхода триггера 68, и полученные значения поразрядной суммы и переноса записываются соответственно в триггеры 64 и 63. Эти действия выполняются при воздействии син19

1569826 Е хроснгнала, В дальнейшем на каждом такте работы вычислительных блаксн (и+2)-й строки происходит суммирование записанных и триггерах 64

5, разрядан промежуточной суммы