Устройство для умножения

 

СОЮЗ CQBETCHHX

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

РЕСПУБЛИК ц11 с 06 г 7/52

ОПИСАНИЕ ИЗОБРЕТЕНИЯ, К вто СкомМ СеиДкткльСтн

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

IlO ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТЖ (61) 888109 (21) 3348020/18-24 (22) 23.10.81 (46) 15.08.83. Гюл. М 30 (72) Г.П.Лопато и А.А.йостак (7I) Минский радиотехнический институт (53) 681.325(088.8) (S6) 1. Авторское свидетельство СССР

М 888109, кл. G 06 F 7/52, 1978 (прототип). (54)(57) 1. УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ по авт.св. N 888109, о т л и ч а ющ е е с я тем,что,с целью расширения области применения за счет умножения чисел в дополнительном коде, в него введен блок преобразования множителя в дополнительный код, информационный вход которого соединен со входом множителя устройства, первый и второй управляющие входы — со вхо„„SU„„1035601 A дами знака множимого и признака дополнительного кода устройства соответственно, а выход - с четвертым входом последнего блока вычисления разрядных значений произведения, 2.устройство по и. 1, о т л и ч .аю щ е е с я тем, что блок преобразования множителя в дополнительный код содержит счетчик, регистр и триггер, выход которого подключен к счетному входу счетчика, информационный выход - к информационному входу регистра „ выход которого соединен с информационным входом счетчика, выход переполнения которого соединен с информационным входом триггера, установочный вход которого соединен с установочным входом регистра и вторым управляющим входом блока, первый управляющий вход которого подключен к разрешающему входу регистра.

601

1 103 .Изобретение относится к вычисли" е тельной технике и может быть использовано при разработке быстродейству" ющих устройств для умножения чисел, представленных в любой позиционной 5 системе счисления в дополнительном коде, По основному авт.св. И 888109 известно устройство для умножения, содержащее регистр множимого, п бло- 10 ков вычисления разрядных значений произведения (n - число разрядов множимог о), п буферных регистров первой группы и п буферных регистров второй группы, причем первые входы блоков вычисления разрядных значений произведения соединены с выходами соответствующих разрядов регистра множимого, вторые входы - с входами множителя устройства, третьи и четвертые входы - с выходами соответствующих буферных регистров первой и второй групп, входы буферных регистров первой и второй групп соединены соответственно с выходами старшего и младшего разряда соответствующих блоков вычисления разрядных значений произведения, выход первого буферного регистра второй группы подключен к выходу устройства, 30 четвертый вход последнего блока вы" числения разрядных значений,произведения соединен с входом коррекции устройства Е13.

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

Цель изобретения - расширение об40 ласти применения устройства за счет возможности умножения чисел в допол" нительном коде.

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

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

-регистра.

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

Устройство содержит (фиг.1) и-разрядный регистр 1 множимого, блоки 2 вычисления разрядных значений произ" ведения, буферные регистры 3 и гг первой и второй групп соответственно, блок 5 преобразования множителя в дополнительный код, вход б множителя устройства, входы 7 и 8 знака множимого и признака дополнительного кода устройства соответственно выход 9 устройства. Первый вход 1-ro блока 2 вычисления разрядных значений, произведения (i 1,2, ° ..,n),соединен с выходом 10 i-го разряда регистра множимого, второй вход - с входом

6 множителя устройства, третий вход " с выходом i-го буферного .регистра

3 первой группы,, четвертый вход " с выходом 3 + 1 -го буферного регистра гг второй группы, причем ere выход

1.1 старшего разряда соединен с

i-м буферным регистром 3 первой группы, а выход 12 младшего разряда с 1 -м буферным регистром 1г второй, группы. Информационный вход блока 5 преобразования множителя в дополни" . тельный код соединен со входом 6 множителя устройства, а его первый и второй управляющие входы - с входами

7 и 8 знака множимого и признака дополнительного кода устройства соот" ветственно, выход блока 5 преобраэо= вания множителя в дополнительный код соединен с- четвертым входом последнего блока 2 вычисления разрядных значений произведения, выход первого буферного регистра 1г второй группы является выходом 9 устройства.

Совокупность i-ro блока 2 вычисле ния разрядных значений произведения

