Цифровой линейный интерполятор

Иллюстрации

Показать все

Изобретение относится к автоматике и вычислительной технике. Техническим результатом является повышение точности интерполяции. Цифровой линейный интерполятор содержит регистры координатных приращений, сумматор, блоки совпадений, блоки анализа разности координатных приращений, блок анализа знака оценочной функции, регистр разности координатных приращений, при этом двоичная разрядность всех блоков увеличена на один путем добавления младшего (n+1)-го разряда. 1 ил.

Реферат

Изобретение относится к автоматике и вычислительной технике.

Известен линейный интерполятор [А.с. №551610 СССЗ, 1975 г.], содержащий регистры координатных приращений, соединенные через блоки совпадения со входами сумматора, выход которого через блок анализа знака оценочной функции подключен к управляющим входам блоков совпадения, и блок анализа знака разности координатных приращений, вход которого подключен к выходу сумматора, а выходы - ко входам регистров координатных приращений.

Однако это устройство характеризуется низкой точностью, обусловленной недостаточной точностью аппроксимации.

Наиболее близким по технической сущности к предлагаемому интерполятору является линейный интерполятор [А.с. 920636 СССР, 1982 г.]. Он дополнительно содержит регистр разности координатных приращений, причем вход блока анализа знака разности координатных приращений подключен к выходу сумматора через регистр разности координатных приращений.

Он также характеризуется низкой точностью при некоторых значениях большей проекции прямой на координатные оси: при делении проекции пополам образуется остаток, не учитываемый при интерполяции прямой.

Задача изобретения - совершенствование цифрового линейного интерполятора.

Технический результат - обеспечение максимально возможной точности интерполяции вне зависимости от входных данных.

Технический результат достигается за счет введения в цифровой линейный интерполятор, содержащий регистры координатных приращений, соединенные через блоки совпадения со входами сумматора, выход которого через блок анализа знака оценочной функции подключен к управляющим входам блоков совпадения, и блок анализа знака разности координатных приращений, вход которого подключен к выходу сумматора, а выходы - ко входам регистров координатных приращений, а также регистр разности координатных приращений, причем вход блока анализа знака разности координатных приращений подключен к выходу сумматора через регистр разности координатных приращений, дополнительного младшего (n+1)-го разряда в регистры координатных приращений и разности координатных приращений, блоки совпадений и блоки анализа (где n - двоичная разрядность исходных данных).

Введение дополнительного младшего (n+1)-го разряда в основные блоки интерполятора с его связями с другими блоками устройства позволило исключить потерю точности работы при нечетном значении большей проекции прямой на координатные оси.

Это является новым техническим решением в технике цифровой интерполяции прямой, поскольку результаты проведенного заявителем анализа аналогов и прототипа не позволили выявить признаки, тождественные всем существенным признакам данного изобретения.

Предложенный интерполятор промышленно применим, поскольку его техническая реализация возможна с использованием типовых элементов микроэлектронной техники (интегральных логических схем).

На чертеже изображена схема интерполятора.

Линейный интерполятор содержит регистр разности координатных приращений, причем вход блока анализа знака разности координатных приращений подключен к выходу сумматора через регистр разности координатных приращений.

Извне (например, от ЭВМ) по входу 11 в n старших разрядах регистра 1 координатных приращений поступает модуль проекции аппроксимируемой прямой на ось X Δx, а по входу 12 в n старших разрядах регистра 2 координатных приращений - модуль проекции прямой на ось Y Δy. С учетом дополнительных младших (n+1)-ых разрядов фактически на этих регистрах 1 и 2 будут находиться 2Δx и 2Δy, соответственно.

Далее определяется, какая из проекций большая. Для этого в сумматоре 5 определяется разность координатных приращений Δ=2(|Δx|-|Δy|). Модуль разности записывается в регистр 10 разности координатных приращений. Затем, для определения направления первого шага аппроксимации, вычисляется начальное значение оценочной функции. Для этого содержимое регистра большей проекции сдвигается на один разряд в сторону младших разрядов (большая проекция уменьшается в два раза), из полученного значения в сумматоре 5 вычисляется меньшая проекция, то есть

где V1 -начальное значение оценочной функции; Б - большая проекция; М - меньшая проекция.

После этого осуществляется перезапись разности координатных приращений из регистра 10 в регистр, где хранится большая проекция. На этом заканчивается подготовительный этап, предшествующий собственно процессу интерполяции. В регистрах 1 и 2 координатных приращений записаны разность координатных приращений и значение меньшей проекции, в сумматоре 5 - начальное значение оценочной функции. Блок 6 анализа оценочной функции анализирует значение оценочной функции V и в процессе интерполяции задает направление генерируемого перемещения и характер следующей за ним арифметической операции по расчету очередного значения оценочной функции.

При V≥0 по выходу 7 (см. чертеж) блоком 6 анализа оценочной функции генерируется элементарное перемещение по направлению оси большей координаты и одновременно с этим вычисляется новое значение оценочной функции, то есть в сумматоре 5 из предыдущего значения оценочной функции вычитается значение меньшей проекции Vi+1=Vi-М.

При V≤0 по выходу 8 блоком 6 анализа оценочной функции генерируется комбинированное элементарное перемещение (совместное по оси X и Y), и в сумматоре 5 к предыдущему значению оценочной функции прибавляется модуль разности координатных приращений Vi+1=Vi+А.

Когда отрезок прямой, проекции которого на оси координат составляют Δх=5, Δу=8 (см. фиг.), модуль Δх=2(|5|) по входу 11 записывается в регистр 1 координатных приращений, модуль Δу=2(|8|) - по входу 12 - в регистр 2 координатных приращений. Далее величины проекции сравниваются, то есть в сумматоре 5 вычисляется разность координатных приращений |5|-|8|=-3. Модуль разности 2(|-3|) записывается в регистр 10 разности координатных приращений. Знак разности анализируется блоком 9 анализа знака разности (|5|-|8|)≤0, и при этом вырабатывается признак сдвига содержимого регистра 2 координатных приращений на один разряд в сторону младших разрядов .

В сумматоре 5 вычисляется начальное значение оценочной функции , при этом из регистра 10 разности координатных приращений в регистр 2 координатных приращений переписывается разность координатных приращений (|-5|). Знак оценочной функции оценивается блоком 6, поскольку V1<0, то по выходу 7 генерируется элементарное перемещение по оси Y и вычисляется следующее значение оценочной функции V2=2|-1+3|=4. Знак анализируется блоком 6 анализа знака оценочной функции (V2>0), по выходу 8 генерируется элементарное комбинированное перемещение (совместное по X и Y) и вычисляется V3=4-10=-6.

Аналогично производится расчет направлений остальных перемещений и их генерация.

Таким образом, деление на два большей проекции, если она нечетное число, не приводит к систематической ошибке при цифровой линейной интерполяции прямой.

Цифровой линейный интерполятор, содержащий регистры координатных приращений, соединенные через блоки совпадения со входами сумматора, выход которого через блок анализа знака оценочной функции подключен к управляющим входам блоков совпадения, и блок анализа знака разности координатных приращений, вход которого подключен к выходу сумматора, а выходы - ко входам регистров координатных приращений, причем вход блока анализа знака разности координатных приращений подключен к выходу сумматора через регистр разности координатных приращений, отличающийся тем, что регистры приращений, блоки совпадения, сумматор, блок анализа знака оценочной функции, блок анализа знака разности координатных приращений, регистр разности координатных приращений дополнительно содержат (n+1)-ый младший разряд.