Арифметическое устройство

Иллюстрации

Показать все

Реферат

 

ОП ИСАНИЕ

ИЗОБРЕТЕНИЯ

Союз Советскик

Социалист ическии

Респубпик

«»849206

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (61) Дополнительное к авт. свид-ву 9 703804 (22) Заявлеио06. 07. 79 (21) 2792654/18-24 с присоединением заявки Йо (23) Приоритет

Опубликовано 230781 Бюллетень 14о 27

Дата опубликования описания 23. 07. 81 (51)М. Кл

G 06 F 7/38

Государствеииый комитет

СССР ио делам изобретений и открытий (53) УДК 681. 3 (088. 8) (72) Авторы изобретения

Н.В. Черкасский и А.A. Мельник

Львовский ордена Ленина политехнический Институт им. Ленинского комсомола. с (71) Заявитель (54 ) АРИФМЕТИЧЕСКОЕ УСТРОЙСТВО

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

По основному авт.св. Р 703804 известно арифметическое устройство, содержащее и последовательно соединенных однотипных блоков, причем каждый блок содержит два регистра, комбинационный сумматор и триггер, выходы первого регистра. каждого блока соединены с первой группой входов комбинационного сумматора того же блока, выход I ãî разряда (I=О,....,«-1) .15 комбинационного сумматора (К-1)-го блока (К 2;...,n) соединен с входом (1+1)-ro разряда первого регистра

K-го блока, выход i ãî разряда второ.

ro регистра (К-1)-ro блока подключен к входу I-го разряда второго реги.стра -ro блока, входы первого и второго регистров первого блока соединены с первой и второй группами входов устройства.

Каждый блок устройства содержит третий регистр, узел анализа переполнения комбинационного сумматора, первый и второй коммутаторы, входы узла анализа переполнения комбинационного сумматора каждого блока соединены с выходами знакового разряда комбинационного сумматора, а выход подключен к входу триггера и первому входу первого коммутатора, выход триггера подключен к входу п-ro разряда третьего регистра и первому входу каждого разряда второго коммутатора, второй вход которого соединен с выходом первого разряда третьего регистра, третий и четвертый входы соединены с прямым и инверсным выходами соответствующего разряда второго регистра, выходы второго коммутатора соединены с второй группой входов комбинационного сумматора, второй вход первого коммутатора К-ro блока соединен с выходом К-ro разряда второго регистра (К-1)-го блока, второй вход первого коммутатора первого блока соединен с входом устройства, первый, второй и третий управляющие входы первого коммутатора соединены соответственно с управляющей шиной умножения и деления, управляющей шиной извлечения корня и тактовой шиной устройства, выход i-го разряда третьего регистра (i 2,....,n) (K-1)-ro блока, соединен с входом (1-1)-го разряда третьего регистра К-го блока, 849206 входы третьего регистра первого блока соединены с третьей группой входов устройства, первый, второй и третий управляющие входы второго коммутатора соединены соответственно с управляющими шинами умножения, деления и извлечения корня устройства, выход первого коммутатора m-го блока (m=1,....,n) oe HHeH o oM m-го разряда второго регистра того же блока; первый. коммутатор каждого блока устройства содержит элемент И-ИЛИ, первая группа входов которого соединена с вторым и первым управляющим входами коммутатора, а вторая группа входов — с первым и вторым и третьим управляющими входами коммутатора, второй коммутатор каждого

К-ro (К-l,.....,и) блока устройства, содержит и элементов И-ИЛИ (по одному .в каждом разряде), причем первая группа входов каждого элемента

И-ИЛИ соединена с первым управляющим, вторым и третьим входами ком.мутатора, вторая группа входов соединена е вторым управляющим, первым и четвертым входами коммутатора, первый и второй входы третьей группы входов первого — и-го элементов

И-ИЛИ соединены с третьим управляющим и первым входами коммутатора, третий вход третьей группы входов (К-1)-ro элемента И-ИЛИ соединен с четвертым входом коммутатора, а третьи входы третьей группы входов остальных элементов И-ИЛИ соединены с третьими входами коммутатора (1) .

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

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

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

5р лиза переполнения, узел сдвига, преобразователь прямогО .кода в обратный, причем входы блока соединены с вхо55

60 входами сумматора, выход которого

65 выходы знаковых разрядов сумматора

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

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

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

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

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

На фиг. 1 представлена структурная 15 схема арифметического устройства;на фиг. .2 — схема блока. предварительной обработки на фнг. 3 — схема флока обработки порядков, на фиг. 4 — схема блока нормализации; на фиг. 5 — 20 схема выполнения и соединения однотипных блоков (ступеней).

Арифметическое устройство содержит и последовательно соединенных однотипных блоков (ступеней) 1, которые в совокупности осуществляют обработку мантисс, аналогично тому, как это делается в известном устройстве, блок

2 предварительной обработки операндов, блок 3 обработки порядков, блок

4 нормализации, входы 5-8 устройства,выходы 9-13 блока 2, выход 14 блока 3, блок 15 памяти, имеющий выход

