Устройство для умножения чисел с плавающей запятой

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и может быть использовано при построении быстродействующих арифметических устройств современных ЭВМ., Цель изобретения - повышение быстродействия;i Заявляемое устройство содержит регистры мантисс МНОЖИМОГО и множителя, состоящее из К групп по m разрядов; первую и вторую группы из К преобразователей двоичного кода в код СОК, группу из К блоков умножения, три коммутатора, су№-1атор мантисс, состоящий из подсумматоров; регистр сумматора мантисс , состоящий из К+1 групп; сдвиговьш регистр, состоящий из подрегистров; группу из 2К преобразователей кода СОК в двоичный код; элемент ИЛИ-HEj блок микропрограммного управления , регистры порядков мнояотмого и мно.жителя, сумматор по модулю два, сумматор порядков, дйе схемы сравнения , триггер и счетчик порядка. 2 ил.

СОЮЗ СОБЕТСНИХ

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

РЕСПУБЛИН

„„ЯУ„„128О624 дауд 4 G 06 F 7/72

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНЯТИЙ,1

ОПИСАНИЕ ИЗОБРЕТЕНИЯ .д н,р вторскому свидаткльствм,„,,„ ( (21) 3919186/24-24 (22) 01.07.85 (46) 30.12.86. Бюл. Р 48 (72) В.Г.Евстигнеев, A.Н.Кошарновский и A.Â.Èàðêèí (53) 681.325 (088.8) (56) Каган Б.М. Электронные вычислительные машины и системы. M.: Энергия, 1979, с. 229, рис. 6-17. (54) УстройетВО ДЛЯ УМНОЖЕНИЯ ЧИСЕЛ

С ПЛАВИОЩЕИ ЗАПЯТОЙ (57) Изобретение относится к вычисли тельной технике и может быть использовано при построении быстродействующих арифметических устройств современных ЭЬИ. Цель изобретения — повышение быстродействия. Заявляемое устройство содержит регистры мантисс множимого и множителя, состоящее из

К групп по т разрядов; первую и вторую группы из К преобразователей двоичного кода в код СОК, группу из К блоков умножения, три коммутатора, сумматор мантисс, состоящий из подсумматоров; регистр сумматора мантисс, состоящий иэ К+1 ; сдвиговый регистр, состоящий иэ К+1 подрегистров; группу иэ 2К преобразователей кода СОК в двоичный код; элемент

ИЛИ-НЕ, блок микропрограммного управ". ления, регистры порядков мнохжмого и множителя, сумматор по модулю два, 2 сумматор порядков, две схемы сравне- ю ииа, триггер и счетчик корчака. 2 ии. а ее

1280624

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

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

УстРойство для умножения чисел с плавающей запятой содержит регистр

1 мантиссы множимого, состоящий из

К-групп по гп разрядов, вход 2 множимого устройстна, регистр 3 мантиссы

MHoKHTeëß ь с» ь (матор 4 ма!»тисс ь CQOTo 20 ящий из К подсуматоров, регистр 5 сумматора мантисс, состоящий из К+1 подрегистров, сумматор 6 порядков, счетчик 7 порядка, .первый 8 и второй

9 преобразователи двоичного кода в 25 код системы остаточных классов (СОК), К блоков 10 умножения в СОК, первый и второй коммутаторы 11 и 12, сдвиговый регистр 13ь преобразователь 14 кода СОК в двоичный код, регистры 15 и 16 порядков первого и второго сомножитеггей, входы 17 и 18 порядков соответственно множимого и множителя, сумматор 19 по модулю два, входы 2021 знаков множ»гмого и множителя, выход 22 знака произведения устройства, элемент ИЛИ-HI, 23, третий коммутатор

24ь первую 25 и вторую 26 схемы сравнения, вход 27 шины логического нуля, устройство 28 логической единицы устройства, блок 29 микропрограммного управления, триггер 30, вход 31 признака переполнения порядка блока 29, вход 32 "Пуск устройства", выход 33

"Переполнение порядка" устройства, выход 34 »Исчезновение порядка» устройства. з»ыхоцы 35-42 блока 29, вход 43 мантиссы множителя устройства, вход 44 признака разрешения нормализации мантиссы блока 29, выходы

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

49-51 блока 29, входы 52 и 53 сравнения с логическим нулем и с логической единицей блока 29, выходы 54 и 55 нулевого и перга -n pa=.рядов сумматора

6, инверсный выход 56 первого Разряда сумматора 6, выход 57 с второго по q разряды порядка сумматора 6, первый второй входы 58 и 59 анализа порядка результата блока 29 и выходы

60-62 блока 29.

Каждый из К блоков умножения в

СОК группы 10 может быть выполнен, например, как устройство для умножения в системе остаточных классов., В основу работы устройства положено следующее. Пусть множимое А и множитель В представлены в форме с плавающей запятой в виде

+» +»

A=+m q 4 В=+m . q (1)

В где m u m — мантиссь» операндов

А В ь представленные правильными !1-разрядными двои !ными дробями, причем мантиссы нормализованы; основание плавающей арифметики (в ЗВМ серии ЕС q=16);

r и т q-ичные порядки представA ь ляющие собой целые дво-. ичные числа.

Числа А и В, представленные в форме с плаваю»пей запятой, поступают в устройство: мантисса m „ на двоичный ()-разрядный, =-24) регистр 1 через вход 2, мантисса m — по входу 43 через преабразователй 9 д!»оичного кода в код СОК на сдвиговый Б-ичный ре гистр 3, порядки г и ;, в виде сме4 щенных порядков (семиразрядный двоичный код) — по входам 17 и 18 на регистры 15 и 16, знаки сомножителей— по входам 20 и 21 — на сумматор 19 по модулю два.

Занесение мантисс множимогo, множителя, а также порядков осуществляется спомощью.управляющих сигналов занесения, поступающих с выходов 35, 42 и 50 блока 29 управле!-.ия (фиг.1) .

Разрядная сетка регистра 1 условно Разбивается на К -разрядных групп (для определенности можно принять ш=

=8 и К=З). Мантисса мнолажого с регистра 1 поступает на соответствующие преобразователи группы 8 двоичного кода в код СОК. Число на входе преобразователей группы 8 представлено в

S-ичной Р =-2 ) система счисления, ! т.е. mA=- а S (правильная S-ичная

4 дробь), число на выходе преобразователей группы 8 представлено в позиционно-остаточной S-ичной системе счисления в виде "»» 4 — (» ь» ь ° ° ьс ь), 8 (2)

