сплайн-интерполятор

Классы МПК:G06F17/17 вычисление функций приближенными методами, например интерполяцией или экстраполяцией, сглаживанием, методом наименьших квадратов
Автор(ы):, , ,
Патентообладатель(и):Военная академия связи
Приоритеты:
подача заявки:
1998-02-02
публикация патента:

Изобретение относится к автоматике и вычислительной технике. Техническим результатом изобретения является разработка устройства, обеспечивающего более высокую точность интерполяции функций, имеющих непрерывную шестую производную. Устройство включает два блока памяти, пять умножителей, сумматор, регистр, блок управления, счетчик, блок формирования коэффициентов сплайна и блок формирования параметров сплайна. Повышение точности интерполяции достигается путем учета априорной информации о гладкости функции. 3 з.п. ф-лы, 7 ил.
Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4, Рисунок 5, Рисунок 6, Рисунок 7

Формула изобретения

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

2. Сплайн-интерполятор по п.1, отличающийся тем, что блок формирования коэффициентов сплайна выполнен содержащим первый, второй, третий, четвертый, пятый, шестой и седьмой умножители, первый, второй, третий, четвертый, пятый, шестой, седьмой и восьмой элементы задержки и первый, второй и третий сумматоры, причем первая группа входов первого умножителя объединена с первыми группами входов второго, третьего и четвертого умножителей, информационными входами первого, третьего, шестого и восьмого элементов задержки, первой группой информационных входов второго сумматора и одновременно является пятой группой входов блока формирования коэффициентов сплайна и информационной шиной сплайн-интерполятора, вторая группа входов первого умножителя является второй группой входов блока формирования коэффициентов сплайна и одновременно шестой установочной шиной сплайн-интерполятора, а выходы соединены с информационными входами второго элемента задержки, выходы которого соединены со второй группой информационных входов первого сумматора, первая группа информационных входов которого соединена с выходами первого элемента задержки, третья группа информационных входов - с выходами третьего элемента задержки, а выходы соединены с первой группой входов пятого умножителя, вторая группа входов которого является третьей группой входов блока формирования коэффициентов сплайна и одновременно седьмой установочной шиной сплайн-интерполятора, а выходы соединены с информационными входами седьмого элемента задержки, выходы которого соединены с первой группой информационных входов третьего сумматора, вторая группа информационных входов которого соединена с выходами восьмого элемента задержки, третья группа информационных входов - с выходами шестого умножителя, а выходы соединены с первой группой входов седьмого умножителя, вторая группа входов которого является восьмой группой входов блока формирования коэффициентов сплайна и одновременно одиннадцатой установочной шиной сплайн-интерполятора, а выходы являются девятой группой выходов блока формирования коэффициентов сплайна, вторая группа входов четвертого умножителя объединена со второй группой входов второго умножителя и является шестой группой входов блока формирования коэффициентов сплайна и одновременно девятой установочной шиной сплайн-интерполятора, а выходы соединены с информационными входами пятого элемента задержки, выходы которого соединены с четвертой группой информационных входов второго сумматора, вторая группа информационных входов которого соединена с выходами второго умножителя, а третья группа информационных входов соединена с выходами четвертого элемента задержки, информационные входы которого соединены с выходами третьего умножителя, вторая группа входов которого является четвертой группой входов блока формирования коэффициентов сплайна и одновременно восьмой установочной шиной сплайн-интерполятора, управляющий вход шестого элемента задержки объединен с управляющими входами первого, второго, третьего, четвертого, пятого, седьмого и восьмого элементов задержки и управляющими входами первого, второго и третьего сумматоров и одновременно является первым входом блока формирования коэффициентов сплайна, а выходы шестого элемента задержки соединены с пятой группой информационных входов второго сумматора, выходы которого соединены с первой группой входов шестого умножителя, вторая группа входов которого является седьмой группой входов блока формирования коэффициентов сплайна и одновременно десятой установочной шиной сплайн-интерполятора.

3. Сплайн-интерполятор по п.1, отличающийся тем, что блок формирования параметров сплайна выполнен содержащим первый, второй, третий и четвертый умножители, первый, второй, третий, четвертый, пятый и шестой сумматоры, первый, второй, третий, четвертый и пятый блоки возведения в четвертую степень, первый, второй, третий, четвертый и пятый элементы задержки и блок преобразования в дополнительный код, причем первая группа входов первого умножителя является шестой группой входов блока формирования параметров сплайна, вторая группа входов является пятой группой входов блока формирования параметров сплайна, а выходы соединены со входами блока преобразования в дополнительный код, первыми группами информационных входов первого и второго сумматоров и входами первого блока возведения в четвертую степень, выходы которого соединены с информационными входами четвертого элемента задержки, первыми группами входов второго и третьего умножителей, вторые входы которого объединены со второй группой входов четвертого умножителя и являются первой группой входов блока формирования параметров сплайна и одновременно двенадцатой информационной шиной сплайн-интерполятора, а выходы соединены с первой группой информационных входов четвертого сумматора, вторая группа информационных входов которого соединена с выходами второго элемента задержки, а выходы являются одиннадцатой группой выходов блока формирования параметров сплайна, вторая группа информационных входов первого сумматора является третьей группой входов блока формирования параметров сплайна и одновременно четырнадцатой установочной шиной сплайн-интерполятора, а выходы соединены со входами второго блока возведения в четвертую степень, выходы которого соединены с информационными входами первого элемента задержки, выходы которого соединены со второй группой информационных входов пятого сумматора, первая группа входов которого соединена с выходами второго умножителя, вторая группа входов которого является второй группой входов блока формирования параметров сплайна и одновременно тринадцатой установочной шиной сплайн-интерполятора, вторая группа информационных входов второго сумматора объединена со второй группой информационных входов третьего сумматора и является четвертой группой входов блока формирования параметров сплайна и одновременно пятнадцатой установочной шиной сплайн-интерполятора, а выходы второго сумматора соединены со входами третьего блока возведения в четвертую степень, выходы которого соединены с информационными входами второго элемента задержки, первая группа информационных входов третьего сумматора объединена со входами пятого блока возведения в четвертую степень и выходами блока преобразования в дополнительный код, а выходы третьего сумматора соединены со входами четвертого блока возведения в четвертую степень, выходы которого соединены с информационными входами третьего элемента задержки, выходы которого соединены с первой группой информационных входов шестого сумматора, вторая группа информационных входов которого соединена с выходами четвертого умножителя и третьей группой информационных входов пятого сумматора, а выходы являются девятой группой выходов блока формирования параметров сплайна, выходы пятого блока возведения в четвертую степень соединены с первой группой входов четвертого умножителя и информационными входами пятого элемента задержки, выходы которого являются восьмой группой выходов блока формирования параметров сплайна, управляющий вход первого элемента задержки объединен с управляющими входами второго, третьего, четвертого и пятого элементов задержки, управляющими входами первого, второго, третьего, четвертого, пятого и шестого сумматоров и одновременно является седьмым входом блока формирования параметров сплайна, выходы пятого сумматора являются десятой группой выходов блока формирования параметров сплайна, а выходы четвертого элемента задержки - двенадцатой группой выходов блока формирования параметров сплайна.

