Множительно-сдвиговое устройство
Иллюстрации
Показать всеРеферат
ОПИСАНИЕ
ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВ ОЗЛЬСЗВУ
Союз Советских
Социалистических
Реснублнк
< 805307 (61) Дополнительное к авт. сеид-ву
®> g,ç (22) Заявлено 110778 (21) 264 3104/18-24 с присоединением заявки 89 (23) Приоритет
G 06 F 7/54
Государствеииый комитет
СССР ио дедам изобретеиий и открытий
Опубликовано 15.02,81. бюллетень КЯ 6
Ю) MK 681.З28 (088.8) Дата опубликования описания 1М2.81
Р.A. Шек-Иовсепянц, Ю.И. Фомин, В.И. Евсеев, Н.В. Кондрашев (54) МНОЖИТЕЛЬНО-СДВИГОВОЕ, УСТРОЙСТВО
Изобретение предназначено для ис.пользования в вычислительной технике, в частности для выполнения операций умножения и сдвига в цифровых вычислительных машинах (ЦВМ) и устройствах автоматики., B настоящее время в перспективных разработках находят применение последовательно-параллельные ЦВМ, имеющие компромиссное решение между малогабаритными со средним быстродействием ЦВМ последовательного типа и быстродействующими, но со значительными затратами ЦВМ параллельного типа.
Известно устройство, которое относится к числу устройств умножения последовательно-Параллельного типа с параллельной обработкой и разрядов множимого и m разрядов множителя и содержит генератор кратных множимых, регистр множителя, коммутатор частнынпроизведений и последовательнопараллельную схему суммирования с элементами задержки. Это устройство обеспечивает быстродействие выполнения операций умножения,, достаточное для последовательно-параллельных машин с параллельной обработкой п-, разрядных групп операндов (11. ЗО
Недостаток устройства — невозможность выполнения операций сдвига кодов.
Наиболее близким к предлагаемому техническому решению является устройство, содержащее сумматор, регистр множителя, генератор произведений и преобразователь константы сдвига в параллельный однопоэиционный код, вход которого соединен с выходом адресной части регистра команд основного арифметического устройства (т.е. с шиной двоичной константы сдвига), а выход — со входом генератора произведений. В этом устройстве все младшие разряды константы сдвига, кроме старшего знакового и разрядов, определяющих вид сдвига (арифметический или логический), подаются на вход преобразователя двоичной константы сдвига, преобразующего двоичный код константы сдвига в параллельный однопоэициониый код. Таким образом, на выходе преобразователя выдается код в виде нулей с единицей в К-ом разряде при сдвиге влево или единицей в 15-К-ом разряде при сдвиге вправо, который подается в качестве множимого на вход последовательно-параллельного множительного уст805307 ройства, которое реализует операцию сдвига аналогично операции умножения полноразрядного множимого, так как выход преобразователя константы сдвига подключен к соответствующему входу генератора произведений, т.е. констан- 5 та сдвига является полноразрядным множимым, а сдвигаемое число в этом случае следует по каналам множителя (2)-.
Недостатком этого устройства являются значительные аппаратурные затраты, связанные с невозможностью группировки разрядов параллельного однопозиционного кода преобразованной константы сдвига для их дальнейшей последовательной обработки в схеме для умножения группами по п раз- 15 рядов (где n = 2,3,4... 0 — числа натурального ряда от 2 до 6, а полная разрядность константы сдвига, т.е. множимого).
Цель изобретения — сокращение аппа- щ ратурных затрат, связанных с проведением операций сдвига и умножения, а также обеспечение простоты и универсальности оборудования.
Укаэанная цель достигается тем, что множительно-сдвиговое устройство, содержащее преобразователь двоичного кода константы сдвига в однопозиционный код, блок последовательнопараллельного умножения, выход которого является выходом устройства, содержит коммутатор множимого и счетчик тактов, при этом .ервая группа входов коммутатора множимого соединена с группой выходов преобразователя двоичного кода константы. сдвига в однопозиционный код, а вторая — с шиной множимого, первая группа входов преобразователя константы сдвига в однопозиционный код соединена с группой выходов счетчика тактов, соединенного 4р своими входами с шиной старших разрядов двоичного кода константы сдвига в однопозиционный код и тактовой шиной устройства, вторая группа вхо— дов преобразователя двоичного кода константы сдвига в однопозиционный код соединена с шиной младших и старшего разрядов кода константы сдвига, группа входов множителя блока последовательно-параллельного умножения соединена с шиной множителя устройства, а группа входов множимого с группой выходов коммутатора множимого, При этом для достижения поставленной цели преобразователь двоичного H кода константы сдвига в однопозиционный код содержит первый и второй дешифраторы, первую и ворую группы элементов И, группу элементов ИЛИ, выходы которых являются группой выходов пре- @ образователя, а входы каждого элемента ИЛИ соединены с выходами соответствующих ему элементов И первой и второй групп, первые входы элементов
И первой и второй групп соединены соответственно с выходами первого и второго дешифраторов, вторые — с шиной инверсного и прямого значений старшего. разряда кода константы сдви.га, третьи входы соединены с первой группой входов преобразователя, а входы дешифраторов и шины прямого и инверсного значений старшего разряда кода константы сдвига соединены со второй группой входов преобразователя.
На чертеже схематически представлено устройство.
Оно содержит блок 1 последовательно-параллельного умножения с параллельной обработкой п-разрядных групп множимого и m-разрядных групп множителя, счетчик 2 тактов, преобразующий старшую часть двоичного кода константы сдвига с (I+Eog
4 при умножении или сдвигаемого числа при сдвиге; коммутатор 6 частичных произведений, формирующий — частичЦ
m ных произведений . в последовательнопараллельном виде каждое; схему 7 суммирования частичных произведений,. обеспечивающую суммирование частичных произведений, каждое со своим весом
I в последовательно-параллельном виде и формирующую на своик выходах результат операции умножения или сдвига; и-разрядный двухвходовой коммутатор 8 миожимого,обеспечивающий коммутацию мйожимогв или преобразованной конантанты сдвига- при операциях умножения или сдвига соответственно на входах генератора 3 кратных множимого, входную шину 9 двоичной константы сдви-га, обеспечивающую параллельный прием в устройство прямых и инверсных значений Р-разрядного кода двоичной константы сдвига; первый дешифратор 10, преобразующий миапшую часть прямого кода шины 9 с первого по 0о и-ый разряды в .однопозиционный параллельный код, второй дешифратор 11, преобраэукищий .младшую часть обратного кода шины 9 с первого по ) од и-ый разряды в однопозицмонный параллельный код, группу 12 элементов И, группу 13 элементов И, группу 14 элементов ИЛИ, состоящие из и элементов каждая, формирующие на и выходах элементов ИЛи
805307 константу сдвига, следующую последовательно группа за группой по и разрядов в каждой группе," тактовую шину 15, обеспечивающую прием тактирующих кодов устройства; входную шину 16 множимого,обеспечивающую прием . кода множимого при операции умножения; выход 17 устройства представляю- щий шину, по которой выдается код произведения; преобразователь двоичного кода константы сдвига в однопоэиционный код.
Принцип действия устройства состоит в том, что операция сдвига представляет собой умножение сдвигаемого числа на число величиной 2К, где К вЂ” число разрядов, на которое 5 необходимо сдвинуть код. При сдвиге влево К имеет положительный знак, а при сдвиге вправо — отрицательйый, что определяется состоянием старшего разряда р двоичной константы сдвига. 20
Таким образом, для выполнения сдвига путем умножения на константу требуется преобразование последней в однопозиционный код вуда 2 при сдвиге влево и 2 при сдвиге вправо, т.е. 6 -разрядный код с нулями во всех разрядах кроме K-го при сдьиге влево или (B К)-oro нри сдвиге вправо, где 2 — полная разрядность множимого, К вЂ” величина сдвига. При параллельной передаче и разрядов в одном тахте передаются сразу и разрядов, и необходимо определить две величины — номер разряда, равного единице, внутри группы и номер группы, внутри которой находится этот разряд.
Для определения номера разряда внутри п -разрядной группы необходимо и достаточно определить 8оц и младших разрядов двоичного кода констан- 40 ты, рричем эта функция реализуется дешифрацией 9og>n-разрядного двоичного кода. Для этого и введены в устройство первый и второй дешифра- торы 10 и 11 соответственно. 45
Номер группы, старшей по весу, определяется с помощью Роц2(†)старших разрядов двоичной константы.
Комер группы представляет собой временной такт, соответствующий мо- 50 менту прохождения через логические элементы 12,13...14 той, и-разрядной группы, в которой имеется разряд, равив1й единице. Это не что иное как„ последовательный код разрядностью с нулями во всех разрядах кроме одного, соответствующего номеру группы, имеющей один из разрядов, равный единице, т.е. константа сдвига с разе 46 рядностью 2 = — . Разрядность двоичП ного кода такой константы определится как log (†.), = fog>3 — Зов и, где
2. и.
fog< 8 = (P- 1)-разрядность исходной двоичной константы сдвига без старшего разряда Р, управляющего направлением сдвига вправо или влево, а
log<.n — группа разрядов исходной двоичной константы, используемая в дешифраторах 10 и 11 для определения номера разряда, равного единице, внутри и-разрядной группы.
Из вида однопозиционной константы сдвига, разбитой на 8 = групп в соответствии с нумерацией этих групп
10,1,...,(— - 1)) и разрядов е и (0,1,..., (E-1)), следует, что номер
: и-разрядной группы, в которой должен располагаться разряд, равный единице, определяется целой частью со.отношений
). )
/= Я-K(— для сдвига вправо, и т.е. определение номера этой группы сводится к преобразованию двокчного кода в последовательный однопозиционный вида 2(к » для сдвига вле<-К 1 во и 2(для сдвига вправо. Для такого преобразования необходима и достаточна старшая часть двоичного кода константы сдвига, от(1+Род,п)-ro по (P-1) разряд. При этом учет Р-ro разряда и его инверсии определяет выбор 2(или 2, т.е. направление сдвига.
В соответствии с описанным выше принципом, счетчик 2 тактов формирует среди последовательности выдаваемых им нулей сигнал, равный единице, в момент времени, соответствующий прохождению через п логических элементов ИЛИ очередной параллельной группы разрядов константы, среди которых должен быть разряд, равный единице.
Выбор разряда, равного единице, внутри и-разрядной группы определяется состоянием, равным единице, одного из выходов первого дешифратора 10 для первой группы 12 элементов И и второго дешифратора 11 для второй группы 13 элементов И.
Выбор второй или первой группы элементов И, т.е. направление сдвига вправо или влево, определяется состояниЕм старшего разряда Р и его инверсии Р на входах элементов И 13 и .12.
Таким образом, в результате преобразования с выходов группы 14 элементов ИЛИ снимается последовательнопараллельный код константы сдвига группами по и разрядов в каждом такте.
Для дальнейшего выполнения операции.сдвига необходимо в схеме 1 для умножения перемножить сдвигаемое чисчо на константу сдвига, для этого
805307 указанные числа обрабатываются как полноправные.сомножители.
Число, подлежащее сдвигу, так же как и множитель, поступает по входной шине 5 множителя в регистр 4 множителя параллельно и остается в нем до конца операции.
Последовательно-параллельная константа сдвига поступает с выходов ,группы 14 логических элементов ИЛИ через коммутатор 8 множимого, открытый при выполнении операции сдвига для константы сдвига, на входы генератора 3 кратных множимого. Генератор 3 кратных множимого формирует полный ряд чисел, кратных исходной унитарной константе сдвига с кратностью
Al от О до 2 — 1 и представленных последовательно-параллельным кодом, где m — разрядность группы множителя.
Кратные множимому т.е. константе сдвига, последовательно-параллельные чис- 20 ла поступают на вход коммутатора 6 частичных произведений, который пропускает на каждую и-разрядную группу двоих выходов число, кратность которого определяется соответствующей э5 группой разрядов множителя, т,е.
@двигаемого числа. Таким образом, на группах выходов коммутатора 6 частичных произведений одновременно формируются последовательно-параллельные
Коды частичных произведений мно,кимого на соответствующие группы разрядов множителя.
Блок 7 суммирования производит сложение частичных произведений с учетом их весов, определяемых весом соответствующих групп множителя.
С выходов блока 7 суммирования полное произведение, являющееся сдвинутым исходным числом, последовательно-параллельным кодом поступает на 40 выходную и-разрядную шину 17 результата.
Для (= 16, и = 4 и К = 7 разрядность двоичного кода константы
P Kog 8 + 1 знаковый = 4+1=5 (1 )
Значение двоичного кода константы знаковый старшие, младшие. сдвиг влево 0 01 11 (2) сдвиг
S0 вправо 1 01, 11 (3)
Математическое значение преобразованной константы для сдвига влево, Р раэр.
15 14 13 12,11 10 9 8 7 б 5 4 3 2 1 0 (4) значение
О 0 О О О О О О 1 О 0 О О О О О для сдвига вправо
Р раэр. 15 14 13 2 11 10 8 7 б 5 4 3 2 1 О значение
О О О 0 0 0 1 О 0 0 0 О О О О О (5)
На входы. дешифратора 10 поступает прямой код Hog и= 8од 4 = 2
2.
65 младших разрядов, т.е. код 11; на входы дешифратора 11 поступают инверсные значения, т.е. код 00. Таким образом, в течение всего преобразования на 4-м выходе дешифратора 10 и
1-ом выходе дешифратора 11 будет логическая единица, на остальных — нули.
В преобразователь 2 поступает комбинация разрядов двоичного кода константы от (1+Род и) = (1+8о9, 4) = 3 до Р = 5, т.е. код 0.01 для сдвига влево, а 1.01. для сдвига вправо
КI 1 — 1-/ /= 2, что соответствует присутствию логической единицы во втором и третьем тактах для сдвига влево и вправо соответственно.
В результате по первой группе элементов И подготовлен выход четвертого элеме па ИЛИ группы 14, а по второй — выход третьего элемента ИЛИ группы 14.
При сдвиге влево состояние разряда P кода константы сдвига определяет выбор первой группы элементов И, а логическая единица на выходе счетчика 2 возбуждает выход четвертого элемента ИЛИ группы 14 только во втором такте, что соответствует последовательно-параллельной информации на выходах элементов ИЛИ 14 вида:
Р сборки
Р такта IV I I I I I
0 О О 0
1 О О
О
0 О О 0
IV 0 О 0 О т.е. исходной математической константе для сдвига влево — 0000 0000 1000
0000.
При сдвиге вправо
Р сборки
Р такта IV I I I I I I
О О О О
I l О О О 0
О О 1
IV
О 0 О О т.е. исходной математической константе сдвига вправо — 0000 0010 0000
0000.
Для исходных данных q 8, К = 3, m -= -n = 2 код сдвигаемого числа—
0 О О О 1 О О 1, значение константы сдвига определяется как 000001000. йналогично вышеприведенному в последовательно-параллельном виде:
805307
Номер входа генератора 3
Номер такта
1 II 111 IV
О О О О
О 1 О О
Формула изобретения
1. Множительио-сдвиговое устройство, содержащее преобразователь двоичного кода константы сдвига в одно- . поэиционный"код, блок последоватеЛьно-параллельного умножения, выход которого является выходом устройства, о т.л и ч а ю щ е е с я тем, что, с целью сокращения аппаратурных затрат, в него введены коммутатор мно жимого и счетчик тактов, при этом первая группа входов коммутатора
Р множимого соединена с группой выходов преобразователя двоичного кода константы сдвига в однопозиционный
20 код, а вторая — с шиной множимого, первая группа входов преобразователя двоичного кода константы сдвига в однопозиционный код соединена с группой выходов счетчика тактов, соединенного своими входами с шиной старших разрядов двоичного кода константы сдвига в однопозиционный код и тактовой шиной устройства, вторая группа входов преобразователя двоич30 ного кода константы сдвига в однопозиционный код соединена с шиной младших и старшего разрядов кода константы сдвига, группа входов множителя блока последовательно-параллельного умножения соединена с шиной множителя устройства, а группа входов множимого — с группой выходов коммутатора множимого.
2. Устройство по п, 1, о т л и ч а ю щ е е с я тем, что преобразо"О ватель двоичного кода константы сдвига в однопозиционный код содержит первый и второй дешифраторы, первую и вторую группы элементов И, группу элементов ИЛИ, выходы которых являют4$ ся группой выходов преобразователя, а входы каждого элемента ИЛИ соединены с выходами соответствующих ему элементов И первой и второй групп, первые входы элементов И первой и
gg второй групп соединены соответственно с выходами первого и второго дешифраторов, вторые — с шинами инверсного и прямого значений старшего разряда кода константы сдвига, третьи входы соединены с первой группой вхо дов преобразователя, а входы дешифраторов и шины прямого и инверсного значений старшего разряда кода константы сдвига соединены со второй группой входов преобразователя. ьо Источники информации, принятые во внимание при экспертизе
1. Авторское свидетельство СССР
Р 583433, кл. G 06 F 7/39., 1974. я 2.- Авторское свидетельство СССР 65 271116, кл. G 06 F 7/52, 1967.
О О О О
О О 1 0
О 1 О О
2М
На младшую группу выходов коммутатора 6 частичных произведений поступает в соответствии с младшей группой мно- жителя, равной 01, число, равное И, ° на вторую — в соответствии со второй группой множителя, равной 10, число
2М. На третью и четвертую группы выходов поступают нулевые коды, так как соответствующие группы множителя равны 00.
При сложении этих частичных произведений, с учетом веса соответствующих групп множителя следующим образом:
М О О О О 1 О О О
О 0 О 1 О О О О
2М
0 0 0 0 0 0 0 0
ОМ
ON О О О 0 0 О О 0 сдвинутое число
8 тактов
На выходе генератора 3 кратных множимых формируются числа К,. И для m = 2
1М = 00001000
2М = 000100000 3N = 00011000 . в последовательно-параллельном виде:
1 4 0 0
О 1 О 0
О О О 0 О 0 0 1 0 О 1 О О О на выходах схемы суммирования получается результат операции сдвига.
В последовательно-параллельном виде:
О О О 1 0 О О О
О 1 О О О 0 0 0
B схеме суммирования эти частичные произведения также обрабатываются последовательно-параллельно группами по и разрядов, где n 2 эа один такт.
В результате такой последовательно-параллельной обработки константы сдвига и исходного числа быстродействие выполнения операции сдвига воз росло в па2 раз по сравнению с извес естным устройством. Таким образом, ет выполнение операции сдвига требуе меньших аппаратурных затрат, чем s известном- устройстве, что достигаетс эа„ счет последовательно-параллельной обработки константы сдвига и исходного числа и введения коммутатора множимого.
805307
Составитель Г. Плешев
Редактор М. Цнткина Техред М. Рейнес. Корректор О. Билак, Заказ 10903/71 Тираж 756 Подписное
ВНИИПК Государственного комитета СССР ло .делам изобретений н открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4