Графический интерполятор

Иллюстрации

Показать все

Реферат

 

Изобретение относится к вычислительной технике и может быть использовано в устройствах отображения и преобразования информации, преимущественно в устройствах отображения графической информации на электронно-лучевых трубках. Цель изобретения - увеличение производительности интерполятора при отображении объектов , содержащих дуги и окружности. С этой целью в интерполятор, содержащий интеграторы 1, 2 приращений, блок 16 элементов ИЛИ, блок 18 выделения старшего значащего разряда и дещифратор 20, введены блок 13 управления, триггеры 14, 15, сдвиговый регистр 19 и элемент 21 сравнения. 2 з.п. ф-лы, 3 ил.

QOI03 СОВЕТСНИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

Н АВТОРСКОМ,Ф СВИДЕТЕЛЬСТВУ

CO

С

CO

ЯР

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21) 3990789/24-24 (22) 16.12.85 (46) 07.06.88. Бюл. № 21 (71) Киевский научно-исследовательский и конструкторский институт периферийного оборудования (72) В. Ф. Каплун, Т. Г. Семенюк и Ю. М. Омельянчук (53) 681.14 (088.8) (56) Авторское свидетельство СССР № 1086453, кл. G 09 G 1/08, 1981.

Авторское свидетельство СССР № 682923, кл. G 09 G 1/08, 1977.

„„SU„„1401509 А1

1511 4 G 09 G 1 08 G 06 F 15 353 (54) ГРАФИЧЕСКИЙ ИНТЕРПОЛ ЯТОР (57) Изобретение относится к вычислительной технике и может быть использовано в устройствах отображения и преобразования информации, преимущественно в устройствах отображения графической информации на электронно-лучевых трубках. Цель изобретения — увеличение производительности интерполятора при отображении объектов, содержащих дуги и окружности. С этой целью в интерполятор, содержащий интеграторы 1, 2 приращений, блок 16 элементов ИЛИ, блок 18 выделения старшего значащего разряда и дешифратор 20, введены блок 13 управления, триггеры 14, 15, сдвиговый регистр 19 и элемент 21 сравнения.

2 з.п. ф-лы, 3 ил.

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

Цель изобретения — увеличение производительности интерполятора при отображении объектов, содержащих дуги и окружности.

На фиг. 1 представлена функциональная схема интерполятора; на фиг. 2 — таблица коммутации входных сигналов коммутаторами-сдвигателями; на фиг. 3 — алгоритм функционирования интерполятора.

Интерполятор имеет интеграторы 1 и 2 приращений, содержащие счетчики 3 и 4, дешифраторы 5 и 6 нулевого кода, коммутаторы-сдвигатели 7 и 8, накапливающие сумматоры 9 и 10, блоки 11 и 12 выходных приращений, а также блок 13 управления, триггеры 14 и 15, блок 16 элементов

ИЛИ, генератор 17 импульсов, блок 18 выделения старшего значащего разряда, сдвиговый регистр 19, дешифратор 20 и элемент 21 сравнения.

Интерполятор работает как в режиме линейной, так и в режиме круговой интерполяции.

В исходном состоянии в счетчиках 3 и 4 нулевые коды, запятая фиксирована перед младшим разрядом (нет ни одного разряда, равного «!»), все разряды накапливающих сумматоров 9 и 10 установлены в «О». Генератор 17 импульсов вырабатывает две серии сдвинутых во времени тактовых импульсов, каждый из которых подтверждает состояние интеграторов 1 и 2. На выходе блока 3 коды, блокирующие переключение триггеров 14 и 15 и работу счетчиков 3 и 4 в счетном режиме.

В режиме линейной интерполяции интерполятор работает следующим образом.

Коды координатных приращений ЛХ и

ЛУ заносятся параллельным кодом в счетчики 3 и 4 интеграторов 1 и 2. С выходов счетчиков через блок 16 элементов ИЛИ дизъюнкция этих кодов поступает на входы блока 18, который выделяет самый старший, равный логической «!» разряд кода дизъюнкции.