4. Сплайн-интерполятор по п.1, отличающийся тем, что блок управления выполнен содержащим первый и второй RS-триггеры, первый, второй, третий и четвертый блоки сравнения, первый, второй, третий и четвертый элементы И, первый и второй счетчики, элемент НЕ и элемент задержки, причем S-вход первого RS-триггера объединен со входом обнуления первого счетчика, S-входом второго RS-триггера, управляющим входом второго счетчика и одновременно является вторым входом блока управления и шиной запуска сплайн-интерполятора, R-вход первого RS-триггера соединен с выходом первого блока сравнения, а выход соединен с первым входом первого элемента И, второй вход которого является первым входом блока управления и одновременно тактовой шиной сплайн-интерполятора, а выход соединен со вторым входом четвертого элемента И и первым входом второго элемента И, выход которого является девятым выходом блока управления и одновременно соединен с первым входом третьего элемента И и счетным входом первого счетчика, выходы которого соединены с первой группой входов третьего блока сравнения и первой группой входов второго блока сравнения, вторая группа входов которого является пятой группой входов блока управления и одновременно третьей установочной шиной сплайн-интерполятора, а выход соединен со вторым входом третьего элемента И, выход которого является восьмым выходом блока управления, вторая группа входов третьего блока сравнения является шестой группой входов блока управления и одновременно четвертой установочной шиной сплайн-интерполятора, а выход соединен со вторым входом второго элемента И и входом элемента НЕ, выход которого соединен с R-входом второго RS-триггера, инверсный выход которого соединен с первым входом четвертого элемента И, выход которого является одиннадцатым выходом блока управления и одновременно соединен со счетным входом второго счетчика, информационные входы которого объединены со второй группой входов первого блока сравнения и являются четвертой группой входов блока управления и одновременно второй установочной шиной сплайн-интерполятора, а выходы второго счетчика соединены с первой группой входов четвертого блока сравнения, вторая группа входов которого является седьмой группой входов блока управления и одновременно пятой установочной шиной сплайн-интерполятора, а выход соединен со входом обнуления второго счетчика и входом элемента задержки, выход которого является десятым выходом блока управления, а первая группа входов первого элемента сравнения является третьей группой входов блока управления.

Описание изобретения к патенту

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

Известные устройства (а.с. СССР N 1405074 G 06 F 15/353 от 27.10.1986, а. с. СССР N 1686461 G 06 F 15/353 от 13.02.1989) позволяют воспроизводить широкий класс функциональных зависимостей, но обладают низкой точностью.

Наиболее близким к заявляемому устройству по своей технической сущности является "Сплайн-интерполятор" (а. с. СССР N 1686461 G 06 F 15/353 от 13.02.1989), выбранный в качестве устройства-прототипа.

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

Известное техническое решение обладает недостаточной точностью интерполяции, которая характеризуется погрешностью интерполяции, равной

сплайн-интерполятор, патент № 2140098

где f(3)max - максимум третьей производной функции f(x);

h - расстояние между отсчетами функции f(x).

Причем, эта точность обеспечивается для функций, имеющих непрерывную третью производную (f(x) сплайн-интерполятор, патент № 2140098 C3) . При интерполяции функций, имеющих непрерывную шестую производную (f(x) сплайн-интерполятор, патент № 2140098 C6) в данном устройстве не полностью учитывается информация о гладкости функций, вследствие чего прототип не обеспечивает необходимой точности.

Целью изобретения является разработка устройства, обеспечивающего более высокую точность интерполяции функций, имеющих непрерывную шестую производную (f(x) сплайн-интерполятор, патент № 2140098 C6).

Поставленная цель достигается тем, что в известный сплайн-интерполятор, содержащий первый и второй блоки памяти, первый, второй, третий и четвертый умножители, сумматор, регистр, счетчик и блок управления, первый вход которого является тактовой шиной сплайн-интерполятора, второй вход - шиной запуска сплайн-интерполятора, а третья группа входов соединена с соответствующими выходами счетчика, информационные входы которого объединены с адресными входами первого блока памяти и первой установочной шиной сплайн-интерполятора, а вычитающий вход объединен с управляющим входом регистра и десятым выходом блока управления, восьмой выход которого соединен со входом управления второго блока памяти, первая, вторая, третья и четвертая группы выходов которого соединены со вторыми группами входов соответственно первого, второго, третьего и четвертого умножителей, выходы которых соединены соответственно с первой, второй, третьей и четвертой группой информационных входов сумматора, выходы которого соединены с информационными входами регистра, выходы которого являются выходной шиной сплайн-интерполятора, дополнительно введены пятый умножитель, блок формирования параметров сплайна и блок формирования коэффициентов сплайна. Вторая группа входов блока формирования коэффициентов сплайна является шестой установочной шиной сплайн-интерполятора, третья группа входов - седьмой установочной шиной сплайн-интерполятора, четвертая группа входов - восьмой установочной шиной сплайн-интерполятора, пятая группа входов - информационной шиной сплайн-интерполятора, шестая группа входов - девятой установочной шиной сплайн-интерполятора, седьмая группа входов - десятой установочной шиной сплайн-интерполятора, восьмая группа входов - одиннадцатой установочной шиной сплайн-интерполятора, девятая группа выходов соединена с информационными входами второго блока памяти, а первый вход соединен с девятым выходом блока управления. Четвертая группа входов блока управления является второй установочной шиной сплайн-интерполятора, пятая группа входов - третьей установочной шиной сплайн-интерполятора, шестая группа входов - четвертой установочной шиной сплайн-интерполятора, седьмая группа входов - пятой установочной шиной сплайн-интерполятора, а второй вход соединен с управляющим входом счетчика. Выходы счетчика соединены с шестой группой входов блока формирования параметров сплайна. Первая группа входов блока формирования параметров сплайна является двенадцатой установочной шиной сплайн-интерполятора, вторая группа входов - тринадцатой установочной шиной сплайн-интерполятора, третья группа входов - четырнадцатой установочной шиной сплайн-интерполятора, четвертая группа входов - пятнадцатой установочной шиной сплайн-интерполятора, пятая группа входов соединена с выходами первого блока памяти, седьмой вход объединен с управляющим входом сумматора и одиннадцатым выходом блока управления, а двенадцатая, одиннадцатая, десятая, девятая и восьмая группы выходов соединены с первыми группами входов соответственно первого, второго, третьего, четвертого и пятого умножителей. Вторая группа входов пятого умножителя соединена с пятой группой выходов второго блока памяти, а выходы соединены с пятой группой информационных входов сумматора.

Блок формирования коэффициентов сплайна содержит первый, второй, третий, четвертый, пятый, шестой и седьмой умножители, первый, второй, третий, четвертый, пятый, шестой, седьмой и восьмой элементы задержки, и первый, второй и третий сумматоры. Первая группа входов первого умножителя объединена с первыми группами входов второго, третьего и четвертого умножителей, информационными входами первого, третьего, шестого и восьмого элементов задержки, первой группой информационных входов второго сумматора и одновременно является пятой группой входов блока формирования коэффициентов сплайна и информационной шиной сплайн-интерполятора. Вторая группа входов первого умножителя является второй группой входов блока формирования коэффициентов сплайна и одновременно шестой установочной шиной сплайн-интерполятора, а выходы соединены с информационными входами второго элемента задержки. Выходы второго элемента задержки соединены со второй группой информационных входов первого сумматора. Первая группа информационных входов первого сумматора соединена с выходами первого элемента задержки, третья группа информационных входов - с выходами третьего элемента задержки, а выходы соединены с первой группой входов пятого умножителя. Вторая группа входов пятого умножителя является третьей группой входов блока формирования коэффициентов сплайна и одновременно седьмой установочной шиной сплайн-интерполятоpa, а выходы соединены с информационными входами седьмого элемента задержки. Выходы седьмого элемента задержки соединены с первой группой информационных входов третьего сумматора. Вторая группа информационных входов третьего сумматора соединена с выходами восьмого элемента задержки, третья группа информационных входов - с выходами шестого умножителя, а выходы соединены с первой группой входов седьмого умножителя. Вторая группа входов седьмого умножителя является восьмой группой входов блока формирования коэффициентов сплайна и одновременно одиннадцатой установочной шиной сплайн-интерполятора, а выходы являются девятой группой выходов блока формирования коэффициентов сплайна. Вторая группа входов четвертого умножителя объединена со второй группой входов второго умножителя и является шестой группой входов блока формирования коэффициентов сплайна и одновременно девятой установочной шиной сплайн-интерполятора, а выходы соединены с информационными входами пятого элемента задержки. Выходы пятого элемента задержки соединены с четвертой группой информационных входов второго сумматора. Вторая группа информационных входов второго сумматора соединена с выходами второго умножителя, а третья группа информационных входов соединена с выходами четвертого элемента задержки. Информационные входы четвертого элемента задержки соединены с выходами третьего умножителя. Вторая группа входов третьего умножителя является четвертой группой входов блока формирования коэффициентов сплайна и одновременно восьмой установочной шиной сплайн-интерполятора. Управляющий вход шестого элемента задержки объединен с управляющими входами первого, второго, третьего, четвертого, пятого, седьмого и восьмого элементов задержки и управляющими входами первого, второго и третьего сумматоров и одновременно является первым входом блока формирования коэффициентов сплайна. Выходы шестого элемента задержки соединены с пятой группой информационных входов второго сумматора. Выходы второго сумматора соединены с первой группой входов шестого умножителя. Вторая группа входов шестого умножителя является седьмой группой входов блока формирования коэффициентов сплайна и одновременно десятой установочной шиной сплайн-интерполятора.

