Устройство для умножения Советский патент 1991 года по МПК G06F7/52 

Описание патента на изобретение SU1672441A1

Изобретение относится к цифровой вычислительной технике и предназначено для умножения и сдвига чисел, представленных в двоичной системе счисления, и может найти применение в качестве операционного блока в высокопроизводительных вычислительных машинах и системах.

Целью изобретения является расширение функциональных возможностей устройства за счет выполнения операции сдвига. . В устройстве операнды положительные

п

числа, представляются в виде А ai2 .

i 1

ai Ј. {О, 1}, где А ai32...ап двоичный п-раз- рядный код числа А. Выполнение операции умножения в предлагаемом устройстве, так же как и в известном, основано на таблично-алгоритмическом методе умножения, од- Иако в отличие от известного в предлагаемом устройстве процесс умножения конвейеризован за счет совмещения во времени получения элементарных произведений и накопления суммы частичных произведений.

пп

Пусть Х Јх|2 и Y V y,2 множимое

i 1i 1

и множитель соответственно, где х:, yi - значение 1-х разрядов кодов сомножителей. Тогда для представления точного результата Z X-Y требуется 2п-разрядный двоичный код.

Процесс вычисления произведения Z запишется в виде

п/р п/р Z Z(Y,2Xi(2p) W

1 1

i 1

(1)

С

о

vj

ю

t

где% xi XH-I...XI+P-I - 1-я двоично-кодированная цифра кода множимого в канонической позиционной системе счисления с основанием q 2Р;

У У) двоично-кодиро- ванняа цифра кода множителя

Таким образом, процесс умножения состоит из однотипных повторяющихся циклов. Во время очередного j-ro цикла j-e

п/р

частичное произведение YI Х| 2 рг выi 1

числяется на - К умножителях, выполняющих операцию умножения р-разрядного двоичного кода Y на р-раз- рядный двоичный код Xi с образованием произведения разрядности 2р и собирается в р двоично-разрядный код частичного произведения X-Yj на сумматоре.

Наличие регистра частичных произведений при соответствующем управлении позволяет организовать конвейер при вычислении Z, когда в один и тот же момент времени на одном сумматоре формируется частичное произведениде XYj-м, а на другом сумматоре формируется сумма частичных произвдений Zj Zj-i 2 р + XYj, причем Z0 О, Z Zk.

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

Пусть d - число сдвигов (т.е. число разрядов, на которое необходимо сдвинуть двоичный код). Тогда сдвиг влево будет аналогичен умножению сдвигаемого кода на число 2 . При большом d умножение производить не выгодно из-за большого числа циклов умножения. Поэтому двоичный код числа сдвигов дешифрируется и полученный унитарный код разбивается на группы по р разрядов. Пусть в r-й группе р разрядов

(г , - ближайшее к а целое,

такое, что а а, С- разрядность числа сдвигов d) есть I (назовем эту группу р разрядов параметром сдвига С), тогда производится умножение на r-ю группу р разрядов с помощью аппаратуры умножителя и г-1 (это число назовем параметром сдвига М, М г- 1) аппаратный сдвиг на р разрядов.

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

Сдвиг вправо аналогичен сдвигу влево повернутого кода. Поворотом кода бдует называть преобразование следующего вида. Пусть двоичный n-разрядный код числа В имеет вид В bib2...bn, тогда после поворота он имеет вид ...b2 bi.

Поэтому при сдвиге вправо сдвигаемый код необходимо повернуть, произвести

0

5

0

5

0

5

0

5

0

5

сдвиг влево и снова повернуть полученный код.

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

Устройство содержит (см. фиг.1) регистры множимого 1 и множителя 2. умножители Зг-Зк, сумматор 4 элементарных произведений, сумматор 5 частичных произведений, блок 6 формирования параметров сдвига, блок 7 микропрограммного результата, счетчик 8, второй блок 9 поворота кода, коммутатор 10 регистры 11 и 12 частичного произведения и результата соответственно, первый блок 13 поворота кода, выходы 14- 24 блока 7, входы 25 адреса первой микрокоманды, тактовый вход 26 и вход 27 окончания операции блока 7, вход 28 числа сдвигов устройства.

