Устройство для умножения
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано при разработке быстродействующих устройств для умножения двоичных и десятичных чисел. Целью изобретения является расширение области применения устройства за счет возможности умножения на нем и десятичных чисел. Устройство содержит регистры множимого, множителя и результата , блок кратных, блок частичных произведений, блок двоичного суммирования, блок суммирования тетрадных переносов, блок коррекции, блок десятичного суммирования и коммутатор . Цель достигнута за счет введения в устройство блока кратных, блока суммирования тетрадных переносов , блока коррекций, блока десятичного суммирования и коммутатора.При этом выход регистра множимого соединен с входом блока кратных, выход которого соединен с вторым входом блока частичных произведений. Выходы тетрадных переносов блока двоичного суммирования соединены соответственно с входами блока суммирования тетрадных переносов, выходы которого соединены соответственно с первой группой входов.блока коррекций, вторая группа входов которого соединена соответственно с выходами тетрадных сумм блока двоичного суммирования , кроме последнего, который соединен соответственно с входом блока десятичного суммирования, другие входы которого соединены соответственно с выходами блока коррекций. Выходы тетрадных сумм блоков двоичного и десятичного суммирования соединены соответственно с первой и второй группами входов коммутатора, выход которого соединен с входом регистра результата . 2 нл. сл § ьэ ;о - ел м
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК ð4 С 06 F 7/52
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ЙО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ
ОПИСАНИЕ ИЗОБРЕТ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 351.1015/24-24 (22) 12.11.82 (46) 07.05.86. Бюл. 9 17 (71) Минский радиотехнический институт (72) Л.Г.Лопато, А.А.Шостак и Л.О.Шпаков (53) 681.325.5(088.8) (56) Авторское свидетельство СССР
В 1035600, кл. G 06 F 7/52, 1981.
Авторское свидетельство СССР и .1157542, кл. G; 06 F 7/52, 13.09.82. (54) .УСТРОЙСТВО ДЛЯ УМНОЖЕНИЯ (57) Изобретение относится к вычислительной технике и может быть использовано при разработке быстродействующих устройств для умножения двоичных и десятичных чисел. Целью изобретения является расширение области применения устройства за счет возможности умножения на нем и десятичных чисел. Устройство содержит регистры множимого, множителя и результата, блок кратных, блок частичных произведений, блок двоичного суммирования, блок суммирования тетрадных переносов, блок коррекции, блок десятичного суммирования и ком„.80„„1229?57 А1. мутатор. Цель достигнута за счет введения в устройство блока кратных, блока суммирования тетрадных переносов, блока коррекций, блока десятичного суммирования и коммутатора.При этом выход регистра множимого соединен с входом блока кратных, выход которого соединен с вторым входом блока частичных произведений. Выходы тетрадных переносов блока двоичного суммирования соединены соответ- ственно с входами блока суммирования тетрадных переносов, выходы которого соединены соответственно с первой группой входов. блока коррекций, вторая группа входов которого соедине- 9 на соответственно с выходами тетрадных сумм блока двоичного суммирования, кроме последнего, который соединен соответственно с входом блока
Ф десятичного суммирования, другие входы которого соединены соответственно с выходами блока коррекций. Выходы тетрадных сумм блоков двоичного и десятичного суммирования соединены co- © ответственно с первой и второй группами входов коммутатора, выход которого соединен с входом регистра ре- © зультата. 2 ил. Д
29757 2
В узле 10 (фиг.2) для определен О ности рассматривается суммирование двадцати девяти одноразрядных тетрадных переносов, поступающих в него и он содержит сумматор 16 двадцати девяти одноразрядных двоичных чисел, 4 четырехразрядный комбинационный двоичный сумматор 17 с ускоренным переносом, пять элементов И 18 и четыре элемента ИЛИ 19. С помощью элементов
И 18,-18 и элемента ИЛИ 19, форми " руется перенос С „, равный единице, когда сумма тетрадных переносов на выходе сумматора 16 больше девяти, но меньше двадцати. При этом, когда возникает этот перенос из сум " мы, полученной на выходе сумматора
16, вычитается число десять (это вычитание в узле 10 выполняется на сумматоре 17 путем добавления "+6"), 1 12
Изобретение относится к вычислительной технике и может быть использовано при разработке быстродействующих устройств для умножения десятичных чисел.
Цель изобретения — сокращение количества оборудования.
На фиг.1 представлена функциональная схема устройства для умножения, .на фиг.2 — выполнение узла суммирования тетрадных переносов.
Устройство содержит регистры 1
3 множимого, множителя и произведения соответственно, блок 4 формирования кратных множимого, блок 5 формирования частичных произведений, блок 6 двоичного суммирования, блок
7 суммирования тетрадных переносов, блок 8 коррекции, блок 9 десятичного суммирования. Блок 7 содержит узлы 10 суммирования тетрадных переносов ° Блок 8 содержит узлы 11 умножения на шесть, узлы 12 десятичного суммирования, преобразователи 13 двоичного кода в десятичный. Блок 6 имеет выходы 14 тетрадных переносов и выходы 15 тетрад.
Регистры 1 и 2.множимого и множителя предназначены для хранения mразрядных десятичных сомножителей, в регистр 3 произведения записывается 2m-разрядное десятичное произведение.
В блоке 4 формируется двухкратное
2 Х, четырехкратное 4 Х и восьмикратное 8 Х множимые.
В блоке 5 формируются частичные произведения множимого Х на все цифры множителя У, причем число частичных произведений равно п=4ш. Это связано с тем, что формируются четыре частичных произведения множимого на каждую десятичную цифру m-разрядного множителя.
Блок 6 предназначен для параллельного по возможности суммирования и частичных произведений,. сформированных в блоке 5 и поступакщих соответствующим образом на входы блока 6 с учетом занимаемых ими весовых позиций. На выходы 14 блока 6 n r..òóïàþò тетрадные переносы, которые формируются из тетрад в блоке при суммировании частичных произведениФ . которые s нем же используются для получения правильного результата, Например, на выход 14 подаются ace те переносы, которые образуются из пер;
1Î
l5
26
35 вой наименее значимой тетрады блока 6 при суммировании в нем частичных произведений и которые далее обязательно поступают во вторую тетраду блока 6 для формирования правильного результата (переносы же, которые возникают в первой тетраде блока 6 и в ней же и используются, на выход 14, не должны поступать). Тетрадные переносы блока б могут быть как одноразрядными, так и многоразрядными двоичными числами. На выходы 15 блока 6 поступает потетрадно 2п-разрядная двоичная сумма в однорядном. коде.
Например, четыре наиболее младших двоичных разряда этой суммы образуют ее первую тетраду и подаются на выход t5 блока 6, а четыре самых старших двоичных разряда образуют последнюю тетраду суммы и поступают на выход 15 блока 6 °
Блок 7 содержит (2m-1) узлов 10 суммирования тетрадных переносов °
Каждый узел 10 блока 7 осуществляет суммирование переносов, возникакицих из одной тетрады блока 6. Например, узел 10 производит суммирование тех тетрадных переносов, которые об- . разуются во второй тетраде блока 6 и обязательно передаются в его третью тетраду для дальнейшего суммирования (эти тетрадные переносы поступают на входы узла 10 - блока 7 с выхода 14 блока 6). Все узлы 10 блока
7 могут быть построены с использованием ПЗУ по соответствующим таблицам истинности. Узлы 10 соединены между собой цепью десятичных переносов.
3 1229
С помошью элементов И 18„и И 18Б и элемента ИЛИ 19 образуется из узла 10 перенос С„ :, равный двойке, бых когда сумма тетрадных переносов на выходе сумматора 16 больше девятнад5 цати. Когда возникает этот перенос на сумматоре 17 производится коррекция суммы, однако уже путем вычитания из чее числа двадцать. При таком построении узла 10 при суммиро- 10 вании двадцати девяти тетрадных переносов на его выходе не может образоваться значение суммы, больше чем одиннадцать. Каждый разряд блока 8, образованный совокупностью i- ãî узла 11, i -го узла 12 и . i--го преобразователя 13 (i =1,...,2m-1), может быть выполнен в виде ПЗУ. Эти узлы могут быть реализованы и по другому, например в виде некоторых ком- 2б бинационных схем, синтезированных о соответствующим таблицам истинности. По значению суммы тетрадных переносов, которая равна числу возникших из соответствующей тетрады блока 25
6 определяется число цифр "6", которые необходимо прибавить в соответствующую десятичную позицию результата для его коррекции. Это объясняется тем, что при суммировании частичных произведений в блоке 6 всякий раэ когда возникает одноразрядный перенос из некоторой тетрады блока 6 необходимо корректировать эту тетраду путем добавления в нее "+6". Эта
35 коррекция выполняется в блоке 8.
757 4 соответствующей коррекции (предполагается, что все действия над десятичными числами производятся в коде
8421). Например, на первый вход i -го разряда блока 8 поступает с выхода а-го узла 10 блока 7 двоичный код суммы тетрадных переносов С =11001, а на второй его вход с i-ro выхода 15 блока 6 подается двоичный код тетрадной суммы Я =1111. Тогда в -м разряде блока 8 производятся следующие действия: формируется для i-é десятичной позиции коррекция результата
К=6С, 150; осуществляется преобразование i --й тетрадной суммы S из двоичной системы счисления в десятичную: S l
=1111 Я = 15; выполняется десятичное сложение и тетрадной суммы
S„ и i -й коррекции К;, в результате чего образуется результат для -й десятичной позиции
R S + К, о 165.
Ниже приведен фрагмент таблицы истинности разряда блока 8, где через Х Х Х„и У„Уд У,У, обозначена информация, поступающая соответственно на первый и второй входы разряда блока 8, а через Z Z обозначен результат, который формируется на его выходе (возрастание индексов при буквенных обозначениях принято в направлении старших разрядов).
Десятичные цифры результата
ХХХ, у у у, старшая Е младшая Z, 0000
000
0tt0
001
0010
010
1000
011
0100
100
0000
101
0110
t10
0030
Таким образом, в каждом разряде блока 8 формируется коррекция для соответствующей десятичной позиции результата. Она определяется следую- 40 щим образом: ! где С„ — значение суммы тетрадных переносов i --го узла 10 бло-45 ка 7, выраженное в десятичном обозначении.
Например. на выходе i-го узла 10 блока 7 сформирована двоичная сумма
С =10101, тогда С,о =21 и К =126. 50
Кроме того, в каждом разряде блока 8 осуществляется преобразование иэ двоичной системы счисления в десятичную тетрадной суммы, представленной в двоичном коде и поступающей соот- 55 ветственно на его вход с выхода 15 блока 6, а также десятичное подсуммирование значения эт9й суммы к значению
0000 0000
0000 0000
0000 0001
0000 0001
0000 0010
0000 001 t
0000 0011
0000 0100
1229757
Продолжение таблицы
Десятичные цифры результата
ХХХ, УУVV старшая Е младшая Z, 000
0001
0101
0001
0010
001
010
0010
0111
011
0011
0011
100
0011
1001
101
110
1111
1111
0101
0101
0001
0111
0101
По таблице истинности может быть легко разработан на ПЗУ любой разряд блока 8. Следует отметить, что с целью обеспечения более высокого быстродействия блока 9 информацию на выходах разрядов блока 8 можно надлежащим образом формировать в коде с избытком шесть.
Блок 9 предназначен для быстрого
35 суммирования десятичных результатов, полученных на выходах разрядов блока 8.
Устройство работает следующим образом.
Одновременно или последовательно во времени в регистры 1 и 2 загружаются m-разрядные десятичные сомножители Х и У без знаков. После того в блоке 4 формируются четыре,цесятичных кратных множимого Х (1 Х, 2 Х, 4 Х, 8 Х), которые затем поступают на входы блока 5, где и образуется п частичных произведений (четыре частичных произведения при умножении
50 на один разряд ш-разрядного множителя). В блоке 6 выполняется быстрое сложение этих частичных произведений с учетом занимаемых ими весовых позиций и по возможности, параллельно, в блоке 7 формируются суммы тет55 радных переносов, по которым в блоке
8 корректируется 2ш-.разрядная сумма, образовавшаяся на выходах 15 блока б.
Б блоке 9 производится быстрое сложеННе результатов, сформированных на выходах блока 8, а получившаяся на его выходах 2m-разрядная сумма запи-. сывается в регистр 3 °
Формула изобретения
Устройство для умножения, содержащее регистры множимого, множителя и произведения, блок формирования кратных множимого, блок формирования частичных произведений, блок двоичного суммирования, блок суммирования тетрадных переносов, блоки коррекции и десятичного суммирования, причем блок суммирования тетрадных переносоВ содержит узлы суммирования тетрадных переносов, блок коррекции содержит узлы умножения на шесть, при этом выходы разрядов регистра множителя подключены к входам первой группы блока формирования частичных произведений, выходы разрядов регистра множимого подключены к входам блока формирования кратных множимого, выходы групп с первой по четвертую которого подключены к входам групп с второй по пятую соответственно блока формирования частичных произведений„ выходы которого подключены к входам блока двоичного суммирования, выходы тетрадных переносов блока двоичного суммирования подключены в соответствии со значениями весов разрядов к входам соответствукицих узлов суммирования тетрадных переносов, выходы которых подключены к входам узлов умножения на шесть, выходы блока,цесятичного суммирования соединены с входами регистра произведения, о т л и ч а ю щ е е с я тем, что, с целью сокращения количества оборудования, блок коррекции содержит узлы десятичного суммирования и преобразователи двоичного кода в десятичный, первые входы узлов десятичного суммирования подключены к выходам соответствующих узлов умножения на шесть, выходы тетрад с первой по предпоследнюю блока двоичного суммирования соединены с входами соответствующих преобразователей двоичного кода в десятичный, выходы которых подключены к вторым входам соответствующих узлов десятичного суммирования, выходы которых подключены к входам разрядов блока десятичного
1229757
Фас. t
ВНИИПИ Заказ 2451/49 Тирак 671 Подписное
Произв.-полигр. пр-тие, г. Ужгород, ул. Проектная, 0 суммирования в соответствии со значениями весов разрядов, выход последней тетрады блока- двоичного суммирования соединен с входом старшего разряда блока десятичного суммирования, выходы десятичных переносов узлов суммирования тетрадных переносов соединены с входами последукзцих
5 узлов суммирования тетрадных переносов.