Блок формирования параметров сплайна содержит первый, второй, третий и четвертый умножители, первый, второй, третий, четвертый, пятый и шестой сумматоры, первый, второй, третий, четвертый и пятый блоки возведения в четвертую степень, первый, второй, третий, четвертый и пятый элементы задержки и блок преобразования в дополнительный код. Первая группа входов первого умножителя является шестой группой входов блока формирования параметров сплайна, вторая группа входов является пятой группой входов блока формирования параметров сплайна, а выходы соединены со входами блока преобразования в дополнительный код, первыми группами информационных входов первого и второго сумматоров и входами первого блока возведения в четвертую степень. Выходы первого блока возведения в четвертую степень соединены с информационными входами четвертого элемента задержки, первыми группами входов второго и третьего умножителей. Вторые входы третьего умножителя объединены со второй группой входов четвертого умножителя и являются первой группой входов блока формирования параметров сплайна и одновременно двенадцатой информационной шиной сплайн-интерполятора, а выходы соединены с первой группой информационных входов четвертого сумматора. Вторая группа информационных входов четвертого сумматора соединена с выходами второго элемента задержки, а выходы являются одиннадцатой группой выходов блока формирования параметров сплайна. Вторая группа информационных входов первого сумматора является третьей группой входов блока формирования параметров сплайна и одновременно четырнадцатой установочной шиной сплайн-интерполятора, а выходы соединены со входами второго блока возведения в четвертую степень. Выходы второго блока возведения в четвертую степень соединены с информационными входами первого элемента задержки. Выходы первого элемента задержки соединены со второй группой информационных входов пятого сумматора. Первая группа входов пятого сумматора соединена с выходами второго умножителя. Вторая группа входов второго умножителя является второй группой входов блока формирования параметров сплайна и одновременно тринадцатой установочной шиной сплайн-интерполятора. Вторая группа информационных входов второго сумматора объединена со второй группой информационных входов третьего сумматора и является четвертой группой входов блока формирования параметров сплайна и одновременно пятнадцатой установочной шиной сплайн-интерполятора, а выходы второго сумматора соединены со входами третьего блока возведения в четвертую степень. Выходы третьего блока возведения в четвертую степень соединены с информационными входами второго элемента задержки. Первая группа информационных входов третьего сумматора объединена со входами пятого блока возведения в четвертую степень и выходами блока преобразования в дополнительный код. Выходы третьего сумматора соединены со входами четвертого блока возведения в четвертую степень. Выходы четвертого блока возведения в четвертую степень соединены с информационными входами третьего элемента задержки. Выходы третьего элемента задержки соединены с первой группой информационных входов шестого сумматора. Вторая группа информационных входов шестого сумматора соединена с выходами четвертого умножителя и третьей группой информационных входов пятого сумматора, а выходы являются девятой группой выходов блока формирования параметров сплайна. Выходы пятого блока возведения в четвертую степень соединены с первой группой входов четвертого умножителя и информационными входами пятого элемента задержки. Выходы пятого элемента задержки являются восьмой группой выходов блока формирования параметров сплайна. Управляющий вход первого элемента задержки объединен с управляющими входами второго, третьего, четвертого и пятого элементов задержки, управляющими входами первого, второго, третьего, четвертого, пятого и шестого сумматоров и одновременно является седьмым входом блока формирования параметров сплайна. Выходы пятого сумматора являются десятой группой выходов блока формирования параметров сплайна. Выходы четвертого элемента задержки являются двенадцатой группой выходов блока формирования параметров сплайна.

Блок управления содержит первый и второй RS-триггеры, первый, второй, третий и четвертый блоки сравнения, первый, второй, третий и четвертый элементы И, первый и второй счетчики, элемент НЕ и элемент задержки. S-вход первого RS-триггера объединен со входом обнуления первого счетчика, S-входом второго RS-триггера, управляющим входом второго счетчика и одновременно является вторым входом блока управления и шиной запуска сплайн-интерполятора. R-вход первого RS-триггера соединен с выходом первого блока сравнения, а выход соединен с первым входом первого элемента И. Второй вход первого элемента И является первым входом блока управления и одновременно тактовой шиной сплайн-интерполятора, а выход соединен со вторым входом четвертого элемента И и первым входом второго элемента И. Выход второго элемента И является девятым выходом блока управления и одновременно соединен с первым входом третьего элемента И и счетным входом первого счетчика. Выходы первого счетчика соединены с первой группой входов третьего блока сравнения и первой группой входов второго блока сравнения. Вторая группа входов второго блока сравнения является пятой группой входов блока управления и одновременно третьей установочной шиной сплайн-интерполятора, а выход соединен со вторым входом третьего элемента И. Выход третьего элемента И является восьмым выходом блока управления. Вторая группа входов третьего блока сравнения является шестой группой входов блока управления и одновременно четвертой установочной шиной сплайн-интерполятора, а выход соединен со вторым входом второго элемента И и входом элемента НЕ. Выход элемента НЕ соединен с R-входом второго RS-триггера, инверсный выход которого соединен с первым входом четвертого элемента И. Выход четвертого элемента И является одиннадцатым выходом блока управления и одновременно соединен со счетным входом второго счетчика. Информационные входы второго счетчика объединены со второй группой входов первого блока сравнения и являются четвертой группой входов блока управления и одновременно второй установочной шиной сплайн-интерполятора. Выходы второго счетчика соединены с первой группой входов четвертого блока сравнения. Вторая группа входов четвертого блока сравнения является седьмой группой входов блока управления и одновременно пятой установочной шиной сплайн-интерполятора, а выход соединен со входом обнуления второго счетчика и входом элемента задержки. Выход элемента задержки является десятым выходом блока управления. Первая группа входов первого элемента сравнения является третьей группой входов блока управления.

Перечисленная новая совокупность существенных признаков заявленного устройства обеспечивает более высокую точность интерполяции функций, имеющих непрерывную шестую производную (f(x) сплайн-интерполятор, патент № 2140098 C6) . Это достигается тем, что в работе устройства учитываются априорная информация о степени гладкости функции.

Так, из [1, 2] известно, что для интерполяции функции сплайнами минимального шаблона четвертой степени можно получить следующее выражение:

сплайн-интерполятор, патент № 2140098

сплайн-интерполятор, патент № 2140098

f(x) - интерполируемая функция;

fi - i-й отсчет функции f(x);

сплайн-интерполятор, патент № 2140098 сплайн-интерполятор, патент № 2140098 [-0.5, 0.5].

Реализация (1) в виде устройства позволяет вычислять функции f(x) сплайн-интерполятор, патент № 2140098 C6 с точностью, определяемой погрешностью [2]

сплайн-интерполятор, патент № 2140098

где f(5)max - максимум пятой производной функции f(x);

h - шаг интерполяции.

Точность же устройства-прототипа не лучше

сплайн-интерполятор, патент № 2140098

где f(3)max - максимум третьей производной функции f(x).

Поэтому, например, для функций f сплайн-интерполятор, патент № 2140098 C6 при h = 0.1 и в случае f(3)max сплайн-интерполятор, патент № 2140098 f(5)max выигрыш сплайн-интерполятор, патент № 21400981/сплайн-интерполятор, патент № 21400982 может достигать значение, превышающее пятьсот.

Заявленное устройство поясняется чертежами, на которых:

на фиг. 1 приведена структурная схема заявленного устройства;

на фиг. 2 представлена структурная схема блока формирования коэффициентов сплайна;

