Устройство для последовательного деления

Номер патента: 1304017

Авторы: Кремез, Осипов, Роздобара

ZIP архив

Текст

(51) 4 С 06 Р 74 ЮК Ц ИСАНИЕ ИЗОБРЕТЕ ИДЕТЕЛЬСТВ У АВТОРСКОМ ИЬЛВ(1 ТЕ(. ) 14В. А. ипо ой про4.СССР1983.ВАТЕЛЬ(56) ции. 1 золо зь, 19 льство Р 7/49 ПОСЛЕД У 1 (54 ДЕЛ 0 тся к цифроике и может азоустойчивь изобретения жности устся тем, что(57) Изобретени вой вычислитель и те быть использова процессорах ЦВМ является повыше лью ие над тигает йства. Эт ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ 21) 3925593/24-2422) 09.07,8646) 15.04.87. Бюл.72) В.В. Роздобара,Г.В. Кремез53) 681,325(088.8)Стахов А.П. КодьМ.: Радио и свяАвторское свидете151955, кл. С 06) УСТРОЙСТВО ДЛЯЕНИЯ устройство для последовательного деления, содержащее регистр 7 делимогорегистр 9 делителя, блок 1 микропрограммного управления и функциональные связи, снабжено двумя триггерами 2 и 3, распределителем 4 импульсов, тремя группами элементов И 6,13 и 14, пятью регистрами 8, 12, 15,21 и 22, двумя коммутаторами 10, 11,группой элементов ИЛИ 16, четырьмяэлементами И 17, 18, 23 и 24, двумяблоками развертки 19 и 20, узлом 25выделения ошибки и дополнительнымифункциональными связями, что позволяет для 20-разрядного устройствауменьшить число внешних связей в5,5 раз, а следовательно, повыситьнадежность устройства. 5 ил.1Изобретение относится к вычислительной технике, предназначено для1последовательного деления чисел, представленных в кодах "золотой" пропорции, и может быть использовано в отказоустойчивых процессорах ЦВМ.Целью изобретения является повышение надежности устройства.Алгоритм поразрядного деления кодов "золотой" 1-пропорции основывается на методе деления с восстановлением остатка. Остаток В. на 1-м так 1+9те деления и ь-я цифра частного Е, вычисляются по формулам: несли В. сУ., + Е ы1+к 1+К .1+ к 1+к ф е 1+ктакте;1+ бэ ф, е - основание "золо 2той 1-системы11счисления;п - разрядность операндов.Величина Е зависит от максимальной величины ошибки ( а:) , усечения операндов на 1-м такте. Можно показать, что эта ошибка может быть скомпенсирована в последующих тактах делена, если она не больше ссСледовательно, 1 с=3.Алгоритм последовательного деления кодов "золотой" 1-пропорции имеет вид: 2На фиг. 1 показана схема устройст-ва для последовательного деления;на фиг. 2 - пример построения блокамикропрограммного управления; нафиг. 3 - граф состояний и переходовуправления; на фиг. 4 - функциональная схема 3 -го разряда блока развертки; на фиг. 5 - функциональная схемаузла выделения ошибки.1 О Устройство для последовательногоделения (фиг. 1) содержит блок 1 микропрограммного управления, первый,второй триггеры 2, 3, распределитель4 импульсов, (и+4) выхода 5 распреде лителя 4 импульсов, первую группу 6элементов И, регистр 7 делимого,первый регистр 8, регистр 9 делителя,первый и второй коммутаторы 1 О, 11,второй 12 регистр, вторую и третью 20 группы 13, 14,элементов И, третий регистр 15, группу элементов 16 ИЛИ,первый и второй элементы 17, 18 И,первый и второй блоки. 19, 20 развертки, четвертый и пятый регистры 21,22, третий и четвертый элементы 23,24 И, узел 25 выделения ошибки, вход26 пуска, вход 27 синхронизации делимого, вход 28 делимого, вход 29 синхронизации делителя, вход 30 делителя, вход 31 запроса результата, выход 32 запроса делимого, являющийсяпервым выходом блока 1, выход 33 запроса делителя, являющийся третьим выхрдом блока 1, выход 34 синхрониза"ции результата, являющийся первым входом логического условия блока 1, выход 35 результата, выход 36 индикации ошибки, выход 37 индикации готовности к работе, являющийся первым выходом блока 1, вход 38 второй константы, вход 39 первой константы, выходы 40-42 четвертого, (и+1)-го и (и+4)-го разрядов распределителя 4 импульсов, являющиеся вторым, третьим и четвертым входами логического блока 1, шестой и пятый входы 43, 44 логического условия блока 1, пятый и второй выхо"золотой" 1-системы счисления. ды 45, 46 блока 1, шестой 1 седьмой,восьмой, девятый, десятый и одиннадцатый выходы 47-52 блока 1, первая ивторая группы выходов 53, 54 блока 1,выходы 55-57 блока 19, выходы 58-60блока 20. Блок микропрограммного управления30407 3торого содержит элемент 66 И-ИЛИ, регистр 67 состояния, элементы 68- 72 ИЛИ, элементы 73, 74 И, элементы 75-77 ИЛЕ, шифраторы 78, 79, прямой и инверсный выходы 80, 81 триггера 61,5 прямой и инверсные выходы 82, 83 триггера 62, выход 84 генератора 63, выходы нулевого и первого разрядов 85,86 счетчика 64, выходы 87-87, девятнадцатиразрядного регистра 67, 1 О выход 88 элемента 72 ИЛИ.На графе состояний и переходов (фиг, 3) обозначены состояния С, блока 1, логические функции Г,; переходов и сигналы, формируемые на вы ходах блока 1 в каждом из состояний.Каждый разряд блоков 19, 20 развертки (фиг. 4) содержит четыре элемента 89-91 И-НЕ, вход 90 3-го разряда прямого выхода регистра 12, входы 91, 92 Я+1)-го и (1+2)-го разрядов инверсного выхода регистра 12 (где 3=1,2и+3), вход 93 1-го разряда инверсного выхода регистра 12, входы 94, 95 1-го разряда инверсного 25 выхода регистра 12, входы 94, 95 Ц+ 1)-го и (+2)-го разрядов выходов регистра 12.Узел 25 выделения ошибки (фиг. 5) содержит, элементы 96, 97 НЕ, элемент 30 98 ИЛИ и элемент 99 И.Триггеры 2 и 3 предназначены для хранения сигналов синхронизации соответствующего разряда результата и самого значения этого разряда, 35Группа 6 элементов И предназначена для формирования сигналов записи разряда делителя в соответствующий разряд регистра 9.Регистр 7 предназначен для хране ния кода делимого и остатка.Регистр 8 предназначен для хранения кода ) к " при вычислении х-го3=1разряда частного. 45Регистр 9 предназначен для хранения кода делителя.Коммутаторы 10 и 11 предназначены для управления пропуском соответствующего кода соответственно на реги стры 12 и 15. Регистры 12 и 15 предназначены для хранения промежуточных результатов. Группы 13, 14 элементов И предназначены для реализации операции вычитания кодов регистров 12 и 15.Группа 16 элементов ИЛИ предназначена для формирования кода (Ы+(Рг 12).1 4Многовходовые элементы И 17, 18,23, 24 предназначены для формирования сигналов о нулевом содержимомрегистров 12, 15 21 и 22.Блоки 19 и 20 развертки предназначены для выполнения развертки кодов в регистрах 12 и 15 и формирования сигналов о возможности выполнениясвертки кодов в этих регистрах.Регистры 21 и 22 предназначеныдля организации контроля операции развертки,Узел 25 выделения ошибки предназначен для формирования сигнала индикации ошибки устройства.Устройство работает следующим образомаВначале формируются коды делимогоХ з и делителя У,. На вход 27 поступает сигнал синхронизации разрядаделимого, на вход 28 - значение данного разряда, на вход 29 - сигналсинхронизации разряда делителя, навход 30 - значение данного разрядаделителя. По сигналу "Пуск" на вхо-.де 26 блок 1 переходит в состояние/2/, в котором по сигналу на выходе45 к распределителю 4 прибавляется 1и обнуляется счетчик 64. Так как номер такта меньше (и+1) - триггер 62в нулевом состоянии - блок 1 переходит в состояние /3/. При наличии сигнала синхронизации делимого //27/=1/блок 1 переходит в 4-е или в 9-е состояние в зависимости от значения разряда делимого Х,.Пусть Х . =О. Тогда последовательнЬно выполняются следующие действия:запись содержимого регистра 12 в регистр 7/46/=1/, выдача сигнала запроса очередного разряда делимого //32/==1/, запись разряда делителя уврегистр 9 и выдача запроса очередногоразряда делителя //33/=1/, сдвиг регистра 12 на один разряд в сторонустарших разрядов //53// 12/./81/,/49/=1/ при условии, что номер тактаменьше 4 (триггер 61 в нулевом состоянии) и возврат в состояние /2/.1Если Х =1, то осуществляется непросто запись этого значения в соответствующий разряд регистра 7, а сложение кода Х . ыс содержимым реФгистра 12, равного содержимому регистра 7. Такая операция сложения эквивалентна операции вычитания кода/38/=/1+0 / из кода /16/=/ы +/Рг 12//,причем первый код записывается в ре/50/=1/, и операция вычитания осуществляет.я при нулевом значении счет"чика 64. 5Способ вычитания кодов, содержащихся в регистрах 12 и 15, следующий.П р и м е р. Из кода А=010000 вычесть код В=000100,1/ А,=АВ 010000;ЮВ,=В А=0001002/ развертка А,и В,:А, =010000 - 001100;В =000100 000011 р153/ А =А,В,=001100;В =В А,=000011;4/ развертка АА =001100 - 0010115/ А =А В =001000;20В =В А=000000.Вычитание закончено так как В =О.йзЗапись результатов логического умножения прямых и инверсных значений 25кодов из регистров 12 и 15 в эти жерегистры осуществляется в состоянии/ 11/ после настройки коммутаторов 10и 11 //53// 13/, ./54/ /.14/, /49/=1,/50/=1/,Если содержимое регистров 12 и 15не равно О, что определяется по значению сигналов на входах 44 и 43 блока управления, то состоянии /13/ врегистры 12 и 15 записываются раэ"вернутые коды из блоков 19, 20 раз 35вертки, //53/ к /55/, /54/ щ /58/,/51/=1 /49/=1, /50/=1/. Кроме того,в состоянии /12/ на установочные входы регистров 21 и 22 с выходов 56 и 4059 блоков 19 и 20 поступают сигналыо выполнении развертки в соответствующих разрядах кодов, после чегоданные разряда регистров 21 и 22 установятся в единицу. 45В состоянии /13/ при /52/=1 на установочные входы регистров 21.и 22поступают сигналы с выходов 57 и 60о возможности выполнения операциисвертки (обратной по отношению к операции развертки) в соответствующихразрядах регистров 12 и 15. Таким образом, при переходе блока 1 в состояние /10/ при правильной работе блоков, участвующих в операции развертки и записи кодов, регистры 21 и 22должны быть обнулены, в противномслучае на выходе 36 сфомируется сигнал ошибки. 17 6После окончания операции вычитанияблок 1 управления переходит в .состояние /4/ и далее описанным способом всостояние /2/. При значении счетчика64, равном 4, в состоянии /6/ в регистре 7 будет находиться код (Ы Х ++Х о ), а в регистре 9 - код УДалее выполняется сравнение содержимого регистра 7 (В ) с содержимымрегистра 9 (У;,з ) путем их перезаписи в регистры 12 и 15 и выполнениявычитания описанным способом. Призначении счетчика 64, равном 1 //49/==1, /50/=1, /88/=1/,Если величина В; меньше или равна У . то блок 1 переходит в состояние /14/, где анализируется воэможность записи очередного разрядачастного, равного О, в триггер 3 результата. Если триггер 2 сброшен сигналом запроса результата на входе31/./34/=1/, то в состоянии 15 значение 2, частного на выходе 47 записывается в триггер 3 по сигналу на выходе 48, который также устанавливаеттриггер 2 в единицу, а содержимоерегистра 7 переписывается в регистр12 для последующего сдвига.Если,В;, больше Уз . то величина К. =(В;, -У ) сравнивается с% -4кодом Ь; = 2 с, находящимся в1+ 4регистре 8, при значении счетчика 64,равном 2. Если Е . больше или равен1+то Е равно 1, в противном1+З1случае Е,=О. При значении счетчика64, равном /и+1///82/=1/, ввод оче. -редных разрядов делимого и делителяпрекращается. При значении распределителя 4, равном /и+4///42/=1/, процесс деления завершается, блок 1 переходит в состояние./1/, в котором по сигналу на выходе 37 обнуляются регистры 7-9, 12, 15, 21, 22, счетчик 64, триггеры 61, 62, и на выход устройства выдается сигнал о готовности устройства к работе с другими операндами; Формула из обретения Устройство для последовательного деления, содержащее регистры . делимого и делителя, блок микропрограммного управления, вход запуска которого является входом пуска устройства, первый вход блока микропрограм 7 13040 много управления соединен с входами установки в "0" регистров делимого и делителя и является выходом индикации готовности к работе устройства, второй выход блока микропрограммного управления соединен с входом разре 5 шения записи регистра делимого, о т - л ич ающе е ся тем, что, с целью повышения надежности устройства, в него введены пять регистров, два ком О мутатора, два триггера, распределитель импульсов, три группы элементов И, группа элементов ИЛИ, четыре элемента И, два блока развертки, каждый из которых содержит (п+3) разб ряда, узел выделения ошибки, причем вход синхронизации делимого устройства является первым входом синхронизации блока микропрограммного управления, вход признака разрешения записи которого является входом делимого устройства, вход синхронизации делителя которого является вторым входом синхронизации блока микропрограммйого управления, первый 25 выход которого соединен с входами установки в "0" распределителя импульсов, первого, второго и треть%го регистров и первыми входами установки в "0" четвертого и пятого регистров, вход запроса результата устройства соединен с входом установки в "0" первого триггера, выход которого является выходом синхронизации результата устройства и соединен с первым входом логического условия блока микропрограммного управления, третий выход которого является выходом запроса делителя устройства, четвертый выход блока микропрограммного управ ления является выходом запроса делимого устройства и соединен с первыми входами элементов И первой группы, пятый выход блока микропрограммного управления соединен со счетным вхо дом распределителя импульсов, -й выход которого (где х=1,2п, и-разрядность операндов) соединен с входом установки в единицу -го разряда первого регистра и вторым входом -го элемента И первой группы, выход которого соединен с входом разрешения записи -го разряда регистра делителя, информационный вход которого соединен с входом делителя устройства, шестой выход блока микропрограммного управления соединен с информационным входом второго триггера, вход разрешения записи которо 17 8го соединен с входом установки в 1" первого триггера и седьмым выходом блока микропрограммного управления, восьмой и девятый выходы которого соединены с входами разрешения записи второго и третьего регистров соответственно, информационные входы которых соединены с выходами соответственно первого и второго коммутаторов, группы управляющих входов которых соединены соответственно с первой и второй группами выходов блока микропрограммного управления, второй, третий и четвертый входы логического условия которого соединены соответственно с четвертым (и+1) и (и+4) разрядными выходами распределителя импульсов, каждый разряд первого и вто-, рого блоков развертки содержат четыре элемента И-НЕ, узел выделения ошибки содержит элемент ИЛИ, два элемента НЕ и элемент И, выход второготриггера является выходом результата устройства, выходы регистров делимого и делителя соединены с первыми информационными входами первого ивторого коммутаторов соответственно, вторые информационные входы которыхсоединены с выходами элементов И второй и третьей групп соответственно,прямой выход 3-го разряда (где 3=1,2п+3) второго регистра соединен с первым входом 1-го элемента ИЛИ группы, с третьим информационным входом 3-го разряда первого коммутатора, с информационным входом 3-го разряда регистра делимого, первым входом 1-го элемента И второй группы, первыми входами первого и второго элементов И-НЕ 1-го разряда первого блока развертки, первый и второй входы третьего элемента И-НЕ которого соединены с прямыми выходами Ц+1)-го и (3+2)-го разрядов соответственно второго регистра, инверсный выход 3-го разряда которого соединен с 3-м входом первого элемента И, первым входом 3-го элемента И третьей группы и третьим входом третьего элемента И-НЕ 3-го разряда первого блока развертки, второй и третий входы первого элемента И-НЕ которого соединены с инверсными выходами Ц+1)-го и Я+2)-го разрядов соответственно второго регистра, прямой выход 3-го разряда третьего регистра соединен с вторым входом 3-го элемента И третьей группы и первыми входами первого и второго элементов И 3-го разряда9 13040 второго блока развертки, первый и второй входы третьего элемента И которого соединены с прямыми выходами (1+1)-го и (1+2)-го разрядов соот. ветственно третьего регистра, инверсный выход 1-го разряда которого соединен с вторым входом 1-го элемента И второй группы, с 1-м входом третьго элемента И и третьим входом третьего элемента И-НЕ 1-го разряда вто рого блока развертки, второй и третий входы первого элемента И-НЕ которогб соединены с инверсными выходами (+1)"го и Я+2)-го разрядов соответственно третьего регистра, четвертые 15 входы первых элементов И-НЕ 1-х разрядов первого и второго блока развертки соединены с входом первого элемента НЕ узла выделения ошибки и с десятым выходом блока микропрограммного управления, одиннадцатый выход которого соединен с входом второго элемента НЕ узла выделения ошибки и четвертыми входами третьих элементов И 1-х разрядов первого и вто рого блоков развертки, выходы которых соединены с вторыми входами установки в "0" -го разряда четвертого и пятого регистров соответственно, инверсные выходы которых соединены с 30 1-ми входами соответственно третьего и четвертого элементов И, выходы которых соединены с первыми и вторыми входами элемента ИЛИ узла выделения .ошибки, выход которого соединен с первым входом элемента И узла выделения ошибки, второй и третий входы которого соединены с выходами первого и второго элементов НЕ, выход элемента И узла выделения ошибки явля ется выходом индикации ошибки устройства, вход 1-го разряда первой константы устройства является вторым 17 10входом 1-го элемента ИЛИ группы, выход которого является четвертым ин"формационным входом 1-го разряда первого коммутатора, пятый информационный вход -го разряда которого соединен с выходом четвертого элементаИ-НЕ 1-го разряда первого блока развертки, первый вход которого соединен с выходом второго элемента И-НЕь1-го разряда первого блока развертки,второй вход которого соединен с выходом первого элемента И-НЕ 1-го разряда первого блока развертки и входом установки в "1" 1-го разряда четвертого регистра, вход -го разрядавторой константы устройства являетсятретьим информационным входом -горазряда второго коммутатора, четвертый информационный вход которого сое"динен с выходом первого регистра,пятый информационный вход 1-го разряда второго коммутатора соединен свыходом четвертого элемента И-НЕ 1-горазряда второго блока развертки, первый вход которого соединен с выходом(второго элемента И-НЕ 1-го разрядавторого блока развертки, второй входкоторого соединен с выходом первогоэлемента И-НЕ -го разряда второгоблока развертки и входом установкив "1" 1-го разряда пятого регистра,.второй и третий входы четвертого эле"мента И 1-го разряда первого и второго блоков развертки соответственносоединены с выходами первых элементов И Ц)-го и Ц)-го разрядовсоответственно первого и второго блоков развертки соответственно, выходыпервого и второго элементов И соединены с пятым и шестым входами логического условия соответственноблока микропрограммного управления, 13040171304017 Рог,5 мчик ктор Подписи Заказ 1312/49ВНИИ омитета С открытий 4 аб 1130 тие, г Прои Оп 7 дик йп Йок Составитель Н. Маркеловор М. Бандура Техред М.Ходаниц Тираж 673Государственного кделам изобр:тений иМосква, Ж, Раушска нно-полиграфическое пр жгород, ул, Проектная, 4

Смотреть

Заявка

3925593, 09.07.1986

ВОЕННЫЙ ИНЖЕНЕРНЫЙ КРАСНОЗНАМЕННЫЙ ИНСТИТУТ ИМ. А. Ф. МОЖАЙСКОГО

РОЗДОБАРА ВИТАЛИЙ ВЛАДИМИРОВИЧ, ОСИПОВ ВЛАДИМИР АЛЕКСЕЕВИЧ, КРЕМЕЗ ГЕОРГИЙ ВАЛЬТЕРОВИЧ

МПК / Метки

МПК: G06F 7/49

Метки: деления, последовательного

Опубликовано: 15.04.1987

Код ссылки

<a href="https://patents.su/8-1304017-ustrojjstvo-dlya-posledovatelnogo-deleniya.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для последовательного деления</a>

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