Устройство для параллельной обработки трехмерных сцен
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике, предназначено для решения задач обработки изображений, задач размещения , распознавания образов, машинной графики. Целью изобретения является увеличение скорости выполнения геометрических преобразований переноса, поворота, сжатия над плоскими изображениями высокого разрешения и увеличение скорости ввода-вывода изображений. Для этого изобретение содержит матрицу процессоров, блок управления, матрицу узлов поворота, матрицу узлов сжатия, матрицу узлов памяти и блок коммутации. 12 ил.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (я)5 G 06 F 15/62
Г ОСУДАРСТВЕННОЕ ПАТЕНТНОЕ
ВЕДОМСТВО СССР (ГОСПАТЕНТ СССР) ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4778820/24 (22) 08.01.90 (46) 23.05.93. Бюл. № 19 (71) Ижевский механический институт (72) В.А,Бимаков (56) Авторское свидетельство СССР
¹ 1456965, кл. G 06 F 15/62, 1986. . Авторское свидетельство СССР
¹ 1612307, кл. G 06 F 15/62, 1988, (54) УСТРОЙСТВО ДЛЯ ПАРАЛЛЕЛЬНОЙ
ОБРАБОТКИ ТРЕХМЕРНЫХ СЦЕН (57) Изобретение относится к вычислительной технике, предназначено для решения
Изобретение относится к вычислительной технике и предназначенр для решения задач обработки изображений, задач размещения, распознавания образов, машинной графики, Цель изобретения — увеличение скорости выполнения геометрических преобразований переноса, поворота, сжатия над плоскими изображениями высокого разрешения и увеличение скорости ввода-вывода изображений.
На фиг.1 и 2 изображена функциональная схема устройства; на фиг.3 и 4 — связи между блоком коммутации, памятью изображений и переноса плоских изображений; на фиг.6-9 — способы выполнения расшивки, поворотов, сжатий плоских изображений; на фиг,10 и 11 — вариант конструкции устройства ввода изображений; на фиг.12 — вариант конструкции устройства вывода изображений.
Устройство состоит из матрицы 1 процессоров, блока 2 управления, узлов 3 пово„„5U „„1817109 А1 задач обработки изображений, задач размещения, распознавания образов, машинной графики. Целью изобретения является увеличение скорости выполнения геометрических преобразований переноса, поворота, сжатия над плоскими изображениями высокого разрешения и увеличение скорости ввода-вывода изображений. Для этого изобретение содержит матрицу процессоров, блок управления, матрицу узлов поворота, матрицу узлов сжатия, матрицу узлов памяти и блок коммутации. 12 ил. рота, узлов 4 сжатия, узлов 5 памяти, блока
6 коммутации, блока 7 сопряжения, Блок.2 включает в себя микропрограммный управляющий процессор 8 с регистром 9 микрослова и программно-адресуемыми регистрами 10, 11, 12, 13, 14, 15, 16, 17, 18, память 19 программ и данных, контроллеры
20 внешних устройств 21, Связь между отдельными узлами блока 2 осуществляется посредством интерфейса 22. Кроме того в блок 2 входят: дешифратор 23, элементы 24
И,25 ИЛИ выбора узлов поворота, элементы
26 И, 27 ИЛИ выбора узлов сжатия, дешифратор 28 кода режима ввода-вывода, мультиплексор 29 адреса, элемент 30 ИЛИ, элементы 31, 32, 33, 34, 35, 36, 37 И, дешифратор 38 кода буфера, блок 39 элементов И, двухвходовые элементы 40, 41 ИЛИ, узел определения обьема-площади, состоящий из А -входовой схемы 42 ИЛИ, А -входового аналогового сумматора 43 и импульсного вольтметра 44. Матрица 1 посредством блока 7 связана с устройством ввода изображе1817109
1) команда СДХ а1, а2 — "бинарное изображение УА" X VA, хранящееся в матрице 1 по адресу а1, сдвинуть на шаг вдоль оси
ОпХл (фиг.5,а), сдвинутое изображение за5 писать в матрицу 1 по адресу а2".
2) команда СДУ а1, а2 — "бинарное изображение A X VA, хранящееся в матрице 1 по адресу а1, сдвинуть на шаг вдоль оси
0r У {фиг.5,а), сдвинутое изображение за10 писать в матрицу 1 по адресу а2", 3) команда РСШ ai, а2 — "расшить иэображение VA X VA, хранящееся в матрице 1 по адресу а1 вдоль осей О,Хп и ОпУп расшитое изображение записать в матрицу
15 1 по адресу а2", 4) команда ПВП а1, а2 — "повернуть соде жимое бинарного изображения
А X VA, предварительно расшитого вдоль осей ОпХП, ОТКУП и хранящегося в мат20 рице 1 по адресу а1, вокруг центра изображения на угол, номер значения которого хранится в регистре 12, повернутое изображение записать в матрицу 1 по адресу а2", 5) команда СЖУ а1, а2 — "бинарное изо25 .бражение vAз Х VA, хранящееся в матрице 1 по адресу а1, сжать к оси ОпУ> на коэффициент, номер значения которого хранится в регистре 15, сжатое изображение записать в матрицу 1 по адресу а2", 30 6) команда СЖХ а1, а2 — "бинарное изображение чА X vA, хранящееся в матрице 1 по адресу а1, сжать к оси О<Хп на коэффициент, номер значения которого хранится в регистре 15, сжатое изображение
40
50 ний, состоящим из оптической системы 45, узла 46 фотодатчиков, распределительного узла 47, узла 48 аналогово-цифровых преобразователей, узла 49 управления, Выходы процессорной матрицы 1 соединены с устройством вывода изображений, включающим в себя узел 50 отображения, узел 51 памяти регенерации, узел 52 выборки пиксела, блок 53 формирования и управления, состоящий из узла 54управления, памяти 55 цветов, цифроаналогового преобразователя 56. Узел 51 содержит в своем составе г четыре буфера 57, состоящих иэ А элементов 58 памяти каждый. Блок 6 состоит из узлов 59, 60 и 61. 62, 63, состоящих в свою очередь, из двухвходовых элементов 64, 65, бб, 67, 68 И соответственно. Узел 52 включает четыре мультиплексора 69, мультиплексор 70, счетчик 71.
Устройство работает следующим образом. В памяти 19 хранятся программы обработки. Каждая команда программы перед ее выполнением извлекается из памяти 19 и разрешается в регистрах процессора 8, при этом адрес первого операнда размещается в регистре 10, адрес второго операнда — в регистре 11. Далее дешифрируется код операции извлеченной команды, после чего блоком микропрограммного управления процессора 8 вырабатываются сигналы микроопераций, необходимые для выполнения данной команды. Система команд заявленного устройства включает в себя арифметико-логические команды, команды условного и безусловного перехода, команды управления матрицей 1. Назначение и способ выполнения всех арифметико-логических команд, команд условного и безусловного перехода полностью определяются выбранной конструкцией процессора 8, памяти 19, интерфейса 22, которые выполняются по одной иэ известных схем (в частности, эа их основу могут быть взяты центральный процессор, оперативная память и интерфейс
3ВМ "Электроника-100/25" /. Содержимое одноразрядных слов, хранящихся по одному и тому же адресу в А узлах локальной
3 памяти процессоров матрицы 1, в зависимости от выполняемой команды интерпретируется устройством либо как черезмерное бинарное изображение А х А х А, либо как двухмерное бинарное изображение формата /А Х VA, На фиг.5 показан один из способов представления содержимого трех-. мерного бинарного изображения формата 5
16 х 16 х 16 (фиг,15,б) в виде двухмерного бинарного изображения 64 х 64 (фиг,5,а). По сравнению с прототипом в систему команд заявленного устройства дополнительно введены следующие команды: записать в матрицу 1 по адресу а2", 7) команда УУВ — "установить устройство ввода изображений в начальное состояние", 8) команда ВВИЗ вЂ” "ввести фрагмент изображения в матрицу 1 с устройства ввода", 9) команда В Ы В И вЂ” "вывести изображение иэ матрицы 1 на устройство вывода".
Поскольку в заявленном устройстве {в отличие от прототипа) выходы узла 5 соединены с входами матрицы 1 через блок 6 коммутации, чтение содержимого узла 5 осуществляется здесь иным, чем в прототипе, способом. В зависимости от устанавливаемого блоком 6 соответствия между выходами узла 5 и входами матрицы 1 команды чтения содержимого памяти 5 имеют следующие модификации; а) команда ЧПИ а1, Ь1 — "записать бинарное изображение формата А х А, хранящееся в.памяти 5 по адресу, х значение которого хранится в памяти 19 по адресу b1, в первый (относительно ОХ) слой А х А х 1 трехмерного бинарного иэображения А х А
1817109 х А, расположенного е матрице 1 по адресу а1, исходное содержимое этого изображ ния сдвинуть на шаг в направлении ОХ" (анэлог команды В В В прототипа), б) команда ЧПХ а1, Ь1 — "записать би- 5 нарное изображение формата VA x 1, хранящееся в узле 5 по адресу, значение которого хранится в памяти 19 по адресу Ь1, в первую(относительно ОпХц) строку ЧА х 1 двухме0ного бинарного изображения 10
ЧА Х ЧА, расположенного в матрице 1 по адресу а1, исходное содержимое этого иэображения сдвинуть на шаг в направлении
О Х, в) команда ЧПУ а1. b1 — "записать би- 15 нарное изображение формата ЧАзх 1, хранящееся в узле 5 по адресу, значение которого хранится в памяти 19 по адресу Ь1, в первую (относительно ОЯ) строку ЧА" х
1 двухмерного бинарного изображения 20
ЧАз X ЧА, расположенного в матрице 1 по адресу а1, исходное содержимое этого изобоам ения сдвинуть на шаг в направлении
OnУп", Каждой команде соответствует своя 25 микропрограмма — набор микрокоманд, последовательное выполнение которых приводит к выполнению операции, заданной в команде. После дешифрации кода операции адрес начального микрослова команды за- ЗО писывается в регистр микроадреса процессора 8. По этому микроадресу из памяти микропрограмм процессора 8 извлекается управляющее микрослово и загружается в регистр 9. Это микрослово содержит управ- З5 ляющее поле, разряды которого используются для генерации сигналов требуемых микроопераций, а также поле следующего микроадреса и поле кода микроветвления.
После следующего микроадреса содержит 40 базовый микроэдрес, который указывает на следующее микрослово при естественной последовательности выборки микрослов.
Этот базовый миКроэдрес может быть модифицирован с целью микроветвления, поле 45 кода микроветвления определяет, какие признаки необходимо проверить и использовать для модификации микроадреса.
Часть управляющего поля микрослова образует поле управления матрицей 1, другая 50 часть образует поле управления устройствами ввода-вывода. В поле управления матрицей 1 входят разряды кода РВВ, разряд
СР1, разряд СР2, разряд ЗЛП, разряды кода
КМО, разряд ЗП, разряд ЧС. разряды кода 55
РУАВ. В поле управления устройствами ввода-вывода входят разряд НУ, разряды кода
РЗБ.
Выполнение каждой из перечисленных команд проиллюстрируем на примере устройствэ, процессорная матрица 1 которого имеет формат 16 х 16 х 16, узлы 61 и 63 содержат по 192 двухвходовых элемента И каждый, образующих вместе прямоугольную матрицу 16 х 12, узел 59 содержит 256 (16 х 16) двухвходовых элементов 64 И, узлы, 60 и 62 содержат по 64 (16 х 4) двухвходовых элемента И каждый, высокоскоростной ввод изображений осуществляется с устройства ввода фотоизображений, построенного на базе приборов с зарядовой связью (ПЭС), высокоскоростной вывод иэображений осуществляется на растровое электронно-лучевое устройство отображения.
Команда СДХ а1, а2 используется для выполнения высокоскоростного переноса изображения VA X ЧА на шаг в направлении О Кп или в направлении — OnXn. Для выполнения переноса в направлении OOO: исходное бинарное изображение
ЧААЗ X VA (фиг.5,а) размещается в матрице
1 по адресу а1 таким образом, чтобы отдельные его плоские фрагменты А х А располагались параллельно плоскости ZOX согласно фиг,5(б,г), При выполнении сдвига изображения уА X VA перенос внутреннего соз держимого его плоских фрагментов А х А производится аналогично тому, как выполняется команда СДВ в прототипе. Обмен информацией между фрагментами А х А (фиг.5,r) осуществляется при помощи узла
61 (фиг,З). Начальное микрослово команды
СДХ а1, а2 содержит: РУАВ = 00, СР1 = 1. По синхросигналу С1 {фиг.2). вырабатываемому генератором синхроимпульсов процессора
8, код адреса а1, снимаемый с выходов регистра 10, мультиплексором 29 подключается к входам АЛ П матрицы 1, С приходом синхроимпульса С2 изображение
ЧА Х ЧА, снимаемое с выходов локальной памяти процессоров матрицы 1, записывается в регистры первого операнда матрицы 1, С приходом следующего синхроимпульса С1 извлекается второе микрослово, содержащее: РУАВ = 01, СР1 = О, KMO =
=0011 — код микрооперации "Сдвиг на шаг по OX", PB8 = 0011 — код режима СДХ, ЗЛП = 1, Код а2, снимаемый с выходов регистра 11, подключается к входам АЛП матрицы 1. На управляющие входы элементов 66 поступает разрешающий сигнал с выхода
СДХ дешифраторэ 28, в результате чего информация со 192 выходов матрицы 1 проходит на соответствующие 192 входа матрицы
1 (фиг.З, 5-г). Импульс CS записывает сдвинутое изображение ЧА X ЧА- в матрицу.1 по адресу а2. Для выполнения переноса изображения ЧА" X ЧАз на шаг в направлении
-О7 п изображение vA х VA (фиг.5,а,б) 1817109 необходимо повернуть на 180 вокруг оси
OX (фиг.5,в) и на 180 вокруг оси OY (фиг.5,е", результирующее изображение записать в матрицу 1 по адресу а1, после чего выполнить команду СДХ а1, а2 вышеописан- 5 ным способом. с
Команда СДУ а1, а2, используется при выполнении высокоскоростного переноса изображения VA X VA" нашаг в направлении Од7д или в направлении -Оптп, я выпол- 10 нения переноса в направлении и и исходное иэображение VA X VA (фиг.5,а,б) поворачивается на 90 вокруг оси OY (фиг.5,д) и записывается по адресу а1 в матрицу 1. При сдвиге обмен информацией между отдель- 15 ными фрагментами А х А сдвигаемого изображения VA X VA осуществляется при помощи узла 63 (фиг.4). В отличие от микропрограммы команды СДХ а1, а2 второе микрослово команды СДУ а1, а2 содержит 20 код PB8 = 0101 — код режима СДУ. Для выполнения переноса изображения
VA3 X VA (фиг.5,а,б) на шаг в направлении — Op Yn исходное изображение VA X VA необходимо повернуть на 180 вокруг оси ОХ 25 (фиг,5в) и на 90 вокруг оси OY (фиг.5ж), после чего выполнйть команду СДУ а1, а2.
Команда РСШ а1, а2 вместе с командой
ПВП а1, а2 служат для моделирования поворота изображения VA X /А" вокруг цент- 30 ра изображения на угол, номер значения которого находится в регистре 12, При этом команда PCS выполняет подготовительную операцию — расшивку исходного изображения (его поворачиваемую часть) на отдель- 35 ные фрагменты Ап х Ап по слоям А х А х 1 матрицы 1. Выделим из квадрата А х А наибольший центральный квадрат А х Ап, вращение которого на любой произвольный угол у вокруг центра квадрата А х А (фиг,бв) 40 не приводит к выходу точек квадрата А, Х А за пределы А х A. Очевидно, что А = А/2 " д0.7А, Изображение ЧА X VAз состоит из
А фрагментов А х А(на фиг,7д эти фрагменты обозначены U>, где i, j = {1, ..., 4), Поворачи- 45 ваемый участок Е х Е изображения A x ЧА" состоит из А фрагментов Ап х Ал (на фиг.9е эти фрагменты обозначены U ).
Перед моделированием поворота поворачиваемое изображение VA X VA подверга- 50 ется расшивке командой РСШ, в результате чего каждый фрагмент Oi участка Е х Е этого изображения располагается s центре квадрата Ц1 (фиг.бд). Расшивка начинается с переноса исходного изображения
VA X VA (с помощью псевдокоманд СДХ, СДУ) сначала по направлению пХл (фиг,9в), а затем по направлению -О„У, (фиг,бб) до тех пор, пока центр U44 не совпадет с центром U44, Из полученного таким образом изображения Т (фиг.б) выделяется его крайняя правая полоса А х VAз при помощи изображения-маски М1 (фиг,бв); Р = Т П М1, После этого изображения Т и М1 сдвигаются на А шагов по направлению — О,Хп и вновь производится маскирование: P = PU/TnM1/. В результате трехкратного выполнения последней процедуры формируется изображеwe P, показанное на фиг.6г, Аналогичным образом осуществляется расшивка полученного иэображения P вдоль оси ОПУп (фиг.бд), в этом случае вместо маски М1 применяется изображение-маска М2, представляющее собой изображение М1 (фиг.бв), повернутое на 90 вокруг своего центра. Результат расшивки (фиг.бд) записывается в матицу 1 по адресу а2.
Команда ПВП а1, а2 использует расшитое командой РСШ изображение
VA X VA (фиг.бд) и хранящееся в матрице
1 по адресу а1, в качестве своего исходного операнда. Выполнение команды начинается с поворота содержимого всех фрагментов
Ц изображения (фиг.6д) вокруг центров фрагментов U j на угол у, номер значения которого расположен в регистре 12 (фиг.бе), Реализация этой процедуры аналогична реализации в прототипе поворота трехмерного бинарного изображения А х А х А вокруг оси ОХ на произвольный угол у . Так как у угол произвольный (из диапазона 0О
<360О), а высокоскоростной поворот, осуществляемый в узлах 3, производится только на углы из диапазона 0 < а < 45О, то поворот изображения А х А х А вокруг оси ОХ на угол у в общем случае включает два этапа;
1) поворот изображения А х А х А на угол
0 < а < 45, 2) дополнительный поворот повернутого иэображения А х А х А на соответствующий угол кратный 90О, Таким образом каждому номеру значения у, хранящемуй в регистре 12, дается в соответствии свой номер значения ау . Этот номер хранится в виде константы в памяти
19 по жестко фиксированному адресу, В процессе выполнения команды ПВП этот адрес восстанавливается по коду, хранящемуся в регистре f2, и содержимое этой ячейки записывается в регистр 15. После выполнения поворота иэображение (фиг.бе) сшивается в единый, повернутый на угол у квадрат Е х Е (фиг,7е). Сшивание осуществляется в несколько этапов. На первом этапе производится сшивание А повернутых фрагментов А х Ал (фиг.6е) в А/4 повернутых фрагмента 2Ао х 2Ал — фиг.7в), на втором этапе производится сшивание А/4 повернутыхфрагментов2АП х 2Ал в А/16 повернутых
1817109
Фрагмента 4Ал х 4А> (фиг.7e) и т.д. Процеду- служат для точной установки перемещаера сшивания заключается в переносе сши- мых фрагментов на плоскости XnOnYn, уставаемых фрагментов в плоскости ХпОпУп и новка осуществляется при помощи выполнения над сдвинутыми фрагментами микроподпрограмм аналогичных микротеоретико-множественной операции "объе- 5 программ командСДХи СДУ(иначепсевдодинение". Каждый этап сшивания состоит команд СДХ и СДУ). Параметры L3, Х, Yó из4-х подэтапов. Каждый подэтап включает хранятся в памяти 19 в виде констант по в себя выделение из иэображения жестко фиксированным адресам. ИзвлечеЧА г X VÀA, полученного на предыдущем ние параметров Ly, Х, У в процессе выполэтапе сшивания, группы фрагментов А х А, 10 нения команды ПБП производится по коду, перенос которых в плоскости XnDnYn может хранящемуся в регистре 12. быть осуществлен одновременно, и парал- Команда СЖУ э1, а2 предназначена для лельный перенос содержимого этих фраг- высокоскоростногосжатия(растяжения)соментов. Этап заканчивается объединением держимого изображения VA X /А" (от) сдвинутого содержимого всех 4-х групп t5 прямой проходящейчерез центрэтогоизофрагментов А х А в одно общее иэображе- бражения и параллельной оси О У, Микроние VÀ XVÀ . На фиг.76 показан резуль- программная реализация этой команды тат одновременного переноса 4-х зависит от значения коэффициента К сжафрагментов А х А изображения (фиг.бе), вы- тия, номер которого хранится в регистре 15. деленных маской М3 (фиг,7а). На фиг.7(д) 20 При К>1(собственно сжатие) исходноеизопоказан результат переноса 4-х фрагментов бражение VA X VA, хранящееся в матриА х А, выделенных маской М4 (фиг.7г) из це1поадресуа1,переписывается поадресу изображения (фиг.7в) полученного в резуль- а2 с поворотом на 90 вокруг оси 02(фиг.8а), тате выполнения первого этапа сшивания. Затем производится последовательное сжаС целью повышения скорости переноса 25 тие полученного изображения А х А х А (адсшйваемых фрагментов на каждом 1-м этапе рес а2) к плоскости ZOX (при помощи сшивания используются 3 параметра пере- псевдокоманд СЖ вЂ” микроподпрограмм, носа: 1) L > — число одношаговых сдвигов аналогичных микропрограмме команды СЖ
1 вдоль оси ОХ, 2) X> —.число одношаговых а1 прототипа), Двухмерная интерпретация сдвигов вдоль оси О,Хл, 3) Y< — число 30 результатасжатия изображения(фиг.ба) поодношаговыхсдвиговвдольоси О Ул. Пере- казана на фиг.9а. Далее осуществляется носом изображения А х А х А íà L шагов сшивание отдельных полос /А/К/ х VA по направлению OX моделируется перенос изображения фиг.9а) в единое сжатое изоизображения VA X ЧА на N шагов (где N бражение(ЧЙ /К) х ЧАз (фиг,96). Сшивание кратно А) в плоскости Х>О>У> вдоль осей 35 заключается в последовательном выделеО Х и OnÓn. Поясним это на следующем нии из изображения (Фиг.9а) содержимого примере. Пусть необходимо одновременно каждой отдельной полосы А х (при помощи перенести 4 фрагмента А хА,,выделенных масок вида М1), переносе содержимого кэжмаской АЗ (фиг.7а) из изображения дой (-й выделенной полосы А х VAз к пря(фиг.5а,б), на" А = 1б шагов в направлении 40 мой РуRó íà Х шагов вдоль оси О Хл. По
ОпМпи наА=1б шагов в направлении-О„Ул, окончании переноса над сдвинутым содерВ заявленном устройстве данная процедура жимым полос выполняется теоретико-мноосуществляется путем последовательного жественная операция "объединение". выполнения одного поворота на 90 вокруг Константы сшивания (Х ) хранятся в памяти
OZ, пяти сдвигов по направлению 02, одно- 45 19 по жестко фиксированным адресам, изго поворота на 270 вокруг OZ. Результат влечение их производится по коду, храняповорота изображения (фиг.5а.б) на 90 вок- щемуся в регистре 15. При К < 1 (растяжение) руг 02 показан на фиг.8(а), На фиг.8(б,в,г,д,е) исходное изображение ЧА X VA, храняпоказана двухмерная интердзетация пере- щееся по а1, переписывается по адресу а2 и носа изображения VAз Х ЧА", выделенно- 50 подвергается расшивке вдоль оси ОпХп го маской МЗ из изображения (фиг,5а)„на 1, (фиг.9в,г), для чего по содержимому регист2, 3, 4, 5 шагов по направлению вектора 0%. ра 15 иэ памяти 19 извлекаются константы
Фиг.8(б)соответствуетрезультатупереноса сшивания, Затем расшитое изображение выделенного изображения VA X ЧА на А растягивается от плоскости 20Х (при помошагов по направлению ОлХл, фиг.8(д) соот- 55 щи псевдокоманд СЖ). Двухмерная интерпветствует результату переноса выделенного ретация результата растяжения показана на изоб ажения на А шагов по направлению фиг.9д), t — л, фиг,8(е) — результату переноса на А Команда СЖХ а1, а2 предназначена для шагов по направлению -00 On и на А шагов высокоскоростного сжатия (растяжения) сопо направлению -ГД п. Параметры Х, У
1817109
10
20
30
40
50
55 ГВВИ осуществляется сдвиг на шаг содержимого всех 256 регистров сдвига 8-ми ПЗСприборов, после чего начинается цикл ввода следующей 256-пиксельной горизонтальной строки. держимого изображения УА X vA к (от)
3 прямой P>R>, проходящей через центр этого изображения и параллельной оси О<Х<. Команда СЖХ выполняется аналогично команде СЖУ, однако расшивка (при К < 1) и 5 сшивание (п0и К > 1) исходного изображения VÀA X уА здесь осуществляется вдоль оси ОпУП.
Команда ЧПИ а1, Ь1 введена в систему команд устройства вместо команды ВВВ а1 прототипа, Выполнение команды ЧПИ а1, Ь1 начинается с записи содержимого ячейки
Ь1 памяти 19 в регистр 13. Далее выполняется микрокоманда, микрослово которой содержит: РУАВ = 00, КМО = 0011, СР+ = 1, ЗЛП = 1, РВВ = 0110 — код режима ЧП, По импульсу С1 на адресных входах АЛП матрицы 1 установится код а1, сигнал с выхода
ЧП дешифратора 28 установит на входах матрицы 1 информацию, извлеченную из памяти 5 по адресу, хранящемуся в регистре
13. С приходом С2 производится запись информации с выходов узлов локальной памяти матрицы 1 в регистры первого операнда матрицы 1, В момент прихода СЗ содержимое регистров первого операнда матрицы 1 со сдвигом на шаг записывается в узлы локальной памяти матрицы 1 по адресу а1, а в первый {по ОХ) слой А х А х 1 изображения
А х А х А с адресом а! записывается информация, извлеченная из памяти 5.
Команды ЧПХ а1, Ь1 и ЧПУ а1, а2 предназначены для выполнения высокоскоростного переноса плоских иэображений све хвысокого разрешения F x F (где F >
А ) на шаг в плоскости изображения, При выполнении этих команд производится обмен информацией между соседними фрагментами VAз Х 1А, образующими изображение F x F. Выполнение команды
ЧПХ а1, Ь1 начинается с записи содержимого ячейки Ь1 памяти 19 в регистр 13. Далее выполняется микрокоманда, микрослово которой содержит: РУАВ = 00, КМО = 0011, РВВ = 0111 — код режима ЧПХ, СР1 = 1, ЗЛП
= 1, По импульсу С1 сигнал с выхода ЧПХ дешифратора 28 открывает элементы И узлов 60, 61 и информация с соответствующих выходов матрицы 1 и памяти 5 поступает на входы матрицы 1, В момент прихода С2 содержимое локальной памяти с адресом а1 переписывается в регистры первого операнда матрицы 1. С приходом СЗ это содержимое со сдвигом на шаг записывается в локальную память матрицы 1. по адресу а1.
Микропрограмма команды ЧПУ а1, Ь1 отличается от микропрограммы. команды
ЧПХ а1, Ь1 только тем, что в последнем микрослове этой команды PBB = 1000 (код режима ЧПУ). поэтому с приходом импульса
С1 сигнал с выхода ЧПУ дешифратора 28 открывает элементы И узлов 62, 63.
Команды УУВВ и ВВИЗ управляют работой устройства ввода изображений. Суть его работы состоит в преобразовании светового потока, модулированного по освещенности и поступающего в устройство ввода через оптическую систему 45, сначала в электрические аналоговые сигналы при помощи фотодатчиков 46, а затем в двоичный цифровой код при помощи аналого-цифровых преобразователей 48. Вариант устройства ввода, показанный на фиг.10, 11 служит для высокоскоростного ввода 256 — уровневых фотоизображений формата 256 х 256, содержит в качестве своей оптической сис- темы 45 два объектива и два полупрозрачных зеркала, функцию фотодатчиков 46 выполняют в нем 8 ПЗС-приборов, На каждый ПЗС-прибор системой 45 фокусируется свой участок 32 х 256 вводимого изображения. Объединение 8-ми таких участков образует полное изображение 256 х 256. Каждый
ПЗС-прибор содержит 32 линейки фоточувствительных элементов по 256 фоточувствительных элементов каждый (линейка соответствует вертикальной строке изображения 256 х 256). Каждая из линеек имеет собственный регистр сдвига, поэтому с одного ПЗС-прибора одновременно снимается 32 аналоговых сигнала. соответствующих
32 пикселеам вводимого иэображения 256 х
256. С 8-ми ПЗС-приборов одновременно снимается 256 сигналов, соответствующих горизонтальной строке вводимого иэображения. Узел 48 содержит 32 аналого-цифровых преобразователя, каждый из которых формирует на выходе параллельный восьмиразрядный код, В каждый момент времени распределительный узел 47 подключает к входам узла 48 только 32 аналоговых сигнала из 256 сигналов, снимаемых с 8 ПЗСприборов. -.. В результате их аналого-цифрового преобразования на выходах узла 48 формируется 256-разрядный двоичный код, и узел 46 устанавливает признак ГВВИ = 1. После приема указанного кода в матрицу 1 признак ГВВИ сбрасывается, к входам узла 48 подключаются следующие 32 сигналы считываемой
256-пиксельной строки, возобновляется процесс аналого-цифрового преобразования и т.д. Если строка введена в матрицу полностью,. вместе с сбросом признака
1817109
Команда УУВ В служит для установки устройства ввода в исходное состояние. Микрослово команды содержит НУ = 1, С приходом С1 обнуляется регистр 14, узел 46 последовательно выполняет следующие операции: 1) информация из накопительных линеек передается в регистры сдвигов ПЗСприборов, 2) на входах узла 48 устанавливаются первые 32 сигнала первой горизонтальной строки сформированного иэображения 256 х 256, 3) выполняется цикл аналого-цифрового преобразования, 4) устанавливается признак ГВВИ = 1.
Команда ВВИЗ служит для ввода в матрицу 1 256-разрядного кода, сформированного на выходах узла 48. Команда начинается с анализа признака ГВВИ. Если
ГВВИ = О, анализ повторяется. Если ГВВИ
= 1, выполняется микрокоманда, микрослово которой содержит: PYAB = 10, PBB =
1001 — код режима ФИ, KMO = 0011, CP1 =
1, ЗЛП =-1. По импульсу С1 выходы разрядов
Sb — Sn регистра 14 мультиплексором 29 подключаются к входам АЛП матрицы 1, сигнал с выхода ФИ разрешает прохождение сигналов с выходов узла 48 на входы матрицы
1, С приходом С2 содержимое локальной памяти матрицы 1 по адресу, хранящемуся в разрядах Sb — S, записывается в регистры первого операнда матрицы 1, По переднему фронту импульса СЗ информация с выходов узла 48 записывается в первый (относительно OX) слой А х А х 1 матрицы 1, а информация, хранящаяся в регистрах первого операнда, снова со сдвигом на шаг переписывается в локальную память матрицы 1. По заднему фронту импульса BO содержимое регистра 14 увеличивается на 1, на входах узла 48 устанавливаются следующие 32 сигнала с ПЗС-приборов, выполняется цикл аналого-цифрового преобразования, устанавливается признак ГВВИ = 1 (был сброшен по переднему фронту импульса BO), После заполнения всех 16 слоев 16 х 16 х 1 заполняемого текущего изображения 16 х
16 х 16 счетчик ССД регистра 14 обнуляется, а содержимое счетчика СПМ увеличивается на 1 (смена адреса заполняемого изображения).
Команда ВЫВИ служит для передачи информации иэ матрицы 1 в устройство вывода изображений, функциональная схема которого показана на фиг.1, 12, Суть его работы заключается в сканировании содержимого памяти 5,1 и отображении полученного растрового изображения на экране электронно-лучевой трубки 50, В рассматриваемом варианте устройства память 51 служит для хранения 16-уровневого иэображения 256 х 256 и состоит из 4-х буферов 57
50 с общей системой адресации, Каждый буфер
57 включает в себя А (256) запоминающих элементов 58 емкостью 256 бит каждый. А входов буфера 57 непосредственно соединены с А выходами матрицы 1, обмен информацией между матрицей 1 и буферами
57 осуществляется бинарными изображениями А х А. При регенерации изображения с каждого из 4-х буферов 57 одновременно считывается 1 бит информации, Этот считанный 4-разрядный код является индексом уровня яркости (цвета) одного пиксела отображаемого изображения А х А (фиг.12,a).
Код индекса поступает в таблицу 55 цветов, из которой по данному индексу извлекается с
3 кода, соответствующие уровням интенсивности красного, синего и зеленого цветов и относящиеся к данному пикселу. Извлеченные 3 кода поступают далее в узел 56 цифро-аналогового преобразования, где по ним формируются сигналы управления красным, синим и зеленым электронными прожекторами трубки 50. При А = 16 отображаемое изображение 256 х 256 состоит из 256 фрагментов 16 х 16. Информация о каждом фрагменте 16 х 16 хранится в 256 х 4 элементах
58 по одному и тому же адресу. Выборка бита из элемента 58 производится с помощью кода адреса, состоящего из 4-разрядного поля СФ и 4-разрядного поля НФ.
Выборка элемента 58 из буфера 57 производится с помощью кода, состоящего из 4-разрядного поля СП вЂ” 4-разрядного поля НП.
Поле СФ хранит номер текущей строки фрагментов 16 х 16 (фиг,12,а) в изображении
256 х 256, поле НФ хранит номер текущего фрагмента 16 х 16 в текущей строке фрагментов, поле СП хранит номер текущей строки пикселов в текущем фрагменте 16 х
16, поле Hfl хранит номер текущего пиксела в текущей строке пикселов (фиг.126).
Для А = 16 счетчик 71 (фиг,12г) состоит из 4-х
4-разрядных частей НП, НФ, СП, СФ. При регенерации изображения узел 54 вырабатывает синхроимпульсы ИР, которые поступают на счетный вход младшего разряда части НП счетчика 71, Сразу же после окончания периода регенерации узел 54 вырабатывает импульс УМ длительностью То и импульс признака ГВЫВ = 1 длительностью
Тг = То — Тл (фиг.12в), где То — время обратного хода луча (1,3 мсек, Тл — время, необходимое для передачи нового 16-уровневого изображения 256 х 256 иэ матрицы 1 в память 51. Адресные входы элементов 58 в зависимости от значения уровня YM соединены либо с выходами S< — S регистра 14 (УМ = 1), либо с выходами разрядов частей
СФ и НФ счетчика 71 (YM:= О), 1817109
Выполнение команды ВЫВИ начинается с анализа признака ГВЫВ. Если ГВЫВ - О, анализ повторяется. Если ГВВИ = 1, выполняется микрокоманда, микрослово которой содержит; РУАВ = 10, КМО = 0011, СР1= 1, ЗЛП =1, РЗБ =001- код записи в первый буфер 57. По импульсу С1 выходы разрядов Sb-Sn регистра 14 мультиплексором 29 подключаются к входам АЛП матрицы 1, С приходом С2 содержимое локальной памяти матрицы 1 с адресом, хранящимся в разрядах Sb — S>, записывается в регистры первого операнда матрицы 1. По переднему фронту импульса СЗ сигнал с выхода Б1 дешифратора 38 записывает информацию с
° выходов матрицы 1 в первый буфер 57 по адресу, хранящемуся в регистре 14. По заднему фронту импульса СЗ сигнал с выхода элемента 30 увеличивает содержимое регистра-счетчика 14 на 1. Описанная микрокоманда выполняется 256 раз до полного заполнения первого буфера 57, после чего изменяется содержимое старших разрядов поля СПМ регистра 14. Аналогичным образом заполняются второй (РЗБ = 010), третий (РЗБ = 011) и четвертый (РЗБ = 100) буферы
57.
Таким образом, скорость выполнения геометрических преобразований переноса, поворота, сжатия над плоскими иэображениями высокого разрешения в заявленном устройстве выше скорости выполнения данных преобразований в прототипе. Скорость ввода изображений в заявленное устройство и скорость вывода изображений иэ него выше скорости выполнения операций ввода-вывода изображений в прототипе. Укаэанный положительный эффект достигнут беэ снижения скорости обработки трехмерных изображений по сравнению с прототипом, Формула изобретения
5 Устройство для параллельной обработки трехмерных сцен, содержащее матрицу процессоров, блок управления, матрицу узлов поворота, матрицу узлов сжатия, матрицу узлов памяти, причем информационные
10 выходы матрицы процессоров соединены с информационными входами матриц узлов поворота, узлов сжатия, узлов памяти, блока управления и являются информационными выходами устройства, информационные
15 входы которого подключены к информаци-, онным входам матрицы процессоров и информационным выходам матриц узлов поворота, узлов сжатия и блока управления, группы управляющих выходов которого со20 единены с соответствующими управляющими входами матриц процессоров, узлов поворота, узлов сжатия, узлов памяти, о тл и ч а ю щ е е с я тем, что, с целью увеличения скорости выполнения геометрических
25 преобразований переноса, поворота, сжатия над плоскими изображениями высокого разрешения и увеличения скорости вводавывода изображений, в устройство введен блок коммутации, выходы которого подклю30 чены к информационным входам матрицы . процессоров, информационные выходы которой соединены с первой группой информационных входов блока коммутации, вторая группа информационных входов и
35 управляющие .входы которого соединены соответственно с выходами матрицы узлов памяти и соответствующей группой управляющих выходов блока управления.
1817109
1811109
1817109
1817109
1817109
1817109
1817109 да
1817109
1817109
1817109
1817109
902, 77
1817109
ИП = //11
f7=-0000
НЮ= ЮОО
///7=0000
+6= ffff
) еж=оооо
СП=!Ш
СР=//О
Составитель Л.Логачева
Техред M.Mîðãåíòàë Корректор Л,Пилипенко
Редактор Г. Бельская
Заказ 1724 Тираж Подписное
ВНИИПИ Государственного комитета по изобретениям и открытиям при ГКНТ СССР
113035, Москва, Ж-35, Раушская наб., 4/5
Производственно-издательский комбинат "Патент", г. Ужгород, ул.Гагарина, 101