на фиг. 3 представлена структурная схема блока формирования параметров сплайна;

на фиг. 4 приведена структурная схема блока управления;

на фиг. 5 показан один из возможных вариантов построения второго блока памяти;

на фиг. 6 показан вариант реализации элемента задержки;

на фиг. 7 представлен один из возможных вариантов реализации блока возведения в четвертую степень.

Сплайн-интерполятор, показанный на фиг. 1, состоит из первого 1 и второго 6 блоков памяти, первого 7, второго 8, третьего 9, четвертого 10 и пятого 11 умножителей, сумматора 12, регистра 13, счетчика 2, блока формирования коэффициентов сплайна 4, блока формирования параметров сплайна 5 и блока управления 3. Первый вход блока управления 3 является тактовой шиной 16 сплайн-интерполятора, второй вход - шиной запуска 17 сплайн-интерполятора. Третья группа входов блока управления 3 соединена с соответствующими выходами счетчика 2, информационные входы которого объединены с адресными входами первого блока памяти 1 и первой установочной шиной 14 сплайн-интерполятора, а вычитающий вход объединен с управляющим входом регистра 13 и десятым выходом блока управления 3. Восьмой выход блока управления 3 соединен со входом управления второго блока памяти 6. Первая, вторая, третья и четвертая группы выходов блока памяти 6 соединены со вторыми группами входов соответственно первого 7, второго 8, третьего 9 и четвертого 10 умножителей, выходы которых соединены соответственно с первой, второй, третьей и четвертой группой информационных входов сумматора 12. Выходы сумматора 12 соединены с информационными входами регистра 13, выходы которого являются выходной шиной сплайн-интерполятора. Вторая группа входов блока формирования коэффициентов сплайна 4 является шестой установочной шиной 21 сплайн-интерполятора, третья группа входов - седьмой установочной шиной 22 сплайн-интерполятора, четвертая группа входов - восьмой установочной шиной 23 сплайн-интерполятора, пятая группа входов - информационной шиной 24 сплайн-интерполятора, шестая группа входов - девятой установочной шиной 25 сплайн-интерполятора, седьмая группа входов - десятой установочной шиной 26 сплайн-интерполятора, восьмая группа входов - одиннадцатой установочной шиной 27 сплайн-интерполятора, девятая группа выходов соединена с информационными входами второго блока памяти 6, а первый вход соединен с девятым выходом блока управления 3. Четвертая группа входов блока управления 3 является второй установочной шиной 15 сплайн-интерполятора, пятая группа входов - третьей установочной шиной 18 сплайн-интерполятора, шестая группа входов - четвертой установочной шиной 19 сплайн-интерполятора, седьмая группа входов - пятой установочной шиной 20 сплайн-интерполятора, а второй вход соединен с управляющим входом счетчика 2. Выходы счетчика 2 соединены с шестой группой входов блока формирования параметров сплайна 5. Первая группа входов блока формирования параметров сплайна 5 является двенадцатой информационной шиной 28 сплайн-интерполятора, вторая группа входов - тринадцатой установочной шиной 29 сплайн-интерполятора, третья группа входов - четырнадцатой установочной шиной 30 сплайн-интерполятора, четвертая группа входов - пятнадцатой установочной шиной 31 сплайн-интерполятора, пятая группа входов соединена с выходами первого блока памяти 1, седьмой вход объединен с управляющим входом сумматора 12 и одиннадцатым выходом блока управления 3, а двенадцатая, одиннадцатая, десятая, девятая и восьмая группы выходов соединены с первыми группами входов соответственно первого 7, второго 8, третьего 9, четвертого 10 и пятого 11 умножителей. Вторая группа входов пятого умножителя 11 соединена с пятой группой выходов второго блока памяти 6, а выходы соединены с пятой группой информационных входов сумматора 12.

Блок формирования коэффициентов сплайна 4, показанный на фиг. 2, состоит из первого 41, второго 42, третьего 43, четвертого 44, пятого 412, шестого 416 и седьмого 418 умножителей, первого 45, второго 46, третьего 47, четвертого 48, пятого 49, шестого 410, седьмого 414 и восьмого 415 элементов задержки и первого 411, второго 413 и третьего 417 сумматоров. Первая группа входов первого умножителя 41 объединена с первыми группами входов второго 42, третьего 43 и четвертого 44 умножителей, информационными входами первого 45, третьего 47, шестого 410 и восьмого 415 элементов задержки, первой группой информационных входов второго сумматора 413 и одновременно является пятой группой входов 4.5 блока формирования коэффициентов сплайна 4 и информационной шиной 24 сплайн-интерполятора. Вторая группа входов первого умножителя 41 является второй группой входов 4.2 блока формирования коэффициентов сплайна 4 и одновременно шестой установочной шиной 21 сплайн-интерполятора, а выходы соединены с информационными входами второго элемента задержки 46. Выходы второго элемента задержки 46 соединены со второй группой информационных входов первого сумматора 411. Первая группа информационных входов первого сумматора 411 соединена с выходами первого элемента задержки 45, третья группа информационных входов - с выходами третьего элемента задержки 47, а выходы соединены с первой группой входов пятого умножителя 412. Вторая группа входов пятого умножителя 412 является третьей группой входов 4.3 блока формирования коэффициентов сплайна 4 и одновременно седьмой установочной шиной 22 сплайн-интерполятора, а выходы соединены с информационными входами седьмого элемента задержки 414. Выходы седьмого элемента задержки 414 соединены с первой группой информационных входов третьего сумматора 417. Вторая группа информационных входов третьего сумматора 417 соединена с выходами восьмого элемента задержки 415, третья группа информационных входов - с выходами шестого умножителя 416, а выходы соединены с первой группой входов седьмого умножителя 418. Вторая группа входов седьмого умножителя 418 является восьмой группой входов 4.8 блока формирования коэффициентов сплайна 4 и одновременно одиннадцатой установочной шиной 27 сплайн-интерполятора, а выходы являются девятой группой выходов 4.9 блока формирования коэффициентов сплайна 4. Вторая группа входов четвертого умножителя 44 объединена со второй группой входов второго умножителя 42 и является шестой группой входов 4.6 блока формирования коэффициентов сплайна 4 и одновременно девятой установочной шиной 25 сплайн-интерполятора, а выходы соединены с информационными входами пятого элемента задержки 49. Выходы пятого элемента задержки 49 соединены с четвертой группой информационных входов второго сумматора 413. Вторая группа информационных входов второго сумматора 413 соединена с выходами второго умножителя 42, а третья группа информационных входов соединена с выходами четвертого элемента задержки 48. Информационные входы четвертого элемента задержки 48 соединены с выходами третьего умножителя 43. Вторая группа входов третьего умножителя 43 является четвертой группой входов 4.4 блока формирования коэффициентов 4 сплайна и одновременно восьмой установочной шиной 23 сплайн-интерполятора. Управляющий вход шестого элемента задержки 410 объединен с управляющими входами первого 45, второго 46, третьего 47, четвертого 48, пятого 49, седьмого 414 и восьмого 415 элементов задержки и управляющими входами первого 411, второго 413 и третьего сумматоров 417 и одновременно является первым входом 4.1 блока формирования коэффициентов сплайна 4. Выходы шестого элемента задержки 410 соединены с пятой группой информационных входов второго сумматора 413. Выходы второго сумматора 413 соединены с первой группой входов шестого умножителя 416. Вторая группа входов шестого умножителя 416 является седьмой группой входов 4.7 блока формирования коэффициентов сплайна 4 и одновременно десятой установочной шиной 26 сплайн-интерполятора.

