Устройство для деления
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано в универсальных и специализированных ЭВМ для построения устройств деления чисел. Целью изобретения является сокращение аппаратурных затрат. Устройство содержит регистры 1-3 делимого , делителя и частного, сумматор 4 принудительного округления делителя , блок 5 деления усеченных чисел , блок 6 коррекции частного, блок 7 умножения, три вычитателя 8-10, коммутатор 11 и блок 12 управления. 3 ил.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
А1 (Sl)5 G 06 Г 7/52
ГОСУДАРСТВЕННЫЙ НОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТНРЫТИЯМ
ПРИ ГКНТ СССР (21) 4634053/24 (22) 09.01.89 (46) 07.01 91. Бюч. № 1 (72) А.А.Жалковский, А.А.П1осток и Л.Î.Шпаков (53) 681.325(088.8) (56) Патент США № 3234367, кл. 235 — 156, 1968.
Авторское свидетельство СССР
¹ 732868, кл. G 06 F 7/52, 1977.
Авторское свидетельство СССР № 1541596, кл. С 06 F 7/52, 1988.
„„SU„„161925
2 (54) 7CTPOIICTBO ДЛЯ ДЕЛЕНИЯ (57) Изобретение относится к вычислительной технике и может быть использовано в универсальных и специализированных ЭВМ для построения устройств деления чисел. Целью изобретения является сокращение аппаратурных затрат.
Устройство содержит регистры 1-3 делимого, делителя и частного, сумматор 4 принудительного округления делителя, блок 5 деления усеченных чисел, блок 6 коррекции частного, блок
7 умножения, три вычитателя 8-10, коммутатор 11 и блок 12 управления.
3 ил.
1619255
Изобретение относится к вычислительной технике и гложет быть использовано в быстродействующих арифметических устройствах для выполнения
oråpàöèè деления.
Целью изобретения является уменьшегпле аппаратурных затрат.
На фиг. 1 приведена структурная схема. устройства; на фиг. 2 - структурная схема блока управления; на фиг. 3 график-схема алгоритма работы блока управления.
Устройство для деления (фиг. 1) содержит регистры 1 —. 3 соответст- 15 вепно делимого, делителя и частного, сумматор 4 принудительного округления делителя, блок 5 депенля усеченных чисел, блок 6 коррекции частного, блок 7 умножения, вьиитатепи 8 - 10 20 с первого по третий соответственно, коммутатор 11 и блок 12 управления, вход 13 данных устройства, вход 14 синхронизации устройства, выходы 1519 с первого по пятый блока 12 управ- 25 леппя соответственно, выход 20 знакового разряда третьего вьиитатепя 10, выходы 21 разрядов регистра 1 делимого, выходы 22 старших разрядов регистра 1 делимого, выходы ?3 разрядов регистра 2 делителя, выходы 24 старших разрядов регистра 2 делителя, вход 25 логической единицы устройства, выходы 26 блока 5 деления усеченных чисел, выходы 27 первой и 28 второй rpyrm блока 7 умножения, выходы
29 разности и выходы 30 заема первого вычитателя 8, выходи 31 второго вычитатепя 9., выходы 32 третьего вычитателя 10.
Блок 12 управления (фиг. 2) содер- . жит счетчик 33, память 34 микрокоманд, элемент И 35, элемент запрета 36, второй выход 37 памяти микрокоманд.
Р еги стпы 1 и 2 делимого и делит епя соответственно предназначены для временного хранения двоичных кодов делимого (остатков) и делителя. Регистр 1 делимого (п+1)-разрядньгй, из которых один разряд расположен слева от запя- 5< той и п разрядов — справа от запятой.
Регистр 2 делителя содержит п разрядов, которые все расположены справа от запятой. В первом такте деления в эти регистры загружаются цвоичные коды делимого и делителя, которые являются правильными положительными дробями. Регистры могут быть реализованы на основе двухтактных синхронных В7-триггеров. Запись информации в регистры производится по синхроимпульсу при наличии разрешающего потенциала на их V-входах.
Регистр 3 частного предназначен для хранения цифр частного. Он выполнен на основе двухтактных синхронных
DV-триггеров, соединенных между собой цепями однотактного сдвига на К разрядов.
Сумматор 4 принудительного округления делителя и блок 5 деления усеченных (малоразрядных) чисел непосредственно участвуют в формировании в устройстве очередных К двоичных цифр частного. В блоке 5 осуществляется деление значения определенного числа старших разрядов делимого на увеличенное на. единицу младшего разряда в сумматоре 4 значение определенного числа старших разрядов делителя.
К цифр частного на выходах 26 блока 5 формируются либо точно, либо с недостатком на единицу мпадшего разряда.
Число стариных разрядов операндов, обрабатываемых в сумматоре 4 и блоке 5 деления усеченных чисел, определяется в зависимости от диапазонов значений делимого и делителя. В данном устройстве предполагается, что делимое Х и делитель Y есть нормализованные положительные двоичные дроби. В ходе деления в роли делимого выступают промежуточные остатки и возможно нарушение нормализации делимого как влево, так и вправо. В общем случае делимое
Х в устройстве может изменяться в пределах 0 аХ<2.
При принятых допущениях для полу" чения на выходах 26 блока 5 деления усеченных чисел К двоичных цифр частного с точностью до единицы -их младшего разряда достаточно обрабатывать (К+2) старших разрядов делимого Х (один разряд слева от запятой и (К+1) разряд справа от запятой и (К+2) старших разрядов делителя Y (все разряды находятся справа от запятой).
При этом, значение К-разрядного частного, получаемого на выходе 26 блока 5, может быть либо равно значению старших К разрядов частного, получаемого при делении и-разрядных чисел, либо меньше его на единицу младшего разряда с весом 2-(К-1), Блок 5 может быть реализован самыми различными способами. При малых значениях К блок 5 деления усеченных
5 161 чисел может быть разработан по соответствующей таблице истинности либо в виде быстродействующего логического шифратора, либо в виде быстрой поисковой таблицы, реализованной на ПЗУ.
В этом случае целеобраэна совместная реализация блока 5 и сумматора 4, При больших значениях К более предпочтительной является реализация блока 5 в виде быстродействующей однотактной матричной схемы деления, использующей алгоритмы с восстановлением или беэ восстановления остатков и все известные средства ускоренной реализации этих алгоритмов.
В блоке 6 осуществляется коррекция частного путем прибавления единицы в его младший разряд в случае, если значение знакового разряда третьего вычитателя 10 равно логическому нулю (предполагается, что н этом случае разность на выходе вычитателя 10 положительная). Блок б может быть реализован на основе К-разрядного сумматора и иннертора, вход которого является корректирующим входом блока 6.
В блоке 7 осуществляется перемножение "и -разрядного делителя, хранимого в регистре 2 и поступающего на первую группу входов блока 7 с выхо„дов 23 регистра 2, и К-разрядного частного, сформированного на выходах
26 блока 5 и поступающего на вторую группу входов блока 7. На выходах 27 и 28 первой и второй групп блока 7 образуется произведение в двухрядном коде (в виде двух чисел) .
Блок 7 умножения комбинационного типа и может быть реализован, например, в виде совокупности из n/Ê
К-разрядных двоичных умножителей.
С помощью первого вычитателя 8 производится вычитание из содержимого регистра 1 делимого произведения, сформированного на выходах 27 и 28 блока 7 умножения в двухрядном коде.
Результат вычитания образуется на выходах 29 и 30 разности и заема первого вычитателя 8 в двухрядном коде.
Первый вычитатель 8 является вычитателем без распространения заема и может быть реализован на одноразрядных двоичных вычитателях.
Второй вычитатель 9 производит вычитание из значения разности, сформированной на выходах ?9 первого вычитателя 9, значения заема, образован9255 6 ного на выходах ЗО первого вычитателя 8, Второй вычитатель 9 комбинацион-, ного типа с ускоренным распространением заема. Он может быть заменен быстродействующим сумматором, если ин" формацию, поступающую на его нход вычитаемого, проинвертиронать, а на вход переноса сумматора подать cur1ð нал логической единицы.
Третий вычитатель 10 осуществляет пробное вычитание иэ значения результата, полученного на выходах 31 второго вычитателя 9, значения делителя, поступающего с выходов 23 регистра 2
1 делителя. Если сформированная разность положительна, то на выходе 20 знакового разряда вычитателя 10 формируется логический ноль.
20 С помощью коммутатора 1 1 осуществляется передача значения делимого на информационные входы регистра 1 с входа 13 устройства, когда на первом выходе 15 блока 12 управления форми25 руется сигнал логической единицы, либо результата, образованного на выходах Зi второго вычитателя 9, когда на втором выходе 16 блока 12 формируется сигнал логической единицы, 30 либо результата, образованного на выходах 32 третьего вычитателя 10, когда на пятом выходе 19 блока 12 устанавливается сигнал логической единицы.
Коммутатор 11 может быть реализован
35 на элементах 2И-ЗИЛИ.
Блок 12 управления координирует работу узлов и блоков устройства при выполнении на нем операции деления двух чисел. На фиг. 2 приведена реализация блока 12 управления на основе счетчика 33, памяти 34 микрокоманд, элемента И 35 и элемента 36 запрета.
Счетчик 33 накапливающего типа и предназначен для естественной адресации микрокоманд. Вход счета счетчика соединен с входом 14 синхронизации устройства. В качестве памяти 34 микрокоманд может. быть применена быстродействующая постоянная память емкостью е.4, где е — число тактов работы устройства. В самом начале работы устройства счетчик 33 устанавливается в некоторое исходное состояние, например сбрасывается в нуль (фиг. 2, цепь установки счетчика 33 в исходное состояние не показана).
График-схема (фиг. 3) алгоритма работы блока 12 управления содержит вершины начала и окончания работы
1619255 блока 12 по реализации в устройство операции деления, а также (m+1) операторных вершин. Во время выполнения первой операторной вершины в устройстве производится загрузка исходных
5 операндов в регистрах 1 и 2 делимого и делителя. В устройстве выполнены
m однотипных вершин, в течение каждой из которых Аормируется К двоичных циАР частного. На Аиг. 3 приняты следующие обозначения управляющих сигналов, вырабатываемых памятью (они соответствуют принятым ранее обозначениям выходов блока 12 управления и второму выходу 37 памяти 34 микрокоманд); 715 - управляющий сигнал, под действием которого на выходы коммутатора 11 передается значение делимого с входа 13 устройства: 737 - уп- равляющий сигнал, разрешающий выработ., ку элементами 35 и 36 управляющих потенциалов, по которым на выходы ,коммутатора 11 передается значение результата соответственно либо с вы- 25 ходов 31 второго вычитателя 9, либо с выходов 32 третьего вычитателя 10;
Y17 - управляющий сигнал, разрешающий запись инАормации в регистр 1 делимого и регистр 3 частного; 718 - управ- 30 ляющнй сигнал, разрешающий запись информации в регистр 2 делителя; m— число тактов собственно деления, в течение которых формируется ш.К-разрядное частное в регистре 3.
Устройство для деления работает следующим образом.
Пусть на вход 13 устройства уже поступили и-разрядные двоичные коды делимого X и делителя Y (здесь пред- 40 полагается, что делимое и делитель правильные положительные дроби), а счетчик 33 блока 12 управления устаЭ новлен в исходное нулевое состояние.
По содержимому счетчика 33, которое 45 служит адресом обращения к памяти 34 блока 12, из пямяти 34 считывается двоичный код первой микрокоманды МК1=
=101 1. Старший разряд этого кода Аормируется на первом выходе памяти 34 микрокоманд (на выходе 15 блока 12).
Второй разряд этого К кода Аормирует". ся. на выходе 37 памяти 34, третий и . четвертый разряды — на выходах соответственно третьем и четвертом памяти 34 микрокоманд (на выходах 17 и 18
55 соответственно блока 12 управления).
Под действием кода МК1 коммутатор 11 пропускает на информационные входы
Регистра 1 делимое Х с входа 13 даных устройства, регистры 1 и 2 подготавливаются к приему инФормации, так как на их входах разрешения записи присутствуют потенциалы логической единицы. С приходом первого импульса на вход 14 синхронизации устройства приводится запись двоичных кодов делимого Х и делителя 2У в регистры соответственно 1 и 2, а также установка счетчика 33 блока 12 управления в состояние "1". С момента окончания действия первого импульса на входе 14 синхронизации устройства заканчивается подготовительный этап и начинается собственно деление, в процессе которого в течение m тактов hop" мируется (ш К)-разрядное частное, В первом такте собственно деления из памяти 34 микрокоманд считывается микрокоманда МК2-0110. В этом такте по значению старших разрядов делимого Х и делителя Y на выходах 26 блока 5 деления усеченных чисел Аормируются самые старшие К двоичных циАР Е1 частного Е, которые далее поступают на вторые входы блока 7 умножения..
На выходах 27 и 28 блока 7 образуются в двухрядном коде произведение У Z а с помощью первого и второго вычитателей 8 и 9 Аормируется разность
Х-Y Z из которой на третьем вычитателе 10 производится пробное вычитание делителя. Если получившаяся на выходах 32 вычитателя 10 разность положительна (а это значит, что на вьмодах 26 блока 5 К-разрядное частное получилось с недостатком), то на выходе 20 знакового разряда третьего вычитателя 10 Аормируется потенциал логического нуля, по которому s блоке
6 К-разрядное частное увеличивается на единицу. Одновременно с коррекцией частного по значению логического нуля, образованного на выходе 20 третьего вычитатепя 10, в блоке 12 управления формируется на выходе 19 потенциал логической единицы, обеспечивающий передачу через входы третьей группы коммутатора 11 со сдвигом на K разрядов влево результата с выходов 32. третьего вычитателя 10. Если же разность, формируемая третьим вычитателем 10, отрицательна, то на входы регистра 1 делимого со сдвигом на К разрядов влево поступает значение результата с выходов 31 второго вычитателя 9 через входы второй группы ком1б192 мутатора 11 С приходом второго импульса на вход 14 синхронизации в регистр 1 делимого записывается очередной остаток, в младшие разряды регист ра 3 заносятся К старших цифр частно5 го, а счетчик 33 блока 12 устанавливается в состояние "2".
Аналогичным образом устройство работает и в других тактах. В каждом 1С, такте К очередных цифр частного записываются в освобождаемые при сдвиге
К младших цифр регистра 3 частного.
После выполнения последнего (я+1)-ro такта в регистре 3 частного получает- 1 ся полноразрядное частное и деление прекращается.
Формула из о бр ет ения
Устройство для деления, содержащее 2О регистры делимого, делителя-и частного блок деления усеченных чисел, блок умножения, блок коррекции частного, два вычитателя, коммутатор и блок управления, причем вход данных 25 устройства соединен с информационными входами первой группы коммутатора и с информационными входами регистра делителя, выходы которого соединены с входами первого сомножителя блока 30 умножения, входы второго сомножителя которого соединены с входом частного, блока коррекции частного, выход которого соединен с входом младших разрядов регистра частного, синхровход ко- З торого соединен с входом синхронизации устройства, с синхровходами реги-. стров делимого и делителя и блока управления, первый и второй выходы которого соединены с первым и вторым управляющими входами коммутатора, выход которого соединен с информационным входом регистра делимого, вход разрешения записи которого соединен с входом разрешения записи регистра 4 !
О частного и,с третьим выходом блока .управления, четвертый выход которого соединен с входом разрешения записи регистра делителя, выходы старших разрядов регистра делимого соединены с входом делимого блока деления усеченных чисел, выход разрядов регистра делимого соединен с входом умень- . шаемого первого вычитателя, входы вычитателя и заема которого соединены с выходами произведения первой и второй групп блока умножения, выходы разности и заема первого вычитателя соединены с входами уменьшаемого и вычитaeMoro соответственно второго вычитателя, выход разности которого соединен с вторым информационным входом коммутатора, о т л и ч а ю щ е ес я тем, что, с целью уменьшения апларатурных за-.рат, в устройство введены сумматор принудительного округления и третий выитатель, выход разности которого соединен с третьим информационным входом коммутатора, третий управляющий вход которого соединен с пятым выходом блока управления, вход признака управления коммутатором которого соединен с выходом знакового разряда третьего вычитателя и корректирующим входом блока коррекции частного, вход частного которого соединен с выходом блока деления усеченных чисел, вход делителя которого соединен с выходом сумматора принудительного округления, вход переноса которого соединен с входом логической единицы устройства, выход старших разрядов регистров делителя соединен с входом сумматора принудительного округления, выход разрядов регистра делителя соединен с входом вычитаемого третьего вычитателя, вход уменьшаемого которого соединен с выходом разности второго вычитателя.
1g
18
f7
16
Составитель H.Ìàðêåëîâà
Редактор А.Мотыль Техред Л. Серд окова Корректор Н.Ревская
Заказ 47 Тираж Подписное
ВЦИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
11303S, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-и.здательский комбинат "Патент", r. Ужгород, ул. Гагарина, 101