601 4 15 и триггер 16 (регистр 15 в блоке

5 фактически выпоЛняет роль однотакт" ной линии задержки информации). 3а лись информации в регистр 15 осуществляется только при наличии разре" шающих потенциалов на входах 7 и 8 устройстяа одновременно. Наличие разрешающего потенциала на входе 7 устройства соответствует отрицательному множимому, а наличие разрешающего потенциала на входе 8 означает,что в устройстве производится умнояение числа в дополнительном коде (в про". тивном случае предполагается, что выполняется умножение чисел без учета их знаков,т.е.в беззнаковой форме}.

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

K-разрядный. двочиный код ООО,... 0l

h при условии, что множимое отрицательное (в противном случае на эти входы необходимо подавать нули). Это обеспечивает однородность устройства для умножения на уровне идентичных модулей 13 и можст оказаться целесо- образным при небольших значениях к.

Работу устройства для умножения чисел рассмотрим применительно к двоично-кодированной 2" -й системе счисления, т.е. когда каждый разряд как множимого, так и множителя представляет собой набор из к двоичных цифр. В исходном состоянии буферные регистры 3 и 4 всех модулей 13, а также регистр 15 блока 5 преобразования множителя s дополнительный код обнулены, в триггере 16 блока 5 записана единица, а в регистре 1 множимого хранится и-разрядный

2-й код множимого (и k - разрядный двоичный дополнительный код множимо-. го) .

В каждом из и первых тактов работы стройства на его вход 6 поступает араллельно К двоичных разрядов ножителя. начиная с er o младших азрядов. При этом е 1 -м блоке 2

ычисления разрядных значений проиэедения осуществляется умножение двоичных разрядов множителя, посту3 1035 и i-х буферных регистров 3 и 4 может быть конструктивно выполнена в виде единого модуля 13,. реализованного, например, как большая интегральная схема. Включение в модуль 13 соот- 5 вествующего разряда регистра 1 множимого в качестве его - третьего буферного регистра обеспечивает однородность устройства умножения чисел. 10, Блок 5 преобразования множителя в дополнительный код осуществляет последовательное формирование дополнительного кода множителя, начиная с младк .их разрядов, и содержит 15 (Фиг.2} К-разрядный двоичный комбинационный счетчик 14, K-разрядный регистр 15 и триггер 16, причем выход триггера 16 подключен к счетному входу счетчика 14, информационный вы 26 ход которого подключен к информационному входу регистра 15, выход которого является и выходом блока 5, .информационный вход блока 5, являющийся входом 6 множителя устройства, соединен с информационным входом счетчика 14, выход переполнения которого соединен с информационным входом триггера 16,установочный вход которого соединен с установочным входом 30 регистра 15 и вторым управляющим входом блока 5, являющимся входом

8 признака дополнительного кода устройства, первый управляющий вход блока 5, являющийся и входом 7 знака множимого устройства, подключен к разрешающему входу регистра 15.

Блок 5 преобразования множителя в дополнительный код работает сле— дующим образом.

В исходном состоянии его регистр

15 обнулен, а в триггере 16 записа на единица (запись этой единицы осуществляется через второй управляющий вход блока 5, являющийся и рходом "5

8 признака дополнительного кода).

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

6 множителя устройства (предполага- у ется, что по этому входу в каждом и такте поступает наряду с К-прямыми м

К-инверсных двоичных цифр множителя), 55 р содержимого триггера 16, а получивша- s яся при этом сумма и перенос запи- в сываются соответственно в регистр К

103%01 пающих на его второй вход со входа

- б устройства, на К двоичных разрядов множимого, поступающих на его к первый вход с выхода 10 1-ro 2-го разряда регистра 1 множимого и прибавление к К младшим разрядам получившегося при этом 2 К - разрядного произведения. через четвертый и третий входы блока 2 соответственно младших двоичных разрядов произведе-. ния (1+1)-го блока 2, сформированных в предыдущем такте и хранимых в буферном регистре 4 (+1) -ro модуля

13 и К старших двоичных разрядов произведения i-го блока 2, сформированных в предыдущем такте и хранимых в буферном регистре 3 j -ro модуля 13. После этого сформированные К младших двоичных разрядов произведения i -ro блока 2 с его выхода 12 записываются в i-й буферный регистр 4, а К старших двоичных разрядов произведенияс выхода 11 в 1 -й буферный регистр

3. Одновременно с формированием разрядных произведений в блоках 2 устройства в течение первых И тактов

его,ðà6îòû в блоке 5 преобразования множителя в дополнительный код формируется последовательным образом (по К двоичных разрядов в каждом такте) дополнительный код множителя, если только множимое отрицательное, значение которого по

К двоичных разрядов поступает в каждом такте, кроме первого, на четвертый вход последнего блока 2 формирования разрядных значений произведения (в первом такте на этот вход поступает нулевая информация, так как в исходном состоянии регистр 15 блока 5 обнулен). Этим самым практически производится прибавление к п старшим разрядам произведения множимого на множитель дополнительного кода множителя, т.е. вводится коррекция в результат по знаку множимоro .

После выполнения первых и тактов работы устройства осуществляется дополнительно еще и тактов, в течение которых из устройства выводится с соответствующим преобразованием информация, хранимая в буферных регистрах 3 и 4 всех модулей 13. При этом, если множитель положительный, то на вход 6 устройства в каждом такте подается нулевой К -разрядный двоичный код 0...000, если же мно-!

k житель отрицательный - единичный

К-разрядный двоичный код 1 ° ..111

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

25 2.И тактов его работы через выход

9 в параллельно-последовательном коде (по к двоичных разрядов в каждом такте).

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

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

К цифры (это всегда может быть обеспечено, например, За счет расширения разрядной сетки сомножителей), то в качестве коррекций используются дополнительные коды множимого и мно жителя, а знак результата определяется автоматически двумя старшими двоичными разрядами наиболее значимой 2-й цифры произведения: "00" означает, что произведение положительное, "11" определяет отрицательное произведение, "01" указывает на то, что произошло положительное переполнение при умножении двух наибольших по модулю отрицательных чисел;. сочетание "10" быть не может. Если же знаки множимого и множителя не являются составной, 1035601 Т а б л и ц а

Что используется в качестве коррекции

Примечание

Множимое

Множитель

Результат не кор- -Запись информации в регистр 15 ректируется блока 5 блокируется по входу

7 устройства

Дополнительный код множителя

Дополнительный код множимого и+11

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

Рассмотрим принцип работы устройства для случая, когда И =2, K =4, а знаки множимого и множителя входят к в их старшие 2-е цифры. Пусть множимое X = -1001111, множитель У =

-1100111, тогда произведение

Р = X У = + 01111111001001, В устройстве множимое и множитель представлены в дополнительном коде: Хр =

10110001 и У11 = 10011001. Все ос" новные действия, выполняемые устройством при умножении заданных сомножителей, приведены в табл.2.

После выполнения четырех тактов на выходе 9 устройства сформировано произведение P = 0001111111001001, два старших двоичных разряда которого укаэываЬт на то, что оно положи" тельное 1,это произведение формируется по четыре двоичных разряда в каждом такте ).

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

На вход 6 устройства в течение и дополнительных тактов подаются нули

Разрешается прием информации в регистр 15 блока 5 по входам

7, 8 устройства

На вход 6 устройства в течение и дополнительных тактов поступают нули.

Прием информации в регистр 15 блока 5 блокируется по входу

7 устройства

На вход 6 устройства в течение и дополнительных тактов подаются единицы

Разрешается прием информации в регистр 15 блока 5 по входам

7,8 устройства.

На вход 6 устройства в течение и дополнительных тактов поступают единицы

1035601

Таблица 2

Разряды результата на выходе 9 устоой.ства

Действия в младшем модуле 13

Действия в старшем модуле 13

Действия в блоке 5

100) 0001

1001

0110

01)i

