RU2595486C1 - APPARATUS FOR CALCULATING arctg(y/x) FUNCTION - Google Patents
APPARATUS FOR CALCULATING arctg(y/x) FUNCTION Download PDFInfo
- Publication number
- RU2595486C1 RU2595486C1 RU2015136093/08A RU2015136093A RU2595486C1 RU 2595486 C1 RU2595486 C1 RU 2595486C1 RU 2015136093/08 A RU2015136093/08 A RU 2015136093/08A RU 2015136093 A RU2015136093 A RU 2015136093A RU 2595486 C1 RU2595486 C1 RU 2595486C1
- Authority
- RU
- Russia
- Prior art keywords
- inputs
- outputs
- register
- output
- shift register
- Prior art date
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к области вычислительной техники и может быть применено в специализированных ЭВМ, использующих двоичную систему счисления с целочисленным форматом представления исходных данных.The invention relates to the field of computer technology and can be applied in specialized computers using a binary number system with an integer representation format of the source data.
Известно устройство [Гречишников А.Н., Лутай В.Н., Челбасов Н.Г. Использование операций над векторами при выполнении быстрого преобразования Фурье, "Автометрия", №3, 1973] для вычисления функции arctg (y/x) по координатным составляющим у и х, содержащее сумматоры-вычитатели, сдвиговые регистры, логические элементы И.A device is known [Grechishnikov A.N., Lutay V.N., Chelbasov N.G. The use of operations on vectors when performing a fast Fourier transform, "Avtometriya", No. 3, 1973] to calculate the function arctg (y / x) by the coordinate components y and x, containing adders-subtractors, shift registers, logical elements I.
Его недостатком является низкое быстродействие при большой разрядности вычислительного устройства.Its disadvantage is the low speed with a large capacity of the computing device.
Наиболее близким техническим решением к предлагаемому изобретению является устройство для вычисления функции arctg (y/x) [А.с. 748418 СССР, 1980], содержащее блок управления, три накопительных сдвиговых регистра, регистр записи, два сдвиговых регистра и три сумматора-вычитателя, выходы которых соединены с первыми входами соответствующих накопительных сдвиговых регистров, выход знакового разряда первого накопительного сдвигового регистра соединен с первым входом блока управления, первый, второй, третий, четвертый, пятый и шестой выходы блока управления подключены соответственно к управляющим входам первого, второго и третьего накопительных сдвиговых регистров, первого, второго сдвиговых регистров и регистра записи, выходы младшего разряда первого и второго накопительного регистра соединены с первыми входами соответственно первого и второго сумматоров-вычитателей, второй вход второго сумматора-вычитателя подключен к выходу младшего разряда первого сдвигового регистра, соединенного входом с выходом первого накопительного сдвигового регистра, а выход второго накопительного сдвигового регистра соединен с входом второго сдвигового регистра, выход младшего разряда которого соединен со вторым входом первого сумматора-вычитателя, управляющий вход которого соединен с седьмым выходом блока управления и управляющими входами второго и третьего сумматоров-вычитателей, первый и второй входы третьего сумматора-вычитателя соединены соответственно с выходами младших разрядов третьего накопительного сдвигового регистра и регистра записи, элементы И и шифратор, причем выходы одноименных разрядов первого накопительного сдвигового регистра и регистра записи соединены соответственно с первыми и вторыми входами соответствующих элементов И, третьи входы которых соединены с восьмым выходом блока управления, выходы элементов И подключены ко входам шифратора, выходы которого соединены с соответствующими вторыми ÷(n+1)-м входами блока управления.The closest technical solution to the proposed invention is a device for calculating the function arctg (y / x) [A.S. 748418 USSR, 1980], comprising a control unit, three storage shift registers, a write register, two shift registers and three adders-subtracters, the outputs of which are connected to the first inputs of the corresponding storage shift registers, the sign output of the first storage shift register is connected to the first input of the block control, the first, second, third, fourth, fifth and sixth outputs of the control unit are connected respectively to the control inputs of the first, second and third cumulative shift registers, per of the second, second shift registers and the write register, the low-order outputs of the first and second accumulative register are connected to the first inputs of the first and second adders-subtracters respectively, the second input of the second adder-subtractor is connected to the low-order output of the first shift register connected to the input of the first accumulator the shift register, and the output of the second cumulative shift register is connected to the input of the second shift register, the low-order output of which is connected to the second input the house of the first adder-subtractor, the control input of which is connected to the seventh output of the control unit and the control inputs of the second and third adders-subtracters, the first and second inputs of the third adder-subtractor are connected respectively to the outputs of the least significant bits of the third cumulative shift register and write register, elements And and an encoder, and the outputs of the same name bits of the first cumulative shift register and the write register are connected respectively to the first and second inputs of the corresponding elements in AND, the third inputs of which are connected to the eighth output of the control unit, the outputs of the elements AND are connected to the inputs of the encoder, the outputs of which are connected to the corresponding second ÷ (n + 1) -th inputs of the control unit.
Недостатком этого устройства является невозможность с его помощью вычисления функции arctg (y/x) в случае, если x и(или) y имеют отрицательный знак. Это не позволяет, например, вычислять аргумент комплексных чисел.The disadvantage of this device is the impossibility of using it to calculate the arctg (y / x) function if x and (or) y have a negative sign. This does not allow, for example, to calculate the argument of complex numbers.
Задачей настоящего изобретения является расширение функциональных возможностей вычисления функции arctg (y/x) при отрицательных значениях входных данных.The objective of the present invention is to expand the functionality of the calculation function arctg (y / x) with negative values of the input data.
Технический результат настоящего изобретения - возможность вычисления аргумента комплексных чисел (в т.ч. при x<0 и/или y<0).The technical result of the present invention is the ability to calculate the argument of complex numbers (including when x <0 and / or y <0).
Технический результат достигается предложенным устройством для вычисления функции arctg (y/x), которое содержит блок управления, три накопительных сдвиговых регистра, регистр записи, два сдвиговых регистра и три сумматора-вычитателя, выходы которых соединены с первыми входами соответствующих накопительных сдвиговых регистров, выход знакового разряда первого накопительного сдвигового регистра соединен с первым входом блока управления, первый, второй, третий, четвертый, пятый и шестой выходы блока управления подключены соответственно к управляющим входам первого, второго и третьего накопительных сдвиговых регистров, первого, второго сдвиговых регистров и регистра записи, выходы младшего разряда первого и второго накопительного сдвигового регистра соединены с первыми входами соответственно первого и второго сумматоров-вычитателей, второй вход второго сумматора-вычитателя подключен к выходу младшего разряда первого сдвигового регистра, а выход второго накопительного сдвигового регистра с входом второго сдвигового регистра, выход младшего разряда которого соединен с вторым входом первого сумматора-вычитателя, управляющий вход которого соединен с седьмым выходом блока управления и управляющими входами второго и третьего сумматоров-вычитателей, первый и второй входы третьего сумматора-вычитателя соединены соответственно с выходами младших разрядов третьего накопительного сдвигового регистра и регистра записи, а также содержит элементы И и шифратор, причем выходы одноименных разрядов первого накопительного сдвигового регистра и регистра записи соединены соответственно с первыми и вторыми входами соответствующих элементов И, третьи входы которых соединены с восьмым выходом блока управления, выходы элементов И подключены ко входам шифратора, выходы которого соединены с соответствующими вторыми ÷(n+1)-м входами блока управления, кроме того, в него дополнительно введены логико-коммутационный блок и его связи с другими узлами и блоками устройства.The technical result is achieved by the proposed device for calculating the function arctan (y / x), which contains a control unit, three cumulative shift registers, a write register, two shift registers and three adders-subtracters, the outputs of which are connected to the first inputs of the corresponding cumulative shift registers, the sign output the discharge of the first cumulative shift register is connected to the first input of the control unit, the first, second, third, fourth, fifth and sixth outputs of the control unit are connected respectively to branching inputs of the first, second and third storage shift registers, first, second shift registers and write register, the low-order outputs of the first and second storage shift register are connected to the first inputs of the first and second adders-subtracters respectively, the second input of the second adder-subtractor is connected to the output the least significant bit of the first shift register, and the output of the second cumulative shift register with the input of the second shift register, the least significant bit output of which is connected to the second input of the first adder-subtractor, the control input of which is connected to the seventh output of the control unit and the control inputs of the second and third adders-subtracters, the first and second inputs of the third adder-subtractor are connected respectively to the outputs of the least significant bits of the third cumulative shift register and write register, as well as contains the elements And and the encoder, and the outputs of the same name bits of the first cumulative shift register and write register are connected respectively to the first and second inputs and the corresponding AND elements, the third inputs of which are connected to the eighth output of the control unit, the outputs of the elements AND are connected to the inputs of the encoder, the outputs of which are connected to the corresponding second ÷ (n + 1) -th inputs of the control unit, in addition, logic and switching unit and its communication with other nodes and units of the device.
Введение логико-коммутационного блока и его связей с узлами и блоками прототипа позволило расширить функциональные возможности устройства за счет его способности вычислять функцию arctg (y/x) в случае любых знаков (+ или -) входных данных x и y. Это является новым техническим решением в технике цифровых вычислительных устройств, поскольку результаты проведенного заявителем анализа аналогов и прототипа не позволило выявить признаки, тождественные всем существенным признакам данного изобретения.The introduction of the logical-switching unit and its connections with the nodes and blocks of the prototype allowed expanding the functionality of the device due to its ability to calculate the function arctg (y / x) in the case of any signs (+ or -) of the input data x and y. This is a new technical solution in the technology of digital computing devices, since the results of the analysis of the analogues and the prototype by the applicant did not allow to identify signs that are identical to all the essential features of this invention.
Предложенное устройство имеет изобретательский уровень, так как из опубликованных научных данных и существующих технических решений явным образом не следует, что заявляемая совокупность блоков, узлов и связей между ними позволяют расширить функциональные возможности устройства, в частности вычисление функции arctg (y/x) при разных значениях (+ или -) исходных величин.The proposed device has an inventive step, since it does not explicitly follow from published scientific data and existing technical solutions that the claimed combination of blocks, nodes, and the connections between them allow expanding the device’s functionality, in particular, calculating the arctg (y / x) function for different values (+ or -) of the original quantities.
Предложенное устройство для вычисления arctg (y/x) промышленно применимо, поскольку его техническая реализация возможна с использованием типовых элементов микроэлектронной техники (интегральных логических элементов).The proposed device for calculating arctg (y / x) is industrially applicable, since its technical implementation is possible using typical elements of microelectronic technology (integrated logic elements).
На фиг. 1 представлена структурная схема устройства для вычисления функции arctg (y/x), а на фиг. 2 - функциональная схема логико-коммутационного блока этого устройства.In FIG. 1 is a block diagram of a device for calculating the arctg (y / x) function, and FIG. 2 is a functional diagram of a logic-switching unit of this device.
Заявленное устройство содержит блок управления 11, три накопительных сдвиговых регистра 4, 5, 6, регистр записи 9, два сдвиговых регистра 7, 8 и три сумматора-вычитателя 1, 2, 3, выходы которых соединены с первыми входами соответствующих накопительных сдвиговых регистров 4, 5, 6, выход знакового разряда 12 первого накопительного сдвигового регистра 4 соединен с первым входом блока управления 11, первый, второй, третий, четвертый, пятый и шестой выходы 19 блока управления 11 подключены соответственно к управляющим входам первого, второго и третьего накопительных сдвиговых регистров 4, 5, 6, первого, второго сдвиговых регистров 7, 8 и регистра записи 9, выходы младшего разряда первого и второго накопительных сдвиговых регистров 4, 5 соединены с первыми входами соответственно первого и второго сумматоров-вычитателей 1, 2, второй вход второго сумматора-вычитателя 2 подключен к выходу младшего разряда первого сдвигающего регистра 7, соединенного входом с выходом первого накопительного сдвигового регистра 4, а выход второго накопительного сдвигового регистра 5 - со входом второго сдвигового регистра 8, выход младшего разряда которого соединен со вторым входом первого сумматора-вычитателя 1, управляющий вход которого соединен с седьмым выходом блока управления 11 и управляющими входами второго и третьего сумматоров-вычитателей 2, 3, первый и второй входы третьего сумматора-вычитателя 3 соединены соответственно с выходами младших разрядов третьего накопительного сдвигового регистра 6 и регистра записи 9. Кроме того, входы 14, 15, 18 элементов И связаны с выходами одноименных разрядов первого накопительного сдвигового регистра 4, регистра записи 9 и блока управления 11, а выходы 16 элементов И подключены ко входам шифратора 10, выходы которого соединены с соответствующими вторым ÷(n+1)-м входами блока управления 11. Дополнительно введены логико-коммутационный блок 20 и связи его первого 21 и второго 22 входов со знаковыми разрядами накопительных сдвиговых регистров 4 и 8 соответственно, а его первый 23 и второй 24 выходы соединены с третьим накопительным сдвиговым регистром 6 и с третьим сумматором-вычитателем 3.The claimed device contains a
Логико-коммутационный блок 20 состоит из регистра 25 константы "π" в двоичном коде, первого 26 и второго 27 триггеров знака Y и X соответственно, первого 28 и второго 29 элементов И, элемента XOR 30 (Исключительное ИЛИ), (n+3) логических схем 2И-3ИЛИ 31 (по числу двоичных разрядов представления величины "2π"). При этом первый 21 и второй 22 входы логико-коммутационного блока связаны с первым 26 и вторым 27 триггерами знака соответственно, а их выходы (прямой и инверсивный) связаны со входами элементов И 28 и 29, а также элемента XOR 30, действующего в соответствии с ниже приведенным алгоритмом (формула 7). Выходы элементов И 28, 29 связаны со входами всех логических схем 2И-3ИЛИ 31, а выход элемента XOR - с первым выходом 24 логико-коммутационного блока 20.The logic-
Совокупность выходов всех логических схем 2И-3ИЛИ 31 образует многоканальный ((n+3) разрядов) второй выход 23 логико-коммутационного блока 20.The set of outputs of all logic circuits 2I-3 OR 31 forms a multi-channel ((n + 3) category)
Работа устройства основана на следующем. Поскольку в конце операции величина Y сводится к нулю, то можно задавать для первого шага итерации вместо i=0 некоторое начальное значение i0, зависящее от разности между Y и нулем. То есть i0 определяется номером разряда, содержащего первую значащую единицу в двоичном представлении аргумента. Например, Y представлен кодом 0,000001101… Тогда i0=6, и число итераций будет равно n - i0+1.The operation of the device is based on the following. Since at the end of the operation the quantity Y is reduced to zero, it is possible to set for the first step of the iteration, instead of i = 0, some initial value i 0 , depending on the difference between Y and zero. That is, i 0 is determined by the number of the digit containing the first significant unit in the binary representation of the argument. For example, Y is represented by the code 0.000001101 ... Then i 0 = 6, and the number of iterations will be equal to n - i 0 +1.
Устройство работает следующим образом. В регистр 9 записывается число, представленное единицами во всех разрядах после запятой, в регистр 4 заносится значение аргумента Υ. Затем на входы элементов И 13 поочередно, в соответствии с сигналами управления входов 18, начиная со старшего разряда, подаются значения содержимого одноименных разрядов 14 и 15 регистров 4 и 9.The device operates as follows.
По сигналу первого же элемента И, на входы которого поступают обе единицы с регистров 4 и 9 и разрешающий сигнал из блока 11 управления, опрос регистров прекращается, а с соответствующего выхода 17 шифратора 10 на блок 11 управления передается код начального шага итерации i0. Так элемент И на своем выходе 16 выделяет первую значащую единицу аргумента Y.By the signal of the first element And, the inputs of which are both units from
В соответствии с итерационными соотношениями (1)÷(8) блок 11 управления передает команду сдвига содержимого регистра 4 на i0 разрядов в сторону младших разрядов. Регистр 9 сбрасывается в нуль, и на него из регистра записи вызывается константа arctg 2-i. В регистр 5 заносится единица, в регистр 6 записывается ноль. Затем из содержимого регистра 4 в сумматоре-вычитателе 1, с учетом знака φi, вычитается сдвинутое в сторону младших разрядов содержимое регистра 5, поступающее из второго сдвигового регистра 8, а содержимое регистра 5 складывается с учетом знака φi в сумматоре-вычитателе 2 со сдвинутым в сторону младших разрядов содержимым регистра 4, поступающим из первого сдвигового регистра 7. Содержимое регистра 6 суммируется с учетом знака φi с содержимым регистра 9 в сумматоре-вычитателе 3. На следующем цикле значение i0 увеличивается на единицу, в регистр 9 заносится из регистра записи константа
Устройство работает, используя следующие рекуррентные соотношения:The device operates using the following recurrence relations:
i=0, 1, 2, …, m - номер итерации (m≤n), n - разрядность входных величин (без знака) Y и X.i = 0, 1, 2, ..., m is the iteration number (m≤n), n is the bit depth of the input quantities (unsigned) Y and X.
Роль определителей значений α и А по формулам (7) и (8) выполняет логико-коммутационный блок 20 с помощью регистра 25, содержащего число "π", и ряда логических схем И 28 и 29, XOR 30, (n+3) логических схем 2И-3ИЛИ 31 по информации от двух триггеров знака 26 и 27. Они получают ее по входу 21 и входу 22 от знаковых разрядов первого 4 и второго 8 накопительных сдвиговых регистров. В зависимости от номера квадранта в алгоритм (4) вносится поправка V0=А={0, π, 2π} (8), а также в знак (+ или -) констант arctg 2-i (4).The role of the determinants of the values of α and A according to formulas (7) and (8) is performed by the
Квадрантный переключатель α определяется логической схемой XOR 30 по сигналам от прямых выходов двух триггеров 26 и 27 знака. Этот сигнал α подается через первый выход 24 на управляющий вход третьего 3 сумматора-вычитателя, изменяя сложение на вычитание или наоборот. Значение А, выработанное в логико-коммутационном блоке 20, передается через его второй 24 выход в третий накопительный сдвиговый регистр 6, где оно участвует в итерационном процессе (1)÷(4). В конце итераций в первом накопительном сдвиговом регистре 4 получается ноль, а в третьем накопительном сдвиговом регистре 6 хранится значение, равное arctg (y/x).The quadrant switch α is determined by the
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2015136093/08A RU2595486C1 (en) | 2015-08-25 | 2015-08-25 | APPARATUS FOR CALCULATING arctg(y/x) FUNCTION |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2015136093/08A RU2595486C1 (en) | 2015-08-25 | 2015-08-25 | APPARATUS FOR CALCULATING arctg(y/x) FUNCTION |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2595486C1 true RU2595486C1 (en) | 2016-08-27 |
Family
ID=56892219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2015136093/08A RU2595486C1 (en) | 2015-08-25 | 2015-08-25 | APPARATUS FOR CALCULATING arctg(y/x) FUNCTION |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2595486C1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU748418A1 (en) * | 1978-05-10 | 1980-07-15 | Ленинградский Ордена Ленина Электротехнический Институт Им.В.И.Ульянова (Ленина) | Device for computing functions: arctg y/x |
SU1297041A1 (en) * | 1985-10-11 | 1987-03-15 | Омский политехнический институт | Device for calculating values of arctg y/x function |
SU1647555A1 (en) * | 1988-12-21 | 1991-05-07 | Предприятие П/Я М-5653 | Device for calculating of arctg x/y |
US6470367B1 (en) * | 1999-12-08 | 2002-10-22 | Chung-Shan Institute Of Science | Apparatus and method for implementing an inverse arctangent function using piecewise linear theorem to simplify |
-
2015
- 2015-08-25 RU RU2015136093/08A patent/RU2595486C1/en not_active IP Right Cessation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU748418A1 (en) * | 1978-05-10 | 1980-07-15 | Ленинградский Ордена Ленина Электротехнический Институт Им.В.И.Ульянова (Ленина) | Device for computing functions: arctg y/x |
SU1297041A1 (en) * | 1985-10-11 | 1987-03-15 | Омский политехнический институт | Device for calculating values of arctg y/x function |
SU1647555A1 (en) * | 1988-12-21 | 1991-05-07 | Предприятие П/Я М-5653 | Device for calculating of arctg x/y |
US6470367B1 (en) * | 1999-12-08 | 2002-10-22 | Chung-Shan Institute Of Science | Apparatus and method for implementing an inverse arctangent function using piecewise linear theorem to simplify |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11169778B2 (en) | Converting floating point numbers to reduce the precision | |
US10628124B2 (en) | Stochastic rounding logic | |
RU180966U1 (en) | PROBABLE ARITHMETIC DEVICE | |
RU2439667C1 (en) | Processor of higher functioning reliability | |
CN113342671B (en) | Method, device, electronic equipment and medium for verifying operation module | |
Jain et al. | Binary division algorithm and high speed deconvolution algorithm (Based on Ancient Indian Vedic Mathematics) | |
RU2595486C1 (en) | APPARATUS FOR CALCULATING arctg(y/x) FUNCTION | |
JP7044528B2 (en) | Leading Zero Forecast | |
RU2557444C1 (en) | Device for comparing numbers in system of residual classes based on interval-positional characteristics | |
US9032009B2 (en) | Multiplier circuit | |
Kinoshita et al. | Floating-point arithmetic algorithms in the symmetric residue number system | |
RU2595906C1 (en) | Device for calculating functions | |
RU2559771C2 (en) | Device for primary division of molecular numbers | |
CN115729554A (en) | Formalized verification constraint solving method and related equipment | |
RU181260U1 (en) | PROBABILITY SUBTRACTOR | |
RU188000U1 (en) | THE PROBABILITY OF FINDING AN ANALYTICAL PROBABILITY FOR A FULL GROUP OF UNJOINT EVENTS IN A NON-ORIENTED GRAPH | |
RU2649955C1 (en) | Functional converter | |
RU2625528C1 (en) | Arithmetic unit | |
JP5896756B2 (en) | Arithmetic apparatus and program | |
SU697994A1 (en) | Device for computing elementary functions | |
RU2565010C1 (en) | Arithmetic unit | |
RU2628179C1 (en) | Device for dividing modular numbers | |
Krulikovskyi et al. | Theoretical foundations synthesis of components and accelerators for Haar's, Rademacher's and Krestenson's basis multi-digit processors | |
KR100564764B1 (en) | Finite field polynomial multiplier and Method thereof | |
RU2751992C1 (en) | Apparatus for comparing numbers represented in residue number system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20170826 |