i=-»

1280624 где d. „(j =1, n) — остатки от деления

S-ичной цифры на основании Р СОК;

J п — количество оснований СОК.

Основания СОК выбираются из условия:

Р=ПР 2S, (3)

Аналогично для мантиссы множителя можно записать (на входе и выходе чреобразователей группы 9):

К К

b, В,,=Q(p,,P„...p ) S ()

i-= -1 где P„ — остатки от деления S-ичной цифры Р на основания СОК. 15

Таким образом, произведен переход от представления мантисс множимого и множителя в двоичной системе счисления к представлению в позиционно-остаточной S è÷íîé системе счисления.

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

Работа устройства происходит в соответствии с блок-схемой алгоритма, представленной на фиг.3, и начинается подачей сигнала "Пуск" на первый вход 32 блока 29 (блок О, фиг.2). 30

По сигналам с выходов 35, 41, 50, 51 блока 29 управления в регистр 1 заносится мантисса множимого ш (блок 1, фиг.2). Мантисса множителя (без управляющего сигнала) поступает на выходы преобразователей 9, появляясь к второму такту на их выходах в виде позиционно-остаточного S-ичного кода. На регистры 15 и 16 заносятся порядки сомножителей, обнуляются регистры 13 и 3, триггер 30, счетчик

7 порядка; внутренний счетчик блока

29 управления СЧК устанавливается в