Блок поворота кода 9 (13) содержит (см.фиг.2) содержит первую 29 и вторую 30 группы элементов И, группу элементов ИЛИ 31.

Блок 6 формирования параметров сдвига (см. фиг.З) содержит дешифратор 32, первую 33 и вторую 34 группы элементов ИЛИ, шифратор 35.

Счетчик 8 предназначен для подсчета выполняемых сдвигов на р разрядов и циклов умножения и выдачи сигнала о завершении выполнения операций.

Блок 9 поворота кода предназначен для передачи на регистр множимого 1 множимоп

го или сдвигаемого кода Х х) в норi 1

мальном виде или с поворотом в зависимости от направления сдвига.

Коммутатор 10 предназначен для передачи на регистр множителя 2 множителя или параметра сдвига С.

Регистр множимого 1 предназначен для хранения множимого или сдвигаемого кода X.

Регистр множителя 2 сдвиговый, п-рэз- рядный, причем сдвиг осуществляется в сторону младших рдазрядов на р разрядов. Предназначен для хранения множителя Y или параметра сдвига С.

Умножители Зт.-.Зк предназначены для вычисления очередного элементарного произведения XiYj, i 1К, имеют два р-разрядных входа и 2р-разрядный выход.

Сумматор 4 элементарных произведений -двуухвходовый, n-разрядный, предназначен для формирования старших п разрядов частичных произведений Y|X, j - 1. 2К.

n + p-разрядный регистр частичных произведений 11 предназначен для хранения частичного произведении YjX, n разрядов которого поступают из сумматора А и младшие р разрядов из умножителя 3i.

Сумматор 5 частичных произведений двухвходовый, п р-разрядный. предназна- чен для сложения двух слагаемых

Регистр результата 12 - п+р-разрядный сдвиговый, причем сдвиг осуществляется в сторону старших разрядов. Предназначен для хранения результатов умножения или сдига.

Блок поворота кода 13 предназначен для выдачи результата выполнения операции умножения и сдвига клево и нормальном виде или с поворотом если сднш осуществлялся вправо.

При выполнении оппоации умножения устройство работает слпдч ющим образом,

В исходном состоянии регистры 1,2. 11, 12 обнулены (на фиг.1 Ц Тпи сброса и пита- ния не показаны). По сигналам блока 7 (на выходах 16, 17, 13, 24. 18) множимое X через блок 9 поворота кода принимается на ре гистр множимого 1, множитель Y через коммутатор 10 принимается на регистр множителя 2 и из блока 7 в счетчик 8 принимается число циклов умножения

В каждом цикле умножения X на очередные р разрядов на управляющие входы поступают сигналы гак, как это показано на фиг.4. Число циклоь умножения равно К ; п/р.

В первом (j т 1) цикле по сигналу на выходе 21 блока 7 на умножителях Зь..3к происходит формирование К элементарных произведений XiYr, i -- 1, 2,....К, а по сигналу наа выходе 20 блока 7 они собираются на сумматоре 4 и частное произведение записывается на регистр 11, одновременно происходит сдвиг множителя на р разрядов в регистре множит.-/-; 2.

В последующих циклах происходит умножение X на очередные р разрядов Y с одновременным сложением частичного произведения с содержанием регистра 12. сдвинутым на р разрядов в , шрону младших разрядов с помощью косой передачи на сумматоре 5 по сигналу на выходе 21 блока управления, затем сборка очередного частичного произведения на сумматоре 4 и прием его на регистр 1 1 с одновременным сдвигом на р разрядов, содержимого регистра 2, а затем прием в старшие р разрядов регистра 2 младших р разрядов регистра 12 по сигналу на выходе 19 блока управления.

В кахдом цикле . множения одновременно с cm налом на выходе 21 блока 7 по сигналам на выходе 15 происходит счет циклов на счетчике.