Блок формирования параметров сплайна 5, показанный на фиг. 3, состоит из первого 51, второго 511, третьего 512 и четвертого 516 умножителей, первого 53, второго 54, третьего 55, четвертого 518, пятого 519 и шестого 520 сумматоров, первого 56, второго 57, третьего 58, четвертого 59 и пятого 510 блоков возведения в четвертую степень, первого 513, второго 514, третьего 515, четвертого 517 и пятого 512 элементов задержки и блока преобразования в дополнительный код 52. Первая группа входов первого умножителя 51 является шестой группой входов 5.6 блока формирования параметров сплайна 5, вторая группа входов является пятой группой входов 5.5 блока формирования параметров сплайна 5, а выходы соединены со входами блока преобразования в дополнительный код 52, первыми группами информационных входов первого 53 и второго 54 сумматоров и входами первого блока возведения в четвертую степень 56. Выходы первого блока возведения в четвертую степень 56 соединены с информационными входами четвертого элемента задержки 517, первыми группами входов второго 511 и третьего 512 умножителей. Вторые входы третьего умножителя 512 объединены со второй группой входов четвертого умножителя 516 и являются первой группой входов 5.1 блока формирования параметров сплайна 5 и одновременно двенадцатой информационной шиной 28 сплайн-интерполятора, а выходы соединены с первой группой информационных входов четвертого сумматора 518. Вторая группа информационных входов четвертого сумматора 518 соединена с выходами второго элемента задержки 514, а выходы являются одиннадцатой группой выходов 5.11 блока формирования параметров сплайна 5. Вторая группа информационных входов первого сумматора 53 является третьей группой входов 5.3 блока формирования параметров сплайна 5 и одновременно четырнадцатой установочной шиной 30 сплайн-интерполятора, а выходы соединены со входами второго блока возведения в четвертую степень 57. Выходы второго блока возведения в четвертую степень 57 соединены с информационными входами первого элемента задержки 513. Выходы первого элемента задержки 513 соединены со второй группой информационных входов пятого сумматора 519. Первая группа входов пятого сумматора 519 соединена с выходами второго умножителя 511. Вторая группа входов второго умножителя 511 является второй группой входов 5.2 блока формирования параметров сплайна 5 и одновременно тринадцатой установочной шиной 29 сплайн-интерполятора. Вторая группа информационных входов второго сумматора 54 объединена со второй группой информационных входов третьего сумматора 55 и является четвертой группой входов 5.4 блока формирования параметров сплайна 4 и одновременно пятнадцатой установочной шиной 31 сплайн-интерполятора, а выходы второго сумматора 54 соединены со входами третьего блока возведения в четвертую степень 58. Выходы третьего блока возведения в четвертую степень 58 соединены с информационными входами второго элемента задержки 514. Первая группа информационных входов третьего сумматора 55 объединена со входами пятого блока возведения в четвертую степень 510 и выходами блока преобразования в дополнительный код 52. Выходы третьего сумматора 55 соединены со входами четвертого блока возведения в четвертую степень 59. Выходы четвертого блока возведения в четвертую степень 59 соединены с информационными входами третьего элемента задержки 515. Выходы третьего элемента задержки 515 соединены с первой группой информационных входов шестого сумматора 520. Вторая группа информационных входов шестого сумматора 520 соединена с выходами четвертого умножителя 516 и третьей группой информационных входов пятого сумматора 519, а выходы являются девятой группой выходов 5.9 блока формирования параметров сплайна 5. Выходы пятого блока возведения в четвертую степень 510 соединены с первой группой входов четвертого умножителя 516 и информационными входами пятого элемента задержки 521. Выходы пятого элемента задержки 521 являются восьмой группой выходов 5.8 блока формирования параметров сплайна 5. Управляющий вход первого элемента задержки 513 объединен с управляющими входами второго 514, третьего 515, четвертого 517 и пятого 521 элементов задержки, управляющими входами первого 53, второго 54, третьего 55, четвертого 518, пятого 519 и шестого 520 сумматоров и одновременно является седьмым входом 5.7 блока формирования параметров сплайна 5. Выходы пятого сумматора 519 являются десятой группой выходов 5.10 блока формирования параметров сплайна 5. Выходы четвертого элемента задержки 517 являются двенадцатой группой выходов 5.12 блока формирования параметров сплайна 5.

Блок управления 3, показанный на фиг. 4, состоит из первого 31 и второго 310 RS-триггеров, первого 32, второго 36, третьего 38 и четвертого 313 блоков сравнения, первого 33, второго 32, третьего 37 и четвертого 311 элементов И, первого 35 и второго 312 счетчиков, элемента НЕ 39 и элемента задержки 314. S-вход первого RS-триггера 31 объединен со входом обнуления первого счетчика 35, S-входом второго RS-триггера 310, управляющим входом второго счетчика 312 и одновременно является вторым входом 3.2 блока управления 3 и шиной запуска 17 сплайн-интерполятора. R-вход первого RS-триггера 31 соединен с выходом первого блока сравнения 32, а выход соединен с первым входом первого элемента И 33. Второй вход первого элемента И 33 является первым входом 3.1 блока управления 3 и одновременно тактовой шиной 16 сплайн-интерполятора, а выход соединен со вторым входом четвертого элемента И 311 и первым входом второго элемента И 34. Выход второго элемента И 34 является девятым выходом 3.9 блока управления 3 и одновременно соединен с первым входом третьего элемента И 37 и счетным входом первого счетчика 35. Выходы первого счетчика 35 соединены с первой группой входов третьего блока сравнения 38 и первой группой входов второго блока сравнения 36. Вторая группа входов второго блока сравнения 36 является пятой группой входов 3.5 блока управления 3 и одновременно третьей установочной шиной 18 сплайн-интерполятора, а выход соединен со вторым входом третьего элемента И 37. Выход третьего элемента И 37 является восьмым выходом 3.8 блока управления 3. Вторая группа входов третьего блока сравнения 38 является шестой группой входов 3.6 блока управления 3 и одновременно четвертой установочной шиной 19 сплайн-интерполятора, а выход соединен со вторым входом второго элемента И 34 и входом элемента НЕ 39. Выход элемента НЕ 39 соединен с R-входом второго RS-триггера 310, инверсный выход которого соединен с первым входом четвертого элемента И 311. Выход четвертого элемента И 311 является одиннадцатым выходом 3.11 блока управления 3 и одновременно соединен со счетным входом второго счетчика 312. Информационные входы второго счетчика 312 объединены со второй группой входов первого блока сравнения 32 и являются четвертой группой входов 3.4 блока управления 3 и одновременно второй установочной шиной 15 сплайн-интерполятора. Выходы второго счетчика 312 соединены с первой группой входов четвертого блока сравнения 313. Вторая группа входов четвертого блока 313 сравнения является седьмой группой входов 3.7 блока управления 3 и одновременно пятой установочной шиной 20 сплайн-интерполятора, а выход соединен со входом обнуления второго счетчика 312 и входом элемента задержки 314. Выход элемента задержки 314 является десятым выходом 3.10 блока управления 3. Первая группа входов первого элемента сравнения 32 является третьей группой входов 3.3 блока управления 3.

Второй блок памяти 6, показанный на фиг. 5, выполнен содержащим первый 61, второй 62, третий 63, четвертый 64 и пятый 65 регистры, соединенные последовательно. Информационные входы первого регистра 61 являются группой информационных входов блока. Выходы первого регистра 61 являются первой группой выходов блока. Выходы второго регистра 62 являются второй группой выходов блока. Выходы третьего регистра 63 являются третьей группой выходов блока. Выходы четвертого регистра 64 являются четвертой группой выходов блока. Выходы пятого регистра 65 являются пятой группой выходов блока. Управляющий вход первого регистра 61 объединен с управляющими входами второго 62, третьего 63, четвертого 64 и пятого 65 регистров и является управляющим входом блока.

Элемент задержки 517, показанный на фиг. 6, содержит n каскадно соединенных регистров. Входы первого 5171 регистра являются группой информационных входов элемента задержки. Выходы каждого регистра подключены к соответствующим входам последующего регистра, кроме n-го регистра 517n, выходы которого являются группой выходов элемента задержки. Управляющие входы регистров объединены и подключены к управляющему входу блока 517.

Блок возведения в четвертую степень 56, показанный на фиг. 7, состоит из первого 561 и второго 562 умножителей. Первая группа входов первого умножителя 561 объединена со второй группой его входов и является группой входов блока. Группа выходов первого умножителя 561 соединена с первой и второй группами входов второго умножителя 561, группа выходов которого является группой выходов блока.

