Арифметическое устройство
Иллюстрации
Показать всеРеферат
ОПИСАНИЕ
ИЗОБРЕТЕНИЯ
Союз Советскик
Социалистических
Республик
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. свид-ву(22) Заявлено 03.08.81 (21) 3325648/18-24 (И)М.КП. с присоединением заявки М (23) Приоритет6 06 Р 7/38
Государствеииый комитет
СССР ио делам изобретеиий и открытий
f $3) УДК 681. 325 (088. 8) Опубликовано 30.0183. Бюллетень Йо 4
Дата опубликования описания 30.01.83
Н. В. Черкасский, Р. О. Антонов, А. А. М и В. И. Песков (72) Авторы изобретения г.
Львовский ордена Ленина политехнический институт, им. Ленинского комсомола
1 (71) Заявитель (54) АРИФМЕТИЧЕСКОЕ УСТРОИСТВО
Изобретение отнбсится к вычисли тельной технике и может быть использовано для выполнения операций сложения, вычитания, умножения, деления и извлечения корня при обработке больших массивов многоразрядных чисел.
Известно матричное арифметическое устройство (1).
Однако устройство не имеет высокой производительности при обработке массива чисел, так как выполнение операций над очередной парой чисел можно производить лишь тогда, когда будет получен предыдущий результат.
Известно арифметическое устройство, которое содержит и последовательно соединенных однотипных блоков, каждый из которых содержит два регистра, формирователь (и+1) старших разрядов, два триггера и элемент H$2).
Однако устройство предназначено для обработки массива чисел одновременно, а не массива из пар чисел, и кроме того, не может выполнять операции деления и извлечения корня квадратного.
Наиболее близким к предлагаемому является арифметическое устройство, которое содержит и однотипных после:довательно соединенных решакииих блоков, каждый из которых содержит три триггера, сумматор, элементы И-ИЛИ, а также логический узел, содержащий два элемента И, прямой и инверсный выходы которых объединены элементом HJIH g3).
Недостатком этого устройства явтп ляется недостаточное быстродействие. при выполнении операции деления и извлечения корня квадратного, которые выполняются за два полутакта.
Кроме того, при выполнении этих опе раций . необход|;мо сдвигать данные два раза влево в первом регистре каждого блока, что также приводит к снижению быстродействия.
Пель изобретения — повышение быст.
2О родействия устройства при выполнении операции деления и извлечения корня квадратного.
Поставленная цель достигается тем, что в арифметическом устройстве, содержащем и последовательно соединенных решающих блоков (n - разрядность онерандов), состоящих из трех регистров, сумматора, коммута.торов, и п логических узлов, содержащих элемент ИЛИ и два элемента И, выходы которых соединены с входами
993252 элемента ИЛИ, причем выходы логнчес. ких узлов соединены с входами разря- дов второго регистра первого решающег о блока, выходы разрядов первого регистра k-ro блока (где k = 1,...,п). соединены с первыми входами соответ-.
5 ствующих разрядов сумматора, прямые выходы разрядов второго регйстра
k-го решающего блока соединены с входами разрядов второго регистра (k+1)-ro решающего блока, инверсный и прямой выходы (k+1)-ro разряда
10 второго регистра k-го решающего блока соединены с информационными входами первого коммутатора, управляющие входы которого соединены с первой и второй управляющими шинами устройства, выход первого коммутатора соединен с вторым входом (k + 1)-го разряда сумматора, прямые выходы k-x разрядов третьего регистра k-ro решающего блока соединены с входами (k-1)-ых раэрядов третьего регистра (k+1)-ro решающего блока, выход второго коммутатора k-ro решающего блока соединен с .входом k-ro разряда второго регистра (k+1)-ro решающего 25 блока, первый информационный вход второго коммутатора k-ro блока соединен с прямым выходом k-ro разря-. да второго регистра k-ro блока, первый управляющий вход второго комму- 30 татора соединен с второй управляющей шиной устройства, каждый решающий блок дополнительно содержит третий коммутатор, причем информационные входы k-ro разряда третьего комму- 35 татора соединены с выходом (k-1)-го разряда первого регистра, с выходом (k+1)-го разряда первого регистра, с выходом (k-1)-ro разряда сумматора, с выходом {.k+1)-ãî разряда сум- 40 матора, управляющие входы третьего коммутатора соединены с прямыми и инверсными выходами знакового разря-, да сумматора и первого разряда третьего регистра и с третьей и четвертой управляющими шинами устройства, выход k-ro разряда третьего коммутатора k-го решающего блока соединен с входом k-ro разряда первого регистра (k+1)-ro решающего блока, инверсный выход знакового разряда суммато ра k-ro блока соединен с входом п-го .разряда третьего регистра (k+1)-ro блока и с вторым информационным входом второго коммутатора, второй управляющий вход которого соединен с 55 первой управляющей шиной устройства, инверсные выходы всех разрядов второго регистра k-го блока, кроме (k+1)-га разряда, соединены с вторыми входами сумматора. 60
На чертеже представлена функциональная схема арифметического устрой ства.
Устройство содержит и решающих блоков 1, каждый из которых содержит регистры 2-4, сумматор 5, коммутаторы 6-8. Кроме того, устройство содержит и логических узлов 9, содержащих элементы И 10 и 11 и элемент
ИЛИ 12, входные шины 13-15, управляющие шины 16-20. Блок 1 содержит коммутатор б; имеющий и разрядов, и одноразряднйе коммутаторы 7 и 8. Выход (k-1)-го разряда регистра 2 соединен с первым информационным входом
k-ro разряда коммутатора б, управляющие входы которого соединены с управляющей шиной 18 (операции "Деление, извлечение корня") и с прямым выходом знакового разряда сумматора 5.
Выход (k+1)-го разряда регистра 2 соединен е вторым информационным входом k -ro разряда коммутатора 6, управляющие входы которого соединены с шиной 17 (" Умножение) и с ин-версным выходом йервого разряда регистра 4. Выход (k-1)-го разряда сумматора 5 соединен с третьим информационным входом k-го разряда коммутатора б, управляющие входы которого соединены с шиной 18 и инверсным выходом знакового разряда сумматора 5. Выход (k+1)-ro разряда сумматора 5 соединен с четвертым информационным входом k-го разряда коммутатора 6, управляющие входы которого соединены с шиной 17 и с прямым выходом первого разряда регистра 4. Выход k-го разряда регистра 2 соединен с первым входом k-го разряда сумматора 5, второй вход которого соединен с инверсным выходом
k-го разряда регистра 3, кроме вто-. рого разряда в первом блоке 1, третьего разряда во втором -блоке 1 и n-ro разряда в (n-1)-ом блоке 1. В каждом из блоков 1 прямой выход этих раз рядов соединен с первым информационным входом коммутатора 7, первый управляющий вход которого соединен с шиной 19 ("Извлечение корня" ), а инверсный выход — с вторым информацион. ным входом коммутатора 7, второй управляющий вход которого соединен с шиной 20 (" Деление, умножение"). Выход коммутатора 7 соединен с вторым входом соответствующего разряда сумматора 5. Выходы k-x разрядов коммутатора б соединены с входаци соответствующих разрядов регистра 2 последующего блока 1.
Инверсные выходы k-x разрядов регистра 3 каждого предыдущего блока 1 соединены с входами k-x разрядов регистра 3 последующего блока 1, кроме первого разряда во втором блоке 1, второго разряда в третьем блоке 1 и т.д. Входы этих разрядов соединены с выходом коммутатора 8, первый информационный вход которого соеди; нен с инверсным выходом знакового разряда сумматора 5, первый управляющий вход — с шиной 19, второй инфор993252 мационный вход коммутатора 8 соединен с инверсным выходом первого разряда первого блока 1 (второго разряда второго блока 1 и т.д.), а второй
Управляющий вход - с шиной 20. Выход
k-ro разряда регистра 4 каждого предыдущего блока 1 соединен с входом (k-1)-ro разряда регистра 4 последующего блока 1. Вход n-ro разряда регистра 4 последующего блока 1, начиная с второго блока 1, соединен . с инверсным выходом знакового разряда сумматора 5 предыдущего блока 1.
При сложении, вычитании, делении входами устройства являются шины 13 и 14. При этом логический узел 9 пропускает через элемент ИЛИ 12 прявые (через элемент И 10) или инверсные (через элемент И 11) значения вход- ных сигналов. При умножении входами
Устройства являются шины 14 и 15, при извлечении корня квадратногошина 13. Перед началом работы все регистры сбрасываются в нулевое состояние.
При умножении в первом такте первое множимое, поступающее но шине 14, проходит на регистр 3 через элементы
И 11, ИЛИ 12, а первый множитель . — .. по шине 15 на регистр . 4, причем- ixepвый разряд — младший разряд множи-. теля.
Содержимое регистра 3 проходит на сумматор 5, где складывается с нулевыми значениями регистра 2. Если первый разряд множителя регистра 4равен "1", то коммутатор б пропускает На регистр 2 второго блока сдви-. нутое значение сумматора 5. Если -первый разряд множителя равен "0", то коммутатор 6 пропускает сдвинутое значение регистра 2.
Сдвиг. операндов вправо обеспечен соединением разрядов. регистра 2 и сумматора 5 с коммутатором б, а также соединением Регистров 4 соседних блоков 1.
Во втором такте содержимое первого блока 1 переписывается во второй блок 1, а в первый блок 1 поступает вторая пара .операндов. B первом блоке 1 получают в сумматоре 5 первуючастичную сумму произведения первой пары. чисел. Во втором блоке полученную ранее первую частичную сумму,записанную в регистр 2, складывают в сумматоре 5 с содержимым регистра 3. В зависимости от значения второго разряда первого множимого (регистр 4) в. сумматоре 5 получают вторую частичную сумму. произведения пер вой пары чисел (производится сложение или сдвиг операндов).
При и-разрядных входных операндах результат вычислений первой пары чисел получают на выходе сумматора.
5п-го блока через и тактов, а всех последующих пар чисел - через один такт. При делении первое делимое записывают в регистр 2, а первый делитель — по шине 14 в регистр .3 через элементы И 10, ИЛИ 12 делителя.
Деление выполняют с восстановлением остатка. В первом такте в сумматоре
5 вычитают из первого делимого инверсные значения первого делителя.
Если остаток получился положительный, 10 разряд частного равен единице, и коммутатор 6 пропускает содержимое сумматора 5 со сдвигом под управлением инверсного выхода знакового разряда сумматора 5. Если остаток отрицатель15 ный, разряд частного равен нулю, коммутатор б пропускает содержимое регистра 2 со сдвигом под управлением .прямого выхода, знакового разряда сумматора 5, т.е. происходит восстанов20 ление остатка и сдвиг его. Сдвиг операндов влево обеспечивается соединением регистра 2 и суьалатора 5 с коммутатором б.
Во втором такте первый остаток
25 от деления первой пары чисел переписывается в регистр 2 второго блока 1 из коммутатора 6, первый делитель переписывается в регистр 3, а первая цифра частного — в и-й (старший) разЗО ряд регистра 4 второго блока 1, как значение инверсного выхода знакового разряда сумматора 5 первого блока 1.
В сумматоре 5 второго блока 1 получают второй остаток от деления первой
35 пары чисел и вторую цифру частного .
Одновременно в регистры 2 и 3 первого блока 1 записывают вторую пару операндов и получают первый остаток от деления второй пары операндов и первую цифру частного.
Результат вычислений первой пары чисел получают на выходе регистра 4
n-ro блока 1 через и тактов, а результат вычислений последующих пар чи45 сел — через каждый такт.
При извлечении квадратного корня в первом такте первое подкоренное выражение поступает в регистр -2 по шине 13,.а затем в сумматор 5, где я» происходит вычитание инверсных значений регистра 3 с пропуском второго разряда, т.е. числа "1011111...".
Если остаток сумматора 5 положителен (знак суммы равен нулю), информация
55 с выходов сУмматоРа 5 поступает на коммутатор б под управлением инверс ного выхода знакового разряда сумматора 5. При этом первое число результата равно единице и оно поступает на коммутатор 8 под управлени » ем шины 19. Если остаток сумматора
5 отрицателен, происходит восстановление остатка и сдвиг его влево за счет пропускания через коммутатор 6 содержимого регистра 2 Ьо сдвигом
<> под управлением шины 18 и прямого
993252 выхода знакового разряда сумматора 5, ;причем число результата равно нулю.:
Во втором такте содержимое блока.1 переписывается в регистр 2 следующего блока 1, а в регистр 2 первого блока 1 записывается второе подко- ренное выражение. В первом блоке 1 вычисляют первый частный результат второго операнда, а во втором блоке
1 вычисляют второй частный результат из первого подкоренного выраже- 10 ния, Окончательный результат извлечв. ния корня получают на выходе регистра 3 n-ro блока 1 в прямом коде.
В предлагаемом устройстве повышено быстродействие по сравнению с 15 прототипом, которое определяется од« ним тактом обработки данных в одном блоке. По сравнению с прототипом быстродействие предлагаемого арифметического устройства увеличено в 3,5 2О раза.при выполнении операций делений и извлечения корня квадратного за счет обеспечения вычитания без восстановления остатка в каждом решающем блоке;конвейера. Устройство : 25 предназначено для работы в специализированных быстродействующих устрой-. ствах обработки больших массивов многоразрядных чисел. Специализированные Устройства, работающие совместно с ЭВМ, выполняют однородные частоповторяющиеся операции вместо
ЭВМ, в которой записаны массивы о6рабатываемых данных.
Формула изобретения
Арифметическое устройство, содержащее п последовательно соединенных решающих блоков (n-разрядность опе- 4О рандов), состоящих из трех регистров, сумматора, коммутаторов, и .логических узлов, содержащих элемент ИЛИ и два элемента И, выходы которых соединены с входами элемента ИЛИ, при- 45 чем выходы логических уэлоь соедине- ны с входами разрядов второго регистра первого решающего блока, выходы разрядов первого регистра k-го блока (где k 1, ..., n) соединены с rrep- 5P выми входами соответствующих разрядов сумматора, прямые выходы разрядов второго регистра М-го решающего блока соединены с входами разрядов второго регистра (k+1)-ro решающего 55 блока, инверсный и прямой выходы (k+1)-го разряда .второго регистра
М-го peшaющeго блока соединены с информационными входами первого коммутатора, управляющие входы которого соединены с первой и второй управляющими шинами устройства, выход первого коммутатора соединен с вторым входом (k+1)-ro разряда сумматора, прямые выхопы. k-x разрядов третьего регистра 1г-го решающего блока соединены с входами (k-1)-х разрядов третьего регистра (k+1)-ro решающего блока, выход второго коммутатора k-го решающего блока соединен с входом
k-го разряда второго регистра (k+1)-ro решающего блока, первый информационный вход второго коммутатора k-го блока соединен е прямым выходом k-ro разряда второго регистра k-ro блока, первый управляющий вход второго коммутатора соединен с второй управляющей шиной устройства, о т л и ч аю щ е е с я твм, что, с целью повышения быстродействия, каждый решающий блок дополнительно содержит третий коммутатор, причем информационные входы М-го разряда третьего коммутатора соединены с выходом (k-1)-ro разряда первого регистра, выходом (k+1)-го разряда первого регистра, с выходом (k-1) ro разряда сумматора, с выходом (k+1)-го разряда сумматора, управляющие входы третьего коммутатора соединены с прямыми и инверсными выходами знакового разряда сумматора и первого разряда третьего регистра и с третьей и четвертой управляющими шинами устройства, выход k-ro разряда третьего коммутатора k-го решающего блока соединен с входом k-ro разряда первого регистра (1+1)-го решающего блока, инверсный выход знакового .разряда сумматора k-ro блока соединен с входом n-qp разряда третьего регистра (k+1)-го блока и с вторым информационным входом второго коммутатора, второй управляющий вход которого соединен с первой управляющей шиной устройства, инверсные выходы всех разрядов второго регистра k-ro блока, кроме (k+1)-ãî разряда, соединены с вторыми входами сумматора.
Источники информации, принятые во внимание при экспертизе
1. Патент QQA Р 3535498, кл. 235-164, 1970 °
2. Авторское свидетельство СССР
Р 479111, кл. G 06 F 7/38, 1973.
3. Авторское свидетельство СССР
9 798825, кл. G 06 F 7/38, 1979 (прототип).