16, коммутатор 17 с выходом 18, входы 19-21 первого блока 1 и выходы

22-24 и-го (последнего) блока 1. Управляющие входы коммутатора 17 соединены с управляющими шинами 25-27 умножения, деления и извлечения корня устройства.

Блок 2 предварительной обработки 40 поепнаэначен пля сдвига мантиссы на один разряд вправо при выполнении операции деления и при извлечении квадратного корня, если порядок операнда нечетный. Он содержит преоб- 45 раэователи 28 и 29 прямого кода в обратный, регистры 30-32, сдвиговый регистр 33, узел 34 определения четности порядка, элемент 35 ИЛИ, сумматор 36, узел 37 анализа переполнения и коммутатор 38.

Сдвиговый регистр 33 предназначен для.сдвига мантиссы перед началом операции деления на один разряд вправо для избавления от возможного переполнения в случае, когда делимое больше делителя. При извлечении квадратного корня в регистре 33 производится один сдвиг вправо мантиссы подкоренного выражения, если порядок операнда нечетный. Узел -34 определе- Щ} ния нечетности предназначен для выработки сигнала, служащего для сдвига мантиссы на разряд вправо и увеличения порядка на единицу при выполнении операции извлечения квадратность ф5 корня в случае нечетного порядка ома ранда. Элемент 35 ИЛИ формирует сигнал для сдвига мантиссы на разряд вправо на регистре 33 и увеличения порядка на единицу иа сумматоре 36.

Блок 3 обработки порядков содержит первый регистр 39, коммутатор 40, регистр 41, сумматор 42, узел 43 анализа переполнения, узел 44 сдвига на один разряд вправо при выполнении операции извлечения корня и преобразователь 45 прямого кода в обратный. Блок 4 нормализации содержит умматор 46, служащий для вычитания з порядка числа единицы при нормализации, регистр 47, сдвиговый регистр 48 для сдвига влево при нормализации мантисс результатов и дешифратор 49, служащий для сдвига мантиссы на один разряд влево и уменьшения порядка на единицу.

Каждый блок (ступень) 1 содержит регистры 50-52, комбинационный сумматор 53, узел 54 анализа переполнения комбинационного сумматора, триггер 55, коммутатор 56, выполненный на элементе И- ИЛИ и коммутатор 57, содержащий и элементов 58 И-ИЛИ (по числу разрядов регистра 51).

Устройство работает следующим образом.

Произведение двух чисел A=MA 2 и В=М -представленных в формате

B с плавающей запятой, определяется

c=A- B=N ° N p A- ps

A В где NA и Мв — мантиссы чисел;

Р и Р8 — порядки чисел.

Мантисса первого множимого посту- пает по входу 6 в регистр 31 блока

2 предварительной обработки.операндов, а затем через выход 10 в регистр 51 первого блока 1, а порядок,по входу 5 в регистр 30 через преобразователь 28, а затем через выход

13 в регистр 39 блока 3 обработки порядков. Если порядок множимого отрицательный, он в преобразователе

28 преобразуется в обратный код.

Мантисса множителя заносится по входу 7 в регистр 33 блока 2, а затем через коммутатор 38 и выход 11 в регистр 52 первого блока 1,а порядок - по входу 7 в регистр 32 блока 2 череэ преобразователь 29, а затем через сумматор 36 поступает в блок 3. Если порядОк множителя отрицательный, он в преобразователе 29 преобразуется в обратный код.

Обработка мантиссы производится в блоках 1, как при обработке операндов с фиюсированной запятой.

Обработка порядков производится в блоке 3 следующим образом. Порядок множителя из регистра 39 через коммутатор 40 и порйдок множимого иэ регистра 41 подаются на сумматор 42, При обнаружении переполнения в сумматоре 42 узел 43 анализа переполнения выдает сигнал сбоя. Образовав-.

849206

40 шийся на сумматоре 42 порядок произведения гередается через узел сдвига

44 и преобразователь 45 по выходу

14 на регистры 59 блока 15 памяти.

В блоке 15, содержащем п последовательно соединенных регистров 59, значения порядков переписываются иэ регистра в регистр синхронно обработке мантисс в блоках 1.

В случае отрицательного знака порядок представлен в обратном коде и s преобразователе 45 инвертируется, образуя прямой код. Из блока 15 порядок произведения передается по выходу 16 в блок 4 нормализации. Если нужно произвести нормализацию мантиссы в регистре 48, дешифратор нормализации 49 выдает сигнал, служащий для сдвига мантиссы на один разряд влево. Также этот сигнал поступает на сумматор 46, в котором производится вычитание единицы из порядка произведения. Полученный порядок поступает на выход через регистр 47 °

Знак произведения образуется подачей знака мантиссы множимого иэ регистра 31 и знака мантиссы множителя из регистра 33 блока 2 предварительной обработки на элемент сложения по модулю два (не показан). Знак произведения последовательно передается по регистрам н сумматорам блоков 1.