Заявленное устройство работает следующим образом.

В исходном состоянии на первую установочную шину 14 подается код числа М. На тактовую шину 16 поступают тактовые импульсы типа меандр. На второй установочной шине 15 присутствует код числа 0, на третьей установочной шине 18 - код числа 8, на четвертой установочной шине 19 - код числа 12, на пятой установочной шине 20 - код числа 6, на шестой установочной шине 21 - код числа - 2, на седьмой установочной шине 22 код числа - 5/24, на восьмой установочной шине 23 - код числа 6, на девятой установочной шине 25 - код числа - 4, на десятой установочной шине 26 - код числа 47/1152, на одиннадцатой установочной шине 27 - код числа 1/24, на двенадцатой установочной шине 28 - код числа 5, на тринадцатой установочной шине 29 - код числа 10, на четырнадцатой установочной шине 30 - код числа 2, на пятнадцатой установочной шине 31 - код числа 1. В первом блоке памяти 1 записаны значения сплайн-интерполятор, патент № 2140098 = сплайн-интерполятор, патент № 21400980 таким образом, что в ячейке с адресом М хранится значение сплайн-интерполятор, патент № 21400980 равное 1/(1 + М).

С подачей на шину запуска 17 импульса положительной полярности в счетчик 2 записывается код числа М. На информационную шину 25 подаются отсчеты функции f(x): f-4, f-3,..., f4, которые поступают в блок формирования коэффициентов сплайна 4. Под воздействием управляющих сигналов, подаваемых на шестую 21, седьмую 22, восьмую 23, девятую 24, десятую 26 и одиннадцатую 27 установочные шины, а также сигналов, поступающих с девятого выхода блока управления 3, в блоке формирования коэффициентов сплайна 4 происходит вычисление коэффициента (1/24) сплайн-интерполятор, патент № 2140098 g-2. Указанное значение переписывается во второй блок памяти 6 под воздействием импульса, поступающего на его управляющий вход с восьмого выхода блока управления 3.

Далее аналогичным образом в блоке формирования коэффициентов сплайна 4 вычисляются значения (1/24) сплайн-интерполятор, патент № 2140098 g-1, (1/24) сплайн-интерполятор, патент № 2140098 g0, (1/24) сплайн-интерполятор, патент № 2140098 g1, (1/24) сплайн-интерполятор, патент № 2140098 g2, которые записываются во второй блок памяти 6.

После этого под воздействием информационных сигналов (поступающих с выходов блоков 1 и 2), а также подаваемых на двенадцатую 28, тринадцатую 29, четырнадцатую 30 и пятнадцатую 31 установочные шины управляющих сигналов (с одиннадцатого выхода блока управления 3), в блоке формирования параметров сплайна 5 происходит вычисление значений: сплайн-интерполятор, патент № 21400984, [(1+сплайн-интерполятор, патент № 2140098)4-5сплайн-интерполятор, патент № 21400984], [(сплайн-интерполятор, патент № 2140098+2)4-5(сплайн-интерполятор, патент № 2140098+1)4+10сплайн-интерполятор, патент № 21400984], [(2-сплайн-интерполятор, патент № 2140098)4-5(1-сплайн-интерполятор, патент № 2140098)4], (1-сплайн-интерполятор, патент № 2140098)4. Полученные величины поступают на первые группы входов первого 7, второго 8, третьего 9, четвертого 10 и пятого 11 умножителей. На вторые входы последних поступают соответствующие значения (1/24) сплайн-интерполятор, патент № 2140098 g-2, (1/24) сплайн-интерполятор, патент № 2140098 g-1, (1/24) сплайн-интерполятор, патент № 2140098 g0, (1/24) сплайн-интерполятор, патент № 2140098 g1 и (1/24) сплайн-интерполятор, патент № 2140098 g2.

В результате выполнения операций умножения на выходах первого 7, второго 8, третьего 9, четвертого 10 и пятого II умножителей формируются произведения (1/24)сплайн-интерполятор, патент № 2140098gn+2сплайн-интерполятор, патент № 2140098сплайн-интерполятор, патент № 21400984, (1/24)сплайн-интерполятор, патент № 2140098gn+1[(1+сплайн-интерполятор, патент № 2140098)4-5сплайн-интерполятор, патент № 21400984], (1/24)сплайн-интерполятор, патент № 2140098gn[(сплайн-интерполятор, патент № 2140098+2)4-5(сплайн-интерполятор, патент № 2140098+1)4+10сплайн-интерполятор, патент № 21400984], (1/24)сплайн-интерполятор, патент № 2140098gn-1[(2-сплайн-интерполятор, патент № 2140098)4-5(1-сплайн-интерполятор, патент № 2140098)4], (1/24)gn-2(1-сплайн-интерполятор, патент № 2140098)4 Полученные величины поступают на соответствующие группы информационных входов сумматора 12.

В блоке 12 производится суммирование указанных произведений под воздействием сигнала, поступающего на его управляющий вход (с одиннадцатого выхода блока управления 3). В результате на выходе сумматора 12 формируется значение функции f(x) в первой точке интерполяции.

Полученное значение функции f(x) записывается в регистр 13 при помощи единичного импульса, поступающего с десятого выхода блока управления 3 на вход записи регистра 13. Кроме того, этот же единичный импульс поступает на вычитающий вход счетчика 2, уменьшая его содержимое на единицу.

Далее алгоритм работы устройства аналогичен. В блоке 5 формируются значения параметров сплайна, а в блоках 7 - 12 вычисляются значения функции f(x), которые записываются в регистр 13. Данная операция повторяется для значений сплайн-интерполятор, патент № 2140098, равных сплайн-интерполятор, патент № 2140098 затем сплайн-интерполятор, патент № 21400980сплайн-интерполятор, патент № 2140098(M-2) и т.д. до тех пор, пока содержимое счетчика 2 не станет равным нулю. При этом код числа 0 с выхода счетчика 2 поступает на вход блока управления 3, который останавливает работу устройства. На этом работа устройства по вычислению значений функции f(x) завершается. Устройство готово к новому циклу работы.

Входящие в структурную схему заявляемого устройства элементы известны и описаны, например, в книге [3]. Так, в указанном источнике описаны принципы построения и примеры реализации:

счетчика 2 на с. 85-86 (можно реализовать на микросхеме К155ИЕ5);

первого блока памяти 1 на с. 171-174 (можно реализовать на микросхеме К155ПР6);

регистра 13 на с. 104-105 (можно реализовать на микросхеме К155ИР13 - с. 111 рис. 1.78);

Принцип работы умножителей 7, 8, 9, 10 и 11 известен и описан в [4] на с. 163 - 221. Могут быть реализованы на микросхемах SN54284 и SN54285 (см. [4] с. 305, рис. 6.3.12) или на микросхеме ADSP1016 (см. [5] с. 502. табл. 7.4).

Принцип работы сумматора 12 известен и описан в [6] на с. 184-198. Полный сумматор описан в [7] на с. 152, рис. 1.112 и с. 153, рис. 1.113. Можно реализовать на элементах ИСКЛ. ИЛИ - К155ЛП5, И - К155ЛИ1, ИЛИ - из ИЛИ-НЕ К155ЛЕ4 и НЕ К155ЛН1.

Один из возможных вариантов построения второго блока памяти 6 показан на фиг. 5. Можно реализовать на микросхемах К155ИР13.

Блок формирования коэффициентов сплайна 4 работает следующим образом.

В исходном состоянии на входы 4.2 подается код числа -2 с шестой установочной шины 21 устройства. На входы 4.3 подается код числа -5/24 с седьмой установочной шины 22 устройства. На входы 4.4 поступает код числа 6 с восьмой установочной шины 23 устройства. На входах 4.6 присутствует код числа -4 с девятой установочной шины 24 устройства. На входы 4.7 подается код числа 47/1152 с десятой установочной шины 26 устройства. На входах 4.8 присутствует код числа 1/24 с одиннадцатой установочной шины 27 устройства.