1011

1001

01100011

0000

0000

00001001

0000

ОООО

01100011

00001001

1100

1011

1001

0110

0001

1001

0110

00001001

+ 0000

+ 0011

0111 000

00001100

0000

0000

1111

1011

1111 oi 0T

О

0111

0110

00001111

10110010

0000

0000

1011 ,1111

0001

10 10000

А/2. Я

ВНИИПИ Заказ 5834/50 Тираж 70б Подписное филиал ППП "Патент", г. Ужгород, ул. Проектная, 4

01100011

+ 0110

+ 0111 — т—

10100101

1011

0000 — т—

0001

1111

00001111 оооо

ОООО

0001

1111

000011 »

00010001

Устройство для умножения Устройство для умножения Устройство для умножения Устройство для умножения Устройство для умножения Устройство для умножения 

 

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

Изобретение относится к радиоэлектронике и может быть использовано в вычислительных устройствах для реализации перемножения страниц операндов с любым сочетанием знаков

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

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

Изобретение относится к цифровым умножителям и предназначено для умножения цифрового сигнала (ЦС) на сигнал в форме периодической волны, преимущественно синусоидальной

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

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

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

Изобретение относится к вычислительной технике и может быть использовано для построения вычислительных систем с повышенной достоверностью выдаваемых данных

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