Устройство для умножения
Устройство для умножения относится к вычислительной технике и может быть использовано в арифметических устройствах ЭВМ и спецпроцессоffl ров. Целью изобретения является расширение функциональных возможностей за счет обеспечения условий для умножения чисел в дополнительных кодах. Устройство содержит регистры множителя 3, множимого 6, результата 4, сумматор 5, счетчик 1, блок 2 микропрограммного управления и три элемента ИЛИ 7-9. Увеличение на один разряд регистров множителя и множимого для размещения двоичных чисел в моди4 ицированном дополнительном коде позволяет производить умножение двух сомножителей с произвольными знаками по алгоритму, близкому к алгоритму умножения положительных чисел. 3 ил. (Л С .1
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (192 (112 (512 4 G 06 Р 7/52
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 3882060/24-24 (22) 08.04.85 (46) 15.02.87.Áþë. У 6 (72) И.Я Миронов (53) 681.325 (088.8) (56) Авторское свидетельство СССР
N 1081640, кл. G 06 Г 7/52, 1982.
Самофалов Г.К., Корнейчук В.И.
Тарасенко B.Ï. Цифровые электронные вычислительные машины, — Киев: Вища школа, 1983, с.288-289, рис.5.9. (54) УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ (57) Устройство для умножения относится к вычислительной технике и может быть использовано в арифметических устройствах ЭВМ и спецпроцессоров. Целью изобретения является расширение функциональных возможностей эа счет обеспечения условий для умножения чисел в дополнительных кодах.
Устройство содержит регистры множителя 3, множимого 6, результата 4, сумматор 5, счетчик 1, блок 2 микропрограммного управления и три элемента ИЛИ 7-9. Увеличение на один разряд регистров множителя и множимого для размещения двоичных чисел в модифицированном дополнительном коде позволяет производить умножение двух сомножителей с произвольными знаками по алгоритму, близкому к алгоритму умножения положительных чисел. 3 ил.! 290301
Изобретение относится к вычислительной технике и может быть использовано в арифметических устройствах цифровых вычислительных машин и систем, 5
/х у„! х у +(-у)„2";х с О, г. = х.у; где х — числовое значение множителя; р у — числовое значение множимого:
z — числовое значение произведения; х — дополнительный код множителя;
9 у — модифицированный дополнитель-у5
М ный код множимого; ㄠ— модифицированный дополнительный код произведения; (-у) — модифицированный дополнительм ный код величины (y) e. 50 числового значения множимого с обратным знаком; ь — разрядность двоичных чисел хю у °
Произведение z = х-у является 2празрядным двоичным числом.
Устройство обрабатывает двоичные числа с фиксированной запятой в дополнительном коде.
Цель изобретения — расширение функциональных возможностей устройства эа счет обеспечения условий для умножения двоичных чисел в допол-!О нительных кодах с произвольными знаками.
На фиг.! приведена функциональная схема устройства для умножения; на фиг.2 — схема выходов результата при умножении целых или дробных чисел с фиксированной запятой; на фиг. 3 — граф алгоритма работы блока микропрограммного управления.
Устройство для умножения {фиг.1 20 и 2) содержит счетчик 1, блок 2 микропрограммного управления, регистр 3 множителя, регистр 4 результата, сумматор 5, регистр 6 множимого, элементы ИЛИ 7-9, вход 10 за- 25 пуска устройства, выход ll признака окончания операции умножения, входы
12-13 множимого и множителя соответственно, выход 14 результата при ум-! ножении целых двоичных чисел, вы- 30 ход 15 результата при умножении дробных чисел с фиксированной запятой.
Устройство для .Умножения двоичных чисел в дополнительных кодах реалиэу= ет следующий алгоритм: 35
Формула (1) соответствует алгоритму обработки целых двоичных чисел.
Если использовать дробные числа с фиксированной запятой, то произведе- ние в дополнительных кодах целых и дробных значений сомножителей отличается только сдвигом на один разряд; целое число г = z „ г „, -z,; дробное число z = г !г „ д...z,Î. к-. Н-
Так как процессы умножения целых и дробных чисел одинаковы, то описание устройства дается для случая целых двоичных чисел.
Введение модифицированного дополнительного кода двоичного числа приводит к увеличению разрядности чисел на единицу. В процессе умно-. жения на каждом цикле вычислений производится алгебраическое сложение накоплений суммы частичных произведений со значением множителя, если состоянием раэряда множителя, на которой производится умножение, является "l". Так как в сумматор 5 сумма частичных произведений иэ регистра 4 и множимое иэ регистра 6 поступают в модифицированном дополнительном коде, то в сумматоре 5 переполнения не происходит и на его выходе вырабатывается новая сумма частичных произведений в модифицированном дополнительном коде. Вычисленная новая сумма частичных произведений сдвигается вправо на один разряд. При использовании модифицированного дополнительного кода арифметический сдвиг вправо должен быть модифицированным, т.е. освобождающийся разряд заполняется содержимым знакового разряда, состояние которого не изменяется.
Так как при увеличении разрядности на единицу сумма частичных произведений и множимого не приводит к искажению вырабатываемой новой суммы частичных произведений, то перемножение кодов двоичных чисел в этом случае не зависит от знака значения множимого у, т.е. использование модифицированного дополнительного кода позволяет автоматически учитывать поправку (-х),„ 2".
Из формулы (1) видно, что коррекция произведения z = х у на величину (-у) „ 2 " производится при 3 О.
Так как в дополнительном коде X npu
М 0 знаковый разряд находится в состоянии "1", то коррекцию на величину! 29030! (-у)„ 2 можно совместить с »=.,лом умножения;-»одсв сомножителей на знаковый разряд множителя.
При умножении на знаковый разряд прибавляется к накопленной сумме час- 5 тичных произведений величина у 2" затем прибавляется величина (-у) 2", т.е. у 2 + (-у) 2 =(-у) 2 .. (2} и и
Устройство для умножения двоичных чисел в дополнительных кодах реализует алгоритм (!) с учетом соотношения ("), т.е. производится (и-1} циклов перемножения кодов пс
f5 правилам умножения положительных двоичных кодов, а последний -й цикл (умножение на знаковый разряд кода множите»»я Х ) произвоцится пу".ем добавления к накопленной сум — 20 ме частичных произведений инверсного кода множимого у и "1" в младший разряд, так как (-у) = y + (правило изменения знака числа з дополнительном коде) .
Устройство обрабатывает -разрядные двоичные ч»»сла Х,Ч, в дополнительных кодах, а произведение
z = х у вырабатывается 2„-разрядньм. Для обеспечения использования модифицированного дополнительного кода регистр б множимого, сумматор
5 и регистр 4 имеют (n+1) разрядов.
Для того, чтобы устройство мсглс обрабатывать целые (выравненные сгра- 35 ва) или дробные (выравненные слева) двоичные числа с фиксированной запятой, регистр 3 множителя также (и+1) — разрядный.
Устройство работает следующим образом.
Перед выполнением операции умножения устройство находится в начальном состоянии: 45
1) в регистре 3 множителя находится дополнительный код множителя Ч, при этом старший (n+1) -й разряд уста.— навливается в состояние "0", остальные h разрядов отведены для кода Х;
2) регистр 4 находится в нулевом
СОСТОЯНИИ;
3) в регистре 6 находится модифицированный дополнительный код множимого Ч„ . 55
Вычисление произведения z = ху начинается с поступлением управляющего сигнала в устройство по входу 10 через вход запуска блока 2 микропрограммнсгс управления, который вырабатывает на своем втором выходе сигнал, поступающий в счетчик 1 через первый вход. По этому сигналу счетчик устанавливается в начальное состояние, т.е. настраивается на выполнение (n †!) циклов вычислений, После этого в устройстве выполняется (n-1} циклов вычислений суммы частичных произведений. В каждом i-м цикле, где i = 1,2,...,(n-l), выполняются следующие микрооперации:
1) выдача прямого кода регистра 4
z;, на первыи информационный вход сумматора 5 по сигналу, вырабатываемому на пятом выходе блока 2 при . состоянии младшего разряда х = 1 регистра 3.;
2) выдача прямого кода регистра
6 »„ на второй информационный вход сумматора 5 по сигналу, вырабатываемому на одиннадцатым выходе блока
2 при состоянии младшего разряда
-Х,= 1 регистра 3;
3) вычисление новой суммы частичных произведений:
z,= г. +у
t-1 М
4) прием прямого кода новой суммы частичных произведений с выхода сумматора 5 в регистр 4 по сигналу, вырабатываемому на шестом выходе блока 2 при состоянии младшего разряда
V, = 1 регистра 3;
5! модифицированный арифметический сдвиг вправо на один разряд содержимого регистров 3 и 4, -содержимое младшего разряда которого переносится в освобождаемый старший разряд регистра 3 по сигналу, вырабатываемому на седьмом выходе блока 2 (младший разряд регистра 3 переходит в состояние, соответствующее процессу умножения на следующем (i+1) цикле);
6) увеличение состояния счетчика 1 на единицу по сигналу, вырабатываемому на четвертом выходе блока 2;
7) проверка счетчиком условия
<(и-1) и при соблюдении этого условия устройство переходит к выполнению следующего (i+1)-го цикла вычислений. Операции 1-4 выполняются только при состоянии младшего разряда Х = 1 регистра 3, операции 5
7 - в каждом цикле вычислений.
После выполнения (и-1) циклов устройство перехоцит к и-му циклу вычисления окончательного результата z=xy.
1РЛОЗО1
В п-м цикле выполняются микрооперации: 1) выдача прямого кода регистра 4 в сумматор 5 по сигналу восьмого выхода блока 2 при М,= 1; 5
2) выдача инверсного кода Y u
1 соответственно на второй информа,ционный вход и на дополнительный вход младшего разряда сумматора 5 по сигналу с одиннадцатого выхода блока 2 микропрограммного управления при
Х = 1
3) вычисление к„ = к, + у„ + 1;
4) прием прямого кода z,„ регистром 4 по сигналу с девятого выхода блока 2 при М,= 1;
5) модифицированный арифметичес.— кий сдвиг вправо на один разряд содержимого регистров 3 и 4 с переносом содержимого младшего разряда иэ регистра 4 в старший разряд регистра 3 по сигналу, вырабатываемому на десятом выходе блока 2.
После выполнения л-го цикла в регистрах 4 (старшие разряды) и 3 (младшие разряды) будет находиться модифицированный дополнительный код
z „ произведения z = х у, вычислен— ный в соответствии с алгоритмом (1) . 1g
Младший разряд регистра 3 после выполнения н сдвигов устанавливается в нулевое состояние.
Так как модифицированный дополнительный код двоичного числа отличается от обычного раздвоением знакового разряда регистра, то в регистрах
3 и 4 вырабатывается дополнительный
z код произведения z = ху.
При обработке целых двоичных чисел результат размещен в и младших разрядах регистра 4 (старшие разряды) и в П старших разрядах регистра 3 множителя.
При обработке дробных чисел (выравненных слева) результат размещен в (и-1) младших разрядах регистра 4 и во всех (n+i) разрядах регистра 3.
Схема выходов результата показана на фиг.2.
После вычисления произведения
z = ху на выходе 11 блока 2 вырабатывается сигнал признака окончания работы устройства.
Блок 2 микропрограммного управления является известным устройством и функционирует в соответствии с графом его работы, представленным на фиг.3. формула изобретения
Устройство для умножения, содержащее регистры множимого, множителя, результата, блок микропрограммного управления, счет -:ик и сумматор, причем информационные входы регистров множи«ого и множителя яаляются входами соответственно множимого и множителя у.стройства, вход запуска устройства является входом запуска блока микропрограммного управления, первый выход которого является выходом признака окончания операции умножения устройства, выходы регистров результата и множимого соединены с первым и вторым информационными входами сумматора, выход которого соединен с информационным входом регистра результата, выход младшего разряда которого соединен с. входом сдвига регистра множителя, выход младшего разряда которого соединен с входом разрешения запуска первого цикла вычисления блока микропрограммного управления, второй выход которого соединен с первым счетчным входом с .етчика, выход которого соединен с входом разрешения раб:рты блока MHI Составитель Н.Маркелова Редактор М.Дылын Техред Л.Олейник Корректор Г.Решетннк Заказ. 7902/46 Тираж 673 Подпис но е ВНИИПИ Государственного комитета СССР по делам изобретений и открытий 113035, Москва, Ж-35, Раушская наб., д.4/5 Производственно-полиграфическое предприятие, г.Ужгород, ул. Проектная, 4