SU1803913A1 - Division device - Google Patents
Division device Download PDFInfo
- Publication number
- SU1803913A1 SU1803913A1 SU904863265A SU4863265A SU1803913A1 SU 1803913 A1 SU1803913 A1 SU 1803913A1 SU 904863265 A SU904863265 A SU 904863265A SU 4863265 A SU4863265 A SU 4863265A SU 1803913 A1 SU1803913 A1 SU 1803913A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- output
- input
- outputs
- inputs
- register
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Description
Изобретение относится к области вычислительной техники и может быть применено в быстродействующих арифметических устройствах для выполнения операции деления чисел.The invention relates to the field of computing and can be used in high-speed arithmetic devices to perform the operation of dividing numbers.
Цель изобретения - сокращение количества оборудования.The purpose of the invention is to reduce the amount of equipment.
На фиг. 1 приведена структурная схема предлагаемого устройства для деления; на фиг. 2 - функциональная схема второго коммутатора; на фиг. 3 - функциональная схема третьего коммутатора; на фиг. 4 - функциональная схема четвертого коммутатора; на фиг. 5 - функциональная схема блока микропрограммного управления; на фиг. 6 микропрограмма работы устройства.FIG. 1 shows a block diagram of the proposed device for dividing; in fig. 2 is a functional diagram of the second switch; in fig. 3 is a functional diagram of the third switch; in fig. 4 is a functional diagram of the fourth switch; in fig. 5 - functional diagram of the microprogram control unit; in fig. 6 firmware of the device.
Предлагаемое устройство для деления содержит регистр 1 делимого, регистр 2 делителя, сумматор 3 частного, блок 4 деления усеченных чисел, блок 5 умножения, вычислитель 6, сумматор 7, коммутаторы 8-11 с первого по четвертый соответственно, элемент ИЛ И-НЕ 12, регистр 13 цифр частного, блок 14 микропрограммного управления, входы 15 и 16 данных и синхронизации устройства соответственно, выход 17 частного устройства, выход 18 регистра 1, выход 19 регистра 2, выход 20 старших разрядов регистра 2, выход 21 четвертого коммутатора 11, выход 22 второго коммутатора 9, выход 23 третьего коммутатора 10, выход 24 блока 4 деления усеченных чисел, выход 25 регистра 13 цифр частного, выходы 26 и 27 первой и второй групп блока 5 умножения соответственно, выходы 28 и 29 разности и заема вычитателя 6 соответственно, выходы 30 и 31 старших разрядов разности и заема вычитателя 6 соответственно, выход 32 сумматора 7, выход 33 старших разрядов сумматора 7, выход 34 элемента ИЛИ-НЕ 12, выход 35 первого коммутатора 8, выход 36 старших разрядов делимого входа 15 данных устройства, выход 37 старших разрядов делителя входа 15 данных устройства, выходы 38-41 блока 14 микропрограммного управления с первого по четвертый соответственно.The proposed device for dividing contains a dividend register 1, divisor register 2, quotient adder 3, truncated number division unit 4, multiplication unit 5, calculator 6, adder 7, switches 8-11 from the first to the fourth, respectively, the IL AND-NOT element 12, private register 13 digits, microprogram control unit 14, data and device synchronization inputs 15 and 16, respectively, private device output 17, register 1 output 18, register 2 output 19, high-order output 20 of register 2, output 21 of the fourth switch 11, output 22 the second switch 9, the output 23 of the third switch 10, the output 24 of the block 4 division of truncated numbers, the output 25 of the register 13 digits of the quotient, outputs 26 and 27 of the first and second groups of the multiplication unit 5, respectively, outputs 28 and 29 of the difference and borrowing of the subtractor 6, respectively, outputs 30 and 31 high-order bits of the difference and borrowing of the subtractor 6, respectively, the output 32 of the adder 7, the output of the 33 high-order bits of the adder 7, the output 34 of the OR-NOT element 12, the output 35 of the first commutator ator 8, the output 36 of the most significant bits of the divisible input 15 of the device data, the output 37 of the most significant bits of the divider of the input 15 of the device data, outputs 38-41 of the microprogram control unit 14 from the first to the fourth, respectively.
Вход 15 данных устройства соединен с первым информационным входом первого коммутатора 8, выход 35 которого соединен с информационным входом регистра 1 делимого, выход 18 которого соединен с входом уменьшаемого вычислителя 6, входы вычитаемого первой и второй групп которого соединены с выходами первой 26 и второй 27 групп блока 5 умножения соответственно, первый информационный вход блока 5 умножения соединен с выходом 19 регистра 2 делителя, информационный вход которого соединен с входом 15 данных устройства, выходы 28, 29 разности и заема вычитателя 6 соединены с первым и вторым информационными входами сумматора 7 соответственно, выход 32 сумматора 7 соединен с вторым информационным входом первого коммутатора 8, выход 31 старших разрядов заема вычитателя 6 соединен с информационным входом второго коммутатора 9, выход 22 которого соединен с входами делимого первой группы блока 4 деления усеченных чисел, выход делимого первой группы блока 4 деления усеченных чисел, выход 30 старших разрядов разности вычитателя 6 соединен с первым информационным входом третьего коммутатора 10, выход 36 старших разрядов делимого входа 15 данных устройства соединен с вторым информационным входом третьего коммутатора 10, выход 23 которого соединен с входами делимого второй группы блока 4 деления усеченных чисел, выход 37 старших разрядов делителя входа 15 данных устройства соединен с первым информационным входом четвертого коммутатора 11, выход 20 старших разрядов регистра 2 делителя соединен с вторым информационным входом четвертого коммутатора 11 , выход 21 которого соединен с входом делителя блока 4 деления усеченных чисел, выход которого соединен с информационным входом регистра 13 цифр частного, выход 33 старших разрядов сумматора 7 и первый управляющий вход первого коммутатора 8 соединен с входами элемента ИЛИ-НЕ 12, выход 34 элемента ИЛИ-НЕ 12 соединен с входом установки в нуль регистра 13 цифр частного, выход 25 которого соединен с вторым информационным входом блока 5 умножения и с входом младших разрядов сумматора 3 частного, выход которого является выходом 17 частного устройства, синхровходы регистра 1 делимого, регистра 2 делителя, сумматора 3 частного, регистра 13 цифр частотного и блока 14 микропрограммного управления соединены с входом 16 синхронизации устройства, первый выход 38 блока 14 микропрограммного управления соединен с первым и управляющими входами первого 8, третьего 10 и четвертого 11 коммутаторов, с входом разрешения записи регистра 2 делителя и с входом установки в нуль сумматора 3 частотного, второй выход 39 блока 14 микропрограммного управления соединен с вторыми управляющими входами первого 8, третьего 10 и четвертого 11 коммутаторов, с управляющим входом второго коммутатора 9 и с входом разрешения записи сумматора 3 частного, третий выход 40 блока 14 микропрограммного управления соединен с входом разрешения записи регистра 1 делимого и с входом разрешения записи регистра 13 цифр частного, Четвертый выход 41 блока 14 микропрограммного управления является выходом Сигнализации окончания деления устройст- 5 ра.The device data input 15 is connected to the first information input of the first switch 8, the output 35 of which is connected to the information input of the dividend register 1, the output 18 of which is connected to the input of the decreasing calculator 6, the inputs of the subtracted first and second groups of which are connected to the outputs of the first 26 and second 27 groups the multiplication unit 5, respectively, the first information input of the multiplication unit 5 is connected to the output 19 of the divider register 2, the information input of which is connected to the device data input 15, the outputs 28, 29 of the difference and borrowing of the subtractor 6 are connected to the first and second information inputs of the adder 7, respectively, the output 32 of the adder 7 is connected to the second information input of the first switch 8, the output 31 of the most significant bits of the loan of the subtractor 6 is connected to the information input of the second switch 9, the output 22 of which is connected to the inputs of the first dividend group of the truncated number division unit 4, the output of the dividend of the first group of the truncated division unit 4 numbers, the output of the 30 most significant digits the difference between the subtractor 6 is connected to the first information input of the third switch 10, the output 36 of the most significant bits of the divisible input 15 of the device data is connected to the second information input of the third switch 10, the output 23 of which is connected to the inputs of the divisible second group of the truncated number division unit 4, the output 37 of the most significant bits divider input 15 of the device data is connected to the first information input of the fourth switch 11, the output 20 of the most significant bits of the divider register 2 is connected to the second information input of the fourth switch 11, the output 21 of which is connected to the divider input of the truncated number dividing unit 4, the output of which is connected to the information input of the register 13 digits of the quotient, the output 33 of the most significant bits of the adder 7 and the first control input of the first switch 8 is connected to the inputs of the OR-NOT element 12, the output 34 of the OR-NOT element 12 is connected to the input of setting to zero of the register 13 digits of the quotient, the output 25 of which is connected to the second the information input of the multiplication unit 5 and with the input of the least significant bits of the private adder 3, the output of which is the output 17 of the private device, the sync inputs of the register 1 of the dividend, register 2 of the divisor, the adder 3 of the private, the register 13 of the frequency digits and the microprogram control unit 14 are connected to the synchronization input 16 of the device, the first output 38 of the block 14 microprogram control is connected to the first and control inputs of the first 8, third 10 and fourth 11 switches, to the input of the write permission of the divider register 2 and to the input of zeroing the frequency adder 3, the second output 39 of the microprogram control unit 14 is connected to the second control inputs of the first 8, the third 10 and fourth 11 switches, with the control input of the second switch 9 and with the input of the write permission of the adder 3 of the private, the third output 40 of the microprogram control unit 14 is connected to the input of the write permission of the register 1 of the dividend and to the input of the write permission of the register 13 digits of the private, the fourth output 41 block 14 microprogram control This is the output of the Signaling end of division of the device - 5.
Рассмотрим функциональное назначение и реализацию основных узлов и блоков Предлагаемого устройства для деления.Consider the functional purpose and implementation of the main units and blocks of the Proposed dividing device.
Регистры 1,2 делимого и делителя пред- 10 Назначены для хранения двоичных кодов Делимого (остатков) и делителя соответственно.Registers 1,2 dividend and divisor pre-10 Designed to store the binary codes of the dividend (remainders) and divisor, respectively.
Регистр 1 делимого (п + 1)-разрядный, из которых один разряд расположен слева 15 от запятой, а остальные - справа от запятой.Register 1 of the dividend (n + 1) -bit, of which one digit is located to the left of 15 from the comma, and the rest - to the right of the comma.
Регистр 2 делителя содержит η разрядов, которые все расположены справа от запятой.Divider register 2 contains η bits, which are all to the right of the decimal point.
В первом такте работы устройства в эти регистры загружаются η-разрядные двоичные коды дробных частей делимого и дели20 теля, которые являются правильными Положительными дробями, причем дробная часть делимого загружается в η разрядов регистра 1, расположенных справа от запятой, с одновременной записью нуля в разряд, расположенный слева от запятой.In the first clock cycle of the device, η-bit binary codes of the fractional parts of the dividend and divisor are loaded into these registers, which are correct Positive fractions, and the fractional part of the dividend is loaded into η bits of register 1, located to the right of the decimal point, while simultaneously writing zero to the bit, located to the left of the comma.
Предполагается, что все регистры устройства реализованы на двухтактных синхронных DV-триггерах. Запись информации в^регистры производится по синхроимпульсу при наличии разрешающего потенциала нр их V-входах.It is assumed that all registers of the device are implemented on push-pull synchronous DV flip-flops. Information is written to the ^ registers by a sync pulse in the presence of a resolving potential at their V-inputs.
Сумматор 3 частного предназначен для хранения частного. Он также участвует при выполнении операции деления в процессе формирования правильного значения частного. В первом такте работы устройства сумматор 3 обнуляется путем подачи импульса с входа 15 синхронизации устройству на его синхровход и разрешающего потенциала с первого выхода 38 блока 14 микропрограммного управления на вход разрешения установки в нуль сумматора 3 частного. Во всех других тактах работы устройства в сумматоре 3 частного накапливается значение частного. Для этого к значению частного, сформированному на предыдущих тактах работы устройства и сдвинутому на к -1 разрядов влево (в сторону старших разрядов), прибавляется значение к цифр частного, сформированных на выходе 25 регистра 13 цифр частного в текущем такте (старшая из к очередных цифр частного является корректирующей для частного, сформированного к данному моменту) в сумматоре 3 частного). Запись результата этого суммирования в сумматор 3 осуществляется по синхроимпульсу при наличии разрешающего потенциала на его входе разрешения записи, который соединен с вторым выходом 39 блока 14 микропрограммного управления. После завершения деления образованное в сумматоре 3 частное поступает на выход 17 частного устройства. Как и в устройстве-прототипе, сумматор 3 частного может быть реализован на комбинационном сумматоре и регистре.Private adder 3 is intended for private storage. He also participates in the division operation in the process of forming the correct value of the quotient. In the first cycle of operation of the device, the adder 3 is reset to zero by sending a pulse from the synchronization input 15 to the device to its sync input and the enabling potential from the first output 38 of the microprogram control unit 14 to the input for setting the adder 3 to zero. In all other clock cycles of the device, the quotient value is accumulated in the quotient adder 3. To do this, to the value of the quotient, formed at the previous clock cycles of the device and shifted by -1 bits to the left (towards the high-order bits), the value is added to the quotient digits formed at the output of the 25th register of 13 quotient digits in the current cycle (the highest of the next digits quotient is a correcting quotient for the quotient formed to this moment) in the adder 3 quotient). The recording of the result of this summation in the adder 3 is carried out by a sync pulse in the presence of a permitting potential at its input of the write permission, which is connected to the second output 39 of the microprogram control unit 14. After the completion of the division, the quotient formed in the adder 3 is fed to the output 17 of the private device. As in the prototype device, the quotient adder 3 can be implemented on a combination adder and a register.
Формирование к цифр частного в каждом такте работы устройства производится путем деления значения старших разрядов остатка на значение старших разрядов делителя, увеличенное на единицу младшего разряда. Увеличение значения старших разрядов делителя на единицу младшего разряда устраняет возможность получения в устройстве к частного с избытком. Пусть делимое X и делитель Υ - нормализованные двоичные дроби, т.е. 1/2 < X; Υ < 1 . Тогда в блоке 4 деления усеченных чисел производится деление значения старших (к + 3) разрядов неприведенного остатка, поступающего на входы делимого первой и второй групп блока 4 деления усеченных чисел с выходов 22 и 23 второго и третьего коммутаторов соответственно, на значение старших (к + 2) разрядов делителя, поступающее на входы делителя блока 4 деления усеченных чисел с выхода 21 четвертого коммутатора, увеличенное на единицу младшего разряда (увеличение на единицу осуществляется в блоке 4). При этом значение k-разрядного частного, получаемого на выходах 24 блока 4 может быть либо равно значению старших к разрядов частного, получаемого на выходах 24 блока 4 может быть либо равно значению старших к разрядов частного, получаемого при делении празрядных чисел, либо меньше его на единицу младшего разряда с весом 2-(к - 1). Предполагается, что блок 4 деления усеченным чисел реализован в виде однотактной делительной матрицы, выполняющей деление (к+3)-разрядного делимого, представленного в двухрядном коде, на (к + 2)-разрядный делитель по методу без восстановления остатка и без приведения переносов в остатках.The formation of the quotient k digits in each cycle of the device operation is performed by dividing the value of the most significant bits of the remainder by the value of the most significant bits of the divider, increased by one of the least significant bits. An increase in the value of the most significant bits of the divider per unit of the least significant bit eliminates the possibility of obtaining a quotient in the device with an excess. Let the dividend X and the divisor Υ be normalized binary fractions, i.e. 1/2 <X; Υ <1. Then, in block 4 for dividing the truncated numbers, the value of the upper (k + 3) digits of the unreduced remainder is divided, entering the inputs of the dividend of the first and second groups of the block 4 for dividing the truncated numbers from outputs 22 and 23 of the second and third switches, respectively, by the value of the senior (k + 2) the digits of the divider, supplied to the inputs of the divider block 4 for dividing the truncated numbers from the output 21 of the fourth switch, increased by one of the least significant bit (an increase by one is carried out in block 4). In this case, the value of the k-bit quotient obtained at the outputs 24 of block 4 can be either equal to the value of the most significant k-bits of the quotient obtained at the outputs 24 of block 4 can be either equal to the value of the most significant k-bits of the quotient obtained by dividing the digit numbers, or less by a unit of the least significant digit with a weight of 2- (k - 1). It is assumed that the block 4 for dividing truncated numbers is implemented in the form of a single-cycle dividing matrix that performs division of the (k + 3) -bit dividend, represented in a two-row code, by the (k + 2) -bit divisor by the method without restoring the remainder and without reducing the transfers to leftovers.
В блоке 5 умножения осуществляется перемножение k-разрядного частного, сформированного на выходе 25 регистра 13 цифр частного и поступающего на второй информационный вход блока 5 умножения и п4разрядного делителя, хранимого в регистре 2 делителя и поступающего на первый информационный вход блока 5 умножения с выхода 19 регистра 2 делителя. На выходах 26, 27 первой и второй групп блока 5 умножения образуется произведение в двухрядIn the multiplication unit 5, the multiplication of the k-bit quotient is carried out, formed at the output of the register 25 of 13 digits of the quotient and arriving at the second information input of the multiplication unit 5 and the n4-bit divider stored in the divider register 2 and arriving at the first information input of the multiplication unit 5 from the register output 19 2 divisors. At the outputs 26, 27 of the first and second groups of the multiplication unit 5, a product in two rows is formed
Ί ном коде (в виде двух чисел). Блок 5 умножения комбинационного типа и может быть разработан хорошо известными методами, например, в виде многослойной структуры без распространения переносов в слоях. Он может быть реализован также в виде совокупности n/k k-разрядных двоичных умножителей.Ί number code (in the form of two numbers). The multiplying unit 5 is of combinational type and can be designed by well known methods, for example, in the form of a multilayer structure without propagation of transfers in the layers. It can also be implemented as a set of n / k k-bit binary multipliers.
С помощью вычитателя 6 формируется значение очередного остатка в двухрядном коде (на выходе 28 вычитателя 6 образуется значение разности, а на выходе 29 - значение заема остатка). На вход уменьшаемого вычитателя 6 поступает с выхода 18 регистра 1 делимого значение текущего остатка, а на его входы вычитаемого первой и второй групп подается с выходов 26, 27 первой и второй групп блока 5 умножения значение произведения делителя на к цифр частного в двухрядном коде. Вычитатель 6 комбинационного типа без распространения заема. Предполагается, что вычитатель 6 в предлагаемом устройстве реализован на одноразрядных двоичных сумматорах. В этом случае на его выходах 28, 29 формируется остаток в двухрядном коде в виде суммы и переноса. Для этого необходимо информацию, поступающую на его входы вычитаемого с выходов 26, 27 первой и второй групп блока 5 умножения,проинвертировать с добавлением единиц в соответствующие весовые позиции.With the help of the subtractor 6, the value of the next remainder is formed in a two-row code (at the output 28 of the subtractor 6, the value of the difference is formed, and at the output 29 - the value of the loan of the remainder). The value of the current remainder is fed to the input of the reduced subtractor 6 from the output 18 of the register 1 of the dividend, and to its inputs of the subtracted first and second groups, from the outputs 26, 27 of the first and second groups of the multiplication unit 5, the value of the product of the divisor by k quotient digits in a two-row code. Subtractor 6 of the combinational type without spreading the loan. It is assumed that the subtractor 6 in the proposed device is implemented on one-bit binary adders. In this case, at its outputs 28, 29, the remainder is formed in a two-row code in the form of a sum and a transfer. To do this, it is necessary to invert the information supplied to its inputs of the subtracted from the outputs 26, 27 of the first and second groups of the multiplication unit 5, adding units to the corresponding weight positions.
Сумматор 7 осуществляет преобразование двухрядного кода очередного остатка, образованного на выходах 28, 29 вычитателя 6, в однорядный код. Он является сумматором комбинационного типа с распространением переноса. С выхода 32 сумматора 7 значение очередного остатка записывается в регистр 1 делимого со сдвигом на (к - 1) разрядов в сторону старших разрядов. На выход 33 старших разрядов сумматора 7 поступают старшие к разрядов результата (один разряд - слева от запятой, остальные - справа от запятой), образованного в сумматоре 7.The adder 7 converts the two-row code of the next remainder formed at the outputs 28, 29 of the subtractor 6 into a one-row code. It is a carry propagation combiner type. From the output 32 of the adder 7, the value of the next remainder is written into the register 1 of the dividend with a shift by (k - 1) digits towards the higher digits. At the output of the 33 most significant bits of the adder 7, the most significant bits of the result are received (one bit - to the left of the comma, the rest - to the right of the comma) formed in the adder 7.
С помощью первого коммутатора 8 осуществляется передача на информационные входы регистра 1 либо делимого с входа 15 данных устройств, когда на первом выходе 38 блока 14 микропрограммного управления сформирован сигнал логической единицы, либо однорядного кода очередного остатка, образованного на выходе 32 сумматора 7, когда на втором выходе 39 блока 14 микропрограммного управления сформирован сигнал логической единицы. Каждый разряд коммутатора 8 может быть реализован на элементе 2И-2ИЛИ.With the help of the first switch 8, the transfer to the information inputs of register 1 is carried out either divisible from the input 15 of these devices, when the signal of a logical unit is generated at the first output 38 of the microprogram control unit 14, or a one-row code of the next remainder formed at the output 32 of the adder 7, when the second the output 39 of the microprogram control unit 14 generates a signal of a logical unit. Each bit of the switch 8 can be implemented on the element 2I-2OR.
С помощью второго коммутатора 9 осуществляется передача на выходы делимого первой группы блока 4 деления усеченных чисел (к + 3)-разрядного кода (один разряд слева от запятой, а остальные - справа от запятой) либо нуля. На фиг. 2 приведена функциональная схема коммутатора 9. Он содержит (к + 3) логических элементов И 42.With the help of the second switch 9, the outputs of the divisible first group of the division unit 4 of truncated numbers (k + 3) -digit code (one bit to the left of the comma, and the rest - to the right of the comma) or zero. FIG. 2 shows a functional diagram of the switch 9. It contains (k + 3) logical elements AND 42.
Коммутатор 9 работает следующим образом. Если на его управляющем входе, который подключен к второму выходу 39 блока 14 микропрограммного управления, присутствует сигнал логической единицы, то на выход 22 коммутатора 9 с выхода 31 старших разрядов заема вычитателя 6 передается значение (к + 3) старших разрядов заема двухрядного кода очередного остатка (один разряд - слева от запятой, остальные справа от запятой). Если же на управляющем входе второго коммутатора 9 присутствует сигнал логического нуля, то на выходе 22 коммутатора 9 формируется ноль.Switch 9 operates as follows. If at its control input, which is connected to the second output 39 of the microprogram control unit 14, there is a signal of a logical unit, then the value (to + 3) of the most significant bits of the borrowing of the two-row code of the next remainder is transmitted to the output 22 of the switch 9 from the output 31 of the high-order bits of the loan of the subtractor 6 (one digit - to the left of the comma, the rest to the right of the comma). If a logical zero signal is present at the control input of the second switch 9, then zero is formed at the output 22 of the switch 9.
С помощью третьего коммутатора 10 осуществляется передача на входы делимого второй группы блока 4 деления усеченных чисел (к + 3)-разрядного кода (один разряд слева от запятой, а остальные - справа от запятой) с одного из двух каналов. На фиг. 3 приведена функциональная схема коммутатора 10. Он содержит (к + 3) логических элементов 2И-2ИЛИ 43.With the help of the third switch 10, the transmission of truncated numbers (k + 3) -digit code (one digit to the left of the comma, and the rest to the right of the comma) from one of the two channels is carried out to the inputs of the divisible second group of the division unit 4 of truncated numbers (k + 3). FIG. 3 shows a functional diagram of the switch 10. It contains (k + 3) logic elements 2I-2OR 43.
Коммутатор 10 работает следующим образом. Если на его первом управляющем входе, который подключен к первому выходу 38 блока 14 программного управления, присутствует сигнал единицы, то на его выход 23 коммутатора 10 с выхода 36 старших разрядов делимого входа 15 данных устройства подаются (к + 3) старших разрядов делимого (один разряд - слева от запятой, остальных справа). Если Же на второй управляющий вход коммутатора 10, который подключен к второму выходу 39 блока 14 микропрограммного управления, поступает сигнал логической единицы, то на выход 23 коммутатора 10 с выхода 30 старших разрядов разности вычитателя 6 передается значение (к + 3) старших разрядов разности двухрядного кода очередного остатка (один разряд - слева от запятой, остальные справа от запятой). Заметим, что с выхода 36 можно принимать (к + 2) старших разрядов делимого, так как в первом такте к цифр частного формируются по одному коду остатка.Switch 10 operates as follows. If at its first control input, which is connected to the first output 38 of the program control unit 14, there is a unity signal, then at its output 23 of the switch 10 from the output 36 of the most significant bits of the divisible input 15 of the device data (to + 3) the most significant bits of the dividend (one category - to the left of the comma, the rest to the right). If a logical unit signal is sent to the second control input of the switch 10, which is connected to the second output 39 of the microprogram control unit 14, then the value (to + 3) of the most significant bits of the difference the code of the next remainder (one digit - to the left of the comma, the rest to the right of the comma). Note that from the output 36 it is possible to receive (k + 2) the most significant digits of the dividend, since in the first clock cycle, the quotient digits are formed by one remainder code.
С помощью четвертого коммутатора 11 осуществляется передача на входы делителя блока 4 деления усеченных чисел значения (к + 2) старших разрядов кода делителя (все разряды находятся справа от запятой) либо с выхода 37 старших разрядов делителя входа 15 данных устройства, либо с выходр 20 регистра 2. На фиг. 4 приведена функциональная схема коммутатора 11. Он содержит (к + 2) логических элементов 2И2ИЛИ 44.With the help of the fourth switch 11, the values (k + 2) of the most significant digits of the divider code (all digits are to the right of the decimal point) are transmitted to the inputs of the divider block 4 for dividing the truncated numbers, either from the output of the 37 most significant digits of the divider of input 15 of the device data, or from the output 20 of the register 2. In FIG. 4 shows a functional diagram of the switch 11. It contains (k + 2) logic elements 2I2OR 44.
Коммутатор 11 работает следующим образом. Если на его первом управляющем входе, который подключен к выходу 38 блока 14 микропрограммного управления, присутствует сигнал логической единицы, то на выход 21 коммутатора 11 с выхода 37 старших разрядов делителя входа 15 данных устройства передается значение (к + 2) старших разрядов делителя (все разряды находятся справа от запятой). Если же на второй управляющий вход коммутатора 11, которой подключен к второму выходу 39 блока 14 микропрограммного управления, поступает 20 старших разрядов регистра 2 делителя передается значение (к + 2) старших разрядов делителя (все разряды справа от запятой).Switch 11 operates as follows. If at its first control input, which is connected to the output 38 of the microprogram control unit 14, there is a signal of a logical unit, then the value (to + 2) of the most significant bits of the divider (all digits are to the right of the comma). If the second control input of the switch 11, which is connected to the second output 39 of the microprogram control unit 14, receives the 20 high-order bits of the divider register 2, the value (to + 2) of the high-order bits of the divider (all the digits to the right of the decimal point) is transmitted to the second control input of the switch 11.
Так как в предлагаемом устройстве при формировании к цифр частного используются) только старшие разряды остатка, не приведенного к однорядному коду, то становится возможным образование неправильного значения к цифр частного.Since in the proposed device, when forming the quotient digits, only the upper digits of the remainder, not reduced to a single-row code, are used, it becomes possible to form an incorrect value for the quotient digits.
Так, например, если значение старших (к + 3) разрядов приведенного остатка, полученного на выходе 32 сумматора 7, равно нулю, то значение тех же старших разрядов остатка на выходах 30,31 старших разрядов рёзности и заема вычитателя 6 может быть меньше, чем нуль на единицу младшего разряда, т.к. значение 1, 11.... 1. Для исключения возможности получения в устройстве неверного значения к цифр частного в нем предусмотрена в этом случае блокировка (формирование значения к цифр частного, равного нулю) записи цифр частного, полуденных на выходе 24 блока 4 деления усечённых чисел путем подачи на вход установки в нуль регистра 13 цифр частного уровня логической единицы с выхода 34 элемента ИЛИ-НЕ 12. Уровень логической единицы на его выходе 34 устанавливается в трм случае, если значение к старших разрядов однорядного кода остатка, полученного на выходе 33 старших разрядов сумматора 7, равно нулю и одновременно на входе элемента ИЛИ-НЕ 12, который подключен к пёрвому выходу 38 блока 14 микропрограммного управления, присутствует сигнал логического нуля. Во всех других случаях осуществляется запись в регистр 13 цифр частного, полученных на выходе 24 блока 4 деления усеченных чисел.So, for example, if the value of the most significant (k + 3) bits of the reduced remainder obtained at the output 32 of the adder 7 is equal to zero, then the value of the same most significant bits of the remainder at the outputs 30,31 of the most significant bits of the readiness and borrowing of the subtractor 6 may be less than zero per unit of the least significant bit, because value 1, 11 .... 1. To exclude the possibility of obtaining in the device an incorrect value for the quotient digits, it provides in this case the blocking (formation of the value for quotient digits equal to zero) of the quotient digits, midday at the output of 24 block 4 divisions of truncated numbers by feeding 13 digits of the private level of a logical unit from the output 34 of the OR-NOT element 12 to the input of the register setting to zero. bits of the adder 7 is equal to zero and at the same time at the input of the OR-NOT element 12, which is connected to the first output 38 of the microprogram control unit 14, there is a logical zero signal. In all other cases, 13 digits of the quotient obtained at the output of 24 of the block 4 dividing truncated numbers are written into the register.
Регистр 13 цифр частного предназначен для временного хранения в течение одного такта сформированных на выходе 24 блока деления усеченных чисел к очередных цифр частного. Запись информации в него производится по синхроимпульсу при наличии на его входе разрешения записи сигнала логической единицы, который подключен к третьему выходу 40 блока 14 микропрограммного управления. Обнуление регистра 13 цифр частного производится также по синхроимпульсу при наличии на его входе установки в нуль сигнала логической единицы, подаваемого с выхода 34 элемента ИЛИ-НЕ 12.The register of 13 digits of the quotient is intended for temporary storage during one clock cycle of the 24 block of dividing the truncated numbers to the next digits of the quotient formed at the output. Information is recorded in it by a sync pulse if there is a permission to write a logical unit signal at its input, which is connected to the third output 40 of the microprogram control unit 14. Zeroing of the register of 13 digits of the quotient is also carried out by a sync pulse if there is a logical unit signal at its input set to zero, supplied from the output 34 of the OR-NOT element 12.
В случае наличия сигналов логической единицы как на входе разрешения записи, так и на входе установки в нуль регистра 13 цифр частного по синхроимпульсу, происходит обнуление регистра. 13 цифр частного, так как приоритет у входа установки в нуль выше, чем у входа разрешения записи.In the case of the presence of logical unit signals both at the write enable input and at the input of setting the register 13 digits of the quotient to zero by the sync pulse, the register is reset. 13 digits private, since the priority of the set to zero input is higher than that of the write enable input.
Блок 14 микропрограммного управления координирует работу всех узлов и блоков устройства при выполнении в нем операции деления чисел. Как и в .устройстве-прототипе он может быть реализован различными методами. На фиг. 5 приведена реализация блока 14 микропрограммного управления на счетчике 45 и памяти 46 микрокоманд. Счетчик 45 накапливающего типа и предназначен для естественной адресации микрокоманд. Вход счета счетчика 45 соединен с входом 16 синхронизации устройства. В качестве памяти 46 микрокоманд может быть применена быстродействующая постоянная память емкостью (М + 2) -4 бит, где М = ] - [ - число тактов работы устройства, в течение которых в устройстве формируемся [М · (к - 1) + 1] цифр частного; ] X [ - ближайшее целое, большее либо равное X. В самом начале работы устройства счетчик 45 устанавливается в некоторое исходное состояние, например, в 0 (на фиг.The microprogram control unit 14 coordinates the operation of all units and units of the device when the operation of dividing numbers is performed in it. As with the. Prototype device, it can be implemented in a variety of ways. FIG. 5 shows the implementation of the microprogram control unit 14 on the counter 45 and the microinstruction memory 46. The counter 45 is an accumulative type and is intended for the natural addressing of microinstructions. The counter input of the counter 45 is connected to the synchronization input 16 of the device. A high-speed read-only memory with a capacity of (M + 2) -4 bits, where M =] - [is the number of clock cycles of the device during which [M · (k - 1) + 1] private digits; ] X [is the nearest integer greater than or equal to X. At the very beginning of the device operation, the counter 45 is set to some initial state, for example, to 0 (in Fig.
цепь установки счетчика 45 в исходное состояние не показана).the circuit for resetting the counter 45 is not shown).
Устройство для деления работает следующим образом.The dividing device works as follows.
Пусть в исходном состоянии на входе 15 данных устройства присутствует без значков η-разрядные двоичные коды делителя Y и делимого X (коды мантисс делителя и делимого), а счетчик 45 блока 14 микропрограммного управления установлен в исходное нулевое состояние. По содержимому счетчика 45, которое служит адресом обращения к памяти 46 микрокоманд блока микропрограммного управления, из памяти 46 считывается микрокоманд 1, которой соответствуют управляющие сигналы У38, У40 (фиг. 6).Let in the initial state at the device data input 15 there are η-bit binary codes of the divisor Y and the dividend X (codes of the mantissa of the divisor and the dividend) without icons, and the counter 45 of the microprogram control unit 14 is set to the initial zero state. According to the contents of the counter 45, which serves as the address to the memory 46 of microinstructions of the microprogram control unit, microinstructions 1 are read from the memory 46, which correspond to the control signals U38, U40 (Fig. 6).
В результате этого на первом 38 и третьем 40 выходах блока 14 микропрограммного управления соответственно устанавливаются уровни логической единицы, под действием которых первый коммутатор 8 пропускает на информационные входы регистра 1 значение делимого X с входа 15 данных устройства, второй коммутатор 9 обеспечивает на входах делимого первой группы блока 4 деления усеченных чисел нули, третий коммутатор 10 пропускает на входы делимого второй группы блока 4 деления усеченных чисел значение старших разрядов делимого с выхода 36 входа 15 данных устройства, четвертый коммутатор 11 пропускает на вход делителя блока 4 деление усеченных чисел значение старших разрядов делителя с выхода 37 входа 15 данных устройства, на выходе 24 блока 4 деления усеченных чисел формируется значение Z1 самых старших к цифр частного, регистры 1, 2 и 13 подготовлены к приему информации, так как на входах разрешения записи этих регистров присутствуют сигналы логической единицы и на выходе 34 элемента ИЛИ-HE формируется сигнал логического нуля, который запрещает обнуление регистра 13 в первом такте работы устройства, сумматор 3 частного настроен на обнуление, так как на входе установлен в нуль, присутствует сигнал логической единицы, сформированный на выходе 38 блока 14. С приходом первого импульса на вход 16 синхронизации устройства осуществляется запись двоичных кодов делимого X и делителя Y в регистры 1 и 2 соответственно, в регистр 13 - значения Z1 самых старших к цифр частного Z и обнуление сумматора 3 частотного. Счетчик 45 блока 14 микропрограммного управления устанавливается в состояние 1. После завершения действия первого импульса на входе 16 синхронизации устройства подготовительный такт работы устройства заканчивается и выполняется М аналогичных тактов деления, в течение которых формируется [М · (к-1)+1]двоичных цифр частного.As a result, at the first 38 and third 40 outputs of the microprogram control unit 14, the levels of logical units are respectively set, under the action of which the first switch 8 passes to the information inputs of register 1 the value of the dividend X from the device data input 15, the second switch 9 provides at the inputs of the dividend of the first group block 4 dividing truncated numbers zeros, the third switch 10 passes to the inputs of the divisible second group of the block 4 dividing truncated numbers the value of the most significant digits divisible from the output 36 of the input 15 of the device data, the fourth switch 11 passes the division of the truncated numbers to the input of the divider of block 4 the value of the most significant digits of the divider c output 37 of the input 15 of the device data, at the output 24 of the block 4 dividing the truncated numbers, the value Z1 of the most senior to the quotient digits is formed, registers 1, 2 and 13 are prepared for receiving information, since the signals of a logical unit are present at the inputs of permission to write these registers and at the output 34 elements OR-HE forms a logical zero signal is generated, which prohibits the zeroing of register 13 in the first clock cycle of the device, the adder 3 of the quotient is set to zero, since the input is set to zero, there is a logical one signal generated at the output 38 of block 14. With the arrival of the first pulse at input 16 synchronization of the device, the binary codes of the dividend X and the divisor Y are written into registers 1 and 2, respectively, into register 13 - the values Z1 of the most senior digits of the quotient Z and zeroing of the frequency adder 3. The counter 45 of the microprogram control unit 14 is set to state 1. After the completion of the first pulse at the device synchronization input 16, the preparatory cycle of the device operation ends and M similar division cycles are performed, during which [M · (k-1) +1] binary digits are formed private.
Во втором такте (в первом из М аналогичных тактов деления) работы устройства на втором 39 и третьем 40 выходах блока 14 микропрограммного управления образуются сигналы логической единицы (см. микропрограмму на фиг. 6). Под действием этих управляющих сигналов в устройстве выполняются следующие действия. С помощью блока 5 умножения формируется в двухрядном коде значение произведения Y · Z1, а с помощью вычитателя 6 и сумматора 7 на выходе 32 последнего образуется значение первого остатка X - Y · Z1 в однорядном коде, которое далее через первый коммутатор 8 передается на информационные входы регистра 1 со сдвигом на (к - 1) разрядов в направлении старших разрядов. По значению старших разрядов заема и разности, образованных на выходах 31,30 вычитателя 6, соответственно и поступающих через второй 9 и третий 10 коммутаторы на входы делимого первой и второй групп блока 4 деления усеченных чисел соответственно и по значению старших разрядов делителя, поступающих на входы делителя блока 4 деления усеченных чисел с выхода 21 четвертого коммутатора 11, формируется значение Z2 следующих к двоичных цифр частного. Старшие k-разрядов образованного в сумматоре 7 результата поступают с выхода 33 старших разрядов сумматора 7 на входы элемента ИЛИ-НЕ 12. Если значение старших разрядов сумматора 7 на входы элемента ИЛИ-НЕ 12. Если значение старших к разрядов сумматора 7 равно нулю, то на выходе 34 элемента ИЛИ-НЕ 12 формируется сигнал логической единицы (так как на первом выходе 38 блока 14 микропрограммного управления сформирован сигнал логического нуля), в противном случае - сигнал логического нуля. Сигнал с выхода 34 элемента ИЛИ-НЕ 12 поступает на вход установки в нуль регистра 13 цифр частного, Если этот сигнал соответствует уровню логического нуля, то в качестве значения Z2 следующих двоичных цифр частного используется значение к цифр частного, образованных на выходе 24 блока 4 деления усеченных чисел, а если этот сигнал соответствует уровню логической единицы, то происходит блокировка записи в регистр 13 к цифр частного, поступающих с выхода 24 блока деления усеченных чисел, путем обнуления регистра 13 цифр частного (в устройстве в этом случае иСпользуется значение Z2 следующих к двоичных цифр частного Z, равное нулю). К содержимому сумматора 3 частного (в этом такте содержимое сумматора 3 еще равно нулю), сдвинутому на (к-1) разрядов в сторону его старших разрядов, осуществляется прибавление значения Z1 частного Z, которое хранится в течение второго такта в регистре 13 цифр частного и подается на входы младших разрядов сумматора 3 частного. Регистр 1 и сумматор 3 частного подготовлены к приему информа13 ции, а регистр 13 цифр частного в зависимости от значения сигнала на его входе установки в нуль, подготовлен к приему информации либо к обнулению. С приходом второго импульса синхронизации на вход 16 синхронизации устройства осуществляется запись в регистр 1 делимого значения первого остатка, в младшие разряды сумматора 3 частного записывается значение Z1 самых старших к двоичных цифр частного Z, в регистр 13 записывается значение Z2 очередных к двоичных цифр частного Z, счетчик 45 блока 14 микропрограммного управления переводится в состояние 2. На этом второй такт работы устройства заканчивается и далее выполняется еще М - 1 аналогичных тактов, в течение которых (включая рторой такт) формируется в сумматоре 3 частного [М · (к - 1) + 1] двоичных цифр частного Z. В каждом из этих тактов старшая цифра из к очередных двоичных цифр частного, образованных на выходе 25 регистра 13 цифр частного и поступающих На входы младших разрядов сумматора 3 частного, подсуммируются к младшему разряду содержимого сумматора 3, сдвинутому на (к - 1) разрядов в сторону его Старших разрядов.In the second cycle (in the first of M similar division cycles) of the device operation at the second 39 and third 40 outputs of the microprogram control unit 14, signals of a logical unit are generated (see the microprogram in Fig. 6). The device performs the following actions under the influence of these control signals. With the help of the multiplication unit 5, the value of the product Y Z1 is formed in the two-row code, and with the help of the subtractor 6 and the adder 7 at the output 32 of the latter, the value of the first remainder X - Y Z1 is formed in the one-row code, which is then transmitted through the first switch 8 to the information inputs register 1 with a shift of (k - 1) bits in the direction of the higher bits. By the value of the most significant bits of the loan and the difference formed at the outputs 31,30 of the subtractor 6, respectively, and coming through the second 9 and third 10 switches to the inputs of the divisible first and second groups of the block 4 for dividing the truncated numbers, respectively, and by the value of the most significant bits of the divisor entering the inputs divider block 4 dividing truncated numbers from the output 21 of the fourth switch 11, the value Z2 of the following to the binary digits of the quotient is formed. The most significant k-bits of the result formed in the adder 7 are received from the output 33 of the most significant bits of the adder 7 to the inputs of the OR-NOT element 12. If the value of the higher-order bits of the adder 7 to the inputs of the OR-NOT element 12. If the value of the higher k bits of the adder 7 is zero, then at the output 34 of the OR-NOT element 12, a logical unit signal is generated (since a logical zero signal is generated at the first output 38 of the microprogram control unit 14), otherwise a logical zero signal. The signal from the output 34 of the OR-NOT element 12 is fed to the input of setting to zero the register of 13 digits of the quotient.If this signal corresponds to a logical zero level, then the value k of the quotient digits formed at the output 24 of the 4 division block is used as the value of Z2 of the next binary digits of the quotient of truncated numbers, and if this signal corresponds to the level of a logical unit, then writing to register 13 to the quotient digits coming from the output 24 of the truncated number dividing unit is blocked by zeroing the register 13 digits of the quotient (in the device, in this case, the Z2 value of the following to binary digits of the quotient Z, equal to zero). To the content of the adder 3 of the quotient (in this cycle the content of the adder 3 is still zero), shifted by (k-1) digits towards its high-order bits, the value Z1 of the quotient Z is added, which is stored during the second cycle in the register 13 digits of the quotient and fed to the inputs of the least significant bits of the private adder 3. Register 1 and adder 3 of the quotient are prepared for receiving information, and the register of 13 digits of the quotient, depending on the value of the signal at its input, is set to zero, prepared for receiving information or for zeroing. With the arrival of the second synchronization pulse at the synchronization input 16 of the device, the divisible value of the first remainder is written to register 1, the value Z1 of the most significant binary digits of the quotient Z is written to the lower bits of the adder 3 of the quotient, the value Z2 of the next binary digits of the quotient Z is written to register 13, counter 45 of the microprogram control unit 14 is transferred to state 2. At this, the second cycle of the device operation ends and then M - 1 similar cycles are performed, during which (including the second cycle) the quotient [M · (k - 1) + 1] binary digits of the quotient Z. In each of these clock cycles, the most significant digit from the next binary digits of the quotient, formed at the output of register 25 of 13 quotient digits and arriving at the inputs of the least significant bits of adder 3 of the quotient, are summed to the least significant bit of the contents of adder 3, shifted by ( k - 1) discharges towards its Senior discharges.
После завершения (М + 1)-го такта на четвертом выходе 41 блока 14 микропрограммного управления появляется сигнал логической единицы, сигнализирующий об Окончании в устройстве операции деления чисел.After the completion of the (M + 1) th cycle, a logical unit signal appears at the fourth output 41 of the microprogram control unit 14, signaling the end of the number division operation in the device.
Итак, технико-экономическое преимущество предлагаемого устройства для деления в сравнении с устройством-прототипом Состоит в меньшем количестве используемого оборудования (на 1-7%).So, the technical and economic advantage of the proposed fission device in comparison with the prototype device Consists of a smaller amount of equipment used (by 1-7%).
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU904863265A SU1803913A1 (en) | 1990-09-03 | 1990-09-03 | Division device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU904863265A SU1803913A1 (en) | 1990-09-03 | 1990-09-03 | Division device |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1803913A1 true SU1803913A1 (en) | 1993-03-23 |
Family
ID=21534402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU904863265A SU1803913A1 (en) | 1990-09-03 | 1990-09-03 | Division device |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1803913A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EA036447B1 (en) * | 2017-07-18 | 2020-11-11 | Сахыбай Тынымбаев | Fast division unit |
-
1990
- 1990-09-03 SU SU904863265A patent/SU1803913A1/en active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EA036447B1 (en) * | 2017-07-18 | 2020-11-11 | Сахыбай Тынымбаев | Fast division unit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US3691359A (en) | Asynchronous binary multiplier employing carry-save addition | |
US3610906A (en) | Binary multiplication utilizing squaring techniques | |
US4868777A (en) | High speed multiplier utilizing signed-digit and carry-save operands | |
EP0416869B1 (en) | Digital adder/accumulator | |
US3249745A (en) | Two-register calculator for performing multiplication and division using identical operational steps | |
US3842250A (en) | Circuit for implementing rounding in add/subtract logic networks | |
SU1803913A1 (en) | Division device | |
US5268858A (en) | Method and apparatus for negating an operand | |
US3373269A (en) | Binary to decimal conversion method and apparatus | |
GB882751A (en) | Error detection system | |
US3019977A (en) | Parallel-operating synchronous digital computer capable of performing the calculation x+y. z automatically | |
US4047011A (en) | Modular apparatus for binary quotient, binary product, binary sum and binary difference generation | |
SU1667059A2 (en) | Device for multiplying two numbers | |
SU1417010A1 (en) | Number dividing device | |
RU2018933C1 (en) | Divider | |
RU1783523C (en) | Device for dividing | |
RU2018934C1 (en) | Divider | |
SU1767497A1 (en) | Divider | |
SU1735844A1 (en) | Device for dividing numbers | |
SU1357946A1 (en) | Device for division | |
SU408305A1 (en) | DEVICE FOR EXTRACTING SQUARE ROOT | |
SU1728862A1 (en) | Divider | |
SU1478212A1 (en) | Divider | |
SU1425657A1 (en) | Dividing device | |
SU1247863A1 (en) | Matrix device for dividing |