RU2661540C1 - Digital linear interpolator - Google Patents
Digital linear interpolator Download PDFInfo
- Publication number
- RU2661540C1 RU2661540C1 RU2017118686A RU2017118686A RU2661540C1 RU 2661540 C1 RU2661540 C1 RU 2661540C1 RU 2017118686 A RU2017118686 A RU 2017118686A RU 2017118686 A RU2017118686 A RU 2017118686A RU 2661540 C1 RU2661540 C1 RU 2661540C1
- Authority
- RU
- Russia
- Prior art keywords
- difference
- coordinate
- sign
- coordinate increments
- increments
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/17—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/544—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06G—ANALOGUE COMPUTERS
- G06G7/00—Devices in which the computing operation is performed by varying electric or magnetic quantities
- G06G7/12—Arrangements for performing computing operations, e.g. operational amplifiers
- G06G7/30—Arrangements for performing computing operations, e.g. operational amplifiers for interpolation or extrapolation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Algebra (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Automation & Control Theory (AREA)
- Complex Calculations (AREA)
- Image Generation (AREA)
Abstract
Description
Изобретение относится к автоматике и вычислительной технике.The invention relates to automation and computer engineering.
Известен линейный интерполятор [А.с. №551610 СССЗ, 1975 г.], содержащий регистры координатных приращений, соединенные через блоки совпадения со входами сумматора, выход которого через блок анализа знака оценочной функции подключен к управляющим входам блоков совпадения, и блок анализа знака разности координатных приращений, вход которого подключен к выходу сумматора, а выходы - ко входам регистров координатных приращений.Known linear interpolator [A.S. No. 551610 SSSZ, 1975], containing the registers of coordinate increments connected through coincidence blocks with the inputs of the adder, the output of which through the sign analysis unit of the evaluation function is connected to the control inputs of the coincidence blocks, and the analysis unit of the difference sign of the coordinate increments, the input of which is connected to the output adder, and the outputs to the inputs of the registers of coordinate increments.
Однако это устройство характеризуется низкой точностью, обусловленной недостаточной точностью аппроксимации.However, this device is characterized by low accuracy due to insufficient approximation accuracy.
Наиболее близким по технической сущности к предлагаемому интерполятору является линейный интерполятор [А.с. 920636 СССР, 1982 г.]. Он дополнительно содержит регистр разности координатных приращений, причем вход блока анализа знака разности координатных приращений подключен к выходу сумматора через регистр разности координатных приращений.The closest in technical essence to the proposed interpolator is a linear interpolator [A.S. 920636 USSR, 1982]. It additionally contains a register of difference of coordinate increments, and the input of the block analysis of the sign of the difference of coordinate increments is connected to the output of the adder through the register of the difference of coordinate increments.
Он также характеризуется низкой точностью при некоторых значениях большей проекции прямой на координатные оси: при делении проекции пополам образуется остаток, не учитываемый при интерполяции прямой.It is also characterized by low accuracy for some values of the greater projection of the line into the coordinate axes: when dividing the projection in half, a residue is formed that is not taken into account when interpolating the line.
Задача изобретения - совершенствование цифрового линейного интерполятора.The objective of the invention is the improvement of the digital linear interpolator.
Технический результат - обеспечение максимально возможной точности интерполяции вне зависимости от входных данных.The technical result is the provision of the highest possible accuracy of interpolation, regardless of the input data.
Технический результат достигается за счет введения в цифровой линейный интерполятор, содержащий регистры координатных приращений, соединенные через блоки совпадения со входами сумматора, выход которого через блок анализа знака оценочной функции подключен к управляющим входам блоков совпадения, и блок анализа знака разности координатных приращений, вход которого подключен к выходу сумматора, а выходы - ко входам регистров координатных приращений, а также регистр разности координатных приращений, причем вход блока анализа знака разности координатных приращений подключен к выходу сумматора через регистр разности координатных приращений, дополнительного младшего (n+1)-го разряда в регистры координатных приращений и разности координатных приращений, блоки совпадений и блоки анализа (где n - двоичная разрядность исходных данных).The technical result is achieved by introducing into the digital linear interpolator containing coordinate increment registers connected through coincidence blocks with the inputs of the adder, the output of which through the sign analysis unit of the evaluation function is connected to the control inputs of the coincidence units, and the sign increment analysis unit of the coordinate increments, the input of which is connected to the output of the adder, and the outputs to the inputs of the registers of coordinate increments, as well as the register of the difference of coordinate increments, and the input of the block analysis of the sign of the separation These coordinate increments are connected to the adder output through the register of difference of coordinate increments, an additional minor (n + 1) -th bit into the registers of coordinate increments and difference of coordinate increments, coincidence blocks and analysis blocks (where n is the binary bit depth of the source data).
Введение дополнительного младшего (n+1)-го разряда в основные блоки интерполятора с его связями с другими блоками устройства позволило исключить потерю точности работы при нечетном значении большей проекции прямой на координатные оси.The introduction of an additional minor (n + 1) -th discharge in the main blocks of the interpolator with its connections with other blocks of the device eliminated the loss of accuracy with an odd value of the greater projection of the line onto the coordinate axes.
Это является новым техническим решением в технике цифровой интерполяции прямой, поскольку результаты проведенного заявителем анализа аналогов и прототипа не позволили выявить признаки, тождественные всем существенным признакам данного изобретения.This is a new technical solution in the direct digital interpolation technique, since the results of the analysis of the analogues and the prototype carried out by the applicant did not allow identifying features that are identical to all the essential features of this invention.
Предложенный интерполятор промышленно применим, поскольку его техническая реализация возможна с использованием типовых элементов микроэлектронной техники (интегральных логических схем).The proposed interpolator is industrially applicable, since its technical implementation is possible using typical elements of microelectronic technology (integrated logic circuits).
На чертеже изображена схема интерполятора.The drawing shows a diagram of an interpolator.
Линейный интерполятор содержит регистр разности координатных приращений, причем вход блока анализа знака разности координатных приращений подключен к выходу сумматора через регистр разности координатных приращений.The linear interpolator contains a register of difference of coordinate increments, and the input of the analysis unit of the sign of the difference of coordinate increments is connected to the output of the adder through the register of difference of coordinate increments.
Извне (например, от ЭВМ) по входу 11 в n старших разрядах регистра 1 координатных приращений поступает модуль проекции аппроксимируемой прямой на ось X Δx, а по входу 12 в n старших разрядах регистра 2 координатных приращений - модуль проекции прямой на ось Y Δy. С учетом дополнительных младших (n+1)-ых разрядов фактически на этих регистрах 1 и 2 будут находиться 2Δx и 2Δy, соответственно.From the outside (for example, from a computer), the
Далее определяется, какая из проекций большая. Для этого в сумматоре 5 определяется разность координатных приращений Δ=2(|Δx|-|Δy|). Модуль разности записывается в регистр 10 разности координатных приращений. Затем, для определения направления первого шага аппроксимации, вычисляется начальное значение оценочной функции. Для этого содержимое регистра большей проекции сдвигается на один разряд в сторону младших разрядов (большая проекция уменьшается в два раза), из полученного значения в сумматоре 5 вычисляется меньшая проекция, то естьNext, it is determined which of the projections is large. For this, in
где V1 -начальное значение оценочной функции; Б - большая проекция; М - меньшая проекция.where V 1 is the initial value of the evaluation function; B - large projection; M is a smaller projection.
После этого осуществляется перезапись разности координатных приращений из регистра 10 в регистр, где хранится большая проекция. На этом заканчивается подготовительный этап, предшествующий собственно процессу интерполяции. В регистрах 1 и 2 координатных приращений записаны разность координатных приращений и значение меньшей проекции, в сумматоре 5 - начальное значение оценочной функции. Блок 6 анализа оценочной функции анализирует значение оценочной функции V и в процессе интерполяции задает направление генерируемого перемещения и характер следующей за ним арифметической операции по расчету очередного значения оценочной функции.After that, the difference of the coordinate increments from register 10 to the register where the large projection is stored is overwritten. This concludes the preparatory phase preceding the actual interpolation process. In the
При V≥0 по выходу 7 (см. чертеж) блоком 6 анализа оценочной функции генерируется элементарное перемещение по направлению оси большей координаты и одновременно с этим вычисляется новое значение оценочной функции, то есть в сумматоре 5 из предыдущего значения оценочной функции вычитается значение меньшей проекции Vi+1=Vi-М.At V≥0 at the output 7 (see the drawing), the evaluation
При V≤0 по выходу 8 блоком 6 анализа оценочной функции генерируется комбинированное элементарное перемещение (совместное по оси X и Y), и в сумматоре 5 к предыдущему значению оценочной функции прибавляется модуль разности координатных приращений Vi+1=Vi+А.At V≤0 at the
Когда отрезок прямой, проекции которого на оси координат составляют Δх=5, Δу=8 (см. фиг.), модуль Δх=2(|5|) по входу 11 записывается в регистр 1 координатных приращений, модуль Δу=2(|8|) - по входу 12 - в регистр 2 координатных приращений. Далее величины проекции сравниваются, то есть в сумматоре 5 вычисляется разность координатных приращений |5|-|8|=-3. Модуль разности 2(|-3|) записывается в регистр 10 разности координатных приращений. Знак разности анализируется блоком 9 анализа знака разности (|5|-|8|)≤0, и при этом вырабатывается признак сдвига содержимого регистра 2 координатных приращений на один разряд в сторону младших разрядов .When a straight line segment whose projections on the coordinate axis are Δx = 5, Δy = 8 (see Fig.), The module Δx = 2 (| 5 |) at
В сумматоре 5 вычисляется начальное значение оценочной функции , при этом из регистра 10 разности координатных приращений в регистр 2 координатных приращений переписывается разность координатных приращений (|-5|). Знак оценочной функции оценивается блоком 6, поскольку V1<0, то по выходу 7 генерируется элементарное перемещение по оси Y и вычисляется следующее значение оценочной функции V2=2|-1+3|=4. Знак анализируется блоком 6 анализа знака оценочной функции (V2>0), по выходу 8 генерируется элементарное комбинированное перемещение (совместное по X и Y) и вычисляется V3=4-10=-6.In
Аналогично производится расчет направлений остальных перемещений и их генерация.Similarly, the directions of the remaining movements are calculated and generated.
Таким образом, деление на два большей проекции, если она нечетное число, не приводит к систематической ошибке при цифровой линейной интерполяции прямой.Thus, dividing into two larger projections, if it is an odd number, does not lead to a systematic error in digital linear interpolation of a straight line.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2017118686A RU2661540C1 (en) | 2017-05-29 | 2017-05-29 | Digital linear interpolator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2017118686A RU2661540C1 (en) | 2017-05-29 | 2017-05-29 | Digital linear interpolator |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2661540C1 true RU2661540C1 (en) | 2018-07-17 |
Family
ID=62917048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2017118686A RU2661540C1 (en) | 2017-05-29 | 2017-05-29 | Digital linear interpolator |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2661540C1 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU920636A2 (en) * | 1980-01-04 | 1982-04-15 | Винницкий политехнический институт | Linear interpolator |
SU1153320A1 (en) * | 1983-11-05 | 1985-04-30 | Предприятие П/Я А-1001 | Device for presenting functions using tabular method |
SU1675849A1 (en) * | 1989-05-03 | 1991-09-07 | Специальное Конструкторско-Технологическое Бюро "Модуль" Винницкого Политехнического Института | Digital linear interpolator |
US5740089A (en) * | 1994-02-26 | 1998-04-14 | Deutsche Itt Industries Gmbh | Iterative interpolator |
US5815419A (en) * | 1996-03-28 | 1998-09-29 | Mitsubishi Denki Kabushiki Kaisha | Data interpolating circuit |
US20030025712A1 (en) * | 2001-08-06 | 2003-02-06 | Corr William E. | Interpolation error minimization for data reduction |
US20030055853A1 (en) * | 2001-06-02 | 2003-03-20 | Fowler Thomas L. | Transparent data access and interpolation apparatus and method therefor |
-
2017
- 2017-05-29 RU RU2017118686A patent/RU2661540C1/en not_active IP Right Cessation
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU920636A2 (en) * | 1980-01-04 | 1982-04-15 | Винницкий политехнический институт | Linear interpolator |
SU1153320A1 (en) * | 1983-11-05 | 1985-04-30 | Предприятие П/Я А-1001 | Device for presenting functions using tabular method |
SU1675849A1 (en) * | 1989-05-03 | 1991-09-07 | Специальное Конструкторско-Технологическое Бюро "Модуль" Винницкого Политехнического Института | Digital linear interpolator |
US5740089A (en) * | 1994-02-26 | 1998-04-14 | Deutsche Itt Industries Gmbh | Iterative interpolator |
US5815419A (en) * | 1996-03-28 | 1998-09-29 | Mitsubishi Denki Kabushiki Kaisha | Data interpolating circuit |
US20030055853A1 (en) * | 2001-06-02 | 2003-03-20 | Fowler Thomas L. | Transparent data access and interpolation apparatus and method therefor |
US20030025712A1 (en) * | 2001-08-06 | 2003-02-06 | Corr William E. | Interpolation error minimization for data reduction |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2580801C1 (en) | Majority module | |
US10340944B2 (en) | Floating-point adder, semiconductor device, and control method for floating-point adder | |
KR20040063143A (en) | High-speed computation in arithmetic logic circuit | |
US9146707B2 (en) | Generating a fast 3x multiplicand term for radix-8 booth multiplication | |
US5317753A (en) | Coordinate rotation digital computer processor (cordic processor) for vector rotations in carry-save architecture | |
RU2503992C2 (en) | Device for comparing numbers presented in residue number system | |
RU2661540C1 (en) | Digital linear interpolator | |
RU2717915C1 (en) | Computing device | |
RU2503995C2 (en) | Device for determining sign of modular number | |
RU2348965C1 (en) | Computing mechanism | |
US20220004361A1 (en) | Repurposed hexadecimal floating point data path | |
CN105786444A (en) | Detection method and apparatus for leading zeros in mantissas of floating-point number | |
US9959094B2 (en) | Arithmetic apparatus and control method of the same using cordic algorithm | |
JP2010033406A (en) | Image processing device, image device, and image processing method | |
US20230251827A1 (en) | Floating-point unit and configuration method and device thereof, artificial intelligence chip, and accelerator | |
KR960014195B1 (en) | Contour line characteristic point detecting apparatus | |
RU2667658C1 (en) | Multi-coordinate digital interpolator | |
WO2023100372A1 (en) | Data processing device, data processing method, and data processing program | |
RU2638010C1 (en) | Device for calculating square root | |
JP4658821B2 (en) | Bezier curve generation circuit | |
US20100030836A1 (en) | Adder, Synthesis Device Thereof, Synthesis Method, Synthesis Program, and Synthesis Program Storage Medium | |
WO2023248309A1 (en) | Data processing device, data processing program, and data processing method | |
RU2618189C1 (en) | Device for calculating function y=x1/n | |
US20210224040A1 (en) | Arithmetic processing apparatus and control method for arithmetic processing apparatus | |
RU2642385C1 (en) | DEVICE FOR CALCULATING arctg Y/X FUNCTION |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20190530 |