Устройство для обработки графической информации
Иллюстрации
Показать всеРеферат
Изобретение относится к устройствам отображения информации на матричном широкоформатном табло и может быть применено для визуализации знаковой и графической информации в системах контроля технологических процессов. Целью изобретения является повышение быстродействия устройства и расширение области его применения за счет обеспечения возможности редактирования изображения в произвольно расположенном на поле индикатора "окне". Цель достигается тем, что в устройство, содержащее блок памяти, знакогенератор, два счетчика, шесть регистров, два сумматора, два блока сравнения, блок индикации, генератор импульсов, элемент ИЛИ, одновибратор и блок управления, введены генератор векторов, три элемента И, триггер, элемент НЕ, два блока сравнения и два регистра с соответствующими связями. Внесенные изменения позволяют "отвязать" нижние границы "окна" от начала координат табло в виртуальном пространстве изображения. 7 ил.
СОЮЗ СО8ЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (я)я 6 09 G 3/28
ГОСУДАРСТБЕНН6 и КОМИТЕТ ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИЦЕТЕЛЬСТВУ
I»
Ю ь ь
I»
I» (2 1) 4607311/24 (22) 21.11.88 (46) 30.08,91. Бюл, М 32 (71) Житомирское производственное объединение нП рама втоматика" (72) И.И.Пастух, В.Г.Лобачевский и Л.Д.Грищенко (53) 681.327 (088.8) (56) Авторское свидетельство СССР
М 1149309, кл. G 09 G 3/28. 1983. (54) УСТРОЙСТВО ДЛЯ ОБРАБОТКИ ГРАФИЧЕСКОЙ ИНФОРМАЦИИ (57) Изобретение относится к устройствам отображения информации иа матричном широкоформатном табло и может быть применено для виз уапизации знаковой и графической информации в системах контроля технологических процессов. Целью изобреИзобретение относится к устройствам отображения информации на матричном широкоформатном табло и мажет быть применена для визуализации знаковой и графи. ческой инфо рма ции.
Цепь изобретения — повышение быстродействия устройства и расширение области применения за счет обеспеченин возможности редактировамия изображения в произвольно расположенном окне иа поле индикатора.
На фиг. 1 представлена блок-схема устройства; на фиг. 2 — блоке-схема знакогенератора; на фиг.3- блок-схема блока уп равления; на фиг. 4 — блок-схема генератора векторов; на фиг. 5 связь системы координат; на фиг.
6 и 7 — временные диаграммы работы устройства.
Устройство (фиг.1) содержит блок 1 памяти. знакогенератор 2, блок управления 3, генератор векторов 4, счетчики 5 и 6, реги(l 9) (l l)
1 тения является повышение быстродействия устройства и расширение области его применения за счет обеспечения возможности редактирования изображения в произвольна расположенном на поле . индикатора "окне". Цель достигается тем, что в устройство, содержащее блок памяти, знакогенератор, два счетчика, шесть регистров, два сумматора, два блока сравнения. блок индикации, генератор импульсов, элемент ИЛИ, адновибратор и блок управления, введены генератор векторов, три элемента И, триггер, элемент. НЕ, два блока сравнения и два регистра с соответствующими связями. Внесенные изменения позволяют нотвязать" нижние границы "окна" от начала координат табло в виртуальном пространстве изображения. 7 ил. стры 7-14, сумматоры 15 и 16. блоки сравнения 17-20, дешифратор 2 1, одновибратор
22, модуль индикации 23>-23й, генератор импульсов 24, триггер 25, элемент НЕ 26, элемент ИЛИ 27, элементы И 28-30, входы — адреса 31 информационный 32, управле- К ния записью 33, управления считывания 34 ) и управления 35. М
Знакогенератор 2 (фиг.2) содержит счет- Ъ чики 36 и 37, регистр 38, блоки постоянмай памяти 39 и 40, коммутатор 41 и элемент И
42. Саван, покаааннне на фнг. 2. полностью соответствующей по количеству и расположению связям, показанным на фиг. 1.
Блок управления 3 (фиг.3) содержит счетчик 43, дешифратор 44, элемент НЕ 45, тригггер 46, элемент И 47, одновибраторы
48 и 49. Связи. показанные на фиг.3, полностью соответствуют по количеству и расположению связями, показанным на фиг. 1.
1674222
10
20
50 ор векторов 4 (фиг,4) содержит . loK 51 постоянной памяти, ре а емент И 53. Связи, показанные ср с
Рголностью соответствуют по коли„а расположению связям, покаэанфиг, эшифратор 21 с модулями индикации зразует блок индикации 54.
Блоки устройства выполняют следующие функции.
Блок 1 памяти предназначен дпя промежуточного хранения информационного кадра, записанного через входы; адреса 31, информационные 32 и записи 33. В нем содержится описание иэображения в виде слов (примитивов или команд), содержащих информацию о символах, векторах, точках, значениях границ "окна" в координатах положения начала координат табло в виртуальном пространстве иэображения (фиг.5).
Блок управления 3 организует начало работы устройства, последовательную выборку слов-примитивов через второй канал блока 1 памяти, их дешифрацию, запись примитива в соответствующий функциональный блок, отслеживает окончание обработки очередного примитива и всего кадра информации.
Знакогенератор 2 интерпретирует полученный иэ блока 1 памяти примитив-символ в матрицу точек путем выдачи сигналов модификации координат .+Х, У и сигнала
"Светить не светить".
Генератор векторов 4 интерпретирует полученный из блока 1 памяти примитив-вектор в последовательность точек, образу1ощих линию путем выдачи сигналов модификации координат +Х. +. / и сигнала "Светить не светить".
Счетчики 5(х) и 6(у) предназначены для хранения координат х и у текущей точки, регистры 7(х) и (у) г|реднаэначены для фиксации координат гакущей точки в системе координат табло. Регистры 10, 12, 13 и 14 предназначены для хранения значений нижних и веохних границ по осям х и у.
Регистры 9 и 11 предназначены для хранения координат начала отсчета табло в виртуальном пространстве изображения.
Блоки сравнения 17-20 обеспечивают проверку попадания текущей точки в "окно", сравнивая содержимое счетчиков (х) и (у) с соответствующими значениями регистров. Сумматоры 15 и 16 обеспечивают вычисление значения координат попавшей в
"окно" точки в системе координат табло.
Дешифратор 21 преобразует значение групп старших. разрядов координат х и у точки, попавшей в "окно", в сигнал "Выборки" для активизации соответствующего модуля индикации 23 в блоке индикации 54, Модуль индикации 23 предназначен для непосредственной визуализации соответствующей части иэображения и представляет собой функциональный блок, преобразующий содержимое, входящей в его состав буферной памяти (битовой карты) в световой сигнал, в данном случае не имеет значения физический принцип самого индикатора, требуется лишь, чтобы он имел матричную структуру и допускал стык соседних индика-. торов беэ потери информационного шага, Устройство работает следующим образом, По направляющему сигналу "Начало работы" со входа 35, получаемому от внешнего устройства, начинается последовательное считывание слов (команд) из блока
1 памяти, дешифрация и запись их в соответствующие функциональные блоки, Код слова включает поле адреса и поле непосредственных данных. Цикл интерпретации каждой очередной команды предполагает либо запись непосредственно кода с выхода блока 1 в блоки 5,6,8, l1,13 и 14, либо инициализацию блоков 2 или 4, Рассмотрим далее взаимодействие блоков на примере интерпретации примитива генератором векторов
4, так как алгоритм взаимодействия знакогенератора 2 с окружающими его блоками аналогичен.
После записи в генератор векторов 4 примитива-вектора, несущего информацию о длине и направлении, генератор выдает сигнал "Занято", поступающий на один из входов элемента ИЛИ 27, который в свою очередь снимает блокирующий сигнал со входа сброса триггера 25 (Î-триггера) и разрешает тем самым управление его по тактовому входу. Фронтом очередного импульса, поступающего от генератора импульсов 24 через элемент И 28, триггер 25 переводится в состояние "1" (на его D-входе постоянно присутствует уровень "1") и разблокирует прохождение импульсов через элемент И
29. Фаза высокого уровня имульсов на выходе последнего является стробирующим сигналом (" Строб" ) для генератора векторов
4, который на время действия этой фазы выдает сигналы модификации состояния первых счетчиков 5 и 6 координат текущей точки, а последние по этим сигналам изменяют свое состояние. В момент окончания рассматриваемой фазы выходы генератора векторов 4, подключенные к счетчикам 5 и
6, переходят в пассивное состояние, а сам он выполняет внутренний алгоритм генерации адресов следующей точки линии. Длительность фаз генератора импульсов 24
1674222 зволяет повысить быстродействие за счет пропуска точек, не попавших в "окно". Он же допускает избирательный вывод части изображения в определенную зону (none вывода) матричного табло, не искажая при этом изображение вне "окна"
Процесс обработки сводится к проверке выполнения двух систем неравенств:
Хтек. Хв. гр.< О;
Утек. Ув.гр.< О, Хтек. Хн.гр. > О;
Утек. Ун.гр. > О, где Хтек,, Утек.— координаты текущей точки в виртуальном пространстве изображения;
Хв.гр., Ув.гр., Хн. гр., Ун,гр. соответственно, верхняя и нижняя границы "окна" по координатам Х и Y в виртуальном пространстве изображения.
Если все неравенства выполняются, в момент появления сигнала на "1" на выходе элемента И 30(выход элемента НЕ 26) на его выходе появляется сигнал "1", означающий попадание точки в "окно". И тогда результат выполняемого сумматорами 15 и 16 вычисления выражения
Хтек. Хнач.к.т.
Утек. Унач.к.т., где Хнач.к.т. и Унач.к.т, — соответственно координата Х и координата Y начала отсчета табло в виртуальном пространстве изображения, является координатами текущей точки в системе координат самого табло.
Это результат вычисления по фронту импульса на выходе элемента И 30 заносится в регистры 7 и 8, Одновременно одновибратор 22 вырабатывает блокирующий сигнал низкого уровня, который, поступая на вход элемента И 28, запрещает прохождение импульсов с генератора импульсов 24. Тем самым создается пауза, необходимая для обработки старших разрядов координат текущей точки, попавшей в "окно", дешифратором 21 и записи. В соответствующий модуль индикации 23 состояния точки, сигнал которого присутствует на четвертом выходе генератора векторов 4 (признак "Светить не
50 выбирается так, чтобы к моменту начала фазы низкого уровня на выходе элемента И 29, т,е. появления сигнала высокого уровня на входе элемента И 30 с выхода элемента 26, на выходе блоков сравнения 17 — 20 появился действительный результат сравнения координат текущей точки с содержимым регистров 10,12,13 и 14.
В процессе обработки каждая точка проверяется на попадание в "окно" (фиг.5), . 10 которое представляет собой прямоугольник, ограниченный в виртуальном пространстве всего изображения значениями координат
Хн.гр., Ун.гр., Xe.гр., Ув,rp. Этот механизм посветить") и поступает на соответствующие входы модулей индикации 23 1-23N блока индикации 54, По окончании блокирующего импульса с одновибратора 22, на выходе элемента И 29 синхронно с сигналами генератора импульсов
24 вновь появляются сигналы "Строб", которые инициируют обработку следующих тачек Этот процесс будет повторяться до тех пор, пока не будут обработаны все точки вектора, записанного в генераторе векторов 4, после этого блок 4 снимает сигнал "Занято" со входа элемента ИЛИ 27, на входе сброса триггера 25 появится обнуляющий сигнал.
Триггер 25 сбросится и низкий уровень сигнала с его выхода, поступающий на выход (конец элемента) блока управления 3, послужит сигналом окончания обработки полученного примитива-вектора, после этого блок управления 3 инициирует очередное считывание слова-примитива из блока 1 памяти.
Указанная последовательность продолжается до считывания из блока 1 памяти команды "Конец кадра", которая переводит блок управления 3 в состояние ожидания следующего сигнала запуска от внешнего устройства.
Импульс высокого уровня со входа 35 устройства (" Старт" ) при находящемся во взведенном состоянии триггере 46 (т.е. после конца кадра) блока управления 3 инициирует появление на выходе элемента И 47 импульса высокого уровня, который обнуляет счетчик 43 И запускает одновибратор 48 (фиг.3). Последний формирует сигнал чте.ния блока 1 памяти по адресу с выхода счетчика 43. Группа разрядов слова, считанного с блока 1 памяти, в котором содержится информация о коде команды (адресное поле) через информационный вход схемы управления 3 поступает на дешифратор 44. В момент действия стробирующего импульса с одновибратора 49 на одном из выходов блока индикации 54, соотетствующем содержимому адресного поля, появляется активный сигнал, который и осуществляет запись информации в выбранный функциональный блок устройства, По получении команды
"Конец кадра" триггер 46 переходит в исходное состояние и устройство готово к получению очередной инициативы.
В исходном состоянии знакогенератора
2 счетчик 37 обнулен и сигнал низкого уровня на его выходе переноса удерживает в пассивном состоянии коммутатор 41, а одновременно поддерживает отсутствие сигнала "Занято" на выходе знакогенератора 2 и через элемент И 42 блокирует выходы блока постоянной памяти 40 (фиг.2). По сигналу "Запись" от блока управления 3 код
1674222
15
20 знака (непосредственные данные с выхода блока 1) заносится в регистр 38, с выходов которого он поступает на старшую часть адресных входов блока постоянной памяти 39, одновременно происходитзапись в счетчик
37 количества столбцов в матрице точек знака (контакты). При этом на выходе переноса счетчика 37 появляется сигнал высокого уровня, который вклк)чает в работу коммутатор 41, разрешает прохождение импульсов
"Строб" (элемент И 42) и одновременно служит сигналом "Занято". К этому моменту на информационном выходе счетчика 36 находится номер первой точки в столбце )в инверсном коде), который поступает на адресный вход коммутатора 41, разрешая тем самым прохождение сигнала "Светить не светить" текущей точки с соответствующего выхода блока постоянной памяти 39 на вы. ход коммутатора 41, а также на часть адресных входов блока постоянной памяти 40, Определяется совместно с номером текущего столбца закон формирования сигналов модификации счетчиков 5 и 6 координат текущей точки. В течение единичной фазы сигнала "Строб", активизируются выходы блока постоянной памяти 40, по спаду сигнала "Строб" происходит модификация номера точки в столбце и отключение выходов второго блока постоянной памяти 40; при последующем переходе сигнала "Строб" в состояние "1" вся процедура повторяется, после перебора всех точек столбца знака сигналом с выхода переноса счетчика 36 происходит модификация состояния счетчика 37 (следующий столбец) и параллельная запись в счетчик 36 номера начальной точки в столбце (контакты). По завершении перебора столбцов знака счетчик 37 обнуляется и знакогенератор 2 переходит в исходное состояние.
В исходном состоянии генератора векторов 4 (фиг.4) счетчик 50 обнулен, выходы блока 51 постоянной памяти отключены, сигнал "Занято" от генератора векторов 4 отсутствует. Информация о векторе с выхода блока I памяти записывается следующим образом: длина — в счетчик 50, направление и бит-признак "Светящийся не светящийся" — в регистр 52. Непосредственно после записи появляется сигнал "Занято" от генератора векторов 4, который инициирует генерацию сигналов каждой точки по сигналу "Строб" аналогично знакогенератору 2. Закон модификации состояния счетчиков 5 и 6 содержится в блоке 51 постоянной памяти для всех возможных направлений из регистра
52. При восьмиразрядном счетчике 50 и ре гистре 52 возможно построение векторов длиной до 256 точек в 128 направлениях. По
55 исчерпании длины вектора обнуляется счетчик 50 и генератор векторов 4 переходит в исходное состояние, Устройство имеет ряд преимуществ в сравнении с прототипом. В нем для увеличения быстродействия применен аппаратурный генератор векторов с быстрой табличной интерполяцией линий, Область применения расширения за счет развязки нижних границ "окна" и начала координат табло в виртуальном пространстве изображения. В целом это позволяет быстро компоновать различные прямоугольные участки виртуального пространства изображения в поле координат табло. для чего требуется только незначительная коррекция содержимого блока 1 памяти, необходимая для изменения начального содержимого шести регистров, с последующей повторной обработкой устройством всего кадра
Формула изобретения
Устройство для обработки графической информации, содержащее блок памяти, знакогенератор, первый и второй счетчики, первый, второй, третий, четвертый, пятый и шестой регистры, первый и второй сумматоры, первый и второй блоки сравнения, блок индикации, генератор импульсов, элемент
ИЛИ, блок управления и одновибратор, вход которого соединен с управляющими входами первого и второго регистров, информационные входы которых соединены с выходами. первого и второго сумматоров соответственно, первый и второй выходы знакогенератора соединены с управляющими входами первого и второго счетчиков соответственно, выходы которых соединены с первыми входами соответствующих сумматоров и блоков сравнения, вторые входы сумматоров и блоков сравнения соединены с выходами третьего, четвертого, пятого и шестого регистров соответственно, первый адресный вход, первый информационный вход и входы управления записью и считыванием блока памяти являются входами группы устройства, выход блока памяти соединен с информационным входом знакогенератора,отличающееся тем, что, с целью повышения быстродействия и расширения области применения эа счет обеспечения возможности изображения в произвольно расположенном "окне" на поле индикатора, в него введены генератор векторов, первый, второй и третий элементы И, триггер, элемент НЕ, третий и четвертый блоки сравнения, седьмой и восьмой регистры, выход блока памяти соединен с информационными входами генератора векто-- ров, первого и второго счетчиков, третьего, четвертого, пятого, шестого, седьмого и вось1674222
10 мого регистров и блока управления, выходы седьмого и восьмого регистров соединены с первыми входами третьего и четвертого блоков сравнения соответственно, вторые входы которых соединены с выходами перacro и второго счетчиков соответственно, выходы первого, второго, третьего и четвертого блоков сравнения подключены к входам первого элемента И, выход которого соединен с входом одновибратора, выход которого соединен r. управляющим входом блока индикации первым входом второго элемента И, второй вход которого соединен с выходом генератора импульсов, а выход соединен с первым входом третьего элемента И и тактовым входом триггера, выход которого соединен с первым управляющим входом блока управления и вторым входом третьего элемента И, выход которого соединен с управляющими входами генератора векторов и знакогенератора и входом элемента НЕ, выход которого соединен с пятым входом первого элемента И, первый и второй входы элемента ИЛИ соединены с третьим и первым выходами соответственно знакогенератора и генератора векторов, а выход соединен с входом сброса триггера, 5 вторые и третьи выходы генератора векторов соответственно соединены с первым и вторым выходами знакогенератора, четвертые выходы генератора векторов и знакогенератора подключены к информационному
10 входу блока индикации, .выходы первого и. второго регистров подключены к адресным входам блока индикации, выходы группы блошка управления подключены к соответствующим входам разрешения записи знако15 генератора, генератора векторов, первого и второго счетчиков, третьего, четвертого, пятого, шестого, седьмого и восьмого регистров, третьим входом элемента ИЛИ, второй управляющий вход блока управления явля20 ется входом устройства, первый и второй выходы блока управления подключены соответственно к второму входу и второму входу управления считыванием блока памяти, 1674222
&агам
К&оку
ВхоР
З5
К бяокам ф 2 b ff fll4 18109 $ Z7 ч иг.д
1674222
От &око8
OAИЮ
О
A ФЛО М црмупльое nрослщ ел до изобрамеиия
16,4222
Ф
1 4
Ф )
Ц ю ф
Ъ
1674222 (дСХОУ35) Т Ф8(Выход
Редактор Н. Химчук
Заказ 2928 Тираж 277 Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., 4/5
Производственно-издательский комбинат "Патент", г. Ужгород, ул.Гагарина, 101
047(Выход
Ф8 (Выход)
99(8иход)
ДШМ(йод
Составитель А. Александров
Техред M.Ìoðãåíòàë Корректор С. Черни