При подаче на вход 4.1 блока 4 управляющих импульсов (с девятого выхода блока управления 3) на входы 4.5 поступают значения функции f(x): f-4, f-2,. .., f4. Последние поочередно следуют в восьми направлениях: на первые группы входов умножителей 44, 43, 42 и 41, входы элементов задержки 410, 47 и 45 и первую группу входов сумматора 413. Блоки 41, 45, 46 и 47 формируют три слагаемых, которые поступают на информационные входы сумматора 411 одновременно. Результат вычисления в сумматоре 411 - значение (fn+1 - 2fn + fn-1) (см. выражение (2)). Блоки 42, 43, 44, 48, 49 и 410 формируют четыре слагаемых для сумматора 413. Пятое слагаемое поступает со входа 4.5 на сумматор 413 непосредственно. Все пять слагаемых подаются на информационные входы сумматора 413 одновременно. В результате выполнения операции сложения на выходе сумматора 413 формируется значение (fn-2 - 4fn-1 + 6fn - 4fn+1 + fn+2) (см. выражение (2)). Величина (fn+1 - 2fn + fn-1), умноженная на -5/24 в блоке 412 и задержанная в блоке 414, является первым слагаемым для сумматора 417. Второе слагаемое представлено значением fn функции f(x), задержанным в блоке 415. Третьим слагаемым является величина (fn-2 - 4fn-1 + 6fn - 4fn+1 + fn+2), умноженная в блоке 416 на число 47/1152. Результат выполнения в блоке 417 операции суммирования умножается в блоке 418 на число 1/24. В результате на выходе блока формирования коэффициентов сплайна 4 формируется значение коэффициента (1/24)gn (см. выражение (2)).

Один из возможных вариантов построения элементов задержки 45, 46, 47, 48, 49, 410, 414 и 415 показан на фиг. 6. Указанные блоки являются однотипными. Для элементов задержки 45, 46, 48 и 414 n = 2. Для элемента задержки 49 n = 3. Для элемента задержки 47 n = 4. Для элементов задержки 410 и 415 n = 5. Можно реализовать на микросхемах К155ИР13.

Умножители 41 - 44, 412, 416 и 418 можно реализовать на микросхемах SN54284 и SN54285 или на микросхеме ADSP1016.

Сумматоры 411, 413 и 417 можно реализовать на К155ЛП5, К155ЛИ1, К155ЛЕ4 и НЕ К155ЛН1.

Блок формирования параметров сплайна 5 работает следующим образом.

В исходном состоянии на входы 5.1 блока формирования параметров сплайна 5 подается код числа -5 с двенадцатой установочной шины 28. На входы 5.2 поступает код числа 10 с тринадцатой установочной шины 29. На входах 5.3 присутствует код числа 2 с четырнадцатой установочной шины 30, а на входах 5.4 - код числа 1 с пятнадцатой установочной шины 31. На вход 5.7 поступают управляющие сигналы с одиннадцатого выхода блока управления 3.