К-ое положение. Он является счетчиком цикла (счетчиком количества S-ичных разрядов мантисс сомножителей), Знаки

45 сомножителей поступают на сумматор

19, где складываются по модулю два °

Порядки с регистров 15 и 16 поступают на входы сумматора .(двоичного)

6, где складываются. Нулевой и первый

-50 разряды сумматора 6 поступают на входы первой 25 и второй 26 схем сравнения, которые проверяют их равенство нулям или единицам, и на выходах формируют функции f =r n,r„, f. =r, Л r, значения которых через входы 52 и 53 поступают в блок 29 управления. Одновременно содержимое сумматора 6 (кроме нулевого разряда, а первый раэряд— инверсный) поступает на входы коммутатора 24.

На втором такте работы блок 29 управления формирует сигнал на своем десятом выходе 42, по которому в регистр 3 заносится позиционно-остаточный код мантиссы множителя (блок 2, фиг.2). К этому моменту двоичный код мантиссы множимого, пройдя через преобразователи 8, в виде позиционноостаточного кода поступает на первые входы блоков умножения группы 10, на вторые входы которых поступает содержимое младшей (правой) группы регистра 3 (младший S-ичный разряд позиционно-остаточного кода мантиссы множителя), На втором же такте в блоке

29 управления производится анализ сигналов с выходов схем 25 и 26 сравнения (блоки 3 и 4, фиг.2). Если f

=f. =О, то блок 29 вырабатывает на своих выходах 33 и 34 соответственно сигналы "1" и "0", что свидетельствует об отрицательном переполнении порядка, и работа устройства прекращается (выход на блоки 23 и 26, фиг.2).

Если f2 =f =1, то осуществляется переход к началу третьего такта (блок

6, фиг.2). Если f gf, то с выхода

2/26

61 вырабатывается сигнал, переключающий триггер 30 в единичное положение (блок 5, фиг.2) и осуществляется переход к началу третьего такта (на блок 6, фиг.2).

На третьем такте сигналом с выхода

51 блока 29 управления (блок 6, фиг ° 2) коммутатор 24 открывается по вторым входам, и на счетчик 7 переписывается содержимое сумматора 6: инверсия с первого разряда и прямой код со всех остальных разрядов, кроме нулевого.

Нулевой разряд счетчика 7 остается в нулевом положении, На этом заканчивается подготовительный этап и начинается собственно этап перемножения мантисс, включающий блок 7 — 16, фиг.2. Выполняется эта совокупность блоков К раз до обнуления внутреннего счетчика блока 29 управления СЧК.

К началу третьего такта блоки умножения группы 10 на своих первых и вторых выходах имеют результат умножения всех S-ичных разрядов мантиссы множимого на младший S-ичный разряд мантиссы множителя в виде1280624

К

