Устройство для деления десятичных чисел

 

УСТРОЙСТВО ДЛЯ ДЕЛЕНИЯ ДЕ ЯТЖНЫХ ЧИСЕЛ, содержащее регистр частотного, регистр делителя, десятичный сумматор, регистр хранения, блок управления, содержащий первый, второй, третий,, четвертый, пятый, . шестой и седьмой элементы И, генератор тактовых импульсов, двоичный счетчик; первый, второй и третий элементы задержки, триггер причем информационный выход регистра делителя соединен с информационным входом десятичного сумматора, выход регистра хранения соединен с информационным входом регистра делителя, выход:управления вычитанием блока управления соединен с входом вычитания десятич- .. ного сумматора, вход сложения которого подсоединен к выходу управления сложением блока управления, вход по-, ложительного и отрицательного знаков .которого подкл19чен соответственно к выходам положительного и отрицательного знаков десятичного сумматора, выход управления установкой блока управления соединен с входом установки в 1 младшего бита регистра частного , вход сдвига на бит младшей тетрады которого соединен с в&1ходом управления сдвигом на бит блока управления , выход управления преобразованием которого соединен с входом сдвига регистра делителя, вход приема которого подключен к выходу управления приемом блока управления, отличающееся тем, что, с целью повышения быстродействия, в него введена схема сравнения, причем первый вход схемы сравнения соединен с информационным выходом трех старших тетрад десятичного сумматора , вход сдвига на тетраду которого соединен с входом сдвига на тетраду регистра частного, вход установки (Л девяти младшей тетрады которого подключен к выходу управления сложением блока управления, вход признака которого подсоединен к выходу признака схемы сравнения, второй вход которой соединен с информационным выходом трех старших тетрад регистра дели| (а теля, вход сдвига на тетраду деся00 тичного сумматора соединен с выходом ;: управления сдвигом на тетраду блока -vl управления, а в блок управления ввеСАЭ дены восьмой элемент И, элемент задержки, элемент ИЛИ-НЕ, делитель частоты , первый, второй, третий, четвертый , пятый, шестой, седьмой элементы ИЛИ, причем первый вход элемента ИЛИ-НЕ соединен с выходом управления сложением блока управления и с выходом первого элемента И, первый вход которого подключен к выходу делителя частоты и первому .входу второго элемента И, второй вход которого соединен с выходом первого элемента

(19) (11) СОЮЗ СОВЕТСКИХ

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

РЕСПУБЛИК m G 06 Г 7/52

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К ABTOPCHOMV СВИДЕТЕЛЬСТВУ

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

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И OTHPblTMA (21) 3470366/18-24 (22) 28.04.82 (46) 15.10.83. Бюл, Ю 38 (72) Л.A. Глухова (71) Иинский радиотехнический институт (53) 681.325(088.8) (56) 1. Карцев И„А. Арифметика цифровых машин. М., "Наука", 1969, с, 525, 2. Авторское свидетельство СССР и 807282, кл. G 06 F 7/52, 1979, (прототип). (54)(5?) УСТРОЙСТВО ДЛЯ ДЕЛЕНИЯ ДЕСЯТИЧНЬ1Х ЧИСЕЛ, содержащее регистр частотного, регистр делителя, десятичный сумматор, регистр хранения, блок управления, содержащий первый, второй, третий, четвертый, пятый, шестой и седьмой элементы И, генера" тор тактовых импульсов, двоичный счетчик; первый, второй и третий эле" менты задержки, триггер, причем информационный выход регистра делителя соединен с информационным входом десятичного сумматора, выход регистра хранения соединен с информационным входом регистра делителя, выход, управления вычитанием блока управления соединен с входом вычитания десятичного сумматора, вход сложения которого подсоединен к выходу управления сложением блока управления, вход по-. ложительного и отрицательного знаков .которого подключен соответственно к выходам положительного и отрицательного знаков десятичного сумматора, выход управления установкой блока управления соединен с входом установки в "1" младшего бита регистра частного, вход сдвига на бит младшей тетрады которого соединен с в@ходом управления сдвигом на бит блока управления, выход управления преобразованием которого соединен с входом сдвига регистра делителя, вход приема которого подключен к выходу управления приемом блока управления, о т л и ч а ю щ е е с я тем, что, с целью повышения быстродействия, в него введена схема сравнения, причем первый вход схемы сравнения соединен с информационным выходом трех старших тетрад десятичного суммато" ра, вход сдвига на тетраду которого соединен с входом сдвига на тетраду регистра частного, вход установки девяти младшей тетрады которого подключен к выходу управления сложением С блока управления, вход признака которого подсоединен к выходу признака а схемы сравнения, второй вход которой соединен с информационным выходом трех старших тетрад регистра делителя, вход сдвига на тетраду десятичного сумматора соединен с выходом управления сдвигом на тетраду блока управления, а в блок управления введены восьмой элемент И, элемент за-держки, элемент ИЛИ-НЕ, делитель частоты, первый, второй, третий, четвертый, пятый, шестой, седьмой элементы

ИЛИ, причем первый вход элемента

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

104

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

7 соединен с выходом четвертого элемента ИЛИ, первый вход которого через второй элемент задержки подключен к пятому выходу двоичного счетчика и второму входу третьего элемента И, выход которого соединен с первым входом пятого элемента ИЛИ, выход которого через третий элемент задержки соединен с вторым входом двоичного счетчика, шестой выход которого сое.динен с вторым входом первого элемента И, выход которого соединен с первым входом шестого элемента ИЛИ; второй вход которого соединен с выходом восьмого элемента И, первый вход.-которого соединен с выходом генера тора импульсов, а второй вход с выходом элемента ИЛИ-HE второй вход которого подключен к третьему входу шестого элемента ИЛИ, выход которого соединен с первым входом двоичного счетчика, седьмой выход которого подключен к второму входу четвертого элемента ИЛИ и второму входу пятого элемента ИЛИ, выход которого соединен с выходом управления приемом в регистр делителя блока управления, выход управления преобразо" ванием которого соединен с выходом седьмого элемента И, а выход управления установкой " с выходом седьмого элемента ИЛИ, первый вход которого подключен к второму входу третьего элемента ИЛИ и выходу четвертого элемента И, а второй вход - через- четвертый элемент задержки к выходу пя" того элемента И.

Изобретение относится к области .вычислительной техники и предназначено для деления десятичных чисел, представленных кодом 8"4-2- 1. Устройство целесообразно применять в 5 быстродействующих вычислителях, работающих с многоразрядными десятичными операндами.

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

Недостатком данного устройства являются большие затраты оборудования (разрядность сумматора, регистрапреобразователя делителя, регистра восьмикратного делителя соответствует удвоенной разрядности десятичных операндов).

Наиболее близким по технической сущности к изобретению является устройство для деления п-разрядных десятичных чисел, содержащее десятичный сумматор, регистр частного, регистр делителя, регистр хранения, блок управления, содержащий первый, 3 1 048473 4 второй, третий, четвертый, пятый, шестой и седьмой элементы И, генератор тактовых импульсов, двоичный счетчик, первый, второй и третий эле менты задержки, триггер, причем информационный выход регистра делителя: соединен с информационным входом де-. ,сятичного сумматора,- выход регистра хранения соединен с информационным . входом регистра делителя, выход уп- Й равления вычитанием блока. управления соединен с входом вычитания десятичного сумматора, вход сложения которо-. го подсоединен к выходу управления сложением блока управления,-вход по- 15 ложительного и отрицательного знаков . которого подключен соответственно к:.,: выходам положительного и отрицательйого знака десятичного сумматора, выход управления установкой блс ка упРав":.:20 ления соединен с входом установки в единицу младшего бита регистра чувст ного, вход сдвига на бит младшей тет" рады которого соединен с выходом уп= . равления сдвигом на бит блока управ- 25 ления, выход управления преобразованием которого соединен с входом сдвига регистра делителя, вход приема которого подключен к выходу управления приемом блока управления. Данное уст" 30 ройство отрабатывает частное путем -.. последовательного определения значе- . ний битов в двоична-десятичном пред". ставлении десятичных цифр частного (2j.

К недостаткам устройства можно ot" нести низкое быстродействие: для на". хождения каждой десятичной цифры частного требуется четыре такта (сложения) вычитания. .Цель изобретения - повышение быст+ родействия устройства для деления десятичных. чисел.. Поставленная цель достигается тем, что в.устройство введена схема срав- 45 нения, причем первый вход схемы .срав-нения соединен с информационным выхо-. дом трех старших тетрад десятичногб .сумматора, вход сдвига на тетраду которого соединен с входом сдвига на: 50 тетраду регистра частного, вход установки девяти младшей тетрады кото-. рого подключен к выходу управления сложением блока управления, вход признака которого подсоединен к выходу 55 признака схемы сравнения, второй вход которого соединен с информационным

- Выходом трех старших тетрад регистра делителя, вход сдвига на тетраду десятичного сумматора соединен с Bbtxo» дом управления сдвигом на тетраду блока управления, а в блок управле" ния введены восьмой элемент И, элемент задержки, элемент ИЛИ-НЕ, делитель частоты, первый, второй, третий, четвертый, пятый, шестой, седьмой элементы ИЛИ, причем первый вход элемента ИЛИ-НЕ соединен с выходом управления сложением блока управления и с выходом первого элемента И, первый вход которого подключен к выходу делителя частоты и первому входу второго элемента И, второй вход которого .соединен с выходом первого эле« мента ИЛИ, первый вход которого подсоединен к выходу второго элемента

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

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

1048473 элемента И, выход которого соединен с первым входом пятого элемента ИЛИ, выход которого через третий элемент задержки соединен с вторым входом двоичного счетчика, шестой выход 5 которого соединен с вторым входом первого элемента И, выход которого соединен с первым входом шестого элемента ИЛИ, второй вход которого соединен с выходом восьмого элемента И, первый вход которого соединен с выходом генератора импульсов, а второй вход - с выходом элемента ИЛИ-НЕ, яорой вход которого подключен к тоетьему входу шестого элемента ИЛИ, 15 выход которого соединен с первым входом двоичного счетчика, седьмой выход,KQTopoIО подключен к второму входу-четвертого элемента ИЛИ и второму входу пятого элемента ИЛИ. вы- 20 ход ко горого соединен с выходом уп- ааления приемом в регистр делителя блока управления, выход управления преобразованием которого соединен с в; ходом седьмого элемента И, а выход .2 управления установкой - с выходом седьмого элемента ИЛИ, первый вход которого подключен к второму входу третьего элемента ИЛИ и выходу четвертого элемента И, а второй вход - 30 через четвертый элемент задержки к выходу пятого элемента И.

На фиг. 1 представлена структурная схема устройства для деления десятичных чисел; на фиг. 2 - функ- 35 циональная схема блока управления устройства.

Устройство для деления десятичных чисел содержит десятичный сумматор. 1, содержащий (и+1) десятичный разряд 4О (и-разрядность операндов), регистр 2 частного, содержащий и десятичных разрядов (тетрад), регистр 3 делителя, содержащий (и+1) десятичный разряд и предназначенный для хранения 45 восьмикратного делителя и получения путем деления на два других его кратных, регистр 4 хранения, содержащий (и+1) десятичный разряд и предназначенный для хранения восьмикратного делителя, блок 5 управления, схему 6 сравнения.

Блок 5 управления имеет выход 7 управления вычитанием, выход 8 управления сложением. вход 9 положительно- 5

ro знака, выход 10 блока 5 выход 11 управления установкой, выход 12 управления сдвигом на бит, выход 13 управления преобразованием, выход 14 управления приемом в регистр 3 делителя, вход 15 признака, вход 16 отрицательного знака. Блок 5 управления содержит генератор 17 импульсов, делитель 18 частоты, счетчик 19, триг. гер 20, элементы 21-28 И, элементы

29-35 ИЛИ, элементы 36-39 задержки, элемент 40 ИЛИ-НЕ, Схема 6.сравнения предназначена для предварительного анализа необходимости вычитания текущего кратного делителя из очередного остатка.

Если при обработке дробных десятичных операндов производить сравнение делимого и текущего кратного делителя с точностью до 0,01, то истинная цифра частного L будет связана с полученной в результате сравнения цифрой К неравенством

L+K 1. (1)

Действительно, предположим, что в процессе деления принимают участие и-разрядные десятичные дроби, .причем делитель А неподвижен и нормализован.

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

Делитель A с учетом (1) можно представить в виде

А=А .10 4А,„10 Х.А-„10 (»

-1

1-. 3 причем из условия нормализации следует, что А g 4 0:

1 A-л - 9" (3)

Х-кратное делителя можно записать как и

XA.=Х. A 10 +Х А 40 + X.A„<Ол=з, = p 10 +(Х A<+dq-10 (3 )-10- 4 (X А +Д

Il

-10.д л).лО <Х (,Х.A-1 и л 10 3 л л) -10 "

Ж где d-; - левая (старшая) цифра двузначных произведений Х A „4 . Очевидно что

0 Х A;+d;-10 d;, -9. (5)

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

1 и /r 1

С=С 10+C 10 С И 7 С„-10", з л-

1048 (Ц 10

P (12)

40 (16)

55 (17)

Обозначим через А, ХА и С пред-

:ставления чисел А, ХА и С с точностью до 0,01:

А =A.< 10 А 10

KA =d .40 +(К+А,+d.„-40.8 ) 10 1+ (,К А < d. -10 3 д) 16 )

С =С,.10 1 С „10 +С-, 10 .

Предположим, что при сравнении старших разрядов остатка и старших разрядов текущего К-кратного делителя. (с точностью до 0,01) схема сравнения 15 сформировала признак того, что С «> КА, 8 этом случае выполняется соотношение

= Kf fA + Z), (8) ..где К - цифра частного, полученная а результате сравнения старших разря- 20 дов; Z - остаток от вычитания из старших разрядов предыдущего остатка

Г I

С величины КА, причем

0 2 A (9)

Истинная цифра частного L соот" 25 ветствует выражению

С = L* А.). 2) (10) где 2 " истинный остаток от вычита-; ния кратного делителя LA из предыдущего остатка С, причем 30

0 Z Я - 10 (11)

Остаток к от вычитания кратного делиФ

l .теля КА из предыдущего остатка С, исходя из (4), (6), (7), (8), представляется как

К=С-К А-=7 +.X. (С;-(К.Д; д.„4ъь 3

-(0 ° d ° q4,10-4=Z 4 а д п и=е (с„-(<.А.;+д;- 0 д.;„1) 10 ". (!31

i "«3

Исходя из (9) и (12), справедливо 45 соотношение

Z = R -a» О) (14) откуда К> ш ..

Как следует из (13) я 50

0 Ы„=-Е (u ;+д„-1а a;„ 1О",(1S)

1 "3

C учетом () справедливо

10 - 10

rn.j n или, как следует из (2) и (3) )

Ы,;„- 0,1A+10

На основании (14) и (17)

К»» »0;1А +10

473 8

Исходя из выражений {10) и (12), истинная цифра частного L связана с цифрой К, полученной в результате сравнения старших разрядов остатка и текущего кратного делителя, равенст вом А = КА+ — Z, которое на основании (18) и(11) приводится к неравенству

-n -n

LA > K А - 0,1А т 10 -А 10 (К-1) А - (0,1А " 2 10 ) (19)

Поскольку величина 0,1A - 2:10 " заведомо меньше А, а L и К могут принимать только целые значения, то (19) сводится к:виду (1).

Устройство (см, фиг. 1) обрабатывает десятичную информацию, представ ленную кодом 8-4-2-1.

Деление и-разрядных чисел в устройстве выполняется за и циклов. На каждом цикле определяется значение очередного десятичного разряда (тетрады) двоично-десятичного частного.

Деление выполняется методом без восстановления остатков с неподвижным делителем и сдвигом остатков влево.

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

1 разом.

В исходном состоянии в младших и тетрадах сумматора 1 находится делимое, в регистре 3 и регистре 4 восьмикратный делитель (однократный делитель должен быть нормализован), старший десятичный разряд сумматора 1 и регистра 2 установлены в нуль.

Счетчик 19 и триггер 20 блока 5 управления также установлены в нуль.

На первом цикле определяется старший десятичный разряд (тетрада) частного, При определении каждой тетрады частного может возникнуть две ситуа" ции.

Все остатки, формируемые в сумма" торе 1 в ходе определения текущей тетрады частного, положительны. В этом случае значение десятичной цифры частного определяется за четыре такта.- Ha каждом такте отыскивается значение очередного бита в двоичнодесятичном представлении тетрады частного, В ходе определения текущей тетрады частного на одном из тактов вычитания в сумматоре 1 образовался отрицательный остаток, В этом случае количество тактов, необходимое для нахождения текущей цифры частного, соответствует моменту получения от10484 рицательного остатка, а для отработки следующей тетрады частного требуется один такт сложения отрицательного остатка с делителем„

Рассмотрим работу устройства в каждой из этих ситуаций„

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

На первом такте цикла схема сравнения 6 анализирует значение содер" жимого старших десятичных разрядов о (разряда с весом целых 10 и двух разрядов с весом 10 и 10 ) сум-1 -2 матора 1 (очередного остатка) и регистра 3 (восьмикратного делителя). При отрицательном результате сравнения (старшие разряды остатка мен ь"е восьмикратного делителя) на выходе схемы сравнения 6 присутствует нуль. 8 этом случае, как следует из (1), текущая десятичная цифра частного меньше восьми (1000), т,е. бит ее двоично-десятичного представления (в коде 8-4-2-1) с весом "8" равен нулю. В этом случае вычитание восьмикратного делителя, хранящегося в регистре 3, не производится, Блок управления формирует сигналы на выходах 13 и 12, По сигналу 13 в регистре 3 выполняется деление его содержимого на два. Поэтому к концу данного такта в регистре 3 фиксиру35 ется четырехкратный делитель.

По сигналу 12 выполняется сдвиг содержимого младшей тетрады регистра 2 частного на один бит в сторону

40 старших разрядов. В этом случае длительность такта определяется длительностью операции деления на два в регистре 3.

Если же результат сравнения на

45 выходе схемы 6 сравнения положителен (старшие разряды остатка больше или равны старшим разрядам восьмикратного делителя), то как следует из (1), текущая десятичная цифра частного равна "7" (0111), "8" (1000) или "9" (1001). В этом случае блок управления 5 формирует сигнал на выходе 7, по которому в сумматоре 1 из его содержимого вычитается содержимое регистра 3. Одновременно по сигналу 13 55 блока 5 управления в регистре 3 выполняется деление его содержимого на два (к концу такта в нем фиксируется

73 10 четырехкратный делитель), à по сигналу 12 в младшей тетраде гистра 2 производится сдвиг на один бит влево„.

В младший бит регистра 2 при этом заносится нуль.

8 этом случае длительность такта определяется длительностью операции вычитания в сумматоре 1, Знак результата вычитания поступает на входы знака 9 и 16 блока управления 5.

На втором такте блок управления 5 анализирует знак очередного остатка, сформированного в сумматоре 1. Если знак на его входе 9 положителен и на предыдущем такте выполнялось вычитание, то, следовательно, предыдущий остаток был больше восьмикратного делителя, т.е. текущая цифра частного равна "8" (1000) или "9" (1001), а ее бит с весом "8" равен единице, Поэтому блок 5 управления формирует сигнал на выходе 11, по которому младший бит регистра 2 частного устанавливается в единицу.

Одновременно схема 6 сравнения анализирует содержимое трех старших тетрад сумматора 1 (очередного остатка) и регистра 3 (четырехкратного де" лителя). При отрицательном результате сравнения бит с весом "4 текущей тетрады частного равен нулю. Вычитание четырехкратного делителя из очередного остатка не производится, Блок 5 управления формирует сигналы на выходах 13 и 12. По сигналу 13 в регистре 3 выполняется- деление его содержимого на два (к концу такта в нем фиксируется двухкратный делитель). По сигналу 12 производится сдвиг содержимого младшей тетрады регистра частного на один бит в сторону старших разрядов, В младший бит регистра 2 при этом заносится нуль, !

При положительном результате сравнения (единица на выходе схемы 6 сравнения), как следует из (1), текущая десятичная цифра частного равна "3" (0011), "4" (0100), " " (0101), "6" (0110) или "7" (0111). В этом случае блок .5 управления помимо сигнааов на выходах 13 и 12 формирует сигнал на выходе 7, по которому в сумматоре 1 из его содержимого вычитается содержимое регистра 3, Знак результата вычитания поступает на входы знака 9, 16 блока 5 управления.

Третий такт выполняется аналогично второму. Блок 5 управления анализиl048473

12 рует знак остатка, поступающий на его входы 9, 16. Если он положителен (вход 9) и на предыдущем такте выполнялось вычитание, то, следовательно, предыдущий остаток был больше четы- . рехкратного делителя, т.е, бит с весом "4" текущей тетрады частного равен единице. Поэтому блок 5 управления формирует сигнал на выходе ll, пю которому младший бит регистра 2 1О частного устанавливается в единицу.

Одновременно схема 6 сравнения анализирует содержимое старших раз-. рядов остатка и регистра 3 (двухкратного делителя). При отрицательном ts результате сравнения вычитание двухкратного делителя из очередного ос" татка не производится. Блок 5 управле" ния формирует сигналы на выходах 13 и 12. По сигналу 13 в регистре 3 вы. 20 полняется деление его содержимого на два (к концу такта в нем формируется однократный делитель), По сигналу 12 содержимое младшей тетрады регистра 2 сдвигается на один 25 бит в сторону старших разрядов, При положительном результате срав. нения (признак на выходе схемы 6 сравнения равен единице). как следует из (1), значение в двух младших З0 битах текущей тетрады частного равно

0l, 10 или 11. В этом случае помимо сигналов на выходах 13 и 12 блок 5 управления формирует сигнал на выходе 7. По этомУ сигналУ в сУмматоРе 1 35 из его содержимого вычитается содержимое регистра 3 (двухкратный делитель) .

Знак результата вычитания поступа" ет на входы знака 9, 16 блока 5 уп- 4О равления.

Четвертый такт выполняется анало1 гично. Блок 5 управления анализирует знак на входах 9, 16. Если он положителен и на предыдущем такте выпол" 4> нялось вычитание, то предыдущий остаток был больше двухкратного дели-. теля, т.е. бит с весом "2" текущей тетрады частного равен единице. Поэтому по сигналу на выходе 11 блока 5 управления младший бит регистра 2 устанавливается в единицу, Одновременно схема 6 анализирует старшие разряды остатка и однократного делителя. При положительном ре- 55 зультате сравнения блок 5 управления формирует сигнал на выходе 7, по которому в сумматоре 1 из его содержимого вычитается содержимое регистра 3 (однократный делитель). В это же вре" мя появляется сигнал на выходе 12, по которому содержимое младшей тетрады регистра 2 сдвигается на один бит влево.

Сигнал на выходе 14 блока 5 управления на четвертом такте не формируется. Поэтому к концу данного такта в регистре 3 сохраняется однократный делитель.

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

На пятом такте блок 5 управления анализирует знак на входах 9, 16.

Если сигнал поступил на вход 9 и на предыдущем такте выполнялось вычитание, то, следовательно, бит с весом "1" текущей,тетрады частного ра" вен единице. Поэтому на выходе 11 блока 5 управления появляется . сигнал, по которому младший бит регистра 2 устанавливается в единицу. Таким образом, в младшей тетраде регистра

2 сформировалось значение тетрады частного в коде 8-4-2-1.

По сигналу на выходе 10 блока 5 управления содержимое регистра 2 частного и сумматора 1 сдвигается на тетраду в сторону старших разрядов.

При этом в младшей тетраде регистра 2 устанавливается нуль. Одновременно, если на вход 9 блока 5 управления пришел сигнал, то появляется сигнал на выходе 14, По этому сигналу в регистр 3 принимается восьмикратный делитель иэ регистра 4.

Устройство начинает отработку сле" дущей тетрады частного.

Рассмотрим теперь работу устройства для случая, когда при определении текущей тетрады частного в результате одного иэ тактов вычитания в сумматоре 1 образовался отрицательный остаток(до этого момента такая тетрада отрабатывалась аналогично).

В этом случае нет необходимости в дальнейшем определении битов текущей тетрады частного. Как следует из (1), если при вычитании К-кратного делителя в сумматоре 1 получился отрицательный остаток, то текущий бит данной тетрады частного равен нулю, а последующая группа из log К битов данной тетрады равна 11. . 1(K- 1). При определении значения данной тетрады частного следует учесть значение ее стар1048 щим образом.

15

13 ших. битов, сформированные до получения отрицательного остатка. Так, если отрицательный остаток получился при вычитании восьмикратного делителя (8А), то тетрада частного равна

0111 ("7"); четырехкратного делителя (4А). - 011 ("3"), двухкратного делителя - ВВВд01, однократного делителя - . . В8В4В О. Здесь В -- значения битов с весом 1 текущей тетрады частного, 1р сформированные до получения в сумматоре 1 отрицательного остатка.

Очевидно, что отрицательный остаток в результате вычитания может появиться лишь в том случае, когда со" 15 держимое десятичных. разрядов с весом !

0, 10 ", I0 сумматора 1 и регист-, ра 3 совпадает (результат сравнения на выходе схемы 6 сравнения был положительным), т.е, выполняется-условие 2р

С - КА > О, а величина Ь (см. выражение (13))отрицательна. В этом случае, как следует из (18), значение остатка по абсолютной величине меньwe 0,1А. 25

Поэтому сдвинутый на тетраду влево

Отрицательный остаток по модулю оказы" вается меньше делителя А. В связи с этим программа определения следующей тетрады частного, Формируемой из Зр отрицательного остатка, может быть заранее предсказана:

= -Cq + 8A+ 0;

С, =С,-4А)0; (20)

С, =С -2А0;

С4 = СЗ" где С - отрицательный остаток, полученный в ходе определения предыдущей (II )""îé тетрады частного; С. остатки, Формируемые на I-ом такте 4р определения текущей тетрады частного.

Поскольку все эти остатки заведомо положительны, то цифра частного равна 1111. Легко показать, что если к началу определения очередной тет- 45 раты частного остаток отрицателен, то цифра десятичного частного, сформированная в результате сложений (аычитаний), превышает истинную на

@есть. Исходя из этого, истинная циф- ра частного в данном случае равна .1111 " 0110 = 1001 (".9").

Анализ последовательности действий (20) показывает, что она эквивалентна одному действию

Со(g-1) = Cog A . (21)

Таким образом, если в ходе деления двоично"десятичных чисел в сум473 14 маторе l получен отрицательный оста- ток, то цикл отработки следущей тетрады частного сводится к Формированию и прибавлению делителя и отрицательному остатку и к установке в млад. шей тетраде регистра 2 кода 1001.

Для Формирования делителя может быть использовано кратное, полученное в регистре 3 к моменту получения отрицательного остатка в сумматоре 1.

После получения отрицательного остатка устройство работает следуюТетрада частного, 8 ходе определения которой получен отрицательный остаток, отрабатывается, как и в предыдущем случае, за четыре такта. Но действия в сумматоре 1 после получения отрицательного остатка не выполняются °

Блок 5 управления анализирует знак на входах 9, 16. Если он отри.цателен (если сигнал на входе lб) и на предыдущем такте выполнялось вычитание К-кратного делителя, то бит с весом К текущей тетрады частного равен нулю. Сигнал на выходе 11 блока 5 управления не появляется.

Поэтому младший бит регистра 2 остается в нуле.. По сигналу 12 содержимое младшей тетрады регистра 2 сдвигается на бит влево.

На следующих тактах отработки текущей тетрады частного блок 5 управления формирует сигналы на выходах

11 и 12, По сигналу 11 в младший бит регистра 2 устанавливается единица.

По сигналу 12 содержимое младшей тетрады регистра 2 сдвигается на бит вле во.

Кроме того, на первых трех тактах отработки текущей тетрады на выходе

13 блока 5 управления появляется сигнал, обеспечивающий деление содержи- мого регистра 3 на два. Поэтому к началу четвертого такта в регистре 3 фиксируется однократный делитель.

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

На пятом такте формируются сигналы на выходах 11, 10 блока управления. по сигналу 11 в младший бит регистра 2 устанавливается единица. По сигналу 10 содержимое регистра 2 и сумматора 1 сдвигается на тетраду влево.

При этом в младшей тетраде регистра

2 устанавливается нуль.

1 048473

50

На шестом такте отрабатывается следующая тетрада частного (тетрада, получаемая из отрицательного остатка в сумматоре 1), Заранее известно, что ее значение равно "9" (.1001).

Поэтому на шестом такте блок 5 управления формирует сигнал на выходе

8. По данному сигналу в соответствии с (21) в сумматоре 1 выполняется сложение его содержимого с содержимым 10 регистра 3 (однократным делителем).

При этом в сумматоре 1 формируется положительный остаток. Кроме. того, сигнал с выхода 8 поступает на вход установки девяти младшей тетрады ре- f5 гистра 2 частного, обеспечивая установку в данной тетраде кода 1001.

На седьмом такте блок 5 управления формирует сигналы на выходах.

14, 10. По сигналу -14 в регистр 3 20 принимается восьмикратный делитель. из регистра 4. По сигналу 10 в сумматоре 1 и регистре 2 частного выполняется сдвиг на тетраду влево.

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

Деление считается законченным пд за-. вершению и-го цикла.

Блок 5 управления работает следующим образом. В исходном состоянии счетчик 19 установлен в нуль (потенциал на первом выходе счетчика). Триггер 20 также установлен в нуль. Каждому такту деления соответствует определенное состояние счетчика 19. flocле выполнения каждого такта к содер- 40 жимому счетчика 19 прибавляется единица и счетчик 19 переходит в следующее состояние, соответствующее следующему такту деления.

Четырем тактам отработки тетрады частного, формируемой на основании положительного остатка, соответст" вуют потенциалы на первом - четвертом выходах счетчика 19 (состояния счетчика 000 + 011), такту сдвигапотенциал на пятом выходе (100 в . счетчике), такту сложения при формировании тетрады частного из отрицательного остатка - потенцил на шестом выходе (101 в счетчике), такту сдвига после отработки такой тетра1 ды - потенциал на седьмом выходе (110 в счетчике), На каждом такте выход признака схемы 6 сравнения поступает на вход

15 блока 5 управления, выходы знаков сумматора 1 - на входы 9, 16., На первом-четвертом тактах отработки очередной тетрады частного (потенциал на первом-четвертом выхо" дах счетчика 19 соответственно} присутствует сигнал н а выходе ИЛИ 29, на первом-третьем тактах - на выходе ИЛИ 30. Если на вход 15 блока. 5 управления пришел положительный результат сравнения (единица) и остаток в сумматоре 1 положителен (потенциал на входе 9), то по приходу стробирующего сигнала с выхода делителя 18 частоты на выходе элемента И 22 появляется сигнал, поступающий на выход 7 управления вычитанием блока 5 управления. Данный сигнал поступает на установочный вход триггера 20, Поэтому к началу следующего такта триггер 20 устанавливается в единицу.

Кроме того, сигнал с выхода 7 проходит на выход элемента 34 ИЛИ. Если сигнал на выходе 7 (или 8) не появляется (потенциал на выходе элемента

40 ИЛИ-НЕ), то на выход элемента

34 ИЛИ проходит сигнал с выхода генератора 17 импульсов, прошедший через элемент 28 И.

Таким образом,- на выходе элемента 34 ИЛИ появляется сигнал с перио" дом, соответствующим периоду генератора 17 импульсов, если сложение (вычитание) в сумматоре 1 не производится, или с периодом, соответствующим периоду делителя 18 частоты, если выполняется сложение (вычитание).

Период импульсов на выходе генератора соответствует длительности такта преобразования (деления на два) в регистре 3.. Период импульсов на выходе делителя 18 частоты соответствует длительности такта сложения/вы" читания. в сумматоре 1.

Делитель 18 частоты может быть реализован, например, на базе двоичного счетчика, на счетный вход которого поступают импульсы с выхода генератора 17. Выходом делителя 18 частоты может быть один из выходов счетчика.в зависимости от соотношения длительностей сложения/вычитания и деления на два, Если, например, длительность сложения/вычитания превышает длительность деления на два

17 1048 в два раза, выходом делителя частоты; будет выход счетчика с весом "1", в четыре раза - выход счетчика с весом

"2" и т.д.

Если остаток в сумматоре 1 положи. телен (потенциал на входе 9 блока 5 управления) и триггер 20 установлен в единицу (на предыдущем такте выпол нялось вычитание), то стробирующий сигнал с выхода элемента 34 ИЛИ про- 1О ходит через элемент 24 И и элемент

35 ИЛИ,,обеспечивая появление сигнала на выходе 11. блока 5 управления, по которому младший бит регистра 2 устанавливается в единицу. Одновре- 1 менно сигнал с выхода элемента 24, пройдя через элемент 31 ИЛИ, сбрасы-, вает триггер 20 в нуль;

Кроме того, на каждом из первых трех тактов отработки тетрады (потен 2р циалы на первых трех выходах счетчика 19) стробирующий сигнал с выхода

ИЛИ 34 проходит через И 27 на выход

13 блока управления, Сигнал с выхо,да 13 обеспечивает деление на два со- 25 держимого регистра 3.

На каждом из четырех тактов отработки тетрады частного, формируемой из положительного остатка (потенциал на первом-четвертом выходах счетчика) Зо стробирующий сигнал с выхода элемента 34 ИЛИ проходит через элемент 26 И и элемент 36 на выход 12 блока 5 управления. Ilo сигналу 12 осуществляется сдвиг содержимого младшей тетрады регистра 2 влево на один бит. Длительность задержки на элементе 36 со" ответствует времени установки младшего бита регистра 2 в единицу по сигналу 11.

Одновременно стробирующий сигнал 40 с выхода элемента 34 ИЛИ поступает на счетный .вход счетчика 19 и обеспечивает прибавление единицы к его содержимому.

После отработки четырех тактов on- 45 ределения текущей тетрады частного счетчик 19 переходит в состояние 100 (потенциал на его пятом выходе). Если на вход 9 блока 5 управления при" шел сигнал и триггер 23 установлен 50 в единицу (на предыдущем такте в сумматоре 1 выполнялось вычитание); то стробирующий импульс с выхода элемента 34 ИЛИ проходит через элемент

24 И и элемен 35 ИЛИ, появляясь на выходе 11 блока 5 управления, Дан., ный сигнал устанавливает младший бит регистра 2 в единицу.

473 18

Кроме того,: задержанныи на зле= менте 37 потенциал с пятого выхода счетчика 19 походит через элемент

32 ИЛИ и появляется на выходе 10 бло" ка 5 управления, По сигналу 10 осуществляется сдвиг содержимого регистра 2 и сумматора 1 в сторону старших разрядов на тетраду, Если в результате отработки теку, щей тетради частного остаток в сумматоре 1 положителен, то потенциал с пятого выхода счетчика 19 проходит через элемент 23 И и элемент 33 ИЛИ, обеспечивая формирование сигнала на выходе 14 блока 5:.управления. По данному сигналу в регистр 3 принимается восьмикратный делитель из регистра 4.

Кроме того, сигнал. с выхода 14, задержавшись на элементе задержки 38 (длительность задержки определяется временем приема в регистр 3), поступает на вход установки нуля счетчика

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

Если на вход 16 блока 5 управления поступит сигнал, то элемент 22 И закрыт, сигнал на выходе 7 не появ.ляется. Поэтому на выходе .элемента

34 ИЛИ формируются стробирующие импульсы, с частотой импульсов генератора 17. На первых трех тактах отработки текущей тетрады аналогично указанному импульсы с выхода weмента 34. ИЛИ проходят через элемент

27 И и появляются на выходе 13 блока 5 управления, обеспечивая деление содержимого регистра 3 на два. К начаду четвертого такта (потенциал на четвертом выходе счетчика 19) в регистре 3 фиксируется однократный делитель.

Кроме того, s результате выполнения вычитания триггер 20 устанавливаетсчя в единицу. Поэтому стробирующие импульсы с выхода элемента

34 ИЛИ проходят через элемент 25 И и, задержавшись на элементе 39, через элемент 35 ИЛИ. Длительность задержки на элементе 39 определяется продолжительностью такта деления íà åà.

1 19 1 0484

Поэтому не следующе м после полу чения отрицательного остатка такте на вына выходе 11 сигнал не появляется,. младший бит регистра 3 остается в нуле. На последующих тактах отработки 5 текущей тетрады на выходе элемента 39 и элемента 35 ИЛИ появляются сигналы, обеспечивающие установку .младшего бит1а, регистра 2 в единицу.

На четвертом такте сигнал с четвертого выхода счетчика 19 проходит через элемент 31 ИЛИ на вход установки нуля триггера 20. Поэтому к концу выполнения четвертого такта триггер

20 сбрасывается в нуль. В связи с .этим на выходе 11 последним появляет". ,ся сигнал, сформированный элементом

25 И на четвертом такте (на выходе элемента 39 задержки и элемента

35 ИЛИ он появляется на пятом такте). 20

В результате выполнения четверто." го такта счетчик 19 переходит в состояние 100 (потенциал на его пятом выходе), На пятом такте формируется сигнал на выходе 10 блока 5 управле-. ния, по которому в регистре 2 и сум". маторе 1 выполняется сдвиг на тетраду влево, При отрицательном остатке в сумматоре 1 (нуль на входе 9) эле-:.. менты 23 И и 33 ИЛИ не срабатывают, 30 сигнал на выходе 14 блока 5 управле" ния не формируется. Поэтому в регистре 3 к началу отработки следующей . тетрады частного сохраняется код однократного Делителя, а, на вход уста" З1 новки нуля счетчика 19 сигнал не .приходит. В результате, по стробирующему импульсу с выхода элемента 34 ИЛИ счетчик 19 переходит в состояние 101 (потенциал на его шестом выходе). 4я .На шестом такте по приходу син« хросигнала с выхода делителя 18 час" тоты срабатывает элемент 21 И. Сигнал с его выхода поступает на выход 8 блока 5 управления, обеспечивая. сложение в сумматоре 1 его содержимого с содержимым регистра 3 (делителем), Кроме того, сигнал с выхода 8 поступает на вход установки девяти млад-.. шей тетрады регистра 2. В последней устанавливается код 1001. Одновременно сигнал с выхода элемента 2 1 И ripîходит через элемент 34 ИЛИ на счетный вход счетчика 19, Поэтому счетчик ..19 переходит в состояние 110 (потенциал 55 на его седьмом выходе), |

На седьмом такте срабатывают элементы 32, 33 ИЛИ. Сигнал с выхода эле73 20 мента 32 ИЛИ поступает на выход 10

6JloKi3 5 управления и обеспечивает сдвиг содержимого регистра 2, и сумматора 1 на тетраду влево. Сигнал с выхода элемента 33 ИЛИ поступает на выход 14 блока 5 управления, и через элемент 38 задержки - на вход установки нуля счетчика. 19. Поэтому в регистр 3 принимается восьмикратный делитель из регистра 4, а счетчик 19 сбрасывается в нуль. Таким образом, блок 5 управления переходит к отработке следующей тетрады частного.

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

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

Т, =п(4 +2йу+1,5йсл ) +

+ п 1) еда (22) где t p - длительность сравнения содержимых трех старших разрядов остатка и текущего кратного делителя;

- длительность формирования кратного делителя, используемого на следующем такте (деления на два в регистре 3);

t - длительность двоично"десясл тичного сложения в сумматоре с „ - длительность сдвига в регистре 2 частного и в сумматоре 1, Среднее время деления десятичных чисел в прототипе составляет величину

= " n tсл (n-1) tсдя (23)

Деление на два в регистре 3 выполняется без распространения переносов.

Поэтому при больших разрядностях one" рандов длительность десятичного сложения t g, как правило, в несколько раз

1048473

22 превышает продолжительность деления на,два С(РФ tcn » 4р

Длительность сравнения t p содержимых трех старших разрядов остатка и текущего кратного определяется временем распространения переноса через три разряда схемы 6 сравнения, При больших и tqp в несколько раз меньше, чем с св» ср °

ta

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

tq 1,6tc> 0,8 t+,. (24) tS

При реальных соотношениях между

tcp и. t справедливых при делении многоразрядных десятичных чисел неравенство (24) выполняется практически всегда.

Чем больше разрядность операндов и, тем существеннее tcp превышает правую часть неравенства (24), Поэтому данное устройство наиболее целесообразно использовать при делении многоразрядных .десятичных чисел. В пределе (при и - с ) предложенное устройство позволяет повысить быстродействие в .2,66раза по сравнению с известным устройством.

1048413

1и,г. 2

Составитель Л. Медведева

Техред Т.Маточка Корректор Г. Решетник

Редактор О. Колесникова

Филиал ППП "Патент", г. Ужгород, ул. Проектная, 4

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

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

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

Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел Устройство для деления десятичных чисел 

 

Похожие патенты:

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

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

Изобретение относится к техническим средствам информатики и вычислительной техники и может быть использовано в высокоскоростных арифметико-логических устройствах, в том числе для вычисления быстрого преобразования Фурье и сверток по методу Винограда

Изобретение относится к цифровым умножителям и предназначено для умножения цифрового сигнала (ЦС) на сигнал в форме периодической волны, преимущественно синусоидальной

Изобретение относится к области вычислительной техники и может быть использовано для построения систем передачи и переработки дискретной информации

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

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

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

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