Цифровой линейный интерполятор
Иллюстрации
Показать всеРеферат
(72) Авторы нзобретення
Н,С. Анишин, А.С. Анишин, А.M. Тивков и 0 .В.
Чуйков (7l) Заявнтель
Кубанский государственный университет (54) ЦИФРОВОЙ ЛИНЕЙНЫЙ ИНТЕРПОЛЯТОР
Изобретение относится к автоматике и вычислительной технике, а именно к устройствам отображения графической информации на экране электрон. нолучевой трубки (ЭЛТ) или на графопостроителе, а также программного
5 управления металлорежущими станками.
Известен цифровой линейный интерполятор (1) .
Недостатком является неравномер1О ность распределения импульсов во времени и "o, что быстродействие интерполятора по сравнению с его тактовой частотой на некоторых кодах уменьшается вдвое. Это приводит к тому, что
15 скорость отработки луча ЭЛТ будет за" ниженной, соответственно время построения — завышенным, и отклонение
Фактической траектории луча от тре2 буемой прямой линии, определяемое нерегулярностью импульсов в последовательностях по обеим координатам, может бнть значительным (большим величи. ны одного шага интерполяции по координате).
Кроме того, время отработки луча
ЭЛТ Различных координатных приращений у этих интерполяторов не прямо пропорционально величине этих приращений, что приводит (в силу зависимости яркости изображения от скорости перемещения луча по экрану) к неравномерности свечения отдельных участков кривых (одни участки будут ярче дру" гих). В случае станков с программным управлением неравномерность следования импульсов дополнительно увеличивает динамическую ошибку отработки ,траектории рабочего органа.
Наиболее близким техническим решением к изобретению является цифровой линейный интерполятор, содержащий регистры приращений, накапливающие сумматоры, логические схемы, генератор тактовых импульсов f2).
К недостаткам известного устройства относится высокая методическая
3 95717 погрешность, достигающая величины одного шага интерполяции по координате, и низкое быстродействие.
Целью изобретения является повышение точности и быстродействия интерполятора.
Поставленная цель достигается тем, что в цифровой линейный интерполятор, содержащий первый и второй регистры, два первых элемента И, гене- 1у ратор импульсов и накапливающий сумматор, введены два коммутатора, вычитающий счетчик, блок вентилей, блок управления и инвертор, соединенный входом с выходом первого регистра и с первым входом первого коммутатора, подключенного вторым входом к выходу второго регистра и к первому входу второго коммутатора, связанного вторым входом с выходом инвертора, третьим входом - с первым выходом третьего регистра, четвертым входом с первым выходом блока управления, а выходомс первым входом накапливающего сумматора, подключенного вторым входом и первым выходом соответственно к второму выходу и к первому входу блока управления, а вторым выходом — к первому входу блока вентилей, соединенного вторым входом с третьим выходом блока управления, а выходомс входом третьего регистра, подклюценного вторым выходом к второму входу блока управления, связанного. четвертым и пятым выходами соответственно с первыми входами первых элемен3$ тов И, подключенных вторыми входами к шестому выходу блока управления и к первому входу коммутатора, связанного вторым входом с выходом первого
40 коммутатора, подключенного выходом к третьему входу блока управления, соединенного седьмым выходом и четвертым входом соответственно с третьим входом первого коммутатора и с выходом генератора импульсов.
4S
Кроме того, блок управления содержит первый элемент задержки, подключенный входом через первый элемент
ИЛИ к первому выходу блока управления, первым выходом - к S- входу
RS-триггера и через второй элемент
ИЛИ к шестому выходу блока управления, вторым выходом через третий элемент ИЛИ к первому выходу блока управления, третьим выходом к третьему $$ выходу блока управления, четвертым выходом к второму выходу блока управления и через второй элемент И и
1 4 первый элемент Запрет. к седьмому вы- . ходу блока управления, а пятым выходом к первым входам третьего элемента И и второго элемента Запрет, связанных выходами с вторыми входами соответственно первого и третьего элементов ИЛИ, а вторыми входами с вторым входом блока управления, с первыми входами четвертого элемента
ИЛИ и четвертого элемента И, с вторыми входами первого элемента Запрет и второго элемента И и с первым входом элемента Неэквивалентность, подключенного выходом к первому выходу блока управления, а вторым входом к первому входу блока управления, к второму входу четвертого элемента И и четвертого к второму входу четвертого ИЛИ, соединенного выходом с четвертым выходом блока управления и с входом первого элемента НЕ, подключенного выходом K первому входу пятого элемента И, связанного выходом с третьим входом третьего элемента ИЛИ, а вторым входом через шестой элемент И - с третьим входом первого элемента ИЛИ и через второй элемент
Задержки - с вторым входом второго элемента ИЛИ и выходом седьмого элемента И, подключенного первым входом к четвертому входу блока управления, а вторым входом - к прямому выходу
RS-триггера, соединенного R- входом с третьим входом блока управления, причем пятый выход блока управления подключен к выходу второго элемента
НЕ, соединенного входом с выходом четвертого элемента И и вторым входом шестого элемента И.
На фиг. 1 изображена схема предлагаемого интерполятора; на фиг. 2схема блока управления.
Интерполятор содержит второй регистр 1, первый регистр 2, инвертор
3, первый 4 и второй 5 коммутаторы, вычитающий счетчик 6, накапли вающий сумматор 7, блок 8 вентилей, третий регистр 9, генератор 10 импульсов, первые элементы И 11 и 12, блок 13 управления.
Блок 13 управления содержит первый 14 и второй 15 элементы задержки, RS-триггер 16, первый элемент
ИЛИ 17, третий элемент ИЛИ 18, второй элемент ИЛИ 19, четвертый элемент ИЛИ 20, элемент "Неэквивалентность" 21, второй элемент И 22, шестой элемент И 23, пятый элемент И 24, четвертый элемент И 25, третий эле5 9571 мент И 26, седьмой элемент И 27, первый и второй элементы Запрет 28 и 29, второй элемент НЕ 30, первый элемент НЕ 31, шестой выход 32 блока управления, второй 33 и третий 34 3 выходы блока управления, первый вы-. ход 35 блока управления, седьмой выход 36 блока управления, четвертый 37 и пятый 38 выходы блока управления, первый, второй, третий и четвертый входы 39-42 блока управления.
Интерполятор работает следующим образом.
В исходном состоянии накапливающий сумматор 7, вычитающий счетчик 6, а также RS-триггер 16 сброшены в "0", а во. второй и первый регистры .1 и 2 занесены величины (модули) соответствующих координатных приращений Ь Х и ЬУ. По команде "Пуск" через первый 20 элемент ИЛИ 17 включается в работу второй коммутатор 5, который переписывает Х. из второго регистра 1 в накапливающий сумматор 7, а импульсом, снятым -с второго (промежуточного) выхода nepeoro элемента задержки 14 через третий элемент ИЛИ 18,,второй коммутатор 5 подсуммирует ЬУ из первого регистра 2 через инвертор
3 кода приращения к содержимому накап.за ливающего сумматора 7, т.е. с знаком минус.
На сумматоре 7 устанавливается величина h.Õ-ЬУ. По сигналу, снятому с третьего промежуточного выхода перво- З го элемента задержки 14, через блок 8 вентилей производится перепись d.Х-hY в третий регистр 9 разности приращений (co знаком). Далее, по сигналу с пятого (промежуточного) выхода пер- о вого элемента задержки 14 в зависимости от знака содержимого третьего регистра 9 (разности 1чриращений) в накапливающий сумматор 7 подсуммируется меньшее (по модулю) из приращений. Для этого включаются в работу третий элемент И 26 и первый. элемент
ИЛИ 17 или второй элемент "Запрет"
29 и третий элемент ИЛИ 18 и второй коммутатор 5.
Если это будет ЬУ, то со знаком минус. Затем си гналом с четвертого (промежуточного) выхода первого элемента задержки 14 производится сдвиг вправо на один разряд содержимого накапли вающе го сумматора 7 арифметически (без потери содержимого знакового разряда), т.е. величина eio содержимого уменьшается вдвое. Этим же сигна71 d лом большее (по модулю) приращение с помощью первого элемента "Запрет" 28 и элемента И 22 и первого коммут тора 4 переписывается через второй вход в качестве начального значения вычитающего счетчика 6. Импульс с первого выхода первого элемента задержки l4 через второй элемент ИЛИ 19 вычитает единицу из счетчика 6 и, устанавливая триггер 16 в "1", открывает седьмой элемент И 27, На этом заканчивается подготовка интерполятора .к работе. формирование в накапливающем сумматоре 7 величины (Х йХ) ЪУ и (ЬХ ЬЧ1 ЬХ за ние в третий регистр 9 (разности приращений), а в вычитающий счетчик 6большего из приращений. Первый же тактовый импульс, прошедший через седьмой элемент. И 27 и второй элемент
ИЛИ 19 на первый счетный вход вычитающего счетчика 6, одновременно подается на вторые входы первых элементов И 11 и l2. На первые же их входы приходят разрешающие сигналы, если знаки содержимых сумматора 7 и регистра 9 различны, что определяется с помощью четвертого элемента ИЛИ 20 и второго элемента НЕ 30; или жетолько на первый вход одного из первых элементов И 11 или 12, определяемой теми же элементами. Причем, выбранный элемент соответствует координате с большим приращением 11 -Х, 12 У.
Такие we проверки происходят при каждом тактовом импульсе, а между ними с помощью второго элемента задержки 15 и элементами 17, 18. 21, 23, 24, 25, 29, 31 запускается второй коммутатор 5; который, в зависимости от знаков содержимых сумматора 7 и третьего регистра 9, передает для подсуммирования либо меньшее из приращений из первого и второго регистров 2 и 1, либо их разность из третьего регистра 9. После каждого подсуммирования содержимое сумматора 7 меняется (также и знак).
Так происходит на каждом такте вплоть до такта., когда по координате с большим приращением будет выдано нужное число импульсов ° B этот такт вычитающий счетчик 6, переходя через "0" своего значения, Выдает сигнал на сброс в "0" триггера 16, который после перехода в "0" запрещает прохождение следующих тактовых им9511 71 пульсов через седьмой элемент И 27 и таким образом прекращает работу блока 13 управления и всего интерполятора в целом. Этот же сигнал о переполнении вычитающего счетчика 6 выдается в качестве сигнала "Конец" интерполяции.
Применением вновь введенных блоков в состав интерполятора и связей между ними и остальными блоками по-. лучено .быстродействие интерполятора, совпадающее с частотой генератора тактовых импульсов, что примерно в
2 раза выше, чем в известных интерполяторов. Это позволяет ускорить по" 15 строение графиков на ЭЛТ (и в частности, отказаться от дорогостоящих
ЭЛТ с запоминающим экраном и заменить их на более дешевые кинескопы).
Максимальная методическая погреш- 20 ность снижена также.в 2 раза. Это позволяет, например, выбрать шаг вдвое большим и, таким образом, ускорить построение графиков без какого-либо ухудшения качестве изображе- 25 ния.
Равномерное поступление импульсов по координатам позволяет отказаться от дополнительных узлов модуляции яркости луча ЭЛТ в зависимости от зо величин приращений, улучшает динамические характеристики систем программного управления.
Улучшается также качество изображения на экране ЭЛТ за счет лучших динамических свойств интерполятора.
Формула изобретения
49
1. Цифровой линейный интерполятор, содержащий первый и второй регистры, два первых элемента И, генератор импульсов и накапливающий сумматор, о т л и ч а ю щ и .й с я тем, что, с целью повышения точности и быстродействия интерполятора, в него введены два коммутатора, вычитающий счетчик, блок вентилей, блок управления и инвертор, соединенный входом с выходом первого регистра и с первым входом первого коммутатора, подключенного вторым входом к выходу второго регистра и к первому входу второго коммутатора, связанного вторым вхоiS дом с выходом инвертора, третьим вхо- . дом - с первым выходом третьего регистра, четвертым входом с первым вы- . ходом блока управления, а выходом с первым входом накапливающего сумматора, подключенного вторым входом и первым выходом соответственно к второму выходу и к первому входу блока управления, а вторым выходом - к первому входу блока вентилей, соединенного вторым входом с третьим выходом блока управления, а выходомс входом третьего регистра, подключенного вторым выходом к второму входу блока управления, связанного четвертым и пятым выходами соответственно с первыми входами первых элементов И, подключенных вторыми входами к шестому выходу блока управления и к первому входу коммутатора, связанного вторым входом с выходом первого коммутатора, подключенного выходом к третьему входу блока управления, соединенного седьмым выходом и четвертым входом соответственно с третьим входом первого коммутатора и с выходом генератора импульсов.
2. Устройство по и. 1, о т л и ч а ю щ е е с я тем, что блок управления содержит первый элемент задержки, подключенный входом через первый элемент ИЛИ к первому входу блока управления, первым выходом — к S-входу
RS-триггера и через второй элемент
ИЛИ к шестому выходу блока управления, вторым выходом через третий элемент ИЛИ к первому выходу блока управления, третьим выходом к третьему выходу блока управления, четвертым выходом к второму выходу блока управления и через второй элемент И и первый элемент Запрет к седьмому выходу блока управления, а пятым выходом к первым входам третьего эле-. мента И и второго элемента Запрет связанных выходами с вторыми входами соответственно первого и третьего элементов ИЛИ, а вторыми входами с вторым входом блока управления, с первыми входами четвертого элемента
ИЛИ и четвертого элемента И, с вторыми входами первого элемента . Запрет и второго элемента И и с первым входом элемента Неэквивалентность. подключенного выходом к первому выходу блока управления, а вторым входом - к первому входу блока управления, к второму входу четвертого элемента И и -к второму входу четвертого элемента ИЛИ, соединенного выходом с четвертым выходом блока управления и с входом первого элемента НЕ, подключенного выходом
9 9571 к первому входу пятого элемента И, связанного выходом с третьим входом третьеro элемента ИЛИ, а вторым входом через шестой элемент И вЂ” с третьим входом первого элемента ИЛИ и че- 5 рез второй элемент Задержки — с вторым входом второго элемента ИЛИ и выходом седьмого элемента И, под- . ключенного первым входом к четвертому входу блока управления, а вторым входом - к прямому выходу RS-триггера, соединенного R-входом с третьим входом блока управления, причем пятый выход блока управления подклю71 10 чен к выходу второго элемента НЕ, соединенного входом с выходом четвертого .элемента И и с вторым входом шестого элемента И.
Источники информации, принятые во внимание при экспертизе
Основы построения устройства оперативного вывода информации. Под ред. M.Ñ. Безродного. M. "Энергия", 1973, с. 65-66 °
2. Авторское свидетельство. СССР
N 600569, кл. G 06 G 7/30, 1975 (прототип).