c„„=Q(a, ь,1, Б

К

C,„-D(a;b„) 5 где (— остаток от деления содержимого скобки на S; ) — частное от деления содержи- 1р мого скобки на S.

На четвертом такте сигналом с выхода 37 блока 29 младшие S -ичные разряды произведения С со всех блоков

10 умножения через коммутатор 11 пос- 15 тупают на первые входы сумматора 4, где складываются с 1гоступающим на вторые входы (в этом такте. нулевым) содержимым соответствующих, разрядов регистра 13 (блоки 7 и 2р

8, фиг.2). По сигналу с выхода 38 блоха 29 управления результат сумматора 4 переписывается в регистр 5 (блок 9, фиг.2). По сигналу с выхода

39 блока 29 содержимое регистра 5 пе- 25 реписывается в регистр 13 (блок 10, фиг.2). По сигналу с выхода 40 блока

29 содержимое регистров 13 и 3 как единое целое сдвигается вправо на один S-ичный разряд (блок 11. фиг.2). Зо

По сигналу с выхода 36 блока 29 старшие S-ичные разряды произведения

С„ со всех блоков 10 умножения через коммутатор 11 поступают на первые входы сумматора 4, где складываются с младшими С„„ разрядами произведения, сдвинутыми вправо на один S-ичный разряд, поступающими на вторые входы сумматора 4 с соответствующих выходов регистра 13 (блоки 12 и 13, 40 фиг.2). По сигналу с выхода 39 блока

29 содержимое регистра 5 переписывается в регистр 13 (блок 14, фиг.2) °

В результате на регистре 13 и в стар:ших S-ичных разрядах регистра 3 обра- у5 зуется первое частичное произведение мантисс (блок 14, фиг.2)

С =С„„,+С, (6)

С помощью внутреннего счетчика

G,„ áëîêà 29 (блоки 15 и 16, фиг.2) процесс умножения S-ичных разрядов мантиссы множимого на очередной (К-i)-й S-ичный разряд мантиссы множителя повторяется К раз (блоки 7-14, фиг.2). В результате на регистре 13 в разрядах 1"g образуются старшие, а на регистре 3 (вытеснив множитель) младшие S-ичные разряды произведения мантисс.

На этом заканчивается второй этап работы устройства.

На третьем этапе работы осуществляется нормализация q-ичной мантиссы произведения.

Блок 29 анализирует сигнал с выхо,ца элемента ИЛИ вЂ . 23, формирующего функцию, равную единице, если содержимое старших (log q) разрядов первого преобразователя группы 14 равно нулю.

Зтот сигнал поступает на вход 44 блока 29. В результате анализа этого сигнала блок 29, на выходе 49 формирует сигнал, по которому с выходов преобразователей 14 кода СОК в двоичный код их содержимое передается через коммутатор 12 или напрямую (без сдвига), или со сдвигом на один q-ичный разряд и появляется на выходах 18 мантиссы произведения.

По сигналу с выхода 62 блока 29 на счетный вход счетчика 7 порядка выдается 1, если нормализуется порядок после нормализации мантиссы, или

О, если нормализация мантиссы произведения не проводилась, не проводится и нормализация порядка (блоки 17, 18 и 19, фиг.2).

Процесс умножения завершается работой блоков 20,21,22,24,25 и 26, фиг.2, в результате чего на выходах

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

Порядок результата считывается со всех выходов 47 счетчика 7, знак произведения — с выхода сумматора 19 по модулю два (выход 22).

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

S-ичном подсумматоре сумматора 4 может появиться единица переноса в старший S-ичный разряд. Поэтому старшие разряды регистров 5 и 13 (5-0 и 13О) могут иметь разрядность всего лишь в один бит и их введение в сос тав устройства практически не приводит к увеличению длины разрядной сетки указанных регистров, Формулаизобретения

Устройство для умножения чисел с плавающей запятой, содержащее регистры мантиссы.множимого и множителя, сумматор мантисс, регистры порядка множимого и множителя, .счетчик поряд-1280624 ков, сумматор по модулю два, блок микропрограммного управления.,регистр сумматора мантисс, причем вход регистра мантиссы множимого является входом множимого устройства, первый и второй входы сумматора по модулю два являются входами знаков множимого и множителя устройства, выход сумматорапо модулю два является выходом знака произведения устройства, выход сумматора мантисс соединен с информационным входом регистра сумматора,. мантисс, о т л и ч а ю щ е е с я тем, что, с целью повышения быстро;., действия, в него введены два преобра — 15 зователя двоичного кода в код системы остаточных классов, преобразователь кода системы остаточных классов в двоичный код, К блоков умножения в системе остаточных классов, где К вЂ” 2p разрядность сомножителей, три коммутатора, регистр сдвига,:.элемент HJIHHF. сумматор порядков, две схемы сравнения и триггер, причем первый и второй выходы блока микропрограммного ?5 управления являются выходами соответственно переполнения порядка и исчезновения порядка устройства, третий выход блока микропрограммного управления соединен с входом разрешения 30 записи регистра мантиссы множимого, выход которого соединен с входом пер-. вого преобразователя двоичного кода в код системы остаточных классов, 1 Й ВыхОД КОтОрОГО (ГДе 1=1 ...К) со единен с первым входом i-го блока умножения в системе остаточных классов, второй вход которого соединен с выходом К-ro разряда регистра мантиссы множителя, информационный вход

i-го разряда которого соединен с выходом i-ro разряда второго преобразователя двоичного кода в код остаточных классов, вход которого является входом множителя устройства, выходы младших и старших разрядов i-го блока умножениясоединены с первым и вторым информациойными входами соответственно первого коммутатора, первый и второй управляющие входы которого соединены gg с четвертым и пятым выходами соответственно блока микропрограммного управления, i — и выход первого коммутатора соединен с первым информационным вхо,дом i-ro разряда сумматора мантисс, второй информационный вход которого соединен с выходом i-го разряда регистра сдвига и входом i-го разряда преобразователя кода системы остаточных классов в двоичный код, вход )-го разряда которого (где j =K+1, К+2, 2К) соединен с выходом i-го разряда регистра мантиссы множителя, выход i-ro разряда сумматора мантисс соединен с информационным входом i-ro разряда регистра сумматора мантисс, информационный вход нулевого разряда которого соединен с выходом переноса сумматора мантисс, шестой выход блока микропрограммного управления соединен с входом разрешения записи регистра сумматора мантисс, выход которого соединен с информационным входом регистра сдвига, вход разрешения записи которого соединен с седьмым выходом блока микропрограммного управления, восьмой и девятый выходы которого соединены с входами разрешения сдвига и сброса соответственно регистров сдвига и мантиссы множителя, десятый выход блока микропрограммного управления соединен с входом разрешения записи регистра мантиссы множителя, выход (i-1)-го разряда регистра сдвига соединен с информационным входом сдвига 1-го разряда регистра сдвига, выход К-го разряда которого соединен с информационным входом сдвига регистра мантиссы множителя, выход 1-го разряда которого соединен с информационным входом сдвига (i+

+1)-го разряда регистра мантиссы множителя, выходы младших двоичных разрядов 1-ro S-ичного разряда, (где 1=

=i,2,...,2К, S -основание системы остаточных классов) преобразователя кода системы остаточных классов в двоичный код с первым информационным входом 1-го разряда второго коммутатора, вход управления которого соединен с одиннадцатым выходом блока микропрограммного управления, выход старших двоичных разрядов т-ro S-ичного разряда (где m=2,3,...,2Ê) соединен с вторым информационным входом (m-1)-го разряда второго коммутатора, информационный вход (2К)-го разряда которого соединен с шиной логического нуля устройства, выход старших двоичных разрядов первого S — ичного разряда преобразователя кода системы остаточных классов в двоичный код соединен с входом элемента ИЛИ-НЕ, выход которого соединен с входом признака разрешения нормализации мантиссы блока микропрограммного управления, двенадцатый выход которого соединен с входами разрешения записи ре1280б24

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

1 соединены соответственно с нинами логического нуля и логической ециницы gg устройства, инверсный выход первого разряда сумматора порядков соединен с вторым управляющим входом третьего коммутатора, информационные входы которого соединены с выходами р-х разрядовсумматора порядков (где р=2...q, максимальная разрядность сумматора порядков), выход третьего коммутатора соединен с информационным входом счетчика порядков, выходы первого и второго разрядов которого соединены с первым и вторым входами анализа порядка результата блока микропрограммного управления, четырнадцатый выход котороro соединен с входами установки нуля счетчика и триггера, выход которого соединен с входом признака переполнения порядка блока микропрограммного управлення, пятнадцатый и шестнадцатый выходы которого соединены соответственно с входами установки в единицу триггера и счетным входом счетчика соответственно, выход втсроГо коммутатора является выходом мантиссы произведения устройства, выход счетчика порядков является выходом порядка произведения устройства.

1280624

1280624

1Z80624

5,41

И7

Фиг 3

Составитель Н.Маркелова

ТехредЛ.Олейник Корректор M.демчик

Редактор А.Лежнина

Заказ 7067/54 Тираж 671 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5

Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4