RU2040039C1 - Device for calculation absolute value of three- dimensional vector - Google Patents
Device for calculation absolute value of three- dimensional vector Download PDFInfo
- Publication number
- RU2040039C1 RU2040039C1 RU93005835A RU93005835A RU2040039C1 RU 2040039 C1 RU2040039 C1 RU 2040039C1 RU 93005835 A RU93005835 A RU 93005835A RU 93005835 A RU93005835 A RU 93005835A RU 2040039 C1 RU2040039 C1 RU 2040039C1
- Authority
- RU
- Russia
- Prior art keywords
- output
- input
- arithmetic
- block
- information input
- Prior art date
Links
- 238000004364 calculation method Methods 0.000 title description 13
- 230000003068 static effect Effects 0.000 claims 1
- 238000006243 chemical reaction Methods 0.000 abstract 2
- 230000000694 effects Effects 0.000 abstract 1
- 239000000126 substance Substances 0.000 abstract 1
- 230000009466 transformation Effects 0.000 description 6
- 238000000844 transformation Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
Images
Landscapes
- Complex Calculations (AREA)
Abstract
Description
Изобретение относится к вычислительной технике, а именно к устройствам нахождения функций путем вычислений, и может быть использовано в специализированных вычислителях для решения задач, содержащих координатные преобразования в пространстве. The invention relates to computing, and in particular, to devices for finding functions by means of calculations, and can be used in specialized calculators for solving problems containing coordinate transformations in space.
Известно арифметическое устройство, работающее по алгоритму Волдера [1] состоящее из трех буферных регистров, двух счетчиков, трех арифметических узлов и умножителя:
(1) где Xi, Yi, θi значение координат и угла на i-й итерации;
ζi оператор направления вращения;
i=1,2,n.Known arithmetic device operating according to the Walder algorithm [1] consisting of three buffer registers, two counters, three arithmetic nodes and a multiplier:
(1) where X i , Y i , θ i are the coordinates and the angle at the i-th iteration;
ζ i rotation direction operator;
i = 1,2, n.
Результатом вычисления является значение
R=K (2) где k коэффициент деформации модуля.The result of the calculation is the value
R = K (2) where k is the coefficient of deformation of the module.
Недостатком данного устройства является увеличение времени вычислений модуля трехмерного вектора, который может быть определен за две операции типа (2):
R= (3) что ведет к уменьшению области применения указанного устройства в вычислительных системах, работающих в режиме реального времени. Наиболее близким к изобретению является устройство для определения трехмерного вектора [2] Оно содержит три регистра, три коммутатора, блок изменения знака, дешифратор и три арифметических блока, каждый из которых содержит два вычитателя и два сумматора-вычитателя.The disadvantage of this device is the increase in the computation time of the module of a three-dimensional vector, which can be determined in two operations of type (2):
R = (3) which leads to a decrease in the scope of this device in computing systems operating in real time. Closest to the invention is a device for determining a three-dimensional vector [2] It contains three registers, three switches, a sign-changing unit, a decoder and three arithmetic units, each of which contains two subtracters and two adders-subtracters.
Данное устройство позволяет вычислить модуль трехмерного вектора (3) в виде одной макрооперации (при вычислении на устройстве не требуется определения и задания операций низкого уровня, например сложений и сдвига). This device allows you to calculate the module of the three-dimensional vector (3) in the form of a single macro operation (when calculating on the device, it is not necessary to determine and specify low-level operations, such as additions and shifts).
Недостатком данного устройства для определения трехмерного вектора является отсутствие возможности вычислить направляющие косинусы вектора в рамках единого неразрывного вычислительного процесса, что ограничивает функциональные возможности данного устройства, и реализация указанной операции ведет к увеличению времени расчета. The disadvantage of this device for determining a three-dimensional vector is the inability to calculate the direction cosines of the vector within a single inextricable computing process, which limits the functionality of this device, and the implementation of this operation leads to an increase in the calculation time.
Техническим результатом заявленного устройства является расширение функциональных возможностей при решении задач, содержащих большое количество координатных преобразований, а именно дополнительная возможность вычисления направляющих косинусов вектора, которое выполняется в виде одной макрооперации, причем результат не нуждается в коррекции за счет введения узла оперативной памяти узла постоянной памяти, двух коммутаторов и блока управления. Тем самым разработана система управления, реализующая новый алгоритм работы устройства определения модуля трехмерного вектора. Это позволяет повысить производительность при вычислении координатных преобразований и упрощает управление самим устройством, повышает удобство и надежность его программирования при незначительном увеличении объема оборудования. The technical result of the claimed device is the expansion of functionality in solving problems containing a large number of coordinate transformations, namely, the additional ability to calculate the direction cosines of a vector, which is performed in the form of a single macro operation, and the result does not need to be corrected by introducing a random access memory node, two switches and a control unit. Thus, a control system is developed that implements a new algorithm for the operation of the device for determining the module of a three-dimensional vector. This allows you to increase productivity in the calculation of coordinate transformations and simplifies the management of the device itself, increases the convenience and reliability of its programming with a slight increase in the volume of equipment.
Сущность изобретения заключается в том, что в устройство для определения модуля трехмерного вектора, содержащее три регистра, три коммутатора, блок изменения знака, дешифратор и три арифметических блока, каждый из которых содержит два вычитателя и два сумматора-вычитателя, причем первый и второй входы первого вычитателя i-го арифметического блока (i=1,3) являются первым и вторым информационными входами i-го арифметического блока, выход первого сумматора-вычитателя i-го арифметического блока соединен с первым входом второго сумматора-вычитателя блока, выход которого является выходом i-го арифметического блока, пятый информационный вход которого соединен с вторым входом второго сумматора-вычитателя блока, управляющие входы первого и второго сумматоров-вычитателей блока являются первым и вторым знаковыми входами i-го арифметического блока, первый выход первого регистра соединен с первым информационным входом первого арифметического блока, второй и пятый информационные входы которого соединены соответственно с первым выходом первого коммутатора и первым выходом третьего коммутатора, выход первого арифметического блока соединен с первым информационным входом первого регистра, вторые выходы первого, второго и третьего регистров соединены соответственно с информационными входами первого, второго и третьего коммутаторов, выход второго арифметического блока соединен с информационным входом блока изменения знака, первый выход третьего коммутатора соединен с вторым информационным входом третьего арифметического блока, введены блок памяти констант, четвертый и пятый коммутаторы, блок управления и блок памяти, причем третий и четвертый информационные входы i-го арифметического блока соединены с первым и вторым входами второго вычитателя блока, выходы первого и второго вычитателей которого соединены с первым и вторым входами первого сумматора-вычитателя блока, первый выход первого коммутатора соединен с пятым информационным входом третьего арифметического блока, с первым информационным входом второго арифметического блока, второй и третий информационные входы которого соединены соответственно с вторым выходом первого коммутатора и первым выходом третьего регистра, управляющий вход которого соединен с управляющими входами первого и второго регистров и первым выходом блока управления, второй выход которого соединен с управляющими входами блока памяти, четвертого и пятого коммутаторов, первый информационный вход четвертого коммутатора соединен с выходом блока изменения знака и информационным входом второго регистров, первый выход которого соединен с третьим информационным входом третьего арифметического блока, первый информационный вход которого соединен с вторым выходом третьего коммутатора, первый выход которого соединен с четвертым информационным входом второго арифметического блока, пятый информационный вход которого соединен с четвертым информационным входом первого арифметического блока, четвертым информационным входом третьего арифметического блока и первым выходом второго коммутатора, второй выход которого соединен с третьим информационным входом первого арифметического блока, второй знаковый вход которого соединен с выходом пятого коммутатора, первым знаковым входом второго арифметического блока, вторым знаковым входом третьего арифметического блока, вторым информационным входом блока памяти и вторым входом дешифратора, выход которого соединен с первым знаковым входом третьего арифметического блока, выход которого соединен с информационным входом третьего регистра и первым информационным входом пятого коммутатора, второй информационный вход которого соединен с первым выходом блока памяти, второй выход которого соединен с вторым информационным входом четвертого коммутатора, выход которого соединен с первым знаковым входом первого арифметического блока, управляющим входом блока изменения знака, вторым знаковым входом второго арифметического блока, первым входом дешифратора и первым информационным входом блока памяти, вход номера итерации которого соединен с управляющими входами первого, второго и третьего коммутаторов и третьим выходом блока управления, вход которого соединен с входом режима работы устройства, выход блока памяти констант соединен с вторым информационным входом первого регистра. The essence of the invention lies in the fact that the device for determining the module of a three-dimensional vector, containing three registers, three switches, a sign-changing unit, a decoder and three arithmetic blocks, each of which contains two subtractors and two adders-subtracters, the first and second inputs of the first the subtractor of the i-th arithmetic block (i = 1,3) are the first and second information inputs of the i-th arithmetic block, the output of the first adder-subtractor of the i-th arithmetic block is connected to the first input of the second adder-subtract block, the output of which is the output of the i-th arithmetic block, the fifth information input of which is connected to the second input of the second adder-subtractor of the block, the control inputs of the first and second adders-deductors of the block are the first and second sign inputs of the i-th arithmetic block, the first output the first register is connected to the first information input of the first arithmetic unit, the second and fifth information inputs of which are connected respectively to the first output of the first switch and the first output of the third switch, the output of the first arithmetic block is connected to the first information input of the first register, the second outputs of the first, second and third registers are connected respectively to the information inputs of the first, second and third switches, the output of the second arithmetic block is connected to the information input of the sign changing unit, the first output of the third switch connected to the second information input of the third arithmetic block, a constant memory block, fourth and fifth switches, a control block and a pa block are introduced and the third and fourth information inputs of the i-th arithmetic block are connected to the first and second inputs of the second subtractor of the block, the outputs of the first and second subtractors of which are connected to the first and second inputs of the first adder-subtractor of the block, the first output of the first switch is connected to the fifth information input the third arithmetic unit, with the first information input of the second arithmetic unit, the second and third information inputs of which are connected respectively to the second output of the first switch and the first output of the third register, the control input of which is connected to the control inputs of the first and second registers and the first output of the control unit, the second output of which is connected to the control inputs of the memory unit, the fourth and fifth switches, the first information input of the fourth switch is connected to the output of the sign-changing unit and information the input of the second registers, the first output of which is connected to the third information input of the third arithmetic unit, the first information input of which is connected to the second the output of the third switch, the first output of which is connected to the fourth information input of the second arithmetic block, the fifth information input of which is connected to the fourth information input of the first arithmetic block, the fourth information input of the third arithmetic block and the first output of the second switch, the second output of which is connected to the third information input the first arithmetic unit, the second sign input of which is connected to the output of the fifth switch, the first sign input of the second ar an arithmetic block, the second sign input of the third arithmetic block, the second information input of the memory block and the second input of the decoder, the output of which is connected to the first sign input of the third arithmetic block, the output of which is connected to the information input of the third register and the first information input of the fifth switch, the second information input of which connected to the first output of the memory unit, the second output of which is connected to the second information input of the fourth switch, the output of which is connected to the sign input of the first arithmetic unit, the control input of the sign changing unit, the second sign input of the second arithmetic unit, the first input of the decoder and the first information input of the memory unit, the input of the iteration number of which is connected to the control inputs of the first, second and third switches and the third output of the control unit, the input of which is connected to the input of the operating mode of the device, the output of the constant memory block is connected to the second information input of the first register.
На фиг. 1 представлена функциональная схема устройства; на фиг.2 схема арифметического узла; на фиг.3 схема блока управления. In FIG. 1 shows a functional diagram of a device; figure 2 diagram of the arithmetic unit; figure 3 diagram of the control unit.
Устройство для определения модуля трехмерного вектора (фиг.1) содержит блок 1 памяти констант, первый регистр 2 и коммутатор 3, вторые регистр 4 и коммутатор 5, третьи регистр 6 и коммутатор 7, блок 8 управления, с первого по третий арифметические блоки 9-11, блок 12 памяти, блок 13 изменения знака, четвертый коммутатор 14, дешифратор 15 и пятый коммутатор 16, а также вход 17 режима устройства. A device for determining a three-dimensional vector module (Fig. 1) contains a constant memory unit 1, a first register 2 and a switch 3, a second register 4 and a switch 5, a third register 6 and a switch 7, a
Арифметический блок (фиг.2) содержит два вычитателя 18 и 19 и два сумматора-вычитателя 20 и 21. The arithmetic unit (figure 2) contains two
Первый выход первого регистра 2 соединен с первым информационным входом первого арифметического блока 9, второй и пятый информационные входы которого соединены соответственно с первым выходом первого коммутатора 3 и первым выходом третьего коммутатора 7, а выход соединен с первым информационным входом первого регистра 2. Вторые выходы первого 2, второго 4 и третьего 6 регистров соединены соответственно с информационными входами первого 3, второго 5 и третьего 7 коммутаторов. Выход второго арифметического блока 10 соединен с информационным входом блока 13 изменения знака. Первый выход третьего коммутатора 7 соединен с вторым информационным входом третьего арифметического блока 11, первый выход первого коммутатора 3 соединен с пятым информационным входом третьего арифметического блока 11, с первым информационным входом второго арифметического блока 10, второй и третий информационные входы которого соединены соответственно с вторым выходом первого коммутатора 3 и первым выходом третьего регистра 6. Управляющий вход регистра 6 соединен с управляющими входами первого 2 и второго 4 регистров и первым выходом блока 8 управления, второй выход которого соединен с управляющими входами блока 12 памяти, четвертого 14 и пятого 16 коммутаторов. Первый информационный вход четвертого коммутатора 14 соединен с выходом блока 13 изменения знака и информационным входом второго регистра 4, первый выход которого соединен с третьим информационным входом третьего арифметического блока 11. Первый информационный вход последнего соединен с вторым выходом третьего коммутатора 7, первый выход которого соединен с четвертым информационным входом второго арифметического блока 10. Пятый информационный вход блока 10 соединен с четвертым информационным входом первого арифметического блока 9, четвертым информационным входом третьего арифметического блока 11 и первым выходом второго коммутатора 5, второй выход которого соединен с третьим информационным входом первого арифметического блока 9. Второй знаковый вход блока 9 соединен с выходом пятого коммутатора 16, первым знаковым входом второго арифметического блока 10, вторым знаковым входом третьего арифметического блока 11, вторым информационным входом блока 12 памяти и вторым входом дешифратора 15, выход которого соединен с первым знаковым входом третьего арифметического блока 11. Выход блока 11 соединен с информационным входом третьего регистра 6 и первым информационным входом пятого коммутатора 16, второй информационный вход которого соединен с первым выходом блока 12 памяти. Второй выход последнего соединен с вторым информационным входом четвертого коммутатора 14, выход которого соединен с первым знаковым входом первого арифметического блока 8, управляющим входом блока 13 изменения знака, вторым знаковым входом второго арифметического блока 10, первым входом дешифратора 15 и первым информационным входом блока 12 памяти. Вход номера итерации блока 12 соединен с управляющими входами первого 3, второго 5 и третьего 7 коммутаторов и третьим выходом блока 8 управления, вход которого соединен с входом 17 режима работы устройства. Выход блока 1 памяти констант соединен с вторым информационным входом первого регистра 2. The first output of the first register 2 is connected to the first information input of the first
Первый и второй входы первого вычитателя 18 i-го арифметического блока (i= 1,3) являются первым 22 и вторым 23 информационными входами i-го арифметического блока. Выход первого сумматора-вычитателя 20 i-го арифметического блока соединен с первым входом второго сумматора-вычитателя 21 блока, выход которого является выходом 29 i-го арифметического блока. Пятый информационный вход 26 последнего соединен с вторым входом второго сумматора-вычитателя 21 блока. Управляющие входы первого 20 и второго 21 сумматоров-вычитателей блока являются первым 27 и вторым 28 знаковыми входами i-го арифметического блока. Третий 24 и четвертый 25 информационные входы i-го арифметического блока соединены с первым и вторым входами второго вычитателя 19 блока, выходы первого 18 и второго 19 вычитателей которого соединены с первым и вторым входами первого сумматора-вычитателя 20 блока. The first and second inputs of the
Блок 8 управления (фиг.3) состоит из генератора 30 импульсов, счетчика 31, двух дешифраторов 32 и 33, двух схем И 34 и 35, двух триггеров 36 и 37. Кроме того, имеются первый 38 и второй 39 управляющие выходы блока управления, выход 40 номера итерации и вход 17 режима. The control unit 8 (Fig. 3) consists of a
Выход генератора 30 импульсов соединен с входом сброса первого триггера 36 и первым входом первой схемы И 34, выход которой соединен со счетным входом счетчика 31, выход которого соединен с входами первого 32 и второго 33 дешифраторов и с выходом 40 номера итерации. Выход первого дешифратора 32 соединен с вторым входом второй схемы И 35, выход которой соединен с входами установки первого 36 и второго 37 триггеров. Выход второго дешифратора 33 соединен с входом сброса второго триггера 37. Прямой выход первого триггера 36 соединен с первым управляющим входом 38 блока 8 управления, инверсный выход первого триггера 36 соединен с вторым входом схемы И 34. Выход второго триггера 37 соединен с управляющим входом счетчика 31 и вторым управляющим выходом 39. Вход 17 режима соединен с первым входом второй схемы И 35. The output of the
Устройство функционирует следующим образом. The device operates as follows.
Работа устройства выражается зависимостями
(4) где i 1.n;
μi sign Yi;
εi sign Zi;
X1 X, Y1 Y, Z1 Z,
и
(5) где j n.1;
ηj μj;
εj εj;
X1 1/k, Y1 0, Z1 0,
k (1-2-1+2-2i) коэффициент деформации.The operation of the device is expressed by dependencies
(4) where i 1.n;
μ i sign Y i ;
ε i sign Z i ;
X 1 X, Y 1 Y, Z 1 Z,
and
(5) where j n. 1;
η j μ j ;
ε j ε j ;
X 1 1 / k, Y 1 0, Z 1 0,
k (1-2 -1 +2 -2i ) strain coefficient.
Система управления реализует вычисление двух функций. The control system implements the calculation of two functions.
Вычисление функции определения модуля вектора происходит по зависимости (4). Вычисление направляющих косинусов производится последовательно по зависимостям (4) и (5). The calculation of the function of determining the modulus of a vector occurs according to dependence (4). The calculation of guide cosines is carried out sequentially according to dependencies (4) and (5).
Начальными значениями координат зависимости (4) являются координаты конца заданного вектора. При расчете по зависимости (5) используются значения ε и μ полученные при расчете по зависимости (4). Значение 1/k рассчитывается заранее и хранится в блоке 1 памяти констант. The initial coordinates of dependence (4) are the coordinates of the end of a given vector. When calculating according to dependence (5), the values of ε and μ obtained when calculating according to dependence (4) are used. The value 1 / k is calculated in advance and stored in the constant memory block 1.
Режим работы устройства определяется наличием или отсутствием потенциала (сигнала) на входе 17. Если на нем нет сигнала, то блок 8 настраивается на расчет модуля трехмерного вектора, а при наличии сигнала на расчет направляющих косинусов трехмерного вектора. The operation mode of the device is determined by the presence or absence of potential (signal) at
Перед началом итерационного процесса в регистры 2, 4 и 6 соответственно заносятся значения координат конца трехмерного вектора X, Y и Z. С началом очередной итерации с выхода номера итерации блока 8 управления подается сигнал на управляющие входы коммутаторов 3, 5 и 7, настраивая их таким образом, чтобы с их первого входа снималось число (Х, Y и Z соответственно), сдвинутые на i разрядов в сторону младших разрядов, а с второго на 2i разрядов в сторону младших разрядов. Таким образом, на входы с первого по пятый аргументов арифметического блока 9 подаются Xi, Xi2-i, Yi2-2i, Yi2-i и Zi2-i, а с выхода получается значение Xi+1. Аналогично с выхода арифметического блока 11 получается значение Zi+1. С выхода арифметического блока 10 получается значение Yi+1 без учета знака μi Поэтому получаемое значение подается на информационный вход блока 13 изменения знака (на управляющий вход которого подается значение μi ), в котором происходит учет знака μiи с выхода которого получается результат Yi+1. Значения Xi+1, Yi+1 и Zi+1 записываются в регистры 2, 4 и 6 соответственно вместо значений Xi, Yi и Zi. Коммутаторы 14 и 16 передают соответственно значения знаков Zi+1 и Zi+1 на свои выходы, с которых получаются соответственно значения μi и εi Дешифратор 15 служит для получения значения μi . εi Сигнал с выхода номера итерации блока 8 управления подается также на вход номера итерации блока 12 памяти, в котором запоминаются соответствующие номеру итерации значения μi и εi подаваемые на соответствующие информационные входы этого блока. Сигнал с второго управляющего выхода блока управления настраивает блок 12 памяти на запись значений μi и εi
После выполнения n итераций (n разрядность операндов) исходный вектор совпадает с осью ОХ и в регистр 2 записывается значение
Xn=k
Если на вход 17 режима устройства подается "0", то счет на этом заканчивается. Если на вход режима подается "1", то блок 8 управления начинает обеспечивать работу устройства согласно зависимости (5). На первом управляющем выходе блока управления вырабатывается сигнал, подаваемый на управляющие входы регистров 2, 4 и 6, под воздействием которого в регистр 2 записывается значение 1/k из блока 1 памяти констант, а в регистры 4 и 6 записывается "0". Дальнейшее функционирование регистров 2, 4 и 6, коммутаторов 3, 5 и 7, арифметических блоков 9, 10 и 11, блока 13 изменения знака, дешифратора 15 соответствует описанию счета по зависимости (4). Сигнал с второго управляющего выхода блока 8 управления переключает блок 12 памяти в режим чтения записанных ранее значений μi и εi для всех номеров итераций. Этот же сигнал переключает коммутаторы 14 и 16 таким образом, что считываются инвертированные значения μi и εi с соответствующих инверсных выходов блока 12 памяти и выдаются эти значения на свои выходы в виде значений ηi и εi Номера итераций теперь уменьшаются от n до 1.Before the iteration process begins, the values of the coordinates of the end of the three-dimensional vector X, Y and Z are respectively entered into registers 2, 4, and 6. With the beginning of the next iteration, the signal is sent to the control inputs of switches 3, 5, and 7 from the output of the iteration number of
After performing n iterations (n bits of operands), the initial vector coincides with the axis OX and the value is written in register 2
X n = k
If the
После выполнения n итераций (номер итерации равен "1") по зависимости (5) вектор единичной длины (координаты которого записаны в соответствующих регистрах 2, 4 и 6) коллереарен исходному. Таким образом, в регистре 2 записано значение X/R=cosα где R=, в регистре 4 Y/R=cosβ а в регистре 6 Z/R= cosγ т. е. в регистрах 2, 4 и 6 записаны соответствующие значения направляющих косинусов исходного вектора. Значения направляющих косинусов вектора имеют истинное значение и в дальнейшей коррекции не нуждаются.After performing n iterations (the iteration number is "1") according to dependence (5), a unit length vector (whose coordinates are written in the corresponding registers 2, 4, and 6) is collinear to the original one. Thus, in register 2, the value X / R = cosα is written where R = , in register 4 Y / R = cosβ and in register 6 Z / R = cosγ, i.e., in registers 2, 4 and 6, the corresponding values of the direction cosines of the original vector are written. The values of the direction cosines of the vector have a true value and do not need further correction.
Арифметические блоки 9, 10 и 11 функционирует следующим образом (фиг.2). Arithmetic blocks 9, 10 and 11 operates as follows (figure 2).
Арифметический блок обеспечивает вычисление в соответствии со следующей формулой:
Q= t1-t2-e1(t3-t4)+e2t5 (6) где t1, t2, t3, t4, t5 с первого по пятый входы аргументов арифметического блока;
Q значение результата, подаваемое на выход арифметического блока;
е1 и е2 значения, подаваемые на знаковые входы и влияющие на выполнение операций сложения-вычитания.The arithmetic unit provides the calculation in accordance with the following formula:
Q = t 1 -t 2 -e 1 (t 3 -t 4 ) + e 2 t 5 (6) where t 1 , t 2 , t 3 , t 4 , t 5 from the first to fifth inputs of the arithmetic block arguments;
Q is the value of the result supplied to the output of the arithmetic block;
e 1 and e 2 values supplied to the sign inputs and affecting the performance of addition-subtraction operations.
Сигнал на знаковом входе 27 устанавливает сумматор-вычитатель 20 в режим сложения, а сигнал на знаковом входе 28 устанавливает сумматор-вычитатель 21 в режим вычитания. На входы первого 22, второго 23, третьего 24, четвертого 25 и пятого 26 аргументов подаются соответствующие значения. Таким образом, на входы первого и второго операндов первого вычитателя 18 подаются значения первого t1 и второго t2 аргументов, а с выхода снимается значение t1-t2, которое подается на вход первого операнда сумматора-вычитателя 20. Аналогично с входа второго вычитателя 19 снимается значение t3-t4, подаваемое на вход второго операнда сумматора-вычитателя 20, с выхода которого снимается значение t1-t2-e1(t3-t4), которое подается на вход первого операнда второго сумматора-вычитателя 21. На вход второго операнда сумматора-вычитателя 21 подается значение пятого аргумента t5, а с выхода снимется значение (t1-t2)-e1(t3-t4)+e2t5, которое подается на выход 29 арифметического блока, реализуя тем самым вычисление по формуле (6).The signal at the
Блок 8 управления функционирует следующим образом (фиг.3). The
В начале счета триггеры 36 и 37 и счетчик 31 находятся в сброшенном состоянии. На инверсном выходе триггера 36 вырабатывается сигнал "1", который открывает схему И 34 для нахождения тактовых импульсов, вырабатываемых генератором 30 импульсов. С выхода схемы И 34 тактовые импульсы поступают на счетный вход счетчика 31, увеличивая его содержимое на "+1". Содержимое счетчика представляет собой номер итерации, выдается на вход 40 номера итерации и анализируется в дешифраторах 32 и 33. Первый дешифратор 32 проверяет равенство <<Cч31>>=n и при совпадении вырабатывает сигнал, который при наличии сигнала на входе 17 режима (что соответствует режиму расчета направляющих косинусов вектора) посредством схемы И 35 подается на входы установки триггеров 36 и 37. В этом случае импульс на прямом выходе триггера 36 сбрасывает регистры 4 и 6 в "0" и обеспечивает запись в регистр 2 значения 1/k из блока 1 памяти констант. Сигнал на выходе триггера 37 (выход 39 блока 8 управления) устанавливает счетчик 31 в режим декрементации (с каждым импульсом из счетчика вычитается "1"), переключает коммутаторы 14 и 16 и блок 12 памяти на выдачу значений знаков, заполненных ранее. По достижении <<Cч31>>=0 на выходе дешифратора 33 вырабатывается сигнал, сбрасывающий триггер 37. Осуществляется расчет косинусов вектора. Если на вход 17 режима подается "0", то сигнал, вырабатываемый дешифратором 32 при <<Cч31>>=n, блокируется схемой И 35. Расчет модуля трехмерного вектора закончен. At the beginning of the count, triggers 36 and 37 and counter 31 are in the reset state. At the inverted output of the
Применение устройства для определения модуля трехмерного вектора для нахождения функций путем вычислений, а именно для использования в специализированных вычислителях для решения задач, содержащих большое количество координатных преобразований, позволяет существенно повысить производительность при вычислении координатных преобразований и упростить управление вычислительным процессом, повышает удобство и надежность программирования работы устройства при незначительном увеличении объема оборудования, что в итоге ведет к повышению эффективности применения устройства в составе специализированного вычислителя для решения задач координатных преобразований в режиме реального времени. The use of a device for determining the module of a three-dimensional vector for finding functions by means of calculations, namely, for use in specialized calculators for solving problems containing a large number of coordinate transformations, can significantly increase productivity in the calculation of coordinate transformations and simplify the control of the computing process, increases the convenience and reliability of programming work devices with a slight increase in the volume of equipment, which ultimately leads to increased ju effective use of the device as part of a specialized computer for solving problems of coordinate transformations in real time.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU93005835A RU2040039C1 (en) | 1993-02-01 | 1993-02-01 | Device for calculation absolute value of three- dimensional vector |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU93005835A RU2040039C1 (en) | 1993-02-01 | 1993-02-01 | Device for calculation absolute value of three- dimensional vector |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2040039C1 true RU2040039C1 (en) | 1995-07-20 |
Family
ID=20136518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU93005835A RU2040039C1 (en) | 1993-02-01 | 1993-02-01 | Device for calculation absolute value of three- dimensional vector |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2040039C1 (en) |
-
1993
- 1993-02-01 RU RU93005835A patent/RU2040039C1/en active
Non-Patent Citations (2)
Title |
---|
1. Авторское свидетельство СССР N 1142830, кл. G 06F 7/544, 1981. * |
2. Авторское свидетельство СССР N 1164696, кл. G 06F 7/544, 1985. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0656582B1 (en) | Parallel adding and averaging circuit and method | |
JP3573808B2 (en) | Logical operation unit | |
Koppermann et al. | Low-latency X25519 hardware implementation: Breaking the 100 microseconds barrier | |
EP0216700A2 (en) | System for generating mask pattern for vector data processor | |
US6917956B2 (en) | Apparatus and method for efficient modular exponentiation | |
RU2439667C1 (en) | Processor of higher functioning reliability | |
US5363322A (en) | Data processor with an integer multiplication function on a fractional multiplier | |
RU2040039C1 (en) | Device for calculation absolute value of three- dimensional vector | |
US20050246406A9 (en) | Emod a fast modulus calculation for computer systems | |
RU2079879C1 (en) | Matrix processor | |
US20230060275A1 (en) | Accelerating multiplicative modular inverse computation | |
SU866559A1 (en) | Device vector processor control | |
US7590677B2 (en) | Processor with summation instruction using overflow counter | |
RU2030785C1 (en) | Computing device | |
US3196259A (en) | Parity checking system | |
SU560229A1 (en) | Device for calculating elementary functions | |
SU703823A1 (en) | Device for computing elementary functions | |
SU593211A1 (en) | Digital computer | |
RU2069009C1 (en) | Adding device | |
SU1111173A1 (en) | Control unit for fast fourier transform processor | |
SU1167604A1 (en) | Calculating device | |
SU696476A1 (en) | Trigonometric function computing device | |
SU883897A1 (en) | Device for square root calculation | |
SU1120347A1 (en) | Arithmetic unit for fast fourier transform processor | |
SU1462299A1 (en) | Device for performing coordinate conversion |