Деление выполняется следующим образом

С - А М 2РА РВ

В Мб

Мантисса первого делителя заносится по входу б в регистр 31 блока

2, а порядок — по входу 5 в регистр

30 через преобразователь 28. Через выход 10 мантисса первого делителя передается в первый блок 1.

Мантисса первого делимого по входу 8 заносится в регистр 33, а порядок — по входу 7 в регистр 33 через преобразователь 29. Элемент 35

ИЛИ вырабатЫвает управляющий сигнал, с помощью которого в регистре 33 осуществляется предварительный сдвиг мантиссы делимого вправо для предотвращения воэможности переполнения.

Этот же сигнал поступает на сумматор 36, в котором производится корректировка порядка. С сумматора 36 скорректированный порядок поступает по выходу 12 в регистр 41 блока 3, а мантисса с регистра 33 через коммутатор 38 по выходу 9 поступает в регистр 50 первого блока 1. Порядок делимого из регистра 41, а порядок делителя иэ регистра 39 через коммутатор 40 подаются на сумматор 42 блока 3. Дальше порядок образуется так же, как и,при, умножении.

Знак частного образуется подачей знака мантиссы делимого из регистра

31 и делителя из регистра 33 блока

2 на элемент сложения по модулю два.

Знак частного последовательно передается по регистрам и сумматорам блоков 1.

Извлечение квадратного корня выполняется следующим образом:

С = 7A =7 M> ° 2

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

Мантисса подкоренного выражения поступает по входу 8 на регистр 33 блока 2, а порядок — по входу 7 на регистр 32 через преобразователь 29.

Узел 34 анализирует знаковый младщий разряд. порядка и в случае нечетного порядка выдает управляющий сигнал, который проходит через элемент

35 ЙЛИ и поступает на регистр. 33, сдвигая подкоренное выражение на один разряд вправо, а также поступает на сумматор 36, в котором производится добавление единицы к порядку., Дальше с регистра 33 подкоренное выражение через коммутатор 38 по выходу 9 поступает на регистр 50 первого блока, а порядок — с сумматора 36 по выходу

12 в регистр 32 блока 3. Деление порядка на два производится.в узле 44 сдвига, который производит сдвиг на один разряд, вправо.

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

Формула изобретения

1. Арифметическое устройство по авт.св. Р 703804, о т л и ч а ю щ ее с я тем, что, с целью расширения функциональных возможностей устройства эа счет возможности обработки массивов чисел с плавающей запятой, оно дополнительно содержит блок предварительной обработки, блок обработки порядков, блок памяти, коммутатор и блок нормализации, причем входы блока предварительной обработки являются входами устройства, первый, второй и третий выходы блока предварительной обработки подключены к входам соответственно первого, второго и третьего Г регистров первого блока устройства, четвертый и пятый выходы блока предварительной обработки. подключены соответственно к первому и второму входам блока обработки порядков, выход которого подключен .к входу блока памяти, выходы сумматора, второго и третьего регистров последнего блока устройства соединены с информационными входами коммутатора, управляющие входы которого соединены

849206

10 с управляющими шинами умножения, иэвЛечения корня и деления устройства, выходы блока памяти и коммутатора соединены соответственно с первым и вторым входами блока нормализации.

2 е Устройство по п ° 1 у о T л и» ч а ю щ е е с я тем, что блок предварительной обработки содерЖит первый преобразователь прямого кода в обратный и первый регистр, соединенные последовательно, второй регистр, вто- рой преобразователь прямого кода в обратный, третий регистр, узел опре-, ° деления четности порядка, элемент ИЛИ,) сумматор, узел анализа переполнения; сдвиговый регистр, коммутатор, входы блока соединены с входами первого пре-15 обраэователя прямого кода в обратный, второго регистра, второго преобразователя прямого кода в обратный и сдвигового :регистра соответственно, выход второго преобразователя пря- Щ мого кода в обратный подключен к входу третьего регистра, выходы знакового разряда и п-ro информационного разрядов которого подключены к.входам узла определения четности 2 порядка, управляющий вход которого соединен с управляющей шиной извлечения корня устройства, а выход подключен к первому входу элемента ИЛИ, второй вход которого соединен с управляющей шиной деления устройства, входы разрядов сумматора соединены с выходами разрядов третьего регистра, выход элемента ИЛИ соединен с вторым входом младшего разряда сумматора и управляющим входом сдвигового регистра, выход которого соединен с входом коммутатора, первый выход коммутатора, выход второго регистра, второй выход коммутатора, выход сумматора и выход первого регистра под- 40, ключены к выходам блока, управляющие входы коммутатора соединены с управляющими шинами деления, извлечения корня и умножения устройства, выходы знаковых разрядов сумматора подключены ко входу узла анализа переполнения.

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

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

Источники информации, принятые во внимание при экспертизе

1. Авторское свидетельство СССР

Р 7038Ь4, кл. G F 7/38., 1976 (прототип).