После завершения сложения на сумматоре 5 п последнем цикле (j : К) на регистре 12 оказывается ггр старших разрядов кода произведения а на регистре 2 n-р младших разрядов кода произведения.

Об окончании операции умножения сигнализирует счетчик.

При выполнении операции сдвига влево устройство работает следующим образом.

В исходном состоянии регистры 1,2, 11, 12 обнулены. На управляющие входы поступают сигналы так. как. это показано на фиг.5.

По сигналам блока 7 на выходах (16, 17.18, 23, 24) сдвигаемый код через блок поворота кода 9 в нормальном виде принимается на регистр 1. на регистр 2 через коммутатор 10 принимается параметр сдвига С и в счетчик 8 - параметр сдвига М.

Затем по сигналу на выходе 21 блока управления 7 на умножителях З1...3к происходит формирование К элементарных произведений Xj C. i 1. 2К. а по сигналу на

выходе 20 блока 7 они собираются на сумматоре 4 и частичное произведение запоминается на регистре 1 1. Затем по сиг налу на выходе 2 1 происходит сложение частичного произведения с нулем и запоминание результата на регистре 12.

По сигналам на выходе 15 происходит необходимое число сдвигов влево на р разрядов с одновременной подачей сигналов на счетный вход счетчика по сигналам на выходе 22 блока 7. По окончании сдвига результат оказывается в п младших разрядах регистра 12.

При выполнении операции сдвига вправо на управляющие входы поступают сигналы гак. как это показано на фиг.6. Отличие от сдвига влево заключается в том, что по сигналам (16. 17. 23, 24. 18) (.двигаемый код через блок 9 поворота кода с поворотом принимается в регистр 1

Далее процесс повторяется аналогично сдвигу влево.

По окончании операции сдвига результат снимается с регистра 12 через блок 13 попорота кода и с поворотом кода.

Формула изобретения

Устройство для умножения содержащее регистры множимого и множителя. К умножителей (К п/р, где п разрядность операндов, р - количество одновременно обрабатываемых разрядов операнда), сумматор элементарных, произведений, регистр частичных произведений, сумматор частичных произведений, регистр произведения и блок микропрограммного результата, причем вход первого сомножителя каждого умножителя соединен с выходом соответствующих р разрядов регистра множимого, а вход второго сомножителя - с выходом р младших разрядов регистра множителя, входы разрядов первого слагаемого сумматора элементарных произведений соединен соответственно с выходами р старших разрядов каждого умножителя, выходы р младших разрядов j-ro умножителя Q 2....К) соединены соответственно с входами (pj - p)-x разрядов второго слагаемого сумматора элементарных произведений, выходы р младших разрядов первого умножителя соединены соответственно с входами р младших разрядов регистра частичных произведений, входы последующих разрядов которого соединены с выходами соответствующих разрядов сумматора элементарных произведений, а выход - с входом первого слагаемого сумматора частичных произведений, вход второго слагаемого которого соединен с выходом регистра результата, информационный вход которого соединен с выходом сумматора частичных произведений, вход разрешения суммирования которого соединен с входом записи регистра результата, управляющим входом К умножителей и первым выходом блока микропрограммного управления, второй выход которого соединен с входом записи регистра множимого и первым входом записи регистра множителя, вход сдвига которого соединен с входом записи регистра частичных произведений, входом разрешения суммирования сумматора элементарных произведений и третьим выходом блока микропрограммного управления, четвертый выход которого соединен с входом сдвига регистра результата, отличающееся тем, что, с целью расширения функциональных возможностей за счет выполнения операции сдвига, в него введены блок формирования параметров сдвига, первый и второй блоки поворота кода, коммутатор и

счетчик, вход установки которого соединен с пятым выходом блока микропрограммно - го управления и первым выходом блока фор- мирования параметров сдвига, второй выход которого соединен с первым информационным вводом коммутатора, второй информационный вход которого соединен с входом множителя устройства, а выход - с первым информационным входом регистра множителя, второй информационный вход

