Устройство для деления чисел
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
)4006 Р 7 ОПИСАНИЕ ИЗОБРЕТК А ВТОРСКОМУ СВИДЕТЕЛЬСТВУ отехническии инст 72) А.Г.Батюков и А 53) 681 .325 (088,8) 56) Карцев М.А, Ари М.: Наука(54) (57) вычи прим процесса. ОСУДАРСТВЕННЫЙ КОМИТЕТ ССС О ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫ(71) Минский ради СТРОИСТВО ДЛЯ ДЕЛЕНИЯ ЧИСЕЛзобретение относится к областиительной техники и может бытьено в быстродействующих арифметических устройствах для выполнения операции деления чисел. Цельюизобретения является повышение быстродействия устройства. Устройствосодержит регистр 1 делимого, регистр2 делителя, сумматор 3 частного,блок 4 умножения, вычитатели 5,6,сумматор 8 принудительного округления делителя, блок 10 деления усеченных чисел, коммутатор 14 и блок15 управления, а также вновь введенные вычитатель 7, коммутатор 9и регистр 13 цифр частного с соответствующими связями. С помощью введенных в устройство блоков и связейобеспечивается более высокое егобыстродействие за счет некоторогораспараллеливания вычислительногоИзобретение относится к вычислительной технике и может быть использовано в быстродействующих арифметических устройствах для выполнения оПерации деления чисел.Цель изобретения - повышение ,быстродействия устройства.На фиг.1 приведена структурная схема устройства для деления чисел; на фиг.2 - функциональная схема второго коммутатора; на фиг.З - функциональная схема блока управления; на фиг,4 - микропрограмма работы устройства, 15Устройство для деления содержит .фиг,1, регистр 1 делимого, регистр : 2 делителя, сумматор 3 частного, блок 4 умножения, вычитатели 5 - 7, сумматор 8 принудительного округле ния делителя, коммутатор 9, блок 10 деления усеченных чисел, состоящий , из узла 11 вычисления обратной величины и узла 12 умножения, регистр 13 цифр частного, коммутатор 14, блок 25 15 управления, шину 16 данных устройства, вход 17 синхронизации устройства, вход 18 логической единицы устройства, выход 19 частного устройства, выходы 20 регистра 1 делимого, 30 выходы 21 регистра 2 делителя, выходы 22 старших разрядов регистра 2 делителя, выходы 23 сумматора 8 принудительного округления делителя, выходы 24 узла 11 вычисления обратной величины, выходы 25 коммутатора 9, выходы 26 узла 12 умножения (они же являются и выходами блока О деления усеченньк чисел), выходы 27 регистра 13 цифр частного, выходы 28 и 29 пер вой и второй групп блока 4 умножения соответственно, выходы 30 и 3 разности и заема вычитателя 5 соответственно, выходы 32 и 33 старших разрядов разности и заема вычитателя 5 соот ветственно, выходы 34 вычитателя 6, выходы 35 младших разрядов вычитателя 7, выход 36 старшего разряда вычитателя 7, выходы 37 коммутатора 14, выходы 38 старших "разрядов шины 16 данных устройства, выходы 39-43 с первого по пятый блока 15 управления соответственно.Коммутатор 9 содержит элементы 2 И-ЗИИЛИ 44 (фиг.2) .Блок 15 управления может быть выполнен в виде совокупности счетчика 45 и элементов 46 памяти микрокоманд.,В блоке 10 деления усеченных чисел входы узла 11 вычисления обратной величины являются входами делителя блока 1 О, а выходы 24 соедине-,ны с входами первой группы узла 12умножения, входы второй группы которого являются входами делимогоблока 1 О, вьмоды узла 12 умноженияявляются вькодами 26 блока 10.Регистры делимого 1 и делителя2 предназначены для хранения двоичных кодов соответственно делимого(остатков) и делителя. Регистр 1 делимого (и+1)-разрядный, из которыходин разряд расположен слева отзапятой, а остальные - справа отзапятой. Регистр 2 делителя содержит и разрядов, которые расположенысправа от запятой. В первых двух тактах работы устройства в эти регистры загружаются и-разрядные двоичныекоды делимого и делителя (сначалапринимается делитель, а потом делимое), которые являются правильнымиположительными дробями, причем делимое загружается в и разрядов регистра 1, расположенных справа от запятой. Если в устройстве после завершения операции деления двух чисел не требуется формирование и запись в регистр 1 правильного конечного значения остатка, то разрядность регистра 1 может быть уменьшена на Кразряда. Это возможно потому, что в нем для формирования К очередных цифр частного используетсязначение остатка, сформированного навыходах 30 и 31 вычитателя 5 до записи его в регистр 1 делимого, Вэтом случае не должна производитьсяи запись (К) старших разрядовделимого в регистр 1 с шины 1 6 данньк устройства,Предполагается, что все регистры устройства реализованы на основе двухтактных синхронных Р 7-триггеров, Запись информации в регистры производится по синхроимпульсу при наличии разрешающего потенциала на их Ч-входах.Сумматор 3 частного предназначен для хранения частното.Он также участвует при выполнении операции деления в процессе формирования правильного значения частного. После завершения деления образованное в сумматоре 3 частное поступает на выход 19 част3 14170ного устройства. Сумматор 3 частного может быть построен на основе комбинационного сумматора и регистра.Обнуление сумматора 3 производитсяпутем подачи с входа 17 устройстваимпульса на его синхровход и разрешающего потенциала с второго выхода40 блока 15 управления. Запись ин-,формации в сумматор 3 также осуществляется по синхроимпульсу при наличии разрешающего потенциала на его .входе разрешения записи, который подключен к третьему выходу 41 блока 15управления. В ходе выполнения собственно деления чисел в каждом тактеработы устройства в сумматоре 3 осуществляется прибавление к его содержимому, сдвинутому на Кразряд всторону старших разрядов, значения К 20очередных цифр частного, поступающего на входы его младших разрядов свыходов 27 регистра 13 цифр частного(старшая цифра из К очередных цифрчастного является корректирующей 25для частного, сформированного к данному моменту в сумматоре 3 частного).В блоке 4 осуществляется перемножение К-разрядного частного, сформированного на выходах 27 регистра 13 30и поступающего на входы второй группыблока 4 умножения, и и-разрядного делителя, хранимого в регистре 2 и поступающего на ь входы первой группыблока 4 с выходов 21 регистра 2. Навыходах 28 и 29 первой и второйгрупп блока 4 умножения образуетсяпроизведение в двухрядном коде (ввиде двух чисел) . Блок 4 можетбыть реализован в виде совокупности из и/К К-разрядных двоичных умножителей.С помощью первого вычитателя 5формируется значение очередного остатка в двухрядном коде( на выходах 30 вычитателя 5 образуется значение разности, а на выходах 31значение заема остатка), На входыуменьшаемого вычитателя 5 поступает с выходов 20 регистра 1 значениетекущего остатка, а на его входы вычитаемого и заема подается с выходов28 и 29 блока 4 значение произведенияделителя на К цифр частного в двухрядном коде. Вычитатель 5 - комбина 55ционного типа без распространениязаема и может быть реализован наоснове одноразрядных двоичных вычитателей,Вычитатель 6 осуществляет преобразование двухрядного кода очередного остатка, образованного на выходах 30 и 31 вычитателя 5, в однорядный код и является вычитателем комбинационного типа с распространением заема. С выходов 34 вычитателя 6 значение очередного остатка в однорядном коде записывается в регистр 1 делимо" го. Предполагается, что вычитатель 6 может быть заменен сумматором, если информацию, поступающую на его входы вычитаемого, проинвертировать и на вход переноса сумматора подать сигнал логической единицы.С помощью вычитателя 7, коммутатора 9, сумматора 8 принудительного округления делителя и блока 1 О деления усеченных чисел, состоящего иэ узла 11 вычисления обратной величины и узла 12 умножения, в устройст" ве по эначен 1,ю старших разрядов делимого (остатка) и делителя формиру" ется К двоичных цифр частного, причем.его формирование происходит параллельно с работой вычитателя 6, на выходах 34 которого образуется значение очередного остатка в однорядномкоде. Можно показать, что если делимое Х и делитель У - правильные нормализованные двоичные дроби, т.е.1/2Х,У с 1, то для получения в устройстве К очередных цифр частного (один разряд слева от запятой, остальные справа от запятой) с точ-, ностью до единицы их младшего раэряда с весом 2 " О достаточно обрабатывать в блоке 10 К +4 старших разряда остатка (один разряд слева от запятой, остальные разряды справа от запятой) и К + 3 старших разряда делителя (все разряды справа от запятой). А чтобы значение этих К цифр частично не превышало истинное значение, т.е. чтобы оно было равно значению или быпо меньше его наединицу младшего разряда с весом - (к-2 , в сумматоре 8 осуществляется Принудительное увеличение значения старших разрядов делителя на единицу их младшего разряда, а в третьем вычитателе 7 производится принудительное уменьшение значения старших разрядов остатка на единицу их младшего разряда.Вычитатель 7 - комбинационного типа с распространением заема. На141его входы уменьшаемого и вычитаемо-го с выходов 32 и 33 старших разрядов первого вычитателя 5 подается значение К+5 старших разрядов разности и заема двухрядного кода очередного остатка, образованного на выходах 30 и 31 вычитателя 5. На выходах 35 вычитателя 7 образуются К + 4 младших разрядов (К+5)-разрядного результата, а на выходе 36 старший разряд результата. Вход заема вычитателя 7 соединен с входом 18 логической единицы устройства.Фактически с помощью вычитателя 7 в устройстве осуществляется опережающее формирование значения К+4 старших разрядов очередного остатка в Однорядном коде, так как малоразрядный вычитатель 7 работает значительно быстрее многоразрядного вычи. тателя 6.Сумматор 8 - (К+3)-разрядный ком-бинационного типа, На его вход переноса с входа 18 устройства поступа.ет сигнал логической единицы с весом(один разряд слева от запятой, аостальные разряды справа от запятой)который далее поступает на входыделителя блока 10 деления усеченныхчисел.С помощью коммутатора 9 осуществляется передача на входы делимогоблока 10 деления усеченных чисел значения (К+4)-разрядного йода делимого (один разряд слева от запятой,остальные разряды справа от запятой).,На фиг.2 приведена функциональная схема этого коммутатора,содержащая К+4 логических элемента2 И-ЗИИЛИ 44,Коммутатор 9 работает следующимобразом, Если на его первом управляющем входе, который подключен квторому выходу 40 блока 15 управления, присутствует сигнал логическойединицы, то на выходы 25 коммутатора9 с выходов 38 старших разрядов входа 16 данных устройства передаетсязначение К+3 старших разрядов делимого (все разряды справа от запятой)вместе с нулевой целой частью (навыходе 38, присутствует потенциал логического нуля). Если же на второйуправляющий вход коммутатора 9,который подключен к третьему выходу 7010 641 блока 15 управления, поступает сигнал логической единицы, а на его третьем управляющем входе, который соединен с выхо 5дом 36 старшего разряда вычитателя7, присутствует сигнал логическогонуля, то к его выходам 25 подключаются информационные входы первой группы, на которые подается с выходов 35эначение К+4 младших разрядов результата вычитателя 7 один разряд слева от запятой, а все остальные разряды расположены справа от запятой).18 Если же в этом случае на третьем уп"равляющем входе коммутатора 9 присутствует сигнал логической едини-цы, то передача информации на еговыходы 25 с информационных входов20 первой группы блокируется, т.е. навыходах 25 коммутатора 9 формируется нулевой код 0,0000,В блоке 10 осуществляется деление(К+4)-разрядных двоичных чисел (один25 их разряд расположен слева от запятой а все остальные справа от запятой) с образованием на выходах 26К цифр частного. В блоке 10 делениеосуществляется путем умножения значе 30 ния делимого на значение обратной величины делителя. Для этого блок 1 Осодержит комбинационный узел 11 вычисления обратной величины (на еговыходах 24 образуется (К+2)-разрядный код старших разрядов обратной3."3величины) и комбинационный узел 12умножения. Узел 11 может быть реализовансовместно с сумматором 8 наПЗУ по соответствующей таблице истинности, Блок 10 деления усеченных чисел может быть реализован и другимиспособами, например, в виде однотактной матрицы, реализующей алгоритм деления с восстановлением илибез восстановления остатка.Регистр 13 прецназначен для вре. -менного хранения сформированных навыходах 26 блока 10 К очередных цифрчастного. Запись в него информации50 производится по синхроимпульсу приналичии на его входе разрешения записи сигнала логической единицы,который подключен к четвертому выходу 42 блока 15 управления. С помощью коммутатора 14 осуществляется передача на информационные входы регистра 1 либо делимого с шины 16 данных устройства, хог а на20 140Устройство для деления чисел работает следующим образом.Пусть в исходном состоянии на шине 16 данных устройства присутс гГнует и-разрядный двоичный код делите ля У без знака, а счетчик 45 блока 15 управления установлен в начальное нулевое состояние, Тогда на первом выходе 39 блока 15 управления сформирован единичный сигнал, под 50 действием которого регистр 2 делителя подготовлен к приему информации. С приходом первого импульса на вход 17 синхронизации осуществляется запись двоичного кода делителя У в регистр 2 и установка счетчика 45 бло" ка 15 управления в состояние "1", После завершения действия импульса на входе 17 синхронизации первый 7 1417 втором выходе 40 блока 15 управления; сформирован сигнал логической единицы, либо однорядного кода остатка с выходов 34 вычитателя 6, когда на5 выходе 41 блока 15 имеется сигнал единицы, коммутатор 14 может быть реализован на элементах 2 ИИЛИ,Блок 15 управления координирует работу всех других узлов и блоков устройства при выполнении на нем операции деления чисел. Он может быть реализован самыми различными методами и средствами. На фиг.З в качестве примера приведена реализация блока 15 управления на основе счетчика 45 и элементов 46 памяти микро- команд. Счетчик 45 - накапливающего типа и предназначен для естественной адресации микрокоманд, Вход счета счетчика 45 соединен с входом 17 синхронизации устройства. В качестве элементов 46 памяти микро- команд может быть применена быстродействующая постоянная память емкостью 25и(М+3)5 где М = - -- число1К-.тактов собственно деления, н течение которых в устройстве формируется М(К)+1 цифр частного;Х" 30 ближайшее целое, большее или равное Х. В самом начале работы устройства счетчик 45 устанавливается в некоторое исходное состояние, например, сбрасывается в п 0" (на фиг,З цепь установки счетчика 45 в исходное состояние не показана) . На фиг.4 показана микропрограмма работы устройства. 010 8такт работы устройстна заканчивается.Во втором такте работы устройства на втором 40 и четвертом 42 ныходах блока 15 управления образуются сигналы логической единицы (см.микропрограмму на фиг,4, под действием которых в устройстве выполняются следующие дейстния: первый коммутатор 14 пропускает на информационные входы регистра 1 значение делимого Х с входа 16 данных устройства; коммута" тор 9 пропускает на входы делимого блока 10 деления усеченных чисел значение старших разрядов делимого с выходов 38 входа 16 данных устройства; на выходах 26 блока 1 О деления формируется значение Е, самых старших К цифр частного Е; регистры 1 и 13 подготовлены к приему информации, а сумматор 3 частного - к обнулению. При поступлении второго импульса на вход 17 синхронизации устройства осуществляется запись в регистр 1 значения делимого Х, в регистр 13 - значения 2 самых старших К цифр частного Е, сумматор 3 частного обнуляется,а счетчик 45блока 15 управления переводится н состояние "2". По истечении действия второго импульса на входе 17 синхронизации второй такт работы устройства завершается, после чего начинает" ся собственно деление чисел. В третьем такте (в первом иэ М тактов собственно деления) по содержимому счетчика 45 из элементов 46 памяти микрокоманд считывается третья микрокоманда, которой соответствуют сигналы логической единицы на третьем 41 и четвертом 42 выходах блока 15 управления (см.микропрограмму на фиг.4, Под действием этих управляющих сигналов в устройстве выполняются следующие действия: с помощью блока 4 умножения формируется в двухрядном коде значение произведения У Е а с помощью первого 5 и второго 6 вычитателей на выходах 34 последнего образуется значение первого остатка Х - У Е 1 в однорядном коде, которое далее через первый коммутатор 14 передается на информационные входы регистра 1 со сдвигом на Кразряд в направлении старших разрядов; по значению старших разрядов разности и заема, обраэованному на выходах10 15 20 25 30 35 40 45 50 55 32 и 33 вычитателя 5, на выходах 35младших разрядов вычитателя 7 форми,руется значение старших разрядоводнорядного кода первого остатка впредположении, что сигнал заема измладших разрядов полноразрядногоостатка равен единице, которое далеепередается через коммутатор 9 (еслитолько сигнал на выходе 36 старшегоразряда вычитателя 7 не равен единице) на входы делимого блока 10 деления усеченных чисел, .на выходах 26которого и получается значение Еследующих К двоичных цифр частного Е(:;все эти действия выполняются одновременно с работой вычитателя 6), ксодержимому сумматора 3 частногоив этом такте содержимое сумматора3 еще равно нулю), сдвинутому на К разряд в сторону его старших разрядов, осуществляется прибавление знаЧения Е частного Е, которое хранится в течение третьего такта в регистре 13 цифр частного и подается навходы младших разрядов. сумматора 3частного; регистры 1 и 13 и сумматор 3 подготовлены к приему информации. Если на выходе 36 старшего разряда вычитателя 7 сформирован сигналлогической единицы, то на вход делимого блока 10 деления усеченных чисел поступает нулевой двоичный код,О приходом третьего импульса на вход17 синхронизации устройства осуществляется запись в регистр 1 делимогозначения первого остатка, в регистр13 - значения 2 очередных К двоичных цифр частного 2, в младшие разряды сумматора 3 частного записывается значение Е самых старших Кдвоичных цифр частного Е, счетчик45 блока 15 управления переводится всостояние 3, На этом третий тактработы устройства заканчивается идалее выполняется еще Маналогичных тактов, в течение которых(включая третий такт) формируется всумматоре 3 частного 1 М (К)+11двоичных цифр частного 2, В каждом из этих тактов старшая цифраиз К очередных двоичных цифр частного, образованных на выходах 27 регистра 13 и поступающих на входымладших разрядов сумматора 3 частного, подсуммируется к младшему разряду содержащего сумматора 3, сдвинутому на Кразрядов в сторонуего старших разрядов. После выполнения (М+2)-го такта на пятом выходе 43 блока 15 управления появляется сигнал логической единицы, сигнализирующей об окончании в устройстве операции деления чисел. Формула изобретения Устройство для; деления чисел, содержащее регистр делимого, регистр делителя, сумматор частного, сумматор принудительного округления делителя, блок деления усеченных чисел, блок умножения, первый и второй вычитатели, первый коммутатор и блок управления, причем шина данных устройства соединена с информационными входами разрядов регистра делителя и с информационными входами первой группы первого коммутатора, информационные входы второй группы которого соединены с выходами разрядов второго вычитателя, входы уменьшаемого и вычитаемого разрядов которого соединены с выходами соответственно разности и заема разрядов первоговычитателя, выходы первого коммутатора соединены с информационными входами разрядов регистра делимого, выходы разрядов которого соединены свходами уменьшаемого разрядов первого вычитателя, входы вычитаемого изаема разрядов которого соединены свыходами первой и второй групп блокаумножения соответственно, входы первой группы блока умножения соединеныс выходами разрядов регистра делителя, выходы старших разрядов которогосоединены с входами разрядов сумматора принудительного округления делителя, вход переноса которого соединен с входом логической единицы устройства, выходы разрядов сумматорапринудительного округления делителя соединены с входами делителя блокаделения усеченных чисел, синхровходы регистров делимого и делителя,сумматора частного и блока управления соединены с входом синхронизации устройства, первый выход блокауправления соединен с входом разрешения записи регистра делителя,второй и третий выходы блока управления соединены с первым и вторымуправляющими входами первого коммутатора соответственно, четвертый выход блока управления соединен свходом разрешения записи регистра.1417 О 1 О2 Игна У 8 к делимого, пятый выход блока управления является выходом сигнализацииокончания деления устройства, выходы сумматора частного соединены свыходом частного устройства, о т л ич а ю щ е е с я тем, что, с цельюповышения быстродействия, устройствосодержит второй коммутатор, третийвычитатель и регистр цифр частного,причем входы уменьшаемого ивычитаемого разрядов третьего вычитателяподключены к выходам старших разрядовразности и заема первого вычитателясоответственно, выходы младших разрядов третьего вычитателя соединены синформационными входами первой группы второго коммутатора, информационные входы второй группы которогоподключены к выходам старших разрядов шины данных устройств, выходывторого коммутатора соединены с входами делимого блока деления усеченных чисел, выходы которого соединены с информационными входамиразрядов регистра цифр частного, вы.ходы разрядов которого соединены свходами второй группы блока умножения и с входами младших разрядовсумматора частного, вход установкив "О" которого соединен с первыми 10 управляющими входами первого и второго коммутаторов, а вход разрешениязаписи - с вторыми управляющими входами первого и второго коммутаторов,выход старшего разряда третьего вы читателя соединен с третьим управляющим входом второго коммутатора,синхровход и вход разрешения записирегистра цифр частного соединены ссинхровходом и входом разрешения 2 О записи регистра делимого соответственно, вход заема третьего вычитателя соединен с входом логическойединицы устройства.
СмотретьЗаявка
4157142, 05.12.1986
МИНСКИЙ РАДИОТЕХНИЧЕСКИЙ ИНСТИТУТ
БАТЮКОВ АЛЕКСАНДР ГЕННАДЬЕВИЧ, ШОСТАК АЛЕКСАНДР АНТОНОВИЧ
МПК / Метки
МПК: G06F 7/52
Опубликовано: 15.08.1988
Код ссылки
<a href="https://patents.su/8-1417010-ustrojjstvo-dlya-deleniya-chisel.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для деления чисел</a>
Предыдущий патент: Устройство для деления чисел с фиксированной запятой
Следующий патент: Адаптируемый четверичный сумматор
Случайный патент: Кантователь