Конвейерное буферное запоминающее устройство для систем обработки изображений
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Номер патента: 1751769
Автор: Слуев
Текст
1751769 союз соВетскихСОЦИАЛИСТИЧЕСКИХРЕСПУБЛИК 0 1)5 6 06 СБ м запоми- конвейерОСУДАРСТВЕННЫЙ КОМИТЕТ0 ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМРИ ГКНТ СССР ОРСКОМУ СВИДЕТЕЛЬСТВ 1(71) Институт автоматики и электрометрии СО АН СССР(56) Патент СШАМ 5995253, кл. 0 06 Р 12/00, 1976.Авторское свидетельство СССР М 1444784, кл, 6 06 Р 12/00, 1988, (54) КОНВЕЙЕРНОЕ БУФЕРНОЕ ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО ДЛЯ СИСТЕМ ОБРАБОТКИ ИЗОБРАЖЕНИЙ(57) Изобретение относится к запоминающим устройствам и может быть использовано в системах с поточной обработкой двумерных данных, Цель изобретения - поИзобретение относится к запоминающим устройствам и может быть использовано в системах с поточной обработкой двумерных данных. например в процессорах фильтрации, корреляции, коррекции геометрических искажений.Известно запоминающее устройство, ориентированное на произвольный доступ к двумерному фрагменту, однако отсутствие в нем.буферизации данных приводит к многократному обращению к элементам данных в процессе обработки,Наиболее близким к изобретению по технической сущности является буферное запоминающее устройство, включающее устройство управления, блок памяти адреса, блок памяти данных, блок преобразования адреса, коммутатора адреса.Однако в известном буфернонающем устройстве невозможна 2вышение быстродействия устройства, Запоминающее устройство содержит блок памяти адреса, блок очереди выходного адреса, блок преобразования адреса, коммутатор адреса, блок памяти данных, блок памяти очереди данных, блок управления, блок памяти адресов фрагментов данных, блок памяти очереди входного адреса, Устройство позволяет существенно сократить количество повторно извлекаемых из памяти двумерных данных, обеспечивает параллельность выборки двумерного фрагмента, одновременный контроль данных в четырех соседних сегментах изображения. В устройстве реализована предварительная выборка данных, за счет чего существенно уменьшено время ожидания загрузки данных из системной памяти. 1 з.п. ф-лы, 10 фиг,ная обработка данных, что ограничивает его производительность,Цель изобретения - повышение быстродействия буферного запоминающего устройства,Поставленная цель достигается тем, что в буферное запоминающее устройство, содержащее блок управления, блок памяти адреса, блок памяти данных, блок преобразования адреса, коммутатор адреса, причем первый и второй выходы блока управлениясоединены с входами чтения и записи блокапамяти данных, третий и четвертый - с первым и вторым управляющими входами блока преобразования адреса, седьмой - с управляющим входом коммутатора адреса, пятый и шестой выходы блока управления являются выходамй готовности выходных данных и адреса сегмента устройства, первый вход - входом готовности входным дан1751769 Редактор М. Циткин ь Заказ 2 ПодписноеВН изобретениям и открытиям при ГКНТ, Раушская наб 4/5 но-издательский комбинат "Патент", г, Ужгород, ул, Гагарина, 10 роизво Составитель С, ШустенкоТехред М;Моргентал Корректор 693Тираж ИИПИ Государственного комйтета по 113035, Москва, Жных устройства, выход коммутатора адреса соединен с адресным входом блока памяти данных, адресный вход и вход данных блока памяти адреса соединен с разрядами первой и второй координат входа полного адреса фрагмента устройства, выход блока памяти данных является информационным выходом устройства, выход блока преобразования адреса является адресным выходом устройства, введены блок памяти очереди выходного адреса, блок памяти очереди входного адреса, блок памяти очереди данных. блок памяти адреса фрагментов данных, причем первый ин 5 10 15 формационный вход блока памяти адресов фрагментов данных и разряды первого управляющего входа блока памяти очереди выходного адреса соединены с младшими разрядами первой и второй координат входа полного адреса фрагмента устройства, второй выход блока преобразования адреса 20 соединен с информационным входом блока памяти очереди входного адреса, выход которого соединен с. первым информацион 25 ным входом коммутатора адреса, первый управляющий вход блока памяти очереди выходного адреса соединен с входом разрешения записи блока памяти адреса, первый и второй информационные выходы которого мяти очереди выходного адреса, второй и третий управляющие выходы блока памяти очереди выходного адреса соединены с третьим и четвертым управляющими входами блока преобразования адреса, информационный вход которого соединен с первым 35 информационным выходом блока памяти очереди выходного адреса, входы стробирования записи блока памяти адресов фрагментов данных, блока памяти адреса и 40 блока памяти очереди выходного адреса обьединены и подключены к входу стробирования записи входного адреса устройст 45 ва, выход переполнения блока памяти адресов фрагментов данных является выходом запрета записи устройства, второй информационный выход блока памяти очереди выходного адреса соединен с вторым информационным входом блока памя 50 ти адресов фрагментов данных, восьмой и девятый выходы блока управления соединены с вторым и третьим входами управления блока памяти очереди выходного адреса, второй и третий входы блока управления соединены с четвертым и пятым управляющими выходами блока памяти очереди выходного адреса, четвертый и пятый входы блока управления подключены к выходу готовности данных и переполнения данных соединены соответственно с первым и вто- ЗОрым информационными входами блока паблока памяти очереди данных соответственно, вход разгрузки данных и вход загрузки данных блока памяти очереди данных соединены с десятым и одиннадцатым выходами блока управления, информационный вход блока памяти очереди данных является информационным входом устройства, выход блока соединен с информационным входом блока памяти данных, двенадцатый и тринадцатый выходы блока управления соединены с входами загрузки и разгрузки данных блока памяти очереди входного адреса, четырнадцатый выход блока управления соединен с входом разгрузки данных блока памяти адресов фрагментов данных, первый и второй информационные выходы блока памяти адресов фрагментов данных соединены соответственно с вторым информационным входом коммутатора и с информационным входом блока управления, шестой вход которого соединен с выходом готовности выходных данных блока памяти адресов фрагментов данных,Блок памяти очереди выходного адреса содержит узел маскирования и циклического сдвига флагов сравнения, регистр флагов, шифратор и дешифратор, узел памяти очереди, счетчик единиц, причем первый информационный вход блока соединен с первым информационным входом узла памяти очереди, первый информационный выход которого является первым информационным выходом блока, второй информационный выход узла памяти очереди соединен с входом данных регистра флагов, выход регистра флагов соединен с входом шифратора, первый выход которого соединен с пятым управляющим выходом блока, второй и третий выходы шифратора являются вторым и третьим управляющими выходами блока соответственно и соединены с информационным входом дешифратора, вход стробирования которого является третьим входом управления блока, первый управляющий и второй информационный входы блока соединены с управляющим и информационным входами узла маскирования и циклического сдвига флагов сравнения, первый выход которого соединен с вторым информационным входом узла памяти очереди и входом счетчика единиц, второй выход узла маскирования и циклического сдвига флагов сравнения является первым управляющим выходом блока, выходы дешифратора соединены с входами сброса регистра Флагов, выход готовности узла памяти очереди соединен с входом стробирования регистра флагов и является четвертым управляющим выходом блока, вход разгрузки узла гамяти очереди являет15 строки 20 30 Блок 5 памяти данных содержит шестнадцать групп сумматоров 81 адреса, шест 40 45 50 55 ся вторым управляющим входом блока, первый выход счетчика единиц соединен с входом разрешения записи узла памяти очереди, второй выход является вторым информационным выходом блока, вход стробирования записи узла памяти очереди 5 соединен.с входом стробирования записи. входного адреса устройства,На фиг.1 изображена функциональная схема конвейерного буферного запоминающегоустройства для систем обработки изо бражений, на фиг.2 - функциональная схема блока памяти очереди выходного адреса; на фиг.3 - блок преобразования адреса; на фиг,4(а) - блок памяти адресов фрагментов данных; на фиг,4(б) - блок памяти очереди; на фиг,5 - блок-схема алгоритма загрузки данных; на фиг,б - блок-схема алгоритма разгрузки данных; на фиг.7 - блок памяти адреса; на фиг,8- узел маскирования и циклического сдвига; нэ фиг.9 - блок памяти данных; на фиг,10 - узел циклического сдвига выходных данных,Буферное запоминающее устройство (фиг.1) содержит блок 1 памяти адреса, блок 2 памяти выходного адреса, блок 3 преобра зования адреса, коммутатор 4 адреса, блок 5 памяти данных, блок 6 памяти очереди данных, устройство 7 управления, блок 8 памяти адресов фрагментов данных, блок 9 памяти очереди входного адреса, линию 10 стробирования адреса фрагмента, шину 11 полного адреса фрагмента, линию 12 запрета записи данных. выходную шину 13 данных, линию 14 готовности выходных . данных, выходную шину 15 адреса, линию 3 16 готовности адреса сегмента, линию 17 готовности входных данных, шину 18 входных данных, первый 19 и второй. 20 информационные выходы блока памяти адреса, первый выход 21 управления, второй инфоомационный выход 22, второй 23 и третий 24 выходы управления, первый информационный выход 25 блока памяти очереди выходного адреса. восьмой 26 и девятый 27 управляющие выходы блока управления, четвертый 28 и пятый 29 выходы управления блока памяти очереди выходного адреса, третий 30 и четвертый 31 управляющие выходы блока управления, второй выход 32 блока преобразования адреса, первый 33 и второй 34 информационные выходы, выход 35 управления блока памяти адресов фрагментов данных, седьмой 36, первый 37, второй 38, десятый 39 и одиннадцаты" 40 управляющие выходы блока управления, четвертый 41 и пятый 42 входы блока управления, выход 43 коммутатора, выход 44 данных блока памяти очереди данных, двенадцатый 45 и тринадцатый 46 выходы блока управления, выход 47 блока памяти очереди. входного адреса, четырнадцатый выход 48 чправления блока управления Блок памяти очередного выходного сигнала содержит узел 49 памяти очереди, регистр 50 флагов сравнения, приоритетный шифратор 51, дешифратор 52, узел 53 маскирования и циклического сдвига, счетчик 54 единиц, первый выход счетчика 55 единиц, первый выход 56 узла маскирования и циклического сдвига, второй информационный выход 57 узла памяти очереди.Блок преобразования адреса содержит первый 58 и второй 59 адресные сумматоры, сумматор 60 приращения адреса, коммутатоо 61, регистр 62 сдвига, регистр 63 длины Блок памяти адреса содержит четыре группы сумматоров 64 адреса, четыре модуля 65 памяти, четыре схемы 66 сравнения, адреса и данных в модулях 65 памяти.Узел 53 маскирования и циклического сдвига флагов сравнения содержит первый и второй входные схемы 67 и 6 С сдвига первого каскада, входную схему 69 сдвига второго каскада., выходную схему 70 сдвига первого каскада, первый и второй выходные схемы 71 и 72 сдвига второго каскада, элементы И 73-76, элементы НЕ 77 и 78, элементы ИЛИ 79 и 80,надцать модулей 82 памяти, узел 83 циклического сдвига выходных данных свходами 84,Узел 83 циклического сдвига выходных данных содержит четыре схемы 85 сдвига первого каскада и групповую схему 86 сдвига второго каскада,Конвейерное буферное запоминающее устройство работает следующим образом.На вход 11 поступают Р разрядов, где Р = 1 од 2 М+ 1 од 2 й, задающие полный адрес элемента двумерной матрицы данных размерностью Мхй, на.адресные входы блока 1 поступают разряды а первой координаты, где 1 = 1 од 2 М - 1, и разряды и второй координаты, где = 11 од 2 И, на первый информационный вход блока 8 поступают младшие разряды т первой координаты, где= О, , 1 од 21 - 1, и младшие разряды и второй координаты, гдЕ= О, ., 1 од 2 К, причем емкость блока 5 памяти данных составЛяет ( хК) элементов, На первый управляющий вход блока 2 поступают разряды гло, е, п 2 и по, п. п 2 полного адреса фрагмента,Перед началом работы по сигналу начальной установки осуществляется обнуление всех ячеек памяти блока 1 адреса,стирание содержимого блоков 6, В, 9, 49, Выходы 12, 42 блоков 8 и 6 устанавливаются в единичное состояние - разрешение записи данных. Выходы 35, 28, 41 блоков 8, 49 и 6 принимают нулевое значение, означающее отсутствие загруженных данных, Устройство 7 управления переходит в состояние, соответствующее точке А алгоритмов на фиг,5 и 6, Оператор 1 (фиг,5) осуществляет проверку сигнала на линии 29, являющегося индикатором загрузки данных в блок 49, Оператор 1 (фиг,6) осуществляет проверку сигнала на линии 35 выхода управления блока 8. При отсутствии данных в блоках 8 и 50 устройство управления циклически выполняет операции 1 на фиг,5 и 6, Алгоритмы на фиг,б и 5 выполняются параллельно и не связаны между собой,Внешнее задающее устройство устанавливает адрес двумерного фрагмента на входе 11 ичерез промежуток времени 1 генерирует стробирующий импульс на линии 10, На сумматоры 64 (фиг,7) каждого из четырех модулей 65 памяти поступают младшие разряды, а также разряды п 11 и п 1 полного адреса памяти, На выходах сумматоров устанавливаются полные адреса четырех сегментов, в которых могут располагаться элементы фрагмента (1), В схемах 66 сравнения старшие разряды полного адреса сегмента сравниваются с данными в соответствующем модуле памяти, адресуемьили младшими разрядами полного адреса сегмента. Разряды четырехразрядного выхода 20 блока 1 (флаги сравнения) для восстановления порядка расположения флагов, искаженного использованием функции раСпределения данных по модулям памяти, поступают на первый и второй входные схемы 67 и 68 сдвига первого каскада блока 53, а затем на выходную схему 69 сдвига первого каскада, В схемах 67 и 68;, управляемых разрядом т 2 полного адреса памяти, осуществляется циклический сдвиг внутри групп флагов по два в каждой группе, во втором каскаде (схема 69), управляемом разрядом п 2 полного адреса памяти, - циклический сдвиг групп. Для организации произвольной выборки фрагмента из блока 5 может потребоваться загрузка от одного до четырех сегментов, что определяется положением элемента ап,п внутри фрагмента. Поэтому четырехразрядный код признаков сравнения после корректировки положения данных поступает на схему маскирования, которая реализована ца базе элементов 72-80, Схема маскирования запрещает выборку ненужных сегментов из памяти исходного изображения, Маскирование флагов сравнения осуществляется20 25 30 решения записи в модули памяти блока 1. Значения сигналов на шине 56 поступа 40 45 50 55 510 разрядами во, в 1, п 0, п 1 полного адреса памяти, Выходами узла 53 маскирования и циклического сдвига являются два четырех- разрядных выхода: сигналы разрешения записи в модули памяти блока 1 (выход 21) и флаги сравнения, модифицированные схемой маскирования (выход 56). Для корректной записи в модули памяти блока 1 старших разрядов адресов сегментов в схемах 70, 71, 72 сдвига (фиг,8) осуществляется обратная корректировка положения разрядов кода флагов сравнения, В схеме 70, управляемой разрядом п 12 полного адреса памяти, меняется положение двух групп по два разряда кода флагов, в схемах 71 и 72,управляемых разрядом п 2, изменяется положение разрядов внутри групп,За время т на выходе 19 блока 1 формируется адрес базового сегмента, на выходе четырехразрядной шины 20 - признаки наличия требуемых сегментов данных в блоке памяти 5. Значения разрядов шины 20 поступают на информационный вход узла 53 маскирования и циклического сдвига флагов сравнения, Под управлением разрядов п 10, гп 1, п 32 и П 0, п 1, п 2 шины 11 полного адреса фрагментана первом выходе узла 53 формируется четырехразрядный код 56 флагов сравнения и сигналы шины 21 разют на второй информационный вход блока 49 памяти очереди и на входы счетчика 54 единиц, представляющего собой комбинационную логическую схему. На выходах 22 счетчика формируегся двоичный позиционный код, значение которого определяется количеством "единиц" на шине 56. В состав счетчика входит схема ИЛИ, входы котброй подключены к разрядам шины 56, а выходом является выход 55 счетчика. Если хотя бы один из разрядов шины 56 установлен в единицу, то выход 55 блока 54 устанавливается в единичное состояние и разрешает загрузку базового сегмента и кода флагов сравнения в блок памяти 49,После установки всех сигналов внешнее задающее устройство стробирующим импульсом на линии 10 загружает значения старших разрядов адресов затребованных сегментов в модули памяти блока 1, значение базового сегмента на шине 19 и код флагов сравнения нз шине 56 в блок 49 памяти очереди, значение младших разрядов первой и второй координат полного адреса фрагмента и выходное значение счетчика единиц на шине 23 в блок 8 памяти адресов фрагментов данных, После этого внешнее задающее устройство проверяетзначение выхода 12 блока памяти адресов10 15 20 30 35 40 45 50 55 фрагментов данных, Еслиблок памяти не заполнен, то повторяется загрузка нового фрагмента, Если выход 2 переходит в состояние "0", что означает полное заполнение памяти, загрузка прекращается,При загрузка данных в блок памяти 49 на выходе 28 устанавливается значение "1", положительный фронт которой загружает выходное значение кода флагов сравнения на выходе блока 49 в регистр флагов 50. В состав приоритетного шифратора 51 входит схема ИЛИ, входы которой подключены к выходам регистра флагов, а выходом является линия 29, На линии 29 устанавливается значение "1". Алгоритм работы устройства управления при загрузке данных в буферную память представлен на фиг.5, После начальной установки устройство управления осуществляет циклическую проверку состояния линии 28 (блок алгоритма 5-1), и если она установлена в единичное состояние, анализирует состояние линии 29 (блок алгоритма 5-2), Если линия 29 установлена в единицу, устройство управления циклически проверяет состояние линии 42 - готов ности блока б памяти очереди данных принимать данные(блок алгоритма 5 - 3). Если блок 6 не заполнен, линия 42 установлена в единичное состояние, В этом случае устройство управления переключает коммутатор 61 адреса сигналом 30 так, чтобы выходы сумматоров 59 и 58 были подключены к входам регистра 62 (блок алгоритма 5-4), стробирует адрес перво о загружаемого сегмента в выходной регистр 62 адреса сигналом на линии 31 (блок алгоритма 5 - 5), генерирует запрос к памяти исходного изображения на линии 16 (блок алгоритма 5 - 6), загружает младшие разряды адреса сегмента на шине 32 в блок 9 очереди входного адреса сигналом на линии 45 (блок алгоритма 5-7). Адрес загружаемого сегмента, содержащийся в регистре 62, формируется из адреса базового сегмента Ь;, генерируемого в блоке 1 памяти адреса, Полный адрес базового сегмента на шине 25, разделенный на адреса по первой координате и адреса по второй координате, подключен к первым входам соответственно сумматоров 58 и 59, Полный адрес сегмента с выхода сумматоров через коммутатор 61 поступает на вход регистра 62. Выходы регистра 50 флагов подключены к входам приоритетного шифратора в следующем порядке убывания приоритета; флаг сегмента Ь-ц, флаг сегмента Ь,-1, флаг сегмента Ь, флаг сегмента Ьц, Соответственно коды. генерируемые приоритетным шифратором для каждого флага, являющегося старшим в какой-то момент времени,следующие; 11, 10, 01, 00. Старший разряд выходного кода приоритетного шифратора поступает на вход вычитания единицы сумматора 58, а младший - на вход вычитания единицы сумматора 59.После установки адреса сегмента в регистре 62 и запроса к памяти исходноо изображения на линии 16 блок 7 управления анализирует состояние линии 17 готовности данных (блок алгоритма 5-8). Когда на входе 18 устанавливаются истинные данные, что сопровождается изменением состояния линии 17, блок 7 управления генерирует строб записи данных, на линии 40 в блок 6 памяти очереди данных (блок алгоритма 5-9), Далее устройство управления снимает сигнал истинности данных на линии 16(блок алгоритма 5 - 10) и стробирует выходы дешифратора 52 сигналом на линии 27 (блок алгоритма 5 - 11). По заднему фронту этого импульса осуществляется сброс флага в регистре 50, соответствующего загруженному сегменту, После этого устройство управления анализирует состояние линии 29 (блок алгоритма 5-12). Если в регистре 50 флагов имеются установленные в единицу разряды, то устройство управления переходит к выполнению блока 5 - 3 алгоритма и процесс считывания сегментов продолжается до обнуления регистра флагов 50, что будет зафиксировано изменением со-, стояния линии 29. В этом случае устройство управления сигналом на линии 26 осуществляет разгрузку памяти очереди 49 (блок алгоритма 5-13) и переходит к выполнению блока 5-1 алгоритма на фиг,1,Алгоритм работы устройства управления при разгрузке данных из буферной памяти представлен на фиг,б. После начальной установки устрОйство управления циклически анализирует состояние линии 35 готовности данных на выходе блока 8 адреса фрагмента, При загрузке данных в блок 8 значения адреса фрагмента на шине 11 и разрядов шины 22 с некоторой задержкой устанавливаются на выходных шинах ЗЗ и 34 блока 8, выход 35 устанавливается в единичное состояние, Устройство управления анализирует состояние шины 34 (блок алгоритма 6 - 2), и если для выборки фрагмента из памяти данных 5 необходйма подкачка дополнительных сегментов, т,е. на шине 34 содержится ненулевое значение кода, устройство управления запоминает его значение (блок алгоритма 6 - 3). Далее устройство управления циклически анализирует состояние линии 41 готовности данных на выходе блока 6 (блок алгоритма б - 2). Если данные были загружены, то устройство управления сигналом на линии Зб подключает выходную510 20 30 35 40 45 50 шину блока 9 к адресным входам 43 блока памяти 5 (блок алгоритма 5-6) и загружает требуемый сегмент данных в блок памяти 5 сигналом на линии 38 (блок алгоритма 6 - 6).После этого устройство управления сигналом на линии 46 и сигналом на линии 39 разгружает блок 9 памяти очереди входного адреса и блок памяти 6 очереди данных (блок алгоритма 6 - 7), вычитает единицу из внутреннего счетчика числа сегментов (блок алгоритма 6-8) и, если он равен нулю, повторяет блоки алгоритма 6-4, 6 - 5, 6 - 6, 6 - 7, 6 - 8 до обнуления внутреннего счетчика, Когда все требуемые сигналы бу дут загружены, устройство управления сигналом на линии 36 переключает коммутатор 4 в положение, обеспечивающее про.- хождение на выход 43 разрядов шины 33 (блок алгоритма 6-10), запускает цикл чтения блока 5 сигналов на линии 37 (блок алгоритма 6 - 11) и через промежуток времени,необходимый для считывания данных, устанавливает сигнал готовности данных в блоке 14 (блок алгоритма 6 - 12). Далее устройство управления после задержки, необходимой для передачи данных во внешнее приемное устройство (блок алгоритма 6-13), сигналом на линии 38 осуществляет разгрузку блока 8 (блок алгоритма.6-14) и переходит к выполнению блока 6-1 алгоритма на фиг.6,Предлагаемое конвейерное устройство буферной памяти предназначено для поточной обработки фрагментовдвумерных данных размеров 4 х 4 элемента. Данные с произвольным адресом извлекаются из памяти исходных данных в устройство буферной памяти и записываются в память выходных данных выходным обрабатывающим процессором, Память исходныхданных емкостью Мхй элементов, а также память блока запоминающих устройств Данных емкостьюхР элементов (М, И, 3, Р - степени числа 2) разбиваются нэ сегменты 4 х 4 элемента. В памяти исходных данных содержится М/4 хй/4, а в буферной памяти/4 хР/4 сегментов. Сегмент является единицей данных при загрузке :данных в буферное запоминающее устройство, Блок 1 памяти адреса содержит/4 Р/4 ячеек памяти (по одной на каждый сегмент), в которых хранятся стэршйе разряды адресов сегментов, При генерации адреса Фрагмента с произвольным адресом его элеМенты могут лежать в разных сегментах, В блоке 1 осуществляется парэллельньгй контроль за данными, содержащимися в блоке памяти данных в четырех соседних сегментах. При отсутствии даннь 1 х требуемый сег- мент загружается из памяти исходных данных, после чего возможна выборка по произвольному адресу. В зависимости от адреса возможна загрузка от одного до четырех сегментов, Для организации параллельного контроля данных, а также параллельной выборки фрагмента по произвольному адресу в блоки 1 и 5 введены узлы вычисления адресов, узлы циклического сдвига данных, что обеспечивает параллельность выборки.В блоке 1 памяти данных (БД) с помощью шестнадцати пар сумматоров и блока 83 циклического сдвига данных на выходе шестнадцати модулей памяти реализована произвольная выборка фрагмента 4 х 4 элемента вида ав,па -1,п ат,п+1, ап-,и+з А(гп,п) = ап,-1 ат эп,п+1 ап,п+2 (1)апов+1,п -ап+,л апН,п апн 1 я+ ап+2, и - 1 да+2,п ат+2,п+ За+2,п+2. где гп, и - индексы, определяющие адресфрагмента, причем 0гпи 0ир;ап,п - централ ьн ый элемент фрагмента. При линейной организации памяти, ког.да данные памяти располагаются строка застрокой, адреса элементов, образующихквадратную матрицу(1), можно представитьследующим обоазом:А(гп+, и+ = Р(гп+)+(и+,(2)где 1 и ) - целые числа, изменяющиеся впределах -12, -1 )2;Р - длина строки;щ и и - координаты центрального элемента,В предлагаемом буферном запоминающем устройстве элементы двумерного массива распределены по шестнадцатимодулям памяти в соответствии с функциейраспределения4 4где "=" - символ, обозначающий операциювзятия остатка от деления;а (гп,п) - номер модуля памяти (Оа 15).Адреса элементов массива в модуляхпамяти определяются формулой.А (гп,п) =- -- + - ,Рт и44 4(4)где "-" - символ, обозначающий операциювзятия целой части деления. Таким образом, положение элемента массива в памяти определяется номером модуля памяти и адресом внутри модуля, вычисляемым по формулам (3) и (4).Использование функции (3) приводит к нарушению естественного расположения элементов фрагмента, извлекаемоо из памяти, Для восстановления порядка расположения данных используется блок 83 (фиг.10), представляющий собой комбинационную схему, состоящую из двух каскадов, Первый каскад осуществляет циклический сдвиг внутри четырех групп данных и управляется разрядами п 0 и и полного адреса памяти, второй каскад осуществляет циклический сдвиг самих групп данных и управляется разрядами гпо и гп полного адреса памяти,Пусть Мхй - размерность массива данных, хранящегося в памяти исходного изображения,хР - размерность массива данных, хранящегося в БД буферного запоминающего устройства. Разрядность шины полного адреса памяти двумерного фрагмента (1) можно представить выражением Ар (092 - + 1092 - ) + (1 о 92 - +М И1Р 4(5)где Ар - разрядность шины адреса,Выражение в первых круглых скобкахпредставляет старшие разряды полного адреса памяти, во-вторых - разряды адресасегмента в БД, содержащего центральныйэлемент ап матрицы (1), Цифрой 4 представлены разряды в, а 1, п, и адресующие элемент внутри сегмента. Старшиеразряды полного адреса памяти запоминаются в БА, длина слова которого равнаМ МО - 092092 - + Т,1 Ргде Т - добавочный двоичный разряд истинности данных,Разряд Т обнуляется перед началом сеанса работы буферного запоминающего устройства и устанавливается в единицу призаписи адреса сегмента в БА, Использование разряда Т предотвращает от неверногосрабатывания компараторов БА при отсутствии истинных данных в БД. Емкость БАопределяется емкостью БД, т.е. количеством сегментов. содержащихся в БД, поэтому адресная шина БА содержит 1 о 92 - +4+о 92 - двоичных разрядов. Ввиду того,Р4что в БД осуществляется выборка фрагмента с переходом через границы сегмен-.та, в состав адресной шины БД (блок 5)входят также разряды пъ, т 1, п 0, п 1, Элементы фрагмента (1) могут находиться в одном, двух или четырех сегментах, С цельюпараллельной проверки на предмет наличия или отсутствия требуемых сегментов в БД вБА организована двумерная выборка фрагмента 2 х 2 элемента видаЬ-ЦЬ-Ц5 В(Ц) =ЬЦЬЦгде 1, 1 - индексы, определяющие адресфрагмента, причем 02 Я 4, 0 )4Р,10 Ь, - центральный элемент фрагмента.Элементы массива размерностью - хРх - распределены по четырем модулям па 15 мяти в соответствии с функцией распределения(1,0=2 2+ (7)где а (Ц) - номер. модуля памяти, причем20Оа 3,Адреса элементов массива в модуляхпамяти определяются формулойР 18 2А(1 1)= -- +Так же, как и в памяти данных, использование функции (7) приводит к зависимости порядка расположения выходныхданных модулей памяти А 0, А 1, А 2, Аз отадреса извлекаемых сегментов. Однако,в отличие от схемы перестановки данных,. используемой в БД, корректировке подвергается порядок расположения флагов сравнения,Во время загрузки данных внешнич задающим устройством подкачка данных иэпамяти исходных данных требуется толькодля части адресов фрагментов, В блок 8 загружаются младшие разряды всех адресовфрагментов. Каждое загруженное слово сопровождается трехразрядным кодом, содержащим информацию о числе сегментовданных, которые должны быть загружены вбуферную память. В блок 49 загружатся ад 45 реса базовых сегментов данных и четырефлага, определяющие необходимость загрузки четырех соседних сегментов данных,Адрес базового сегмента и флаги формируются в блоке 1. Каждое загруженное в блок50 49 слово данных соответствует определенному адресу фрагмента, загруженному вблок 8. С помощью памяти очереди блоков6, 8, 9, 49 в предлагаемом устройстве буферной памяти осуществляется предвари 55 тельная выборка данных и параллельнаяработа алгоритмов загрузки и разгрузкиданных.Пусть память очереди адресов фрагментов содержит шестнадцать ячеек, внешнеезадающее устройство генерирует шестнад5 с адресам фрагментов. После загрузки в блок8 первого адреса фрагмента, а в блок 49 10адреса базового сегмента устройство 7 упзирует состояние линии 41 (алгоритм нафиг,6). Когда данные, необходимые для выборки первого фрагмента, загружены и он 30 35 40 50 цать полных адресов фрагментов данных на шине 11 и требуется подкачка данных только для первого адреса фрагмента и шестнадцатого. После загрузки шестнадцатого адреса в блок 8 выход 12 устанавливается в состояние "0", запрещая дальнейшую загрузку, В блок 49 будут загружены два слова, соответствующие первому и последнему равления осуществляет загрузку данных (алгоритм на фиг.5) и одновременно аналибудет считэн из блока 5 памяти, устройство управления параллельно выполняет два алгоритма - последовательное считывание фрагментов данных со второго по пятнадцатый, для которых не нужна подкачка данных из блока 5 и загрузка данных в блок 6 из памяти исходных данных, необходимых для считывания шестнадцатого фрагмента. Когда потребуются данные шестнадцатого фрагмента, они уже будут загружены в блок 6.В предлагаемом буферном запоминающем устройстве в качестве блока 9 памяти очереди входного адреса и блока 6 памяти очереди данных использованы стандартные блоки памяти типа Г 1 ЕО (Г)РЯТ МРОТ, ГВЯТООТРОТ), аналогичные блокам 8 и 49, изображенным на фиг.4(а) и фиг.4(б).l Формула изобретения1. Конвейерное буферное запоминающее устройство для систем обработки изображений, содержащее блок управления, блок памяти адреса, блок памяти данных,блок преобразовайия адреса, коммутатор адреса, причем первый и второй выходы блока управления соединены с входами чтения и записи блока памяти данных, третий и четвертый выходы - с первым и вторым управляющими входами блока преобразования адреса, седьмой выход - с управляющим входом коммутатора адреса, пятый и шестой выходы блока управления являются выодами готовности выходных данных и адреса сегмента устройства, первый вход блока управления - входом готовности входных данных устройства, выход коммутатора адреса соединен с адресным входом блока памяти данных, адресный вход и вход данных блока памяти адреса соединен с со-. ответствующими входами полного адреса фрагмента устройства, выход блока памяти данных является информационным выходом устройства, выход блока преобразова 20 25 ния адреса адресным выходом устройства, о т л и ч а ю щ е е с я тем, что, с целью повышения быстродействия устройства, в него введены блок памяти очереди выходного адреса, блок памяти очереди входного адреса, блок памяти очереди данных блок памяти адресов фрагментов данных, причем первый информационный вход блока памяти адресов фрагментов данных и первый управляющий вход блока памяти очереди выходного адреса соединены с соответствующими входами полного адреса фрагмента устройства. второй выход блока преобразования адреса соединен с информационным входом блока памяти очереди входного адреса, выход которого соединен с первым информационным входом коммутатора адреса, первый управляющий выход блока памяти очереди выходного адреса соединен с входом разрешения записи блока памяти адреса, первый и второй информационные выходы которого соединены соответственно с первым и вторым информационными входами блока памяти очереди выходного адреса, второй и третий управляющие выходы блока памяти очереди выходного адреса соединены с третьим и четвертым управляющими входами блока преобразования адреса, информационный вход которого соединен с первым информационным выходом блока памяти очереди выходного адреса, входы стробирования записи блока памяти адресов фрагментов данных, блока памяти адреса и блока памяти очереди выходного адреса объединены и являются входом стробирования записи входного адреса устройства, выход переполнения блока памяти адресов фрагментов данных является выходом запрета записи устройства, второй информационный выход блока памяти очереди выходного адреса соединен с вторым информационным входом блока памяти адресов фрагментов данных, восьмой и девятый выходы блока управления соединены с вторым и третьим входами управления блока памяти очереди выходного адреса, второй и третий входы блока управления - с четвертым и пятым управляющими выходами блока памяти очереди выходного адреса, четвертый и пятый входы блока управления пОдключены к выходу готовности данных и переполнения данных блока памяти очереди данных соответственно, вход разгрузки данных и вход загрузки данных блока памяти очереди данных соединены с десятым и одиннадцатым выходами блока управления., информационный вход блока памяти очереди данных является информационным входом устройства, выход блока памяти очереди данных соединен с информационнымвходом блока памяти данных, двенадцатый и тринадцатый выходы блока управления соединены с входами загрузки и разгрузки данных блока памяти очереди входного адреса, четырнадцатый выход блока управле ния - с входом разгрузки данных блока памяти адресов фрагментов данных, первый и второй информационные выходы блока памяти адресов фрагментов данных соединены соответственно с вторым инфор мационным входом коммутатора и с шестым входом блока управления, седьмой вход которого соединен с выходом готовности выходных данных блока памяти адресов фрагментов данных. " 15 2. Устройство по п.1, о т л и ч а ю щ е ес я тем, что блок памяти очереди выходного адреса содержит узел маскирования и циклического сдвига флагов сравнения, регистр 20 флагов, шифратор и дешифратор, узел памяти очереди, счетчик единиц, причем первый информационный вход блока соединен с первым информационным входом узла памяти очереди, первый информаци онный выход которой является первым информационным выходом блока, второй информационный выход узла памяти очереди соединен с входом данных регистра флагов, выход регистра флагов соединен с 30 входом шифратора, первый выход которого соединен с пятым управляющим выходом блока, второй и третий выходы шифратора являются вторым и третьим управляющими выходами блока соответственно и соединены с информационным входом дешифратора, вход стробирования которого является третьим входом управленйя блока, первый управляющий и второй информационный входы блока соединены с управляющим и информационным входами узла маскирова ния и циклического сдвига флагов сравнения, первый выход которого соединен с вторым информационным входомузла памяти очереди и входом счетчика единиц, второй выход узламаскирования и циклического сдвига флагов сравнения является первым управляющимвыходом блока, выходы дешифратора соединены с входами сброса регистра флагов, выход готовности узла памяти очереди соединен с входом стробирования регистра флагов и является четвертым управляющим выходом блока, вход разгрузки узла памяти очереди является вторым управляющим входом блока, первый выход счетчика единиц соединен с входом разрешения запйси узла памяти очереди, второй выход является вторым информационным выходом блока, вход стробирования записи узла памяти очереди соединен с входом стробирования записи входного адреса устройства,
СмотретьЗаявка
4745732, 06.07.1989
ИНСТИТУТ АВТОМАТИКИ И ЭЛЕКТРОМЕТРИИ СО АН СССР
СЛУЕВ ВЛАДИМИР АЛЕКСАНДРОВИЧ
МПК / Метки
МПК: G06F 12/00
Метки: буферное, запоминающее, изображений, конвейерное, систем
Опубликовано: 30.07.1992
Код ссылки
<a href="https://patents.su/14-1751769-konvejjernoe-bufernoe-zapominayushhee-ustrojjstvo-dlya-sistem-obrabotki-izobrazhenijj.html" target="_blank" rel="follow" title="База патентов СССР">Конвейерное буферное запоминающее устройство для систем обработки изображений</a>
Предыдущий патент: Устройство для коррекции программ
Следующий патент: Демультиплексор информационного канала для адаптера последовательного интерфейса
Случайный патент: Устройство для расфасовки сыпучих продуктов