которого соединен с выходом р младших разрядов регистра результата, а второй вход записи - с шестым выходом блока микропрограммного управления, второй выход которого соединен с информационным вхоДом счетчика, счетный вход и выход которого соединены соответственно с седьмым выходом и входом окончания операции блока микропрограммного управления, восьмой и девятый выходы которого соединены

соответственно с первым и вторым управляющими входами коммутатора, выход регистра результата соединен с информационным входом первого блока поворота кода, выход которого соединен с выходом устройства, а

первый и второй управляющие входы - соответственно с десятым и одиннадцатым выходами блока микропрограммного управления и первым и вторым управляющими входами второго блока поворота кода, информационный вход которого соединен с входом множимого устройства, а выход - с информационным входом регистра множимого, вход кода операции и управляющий вход устройства соединены соответственно

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

Автоматическое Время Фиг.Ь

Автонатное Креня

Фиг 5

Похожие патенты SU1672441A1

название год авторы номер документа
Вычислительное устройство 1988
  • Бобровский Алексей Иванович
  • Булкин Геннадий Николаевич
  • Кириченко Зинаида Михайловна
  • Мельник Алла Николаевна
  • Трубицын Андрей Михайлович
  • Харченко Федор Мефодьевич
SU1532917A1
Устройство для умножения чисел 1990
  • Бобровский Алексей Иванович
  • Прохорович Андрей Михайлович
SU1714595A1
Устройство для умножения 1990
  • Бобровский Алексей Иванович
  • Марчук Виктор Николаевич
SU1753471A1
Устройство для умножения 1988
  • Бобровский Алексей Иванович
  • Буяло Валентина Петровна
  • Ерема-Еременко Жанна Борисовна
  • Петрунек Василий Николаевич
  • Трубицын Андрей Михайлович
  • Осипов Владимир Алексеевич
SU1615706A1
Устройство для умножения 1985
  • Кургаев Александр Филиппович
  • Опанасенко Владимир Николаевич
SU1305667A1
Устройство для умножения 1985
  • Миронов Иван Яковлевич
SU1290301A1
Десятичное множительное устройство 1972
  • Чернов Эдгар Александрович
SU468239A1
Арифметическое устройство 1984
  • Евстигнеев Владимир Гаврилович
  • Евстигнеева Ольга Владимировна
  • Кошарновский Александр Николаевич
SU1236473A1
Устройство для умножения чисел с плавающей запятой 1985
  • Евстигнеев Владимир Гаврилович
  • Кошарновский Александр Николаевич
  • Маркин Александр Васильевич
SU1280624A1
Устройство для умножения 1985
  • Мынкин Сергей Семенович
  • Русанов Сергей Георгиевич
  • Фирстов Юрий Петрович
SU1309019A1

Иллюстрации к изобретению SU 1 672 441 A1

Реферат патента 1991 года Устройство для умножения

Изобретение относится к цифровой вычислительной технике и предназначено для умножения и сдвига чисел, представленных в двоичной системе счисления, и может найти применение в высокопроизводительных вычислительных машинах и системах. Цель изобретения состоит в расширении функциональных возможностей за счет выполнения операции сдвига путем введения блока формирования параметров сдвига, двух блоков поворота кода, коммутатора, счетчика и изменения связей. 6 ил.

Формула изобретения SU 1 672 441 A1

ЛКтоматичсско( брепя t

-aff

Документы, цитированные в отчете о поиске Патент 1991 года SU1672441A1

Устройство для сдвига информации 1978
  • Гусев Валерий Федорович
  • Иванов Виктор Николаевич
  • Михайлов Виктор Петрович
  • Шагивалеев Мансур Закирович
  • Ярмухаметов Азат Усманович
SU798820A1
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Авторское свидетельство СССР № 754412.кл
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1

SU 1 672 441 A1

Авторы

Бобровский Алексей Иванович

Ерема-Еременко Жанна Борисовна

Лезин Илья Александрович

Марчук Виктор Николаевич

Тищишин Иван Степанович

Даты

1991-08-23Публикация

1989-04-04Подача