Устройство для умножения
Изобретение относится к вычислительной технике и реализует перемножение чисел в системе счисления с двоичным основанием или основанием, равным целой степени двух. Повышение быстродействия устройства достигнуто за счет формирования за один такт группы частичньк 2К-разрядных произведений . Устройство содержит регистры множимого и множителя, первую и вторую группу мультиплексоров, группу блоков перемножения, сумматор, буферный регистр, узел сдвига, мультиплексор , группу элементов И, демультиплекс-ор, регистр произведения и блок управления, тактовый вход и вход Запуск являются управляющими входами устройства, входы А регистра множимого и входы В регистра множи теля - информационными входами, выходы С регистра произведения - информационными выходами, а выход Готовность - управляющим выходом устройства , выходы регистра множимого, объединенные в группы по К-двоичных разрядов, соединены с информационными входами первой группы мультиплексоров , выходы регистра множителя,- объединены также в группы по К-двоичных разрядов, подключены к информационным входам второй группы мультиплексоров , выходы первой и второй группы мультиплексоров соединены соответственно с первыми и вторыми входами группы перемножителей, чьи выходы подключены к входам слагаемых сумматора, входы первого слагаемого которого соединены с выходами мультиплексора, а выходы подключены к входам К-старших разрядов регистра произведения и соединены с информационными входами группы элементов И и демультиплексора, выходы группы элементов И соединены с входами буферного регистра, чьи выходы подключены к первым информационным входам мультиплексора, а через узел сдвига - с вторыми информационными входами; мультиплексора, выхода демультиплексора соединены с входами младших разрядов регистра произведе- .ния, управляющие входы первой, второй групп мультиплексоров, мультиплексора, группы элементов И и демультиплексора соединены соответственно с первыми, вторыми,.третьими, четвертыми и пятыми вькодами блока управления. Данное ус ройсТ во может быть использовано в электронных вычислительных мапшнах различного назначения в качестве арифметического расширителя процессора. 1 з.п. ф-лы, 2 ил. с (Q СЛ
СОЮЗ COBETCHHX
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИН
254473 А 1 (19) (11) (51) 4 С 06 F 7/52
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
AO ДЕЛАМ ИЗОБРЕТЕНИЙ И OTHPblTHA (21) 385759 1/24-24 (22) 19.02.85 (46) 30.08.86. Бюл. М - 32 (71) Ордена Ленина институт кибернетики им. В.M.ÃëóøêaBà (72) А.Ф.Кургаев и В.Н.Опанасенко (53) 681.325(088.8) (56) Авторское свидетельство СССР
Ф 729587, кл. G 06 F 7/52, 1977.
Авторское свидетельство СССР
У 1007101, кл . С 06 F 7/52, 198 1. (54) УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ (57) Изобретение относится к вычислительной технике и реализует перемножение чисел в системе счисления с двоичным основанием или основанием, равным целой степени двух. Повышение быстродействия устройства достигнуто за счет формирования за один такт группы частичных 2К-разрядных произведений. Устройство содержит регистры множимого и множителя, первую и вторую группу мультиплексоров, группу блоков перемножения, сумматор, буферный регистр, узел сдвига, мультиплексор, группу элементов И, де-. мультиплексор, регистр произведения и блок управления, тактовый вход и вход Запуск" являются управляющими входами устройства, входы A регистра множимого и входы В регистра множи теля — информационными входами, выходы С регистра произведения — информационными выходами, а выход "Готовность" — управляющим выходом устройства, выходы регистра множимого, объединенные в группы по К-двоичных разрядов, соединены с информационными входами первой группы мультиплексоров, выходы регистра множителя, объединены также в группы по К-двоичных разрядов, подключены к информационным входам второй группы мультиплексоров, выходы первой и второй группы мультиплексоров соединены соответственно с первыми и вторыми входами группы перемножителей, чьи выходы подключены к входам слагаемых сумматора, входы первого слагаемого которого соединены с выходами мультиплексора, а выходы подключены к входам К-старших разрядов регистра произведения и соединены с информационными входами группы элементов
И и демультиплексора, выходы группы элементов И соединены с входами буферного регистра, чьи выходы под— ключены к первым информационным входам мультиплексора, а через узел сдвига — с вторыми информационными входами;мультиплексора, выхода демультиплексора соединены с входами, младших разрядов регистра произведе. ния, управляющие входы первой, второй групп мультиплексоров, мульти-. плексора, группы элементов И и демультиплексора соединены соответственно с первыми, вторыми,,третьими, четвертыми и пятыми выходами блока управления. Данное ус ройсТво может быть использовано в электронных вычислительных машинах различного назначения в качестве арифметического расширителя процессора ° 1 з.п. ф-лы, 2 ил.! 12
Изобретение относится к вычислительной технике и может быть использовано при умножении и-разрядных чисел в системе счисления с двоичным основанием или основанием, равным целой степени двух.
Цель изобретения — повышение быстродействия устройства.
На фиг. 1 представлена блок-схема устройства для умножения; на фиг.2 функциональная схема блока управления.
Устройство для умножения (фиг.1) содержит регистр 1 множимого, регистр 2 множителя, первую 3 и вторую
4 группы мультиплексоров, группу блока 5 перемножения, сумматор 6, вход
7 множимого, вход 8 множителя, буферный регистр 9, сдвигатель 10, мультиплексор 11, выход 12, группу элементов И 13, блок 14 управления, демультиплексор 15, регистр 16.
Блок 14 управления (фиг.2) содержит выходы 17, 18 управляющих кодов, элемент И 19, первый 20 и второй 21 элементы задержки, схему 22 сравнения, триггер 23, счетчик 24. блок 25 памяти, регистр 26, первую и вторую группы элементов И 27, 28, выходы
29-31 управляющих кодов, выход 32
"Готовность", вход 33 "Запуск", вход
34 тактовых импульсов, вход 35 количества циклов умножения.
Устройство работает следующим образом.
В исходном состоянии в регистрах
1 и 2 содержатся прямые положительные коды множимого и множителя, в буферном регистре 9 установлен "0".
В блоке 25 памяти записана микропрограмма в виде последовательности микрокоманд, адреса которых следуют в естественном порядке и формируются с помощью счетчика 24.
Сигнал "Запуск" устанавливает триггер 2 в "единичное" состояние, а в счетчике 24 некоторое начальное состояние, которому соответствует первая микрокоманда на выходе блока
25 памяти.
Первый из тактирующих сигналов,. поступающий на вход 34 ТИ после прихода сигнала "Запуск", проходит элемент И 19 и поступает на вход эле-.
:мента 20 задержки, а также на управляющий вход группы элементов И 28, разрешая передачу на выходы 17, 18 и 29 управляющих сигналов, соответf0
55 элементов И 27 управляющих кодов на выходах 30 и 31. После окончания сигнала на выходе элемента 20 задержки формируется сигнал на выходе элемента 21 задержки, увеличивающий содержимое счетчика 24 на " 1"; на следующих тактах блок 14 управления аналогичным образом формирует следующие управляющие коды.
Для получения произведения двойной длины процесс умножения состоит из
2ш — 1 циклов. В каждом из циклов выполняется перемножение в блоках 5
К-разрядных групп сомножителей, произведения которых имеют одинаковые весовые коэффициенты; суммирование в сумматоре 6 2К-разрядных произведений К-разрядных групп сомножителей; запись младших К-разрядов сумматора
6 через демультиплексор 15 в одну из младших К-разрядньж групп регистра 16 произведения и одновременно с этим запись Г-разрядного содержимого сумматора 6 через группу элемен-тов И 13 в буферный регистр 9 (Г =
2К + Год гп) .
В последнем цикле младшие К-разрядов сумматора 6 записываются через демультиплексор 15 в старшую группу младших разрядов регистра 16, а старшие К-разрядов сумматора 6 записываются в старшие разряды регистра 16.
Число тактов в цикле зависит от числа а блоков 5 перемножения, причем каждый из первых и последних
d-циклов выполняются за один такт— вычисление частичного произведения и запись результата в регистры 9 и 16, вторые d-циклы и предпоследние
d-циклы за два такта и т.д., m-й
m цикл выполняется за J --- тактов.
1 а
Рассмотрим последовательно работу устройства для различных циклов.
В первом цикле соответственно начальному коду счетчика 24 на выходах 17 и 18 группы элементов И 28 блока 14 управления формируются коды управления, определяющие подклю- чение через один из мультиплексоров
3 мпадшей К-разрядной группы множимого и через один из мультиплексоров
4 младшей К-разрядной группы множи54473 ствующих начальному коду счетчика
24, После окончания сиг нала на выходе ТИ, на выходе элемента 20 задержки формируется управляющий сигнал, разрешающий передачу через группу
1254
3 .теля к входам одного из блоков 5 перемножения. 2К-разрядный результат перемножения этих групп разрядов сомножителей с выходов блока 5 поступает на соответствующий вход слагаемого сумматора 6, где суммируется с "нулевым" кодом, поступающим из регистра 9 через мультиплексор 11 на вход первого слагаемого сумматора
6. Результат суммирования запомина- Ю ется в сумматоре 6. После этого группа элементов И 28 закрывается и открывается группа И 27, передавая на выходы 31 и 30 управляющие коды. Код на выходе 31 определяет передачу 15 младших К-разрядов сумматора 6 через демультиплексор 15 в младшую тп-ю группу (К-разрядную) разрядов регистра 16 произведения.
Одновременно с этим под управле- 20 нием кода с выхода 30 открывается. группа элементов И 13 и содержимое сумматора запоминается в регистре 9.
Во втором цикле (соответственно увеличенному на "1" начальному коду счетчика 24) в первом полутакте на выходах 17 и 18 группы элементов
И 28 блока 14 управления формируются коды управления, определяющие под— ключение к входам одного блока 5 выходов младшей (К-разрядной) m-й группы разрядов множимого и (m — 1)-й группы (К-разрядной) разрядов множителя, а к входам второго блока 5 выходов (m — 1) -й группы (К-разрядной) 35 разрядов множимого и выходов младшей (К-разрядной) m-й группы разрядов мно-, жителя. 2К-разрядные произведения с выходов этих двух блоков 5 поступают на входы второго и третьего слагае- 40 мых сумматора 6, на входы первого слагаемого которого (под управлением кодов с выхода блока управления, подаваемых на управляющие входы мультиплексора 11) поступают (со 45 сдвигом на К-разрядов) с выходов регистра 9 через сдвигатель 10 и мультиплексор 11 К-старших разрядов частичного произведения, полученного в первом цикле. Результат суммирова- 50 ния запоминается в сумматоре 6. В следующем полутакте микроприказы передаются на выходы группы элементов И 27. На выходе 31 блока управления при этом устанавливается код, S5 определяющий передачу младших К-разрядов сумматора 6 через демультиплексор 15 в младшую (m — 1)-ю груп473 4 пу разрядов регистра 16. Одновремено с этим код на выходе 30 блока управления .открывает группу элементов
И 13, через которую содержимое сумматора 6 записывается в регистр 9.
Аналогичным образом выполняются первые d-циклов умножения, в результате чего в регистре 16 будут сформированы Й-младших (К-разрядных) групп разрядов произведения. (d + 1) — и цикл выполняется следующим образом.
Первая микрокоманда этого цикла в первом полутакте формирует на выходах 17 и 18 элементов И 28 блока 14 управления коды управления, опреде,ляющие подключение к входам блоков
5 выходов следующих групп разрядов множимого и множителя: к входам первого блока 5 подключаются выходы
m-й младшей группы (К-разрядной) разрядов множимого и выходы (ш — d) é группы (К-разрядной) разрядов множителя; к входам второго блока 5 подключаются выходы (m — 1)-й группы разрядов множимого и выходы (m — d +
+ 1)-й группы разрядов множителя; к входам d-го блока 5 подключаются выходы (m — d + 1) — и группы разрядов множимого и (т — 1)-й группы разрядов множителя. 2К-разрядные произведения с выходов этих d блоков 5 поступают на d входы слагаемых (2К-разрядных) сумматора 6, на входы первого слагаемого которого через мультиплексор 11 с выходов регистра 9 поступают сдвинутйе в сторону младших разрядов (на К-двоичных разрядов) в сдвигателе 10 К-старших разрядов частичного произведения, полученного в предыдущем (d-M) цикле. Полученная сумма запоминается в сумматоре 6. В следующем полутакте формируются коды управления с "нулевым" кодом на выходе 31 блока управления. При этом демультиплексор 15 не включается, содержимое сумматора 6 через группу элементов И 13, открытую кодом на выходе 30 блока управления, передается в регистр 9. Следующая микрокоманда в первом полутакте содержит ненулевые коды на одном из выходов-17 и на одном из выходов 18 блока управления, а также код на выходе 29 блока управления, определяющий передачу без сдвига содержимого буферного регистра 9 через мультиплексор 1! на входы гервого слагаемого сумматора 6.
5 1254
На входы второго слагаемого сумматора 6 поступает с выхода одного из блоков 5 произведение (m — d) é группы разрядов множимого и m-й группы разрядов множителя. Сумма запоминается в сумматоре 6. При выполнении второго полутакта этой микрокоманды младшие разряды сумматора 6 через демультиплексор 15 (под управлением соответствующего кода на выходе 29 10 блока управления) записываются в (m — d)-ю группу разрядов регистра
16 произведения.
Аналогичным образом выполняется каждый последующий иэ второй группы
d — циклов умножения — число перемножителей, участвующих при выполнении второй микрокоманды цикла увеличивается на единицу при увеличении номера цикла на единицу. После окончания 20
2d циклов умножения в регистре 16 будут сформированы 2d младших (K-разрядных) групп разрядов произведения.
Число тактов в цикле последова25 тельно увеличивается на единицу при переходе от одной группы d-циклов перемножения к другой и достигает максимума ()m/d(тактов) при выполнении m-го цикла. Затем число тактов последовательно уменьшается при увеличении номера группы (d циклов) и составляет один такт при выполнении последнего цикла. Если такт является первым в данном цикле, то на первые входы сумматора 6 поступает частичное3 произведение с выходов буферного регистра 9 через сдвигатель 10 (в котором выполняется сдвиг в сторону младших разрядов на К-разрядов) и через мультиплексор 11, т.е. только старшие разряды частичного произведения, полученного в сумматоре,6 после окончания предыдущего цикла. В каждом же следующем такте цикла на первые входы сумматора 6 через муль- 4> типлексор 11 поступает несдвинутое содержимое регистра 9. В последнем такте цикла младшие К-разрядов сумматора 6 .через демультиплексор 15 записываются в соответствующую группу разрядов регистра 16, а старшие запоминаются в регистре 9 и служат информацией, подаваемой на входы первого слагаемого сумматора 6 в следующем цикле. Во втором полутакте последнего (2m — 1)-го цикла старшие
К вЂ разряд суммагора 6, запоминаемые в старшей (К-разрядной) группе разря473 6 дов регистра 16, являются старшими разрядами произведения. Таким образом, после окончания (2m — 1)-ro цикла на выходах регистра 16 установится 2п-разрядное значение произведения.
Последний тактирующий сигнал с выхода элемента 21 задержки устанавливает счетчик 24 в состояние, соответственно которому схема 22 сравнения вырабатывает "единичный" сигнал, ус-. танавливающий триггер 23 в "нулевое" состояние. В результате на выходе
"Готовность" устройства устанавливается состояние, свидетельствующее об окончании работы устройства и о его готовности к приему новой информации и выполнению очередной операции умножения. формул а изобретения, 1. устройство для умножения, содержащее регистры множимого, множителя и произведения, первый блок перемножения группы, сумматор и буферный регистр, информационные входы регистров множимого и множителя соединены соответственно с входами множимого и множителя устройства, выход регистра произведения соединен с выходом устройства, о т л и ч а ю щ ее с я тем, что, с целью повышения быстродействия, в него введены первая и вторая группы мультиплексоров, блоки перемножения, группы с второго по Й-й, группа элементов И, блок управления, мультиплексор, сдвигатель, демультиплексор, причем i-я группа выходов регистра множителя подключена к i-й группе информационных входов мультиплексоров первой группы, выходы которых соединены с первыми информационными входами соответствующих блоков перемножения группы, вторые информационные входы которых соединены с выходами соответствующих мультиглексоров второй группы, i-e группы входов которых подключены к
i-й группе выходов регистра множимо- . го, выходы блоков перемножения группы соединены с соответствующими входами первых слагаемых сумматора, входы второго слагаемого которого подключены к выходу мультиплексора, первый вход которого соединен с выходом буферного регистра и с входом сдвигателя, выход которого подключен к вто1254 рому входу мультиплексора, выходы р разрядов сумматора соединены с первыми входами элементов И группы, выходы К младших разрядов сумматора соединены с информационным входом мультиплексора, выходы следующих
К разрядов сумматора соединены с входами К старших разрядов регистра произведения (К вЂ” количество разрядов в группе), выходы которых соединены с информационным входом буферного регистра, i-я группа выходов демультиплексора соединена с i é младшей
К разрядной группой информационных входов регистра произведения, управ- 15 ляющие входы мультиплексоров первой группы соединены с первым выходом . блока управления, второй выход которого соединен с входами управления мультиплексоров второй группы, вход 20
"Запуск" устройства соединен с первым входом блока управления, второй вход которого под .лючен к входу тактовых импульсов устройства, третий выход блока управления соединен с 25 управляющим входом мультиплексора, четвертый выход блока управления под- ключен к вторым входам элементов И группы, а пятый выход соединен с управляющим входом демультиплекссра, 30 выход "Готовность" устройства соединен сшестым выходом блока управления, третийвход которогосоединен свкодом количества циклов умноженияустройства.
2. Устройство по г..1, о т л и ч а-З5 ю щ е е с я тем, что блок управле473 8 ния содержит две группы элементов И, регистр, счетчик, блок памяти, два элемента задержки, схему сравнения, элемент И, триггер, вход установки которого соединен с входом установки счетчика и с первым входом блока управления, второй вход которого подключен к первому входу элемента И, второй вход которого соединен с прямым выходом триггера, вход сброса которого подключен к выходу схемы сравнения, первая группа входов которой соединена с третьим входом устройства, а вторая группа входов подключена к выходу счетчика и адресным входам блока памяти, выход которого соединен с входом регистра, выходы рязрядов которого подключены к первым входам соответствующих элементов И первой и второй групп, i-я группа выходов элементов И первой группы соединена с i-м выходом блока управления (i = 1,2,3), j ÿ группа выходов элементов И второй группы соединена с j-м выходом блока управления (j = 4,5), вход прибавления единицы счетчика, соединен через первый элемент задержки с вторыми входами элементов И второй группы и с выходом второго элемента задержки, вход которого подключен к выходу элемента И и к вторым входам элементов
И первой . группы, инверсный выход триггера соединен с шестым выходом блока управле ния.
1254473
Запуск
ТИ
ЩтИишпа
Рис. 1
17 17 17 23 18 18 18 я3нки
J2 (Риф, г
Составитель В. Горохов .
Редактор Н. Слободяник Техред Л, Сердюкова Корректор А.Зимокосов
Заказ 4721/52 Тираж 671
ВНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Подписное
Производственно-полиграфическое предприятие, r. Ужгород, ул. Проектная, 4