Сигнал этого разряда с выхода блока 18 поступает на запрет суммирования разрядов переполнения сумматоров 9 и 10, а через дешифратор 20 и блоки 11 и 12 осуществляет логическое подключение k разрядов переполнения каждого сумматора 9 и 10 к выходам интерполятора. Кроме того, коды с выходов счетчиков 3 и 4, сдвинутые íà f.разрядов (О (f (k) в сторону старшего, поступают на входы накапливающих сумматоров 9 и 10. Величину сдвига определяет код, 1509 поступающий на управляющие входы коммутаторов 7 и 8 из блока 13.

В первом полутакте по тактовому импульсу от генератора 17 выполняется суммирование и выдача содержимого k разрядов переполнения каждого сумматора в виде малых приращений координат Л (ЛХ) и (ЛУ) .

Во втором полутакте выполняется обнуление разрядов переполнения сумматоров. !

О Затем в следующем полутакте опять выполняется суммирование содержимого сумматоров 9 и 10 с кодами на их входах, запоминание новой суммы, выдача очередных выходных приращений Л(ЛХ) и Л(AY) и т.д. Последовательность операций циклически повторяется до получения сигнала конца интерполяции, о чем свидетельствует занесение нулевого кода в счетчики 3 и 4, после чего интерполятор переходит в исходное состояние.

20 В режиме круговой интерполяции интерполятор работает по алгоритму (фиг. 3) с использованием оценочной функции.

Если Х» У» точка, в которой последний паз произошло изменение координаты

Y,ôÕ + — абсцисса, в которой необходимо произвести очередное изменение координаты У, то из уравнения окружности имеем:

Х»+ Y» — R =0;

Х»„+ У + — R = 0; Y„+ = У -;

Я + (Y» — 1) = Я+ Я;

Х»+i — Х = 2Y» — 1.

Подсчитав величину оценочной функции после шага по оси Х, если X»+i = Х»+ 1; (X» + 1) — Х = 2Х» + 1, проверяется неравенство

Х = 2Х» + 1 ) 2Y» — 1.

Если неравенство удовлетворяется, то делается шаг и по оси Y и находится 4 =

= 2Х»+1 — (2Y» — 1), после чего вновь проверяется неравенство

4 = Л + 2Х».д + 1 ) (2У». — 1), 40 где

2Y» i — 1 = 2 (Y» — 1) — 1 = (2У» — 1) — 2.

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

Информация заносится в счетчики 3 и 4 интеграторов.

Одновременно устанавливаются в исходное состояние накапливающие сумматоры 9 и 10 (нулевое — координаты Х и единичное — координаты У), сдвиговый регистр 19 и триггеры 14 и 15.

Блок 13 по состоянию триггеров знаков Х и Y и по выходу сдвигового регистра формирует управляющие коды коммутато55 ров-сдвигателей 7 и 8.

В результате на входы сумматора 9 поступает код координаты Х, сдвинутый на один разряд влево и логическая «1» на вход

1401509

3 младшего разряда, если ЗнХЯЗнУ = О, или код координаты У, сдвинутый на один разряд влево и логическая «1» на вход младщего разряда, если ЗнХ Q ЗнУ = 1.

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

Во втором случае координата Y возрастает, а координата Х уменьшается.

На входы сумматора 10, если ЗнХ

Q ЗнУ = О, поступает код координаты У, сдвинутый влево на один разряд, или код координаты Х, сдвинутый влево на один разряд, если ЗнХ Щ ЗнУ = 1.

С выхода сумматора 9 величина оценочной функции, имеющая выражение 2Х (или Y) + 1, сложенная с предыдущим значением суммы (в первом такте Х = О), поступает на вход схемы сравнения.

В результате суммирования данных коммутатора-сдвигателя 8 с единицами, содержащимися в накапливающем сумматоре 10, получают величину 2У (или Х) — 1, которая подается на вход схемы сравнения.

Если удовлетворяется неравенство (сумматор 9) ((сумматор 10), то по тактовому импульсу с генератора 17 блока 13 поступает сигнал «+1» в счетчик 3 координатных приращений Х (или Y — для другой четверти окружности).

По этому же тактовому импульсу накапливающий сумматор 9 зафиксирует полученную сумму, сдвиговый регистр 19 — результат сравнения, а накапливающий сумматор 10 переходит в состояние всех единиц.

В следующих тактах цикл наращивания одной координаты и соответствующий подсчет оценочной функции повторяется до тех пор, пока результат сравнения не имеет вид (сумматор 9) ) (сумматор 10).

В этом случае от блока 13 поступает сигнал «+1» в счетчик координаты Х (или

Y для другой четверти окружности), « — 1» в счетчик координаты Y (или Х) одновременно, а накапливающие сумматоры 9 и 10 зафиксируют полученные в этом такте суммы.

Поменяются также управляющие коды коммутаторов 7 и 8, вследствие чего в следующем такте на входы сумматора 9 пост пает в дополнительном коде содержимое сумматора 10, а на входы сумматора 10 в дополнительном коде число «2». Если, сравнивая полученные разности, имеем сигнал

«Меньше», то цикл начинается вновь с отработки шага по той координате, которая возрастает в данной четверти окружности.