На первую группу входов умножителя 51 поступает значение сплайн-интерполятор, патент № 21400980 с выхода первого блока памяти 1, а на другую группу его входов - значение М с выхода счетчика 2. В результате выполнения операции умножения на выходах умножителя 51 формируется значение сплайн-интерполятор, патент № 2140098 = Mсплайн-интерполятор, патент № 2140098сплайн-интерполятор, патент № 21400980. Последнее поступает на входы преобразователя в дополнительный код 52, на выходах которого имеем значение (1-сплайн-интерполятор, патент № 2140098). Значение сплайн-интерполятор, патент № 2140098 с выходов умножителя 51 поступает также на первые группы информационных входов сумматоров 53 и 54, а на первую группу входов сумматора 55 - значение (1-сплайн-интерполятор, патент № 2140098). На вторые группы входов сумматоров 54 и 55 подается код числа 1, а на вторую группу входов сумматора 53 - код числа 2. Под воздействием управляющих сигналов, поступающих на вход 5.7 блока 5 (с одиннадцатого выхода блока управления 3) на выходах сумматоров 53, 54 и 55 формируются значения соответственно (2+сплайн-интерполятор, патент № 2140098), (1+сплайн-интерполятор, патент № 2140098) и (2-сплайн-интерполятор, патент № 2140098). Указанные величины поступают на входы соответствующих блоков возведения в четвертую степень 57, 58 и 59. На входы блока возведения в четвертую степень 56 поступает значение сплайн-интерполятор, патент № 2140098 с выходов умножителя 51. На входы блока возведения в четвертую степень 510 - (1-сплайн-интерполятор, патент № 2140098) с выхода преобразователя в дополнительный код 52. На выходах блоков возведения в четвертую степень 56, 57, 58, 59 и 510 имеем значения соответственно сплайн-интерполятор, патент № 21400984, (сплайн-интерполятор, патент № 2140098+2)4, (сплайн-интерполятор, патент № 2140098+1)4, (2-сплайн-интерполятор, патент № 2140098)4 и (1-сплайн-интерполятор, патент № 2140098)4. Величина сплайн-интерполятор, патент № 21400984 с выходов блока возведения в четвертую степень 56 поступает на первые группы входов умножителей 511 и 512. На вторую группу входов умножителя 511 подается код числа 10, а на вторую группу входов умножителя 512 - код числа -5. В результате выполнения операции умножения на выходах умножителей 511 и 512 формируются значения соответственно 10сплайн-интерполятор, патент № 21400984 и -5сплайн-интерполятор, патент № 21400984. Последние поступают на первые группы информационных входов сумматоров соответственно 519 и 518. На вторые группы информационных входов сумматоров 518 и 519 подаются величины соответственно (сплайн-интерполятор, патент № 2140098+1)4 (через элемент задержки 514) и (сплайн-интерполятор, патент № 2140098+2)4 (через элемент задержки 513). 3начение (1-сплайн-интерполятор, патент № 2140098)4 с выходов блока возведения в четвертую степень 510 поступает на первую группу входов умножителя 516, на вторую группу входов которого подается код числа -5. В результате выполнения операции умножения на выходах умножителя 516 формируется значение -5(1-сплайн-интерполятор, патент № 2140098)4. Последнее подается на вторую группу информационных входов сумматора 520. На первую группу информационных входов сумматора 520 поступает значение (2-сплайн-интерполятор, патент № 2140098)4 с выходов блока возведения в четвертую степень 59 через элемент задержки 515. В результате выполнения операций суммирования в блоках 518, 519 и 520 на выходах последних имеем значения соответственно [(1+сплайн-интерполятор, патент № 2140098)4-5сплайн-интерполятор, патент № 21400984], [(сплайн-интерполятор, патент № 2140098+2)4-5(сплайн-интерполятор, патент № 2140098+1)4+10сплайн-интерполятор, патент № 21400984] и [(2-сплайн-интерполятор, патент № 2140098)4-5(1-сплайн-интерполятор, патент № 2140098)4]. Указанные величины поступают на соответствующие выходы 5.11, 5.10 и 5.9 блока формирования параметров сплайна 5. На выходы 5.12 и 5.8 блока 5 подаются значения соответственно сплайн-интерполятор, патент № 21400984 (с выходов блока возведения в четвертую степень 56 через элемент задержки 517) и (1-сплайн-интерполятор, патент № 2140098)4 (с выходов блока возведения в четвертую степень 510 через элемент задержки 521. Таким образом, указанные значения параметров сплайна формируются на выходах 5.8 - 5.12 блока 5 одновременно.

Умножители 51, 511, 512, 516 можно реализовать на микросхемах SN54284 и SN54285 или на микросхеме ADSP1016.

Сумматоры 53 - 55, 518 - 520 можно реализовать на К155ЛП5, К155ЛИ1, К155ЛЕ4 и НЕ К155ЛН1.

Принцип реализации преобразователя в дополнительный код 52 известен и описан в [8] на с. 462 - 468. Можно реализовать на микросхемах К155ЛАЗ, К155ЛП5, К155ЛЕ4 и К155ЛН1.

Элементы задержки 513 - 515, 517, 521 являются однотипными. Их можно реализовать на микросхемах К155ИР13 в соответствии с фиг. 6. Для элементов 513, 514 и 515 n = 2. Для элементов 517 и 521 n = 3.

Блоки возведения в четвертую степень 56 - 510 являются однотипными. Данные блоки можно реализовать, как показано на фиг. 7, на микросхемах SN54284 и SN54285 или на микросхеме ADSP1016.

Блок управления 3 работает следующим образом.

В исходном состоянии на вход 3.1 блока управления 3 подаются тактовые импульсы типа меандр, на входы 3.3 - код числа с выхода счетчика 2 устройства, на входы 3.4 - код числа 0 со второй установочной шины 15, на входы 3.5 - код числа 8 с третьей установочной шины 18, на входы 3.6 - код числа 13 с четвертой установочной шины 19, на входы 3.7 - код числа 6 с пятой установочной шины 20.

В начале работы сплайн-интерполятора на вход 3.2 блока управления 3 подается импульс положительной полярности. Последний поступает на вход сброса счетчика 35, в результате чего счетчик 35 обнуляется. Кроме того, указанный импульс поступает на вход управления счетчика 312, на S-вход RS-триггера 31 и S-вход RS-триггера 310. В результате в счетчик 312 записывается значение 0. RS-триггер 31 устанавливается в единичное состояние, при котором на его выходе формируется уровень логической "1". Последний подается на первый вход элемента И 33, разрешая прохождение через него тактовых импульсов. На инверсном выходе RS-триггера 310 формируется уровень логического "0", который подается на первый вход элемента И 311, закрывая последний.

Код числа 0 с выхода счетчика 35 подается на первую группу входов блока сравнения 36. На вторую группу входов последнего подается код числа 8 со входа 3.5 блока управления 3. В результате выполнения операции сравнения на выходе блока 36 формируется сигнал с нулевым уровнем, закрывающий элемент И 34.

Кроме того, код числа 0 с выхода счетчика 35 подается на первую группу входов блока сравнения 38. На вторую группу входов последнего подается код числа 14 со входа 3.6 блока управления 3. В результате выполнения операции сравнения на выходе блока 38 формируется сигнал с единичным уровнем, открывающий элемент И 34.

Импульсы с выхода элемента И 34 поступают на счетный вход счетчика 35, увеличивая каждый раз его содержимое на единицу. Кроме того, импульсы с выхода элемента И 34 поступают на выход 3.9 блока управления 3. При совпадении значения содержимого счетчика 35 с кодом числа, подаваемого на вход 3.5 блока управления 3, на выходе блока сравнения 36 формируется сигнал с единичным уровнем. Последний открывает элемент И 37. Импульсы с выхода элемента И 34 через элемент И 37 подаются на выход 3.8 блока управления 3.

При совпадении содержимого счетчика 35 с кодом числа, подаваемого на вход 3.6 блока управления 3, на выходе блока сравнения 38 формируется нулевой уровень. Последний закрывает элемент И 34 и через элемент НЕ 39 воздействует на R-вход RS-триггера 310. В результате на инверсном выходе RS-триггера 310 формируется единичный уровень, открывающий элемент И 311. Импульсы с выхода элемента И 33 через элемент И 311 поступают на выход 3.11 блока управления 3, а также на счетный вход счетчика 312. Когда содержимое счетчика 312 совпадает с кодом числа, подаваемым на вход 3.7 блока управления 3, на выходе блока сравнения 313 формируется единичный импульс. Последний подается на вход сброса счетчика 312, устанавливая его в нулевое состояние. Кроме того, единичный импульс с выхода блока сравнения 313 через элемент задержки 314 подается на выход 3.10 блока управления 3.

В момент, когда на вход 3.3 блока управления 3 поступает код числа 0 (что соответствует обнулению счетчика 2 устройства), на выходе блока сравнения 32 формируется единичный импульс. Последний поступает на R-вход RS-триггера 31, переводя его в нулевое состояние. При этом на выходе RS-триггера 31 формируется нулевой уровень, закрывающий элемент И 33 и препятствующий тем самым прохождению тактовых импульсов через элемент И 33. На этом работа блока управления 3 (и устройства в целом) завершается.

Входящие в структурную схему блока управления 3 элементы известны и описаны, например, в [3] . Так, в указанном источнике описаны принципы построения и примеры реализации:

счетчиков 35 и 312 на с. 85-86 (можно реализовать на микросхеме К155ИЕ5);

элементов И 33, 34, 38 и 3.11 на с. 35 рис. 1.19а (можно реализовать на микросхеме К155ЛИ1);

элемента НЕ 39 (можно реализовать на микросхеме К155ЛН1);

RS-триггеров 31 и 3.10 на с. 62-67 (можно реализовать на микросхеме К155ЛЕ1 - с. 63 рис. 1.42).

В [7] на с. 181-187 описан принцип работы элемента задержки 314 (можно реализовать на микросхемах К564АГ1, с. 285 рис. 2.83а), а порядок сопряжения К564 с ТТЛ описан в [9] на с. 101-103.

Принцип работы блоков сравнения 32, 36, 38 и 313 известен и описан в [10] на с. 234-257. Можно реализовать на микросхемах К561ИП2 (см. [11] на с. 114, рис. 4.12 б).

Литература

1. Желудев В. А. Локальная сплайн-аппроксимация на равномерной сетке// Журнал вычислительной математики и математической физики.- 1987.- Том 27.- N 9.- С. 1296-1310.

2. Желудев В. А. Восстановление функций и их производных по сеточным данным с погрешностью при помощи локальных сплайнов// Журнал вычислительной математики и математической физики. - 1987.- Том 27.- N 1.- С. 22-34, М., Наука.

3. В. Л. Шило. Популярные цифровые микросхемы. Справочник. - М.: Радио и связь, 1988.

4. М. А. Карцев, В. А. Брик. Вычислительные системы и синхронная арифметика. - М.: Радио и связь, 1981.

5. С. Кун. Матричные процессоры на СБИС: Пер. с англ. - М.: Мир, 1991.

6. Д. Гивоне, Р. Россе. Микропроцессоры и микрокомпьютеры: Вводный курс: Пер. с англ. - М.: Мир, 1983.

7. В. Л. Шило. Популярные цифровые микросхемы. Справочник. 2-е изд., испр. - Челябинск: Металлургия. 1989.

8. Л. М. Гольденберг. Импульсные и цифровые устройства. М.: Связь, 1973.

9. Цифровые интегральные микросхемы: Справочник/ П.П. Мальцев, Н.С. Долидзе и др. -М.: Радио и связь, 1994.

10. Ю. В. Гаврилов, А.Н. Пучко. Арифметические устройства быстродействующих ЭЦВМ. - М.: Советское радио, 1970.

11. В.Н. Вениаминов, О. Н. Лебедев, А. И. Мирошниченко. Микросхемы и их применение. Справочное пособие, 3-е изд. перераб. и дополн. - М.: Радио и связь, 1989.

Класс G06F17/17 вычисление функций приближенными методами, например интерполяцией или экстраполяцией, сглаживанием, методом наименьших квадратов

устройство идентификации лагранжевых динамических систем на основе итерационной регуляризации -  патент 2528133 (10.09.2014)
способ и система коррекции на основе квантовой теории для повышения точности радиационного термометра -  патент 2523775 (20.07.2014)
адаптивное цифровое прогнозирующее и дифференцирующее устройство -  патент 2517322 (27.05.2014)
адаптивное цифровое прогнозирующее и дифференцирующее устройство -  патент 2517317 (27.05.2014)
адаптивное цифровое прогнозирующее устройство -  патент 2517316 (27.05.2014)
устройство адаптивной фильтрации видеосигналов -  патент 2515489 (10.05.2014)
цифровое прогнозирующее и дифференцирующее устройство -  патент 2515215 (10.05.2014)
цифровой интерполятор -  патент 2513679 (20.04.2014)
способ определения навигационных параметров носителя и устройство гибридизации, связанное с банком фильтров калмана -  патент 2510529 (27.03.2014)
способ подсчета эритроцитов на изображениях мазков крови (варианты) -  патент 2488821 (27.07.2013)
Наверх