Если от сравнения разностей имеем сигнал

«Больше или равно», то шаг отрабатывается по той координате, которая уменьшается.

При уменьшении одной из координат до

«О» триггер, соответствующий этой координате, меняет свое состояние на противоположное, а вместе с этим меняются и управляющие коды коммутаторов 7 и 8, что означает переход в другую (соседнюю) четверть окружности, и процесс продолжается по описанному алгоритму.

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

1. Графический интерполятор, содержа10 щий два интегратора приращений, блок элементов ИЛИ, блок выделения старшего значащего разряда и дешифратор, выход которого соединен с входами значений количества разрядов переполнения первого и

15 второго интеграторов приращений, выходы которых являются выходами приращения второго порядка первой и второй координаты интерполятора, входы приращения первой и второй координаты которого соединены с входами начальной установки первого и вто20 рого интеграторов приращений соответственно, синхровходы которых соединены с тактовым входом интерполятора, первые информационные выходы первого и второго интеграторов приращений соединены с первым и вторым входами блока элементов ИЛИ, выход которого соединен с информационным входом блока выделения старшего значащего разряда, выход кода позиции старшего значащего разряда которого соединен с входом дешифратора, отличающийся тем, 3g что, с целью увеличения производительности интерполятора при отображении объектов, содержащих дуги и окружности, в него введены блок управления, два триггера, сдвиговый регистр и элемент сравнения, выход которого соединен с входом младше35 го разряда сдвигового регистра, вход управления сдвигом которого соединен с тактовым входом интерполятора, управляющий вход которого соединен с первым входом блока управления, первый выход которого соединен с управляющими входами первого

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

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

1401509

Реолиз. руин

Улр. нод оп беирр.

Мммутация бкодоб «оммутатороб, соотбетстбующих заданному напр. коду быкодоl рег,- счет. интегратора 1 подключены nopaupnd o

7 о жг,со сдбигом на 1розряР 8 сторону старшего. На бкод младшего лодкл. лог. 0

То же, со сдбигом на 2разряаа б сторону старшеео. На бкод2-х младш. подкл. лое. 0" тоже,со сдбигом на зразряда б сторону старшего. На дкод 3-х мл. подключ лое 0.

Brrxouor рег.-счет. интегратора 2 со сдбигом на 1 разряд 8 сторону старшего. На бкодмл-лог, Выкоды сумматора 9 инте ротора 2 индерсноге поразрядно. еп. разряд прямой

Выходок рег. - счет. интегратора 1со сддигом на 1разряд 8 сторону старшего. hz Ркодмл.-лог 1"

Во1кодог сумматора 0 интегратора 2 инберсчо.е лорал ядно, м1 разряР прямои

000

001

010

0 11

Вх

100

1 01

110

2х1

Выкоды рег.- счегл. интеератора 2 лодключеноч поразрядно тоже, со сдбигом на 1 разряд Р сторону. „ старшего. ffu бкод младшего лодкл. лог 0, ГО же, со сдбигом на 2разруда / сторона сгпаршего, на бкоо 2-х многих лодкл, лог. 0"

7оже, со сддигом на з разряда б сторонц,, старшего. На бкод J-х младших лодкл, лог 0

Выходы рег.-ceram. интееротора 1со сдбигомка

1разряд 8 сторону старшего. На 8xou urn. -лое, 0"

Логические "1 подключены на бее 8кадо кроме млодшеео. на бкод нл — лог. 0

Выкобы рег.-wem. интегратора 2 со сдбигом, на 1 разряд 8 сторону старшеео. но 8коунл.-лог

Логические"1". подключеног но бге дхоти кроме младшего, на 8коР мл.-лое, 0"

000

001

010

011 ву

100

/on. л о32

10!

110 2у дол. хо82

А/г 2 первого и второго триггеров соответственно, входы установки которых соединены с входами знаков приращений первой и второй координаты интерполятора соответственно, выходы признаков нулевого кода интеграторов приращений соединены с входами сброса первого и второго триггеров, выходы которых соединены с третьим и четвертым входами блока управления соответственно, пятый вход которого соединен с выходом сдвигового регистра, синхровходы триггеров объединены и соединены с тактовым входом инртерполятора.

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

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

Иаимутатор интегратора 1Ф) коммутатор интегратора 2ф) 1401509

Составитель Н. Матвеев

Редактор Н. Тупица Техред И. Верес Корректор И. Муска

Заказ 2536/50 Тираж 459 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

1 l 3035 Москва, Ж вЂ” 35, Раушская наб., д. 4/5

Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4