Процессор-ускоритель автоматической трассировки соединений между элементами на плоскости

организации. Обоснована возможность декомпозиции задач поиска оптимальной и эффективной комбинации слотов для выполнения системы заданий.

Литература

1. Garg S. K., Buyya R., Siegel H. J. Scheduling parallel applications on utility Grids: time and cost trade-off management // Proc. of ACSC 2009, Wellington, New Zealand. 2009. P. 151-159.

2. Bredin J., Kotz D., Rus D. Economic markets as a means of open mobile-agent systems // Proc. of the workshop «Mobile agents in the context of competition and cooperation (mac3)». 1999. P. 43-49.

3. Ailamaki A., Dash D., Kantere V. Economic aspects of cloud computing // Flash Informatique. Special HPC. 2009. 27 October. P. 45-47.

4. Buyya R., Abramson D., Giddy J. Economic models for resource management and scheduling in grid computing // J. of Concurrency and Computation: Practice and Experience. 2002. V. 14. № 5. P. 1507-1542.

5. Ernemann C., Hamscher V., Yahyapour R. Economic scheduling in grid computing // Proc. of JSSPP 2002 / Eds. D.G. Feitelson, L. Rudolph, U. Schwiegelshohn. Springer, Heidelberg. LNCS. 2002. V. 2537. P. 128152.

6. Kurowski K., Nabrzyski J., Oleksiak A., Weglarz J. Multicriteria aspects of Grid resource management // Grid resource management. State of the art and future trends / Eds. J. Nabrzyski, J.M. Schopf, and J. Weglarz. Kluwer Acad. Publ., 2003. P. 271-293.

7. Коваленко В. Н., Коваленко Е. И., Корягин Д. А., Семячкин Д. А. Управление параллельными заданиями в гриде с неотчуждаемыми ресурсами // Препринт № 63. - М.: ИПМ РАН им. М.В. Келдыша, 2007. -28 с.

8. Toporkov V. Application-level and job-flow scheduling: an approach for achieving quality of service in distributed computing // Proc. of PaCT-2009, Springer, Heidelberg. LNCS. 2009. V. 5698. P. 350- 359.

9. Toporkov V. V. Job and application-level scheduling in distributed computing // Ubiquitous Computing and Communication J. Applied Computing. 2009. V. 4. № 3. P. 559-570.

10. Топорков В. В. Модели распределенных вычислений. - М.: ФИЗМАТЛИТ, 2004. -320 с.

11. Топорков В. В. Декомпозиционные схемы синтеза стратегий планирования в масштабируемых системах // Изв. РАН. ТиСУ. 2006. № 1. С. 82-93.

12. Toporkov V. V., Tselishchev A. S. Safety scheduling strategies in distributed computing // Int. J. of Critical Computer-Based Systems. 2010. V. 1. № 1/2/3. P. 41-58.

13. Воеводин Вл. В. Решение больших задач в распределенных вычислительных средах // АиТ. 2007. № 5. С. 32-45.

14. Топорков В. В. Потоковые и жадные алгоритмы согласованного выделения ресурсов в распределенных системах // Изв. РАН. ТиСУ. 2007. № 2. С. 109-119.

15. Toporkov V. V., Toporkova A., Tselishchev A., Yemelyanov D., Bobchenkov A. Economic models of scheduling in distributed systems // Monographs of System Dependability: Dependability of Networks. Vol. 2 / Eds. T. Walkowiak, J. Mazurkiewicz, J. Sugier, and W. Zamojski. Wroclaw: Oficyna Wydawnicza Politechnki Wroclawskiej, 2010. P. 143-154.

УДК 681.306.001.2

ПРОЦЕССОР-УСКОРИТЕЛЬ АВТОМАТИЧЕСКОЙ ТРАССИРОВКИ СОЕДИНЕНИЙ МЕЖДУ ЭЛЕМЕНТАМИ НА ПЛОСКОСТИ

Е. И. Артамонов, д. т. н., профессор Тел.: 334-91-29, e-mail: eiart@ipu.rssi.ru И. В. Коновалов, аспирант Тел.: 334-91-29, e-mail: Ivan-k85@mail.ru Т. А. Ничипирович, научный сотрудник Тел.: 334-91-29, e-mail:eiart1@yandex.ru Е. В. Тишкевич, аспирант Тел. 334-91-29, e-mail: eiart@ipu.ru,

Институт проблем управления им. В. А. Трапезникова РАН http://lab18.ipu.rssi.ru

This paper examines the features of building processor-accelerators intended for the solving of problems of automatic routing of connections between elements on a plan. The comparative charac-

teristics of the computational complexities of different algorithms of solving those problems are given. The main principles of building the processor-accelerator are described.

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

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

Keywords: The processor-accelerator, algorithm of automatic trace of connections, hardware and software realisation, estimation of computing complexity, the model sample.

Введение

Известно большое число программно реализованных систем, решающих задачи размещения элементов на плоскости и автоматической трассировки соединений между элементами (например, системы P-CAD, PROTEL и др. ). Такие задачи относятся к NP - полным [1], поэтому время их решения и их качество на однопроцессорных компьютерах оставляют желать лучшего. Использование процессоров-ускорителей открывает новые возможности по улучшению основных эксплуатационных характеристик при решении графических задач большой размерности по подготовки исходных данных и выводу результатов, решении задач размещения элементов и трассировки соединений между ними. Так, например, суперкомпьютер Roadrunner (IBM) содержит 32000 процессоров, из них 16000 являются графическими процессорами-ускорителями, которые ранее были разработаны для игровой приставки Playstation-3 [2].

В работе приведены результаты создания макета процессора-ускорителя (ПУ) автоматической трассировки соединений между графическими элементами на плоскости. Предполагается, что ПУ позволит ускорить процесс автоматической трассировки и, в последующем, позволит перейти к решению задач объемной трассировки.

Сравнительные характеристики реализаций алгоритмов трассировки

В таблице 1 представлены четыре основные варианта реализации алгоритмов трассировки и соответственно выражения их вычислительной сложности.

______________________________________________________________________________________Таблица 1

Характеристики алгоритма трассировки Вычислительная сложность алгоритма

Программная реализация алгоритма определения кратчайшего путиФорда и Фалкерсона [3]. P < т0 (N - і)2

Программная реализация алгоритма 1 на модели трассируемого поля. P < т0

Аппаратная реализация волнового алгоритма трассировки r P = ml ч - Np 2 + Np J

Аппаратная реализация волнового алгоритма трассировки с одновременным распространением встречных волн P = m° — 0 К V N - Np 2 4 +N, \ J

В таблице приняты следующие обозначения:

т0 - количество операций по вычислению веса одной вершины в программной реализации, т\ - количество операций по вычислению веса одной вершины в аппаратной реализации,

N - общее количество вершин,

N - количество ячеек занятое препятствиями р.

К - количество вершин в одной длинной цепи.

В первом варианте используется классический алгоритм определения кратчайшего пути на матрице смежности модели трассируемого поля. Во втором - тот же алгоритм реализован непосредственно на модели трассируемого поля, представляющую собой проекцию графического изображения элементов и связей между ними на плоскую матрицу М. В третьем - реализован волновой алгоритм на модели трассируемого поля, в которой каждая ячейка матрицы М представляет собой специализированный процессор. Четвертый вариант отличается от третьего реа-

лизацией одновременного распространением волны от всех К вершин длинной цепи.

Структурная схема процессора-ускорителя

Структура ПУ состоит из однородной матрицы М ячеек специализированных процессоров (СП) модели трассируемого поля, схемы соединений (СС) между ячейками матрицы М и блока управления (БУ).

Схема специализированного процессора содержит: 8-ми разрядные регистр, две схемы И и одну схему ИЛИ. Регистр хранит информацию о номере направления пришедшего на эту ячейку сигнала распространения волны.

Структурная схема матрицы М показана на рис.1. Для простоты изображения на рисунке представлен пример из матрицы 5х5 ячеек модели трассируемого поля. Каждая ячейка матрицы пронумерована с внешней стороны. Ячейки в матрице связаны между собой по восьми направлениям: север (0), северо-восток (1), восток (2), юго-восток (3), юг (4), юго-запад (5), запад (6), северо-запад (7). Связи между ячейками (на рисунке обозначены стрелками) показывают направления расчета кратчайшего пути. При этом для примера индексами С обозначена ячейка начала трассы, D - конец трассы, р - препятствие.

Общий принцип расчета весов вершин напоминает процесс распространения фронта волны от точки С до точки D. На рис. 1 фронт каждой волны соответствует одной строке «шага алгоритма» и помечен цифрами внутри ячеек матрицы. Расчеты заканчиваются на (п — 1) - ом шаге, когда фронт волны достигнет вершину D. Фиксация трассы проходит в обратном направлении в сторону противоположную направлениям, сохраненным в каждом СП.

Разработаны и исследованы несколько вариантов принципиальных схем процессора-ускорителя (ПУ). Проведено функциональное моделирование этих схем на языке VHDL.

Макетный образец процессора-ускорителя

Создан макетный образец ПУ, состоящий из двух плат. На одной плате, монтажной, распаяна плис C95288XL компании Xilinx (фото 1), на другой установлены матрица световых индикаторов (МСИТП) модели трассируемого поля, восемь световых индикаторов направлений распространения расчетной волны по матрице спецпроцессоров, переключатели установки препятствий, начала и конца трасс, а также переключатели режимов работы СП (фото 2).

Переключатели режимов имеют следующие обозначения: RST - сброс (установка исходного положения), WR -запись препятствия, CLK - одиночный тактовый сигнал, RD - чтение направлений распространения сигнала (фиксация кратчайшего пути), START - запуск волны распространения сигнала по восьми направлениям от точки начала трассы до точки конца трассы.

Процессор-ускоритель может работать в двух основных режимах: ручном и автоматиче-

ском. Ручной пошаговый режим выбран для простоты демонстрации принципа его работы. Последовательность операций алгоритма функционирования ПУ в ручном режиме следующая:

1. Нажатием переключателя RST производится установка ПУ в исходное положение.

2. Для задания препятствия последовательно переключателями ПУП выбирается по координатам Х и У требуемый процессор в модели трассируемого поля и включается START + WR. Препятствия высвечиваются на матрице МСИТП.

3. Для задания точки начала трассы устанавливаются переключателями ПУП координаты Х и У требуемого процессора в модели трассируемого поля и нажимается CLK один раз.

4. Задание точки конца трассы производится аналогично п. 3 и включается RD. Световые индикаторы препятствия выключаются.

Фото 1

5.Последовательно нажимается СЬК. На матрице МСИТП отображается распространение расчетной волны по модели трассировочного поля до точки конца пути. Световые индикаторы МСИТП, отображающие препятствие, не загораются.

6. Конец.

На фото 2-4 показано распространение волны от точки начала (нижний левый процессор) до точки конца трассы (верхний правый процессор). В этом примере отсутствуют препятствия.

В автоматическом режиме ПУ работает совместно с программно реализованной системой «Графика-ТР» [1] Она реализует алгоритм определения кратчайшего пути, алгоритмы подготовки исходных данных, ввода-вывода и согласования с процессором-ускорителем.

Система функционирует в двух режимах: режим «графика-2Б» (черчение) и режим «проектирования структурных, принципиальных, монтажных схем и печатных плат».

В режиме «графика-2Б» пользователю предоставляется возможность создавать векторные образы графических элементов схемы, редактировать их как на уровне отдельных примитивов (точка, ломаная, окружность, дуга окружности, эллипс, дуга эллипса, символ), так и составных узлов, создавать библиотеки элементов.

В системе реализованы все стандартные возможности редактирования: смещение, масштабирование, поворот, зеркальное отображение, копирование, копирование с зеркальным отображением, изменение типа, цвета и толщины линии, смещение конца отрезка, преобразование отрезка в ломаную линию, удаление и отмена текущей операции.

Фото 2 Фото 3 Фото 4

Процесс проектирования принципиальных электрических схем, монтажных схем и создание печатных плат включает в себя ручное размещение элементов на схеме, ручную или автоматическую трассировку соединений между элементами, автоматическую простановку позиционных обозначений элементов на схеме в соответствии требованиям ГОСТ 2.710-81, интерактивный ввод характеристик элементов и автоматическое создание таблиц, содержащих перечень элементов.

Подготовка исходных данных для формирования геометрических моделей схем осуществляется в режиме «графика-2Б». Исходные данные представляют собой описание типовых графических изображений элементов радиоэлектронной аппаратуры. Библиотека элементов содержит два уровня описания: условные графические обозначения элементов на принципиальной схеме и графические изображения элементов на монтажной схеме. Для проведения связей между элементами достаточно указать контакты элементов, входящих в текущую связь, с помощью нажатия клавиши мыши. На экране дисплея связи между контактами фиксируются в виде отрезка прямой линии. В памяти компьютера формируется 2Б модель схемы, в которой элементы связаны между собой таким образом, что при любом изменении размещения элементов в плоскости схемы, созданные соединения между элементами не изменяются и не разрываются. При перемещении элемента линии связи становятся «резиновыми» и вытягиваются за элементом. 2Б модель схемы оказывается удобна при итерационном процессе решения задач размещения и трассировки с целью минимизации общей длины трасс, количества пересечений трасс, лучшей читаемости схемы и т. п.

Аппаратная реализация процессора-ускорителя показала, что в одну плис ХС95288ХЬ входит только матрица процессоров 4х4 при 60% занятости оборудования плис. Для создания модели трассируемого поля размером 500х500 потребуется ориентировочно несколько десятков тысяч таких плис.

Таким образом, в работе сделан первый шаг по созданию процессора-ускорителя автоматической трассировки соединений между элементами на плоскости с целью анализа возможности и

сложности его реализации, а также решения вопросов совместного функционирования с программно реализованной системой. По мнению авторов работа является перспективной.

Литература

1. Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. -М.: Мир, 1982. - 584

с.

2. http://ru.wikipedia.org/wiki/RSX

3. Л. Р. Форд, Д. Р. Фалкерсон. Потоки в сетях / Перевод с англ.И.А. Вайнштейна. -М.: Мир, 1966.

4. Артамонов Е. И., Сизова Л. Н. Автоматическая трассировка соединений (АТС). Свидетельство о государственной регистрации N2008613903 от 15 августа 2008г.

ПРИМЕНЕНИЕ ПРОЦЕССОРОВ СЕМЕЙСТВА NEUROMATRIX ДЛЯ МАСШТАБИРОВАНИЯ ИЗОБРАЖЕНИЙ

С. В. Мушкаев, вед. инженер-программист Тел. (499) 1529802, e-mail: mushkaev@module.ru ЗАО НТЦ «Модуль» http://www.module.ru

A common problem in digital signal and image processing is a video resampling process. Actual applications dealing with High Definition (HD) resolution in real time have a quite high computational complexity. This paper analyses the applicability of DSP NeuroMatrix architecture for video resampling. The example of implementation of SD to HD video format conversion on NM6405[1] processor is considered.

В современных приложениях при работе с SD/HD видео задачи масштабирования изображений в режиме реального времени имеют достаточно высокую вычислительную сложность. В данном докладе рассматривается применимость DSP архитектуры NeuroMatrix для решения этих задач на примере программной реализации полифазного алгоритма масштабирования на процессоре 1879ВМ4(КЫ^6405)[1].

Ключевые слова: передискретизация, масштабирование, интерполяция, полифазный фильтр, К1789ХБ1Я, векторный процессор, параллельные вычисления, Lanzos, NeuroMatrix, NM6405.

Keywords: resampling, image resizing, scaler, scaling, interpolation, polyphase filtering, vector processor, parallel processing, Lanzos, NeuroMatrix, NM6405.

Введение

В телевизионных системах существует масса задач постобработки видео после его декодирования. В связи с распространением телевидения высокой четкости, появлением HD дисплеев и в то же время наличия большого SD видео контента естественно вытекающей задачей является быстрое и качественное масштабирование изображений до размера экрана. В 2010 компания ЗАО НТЦ «Модуль» выпустила систему на кристалле для декодирования цифрового телевизионного сигнала СБИС К1789ХБ1Я [2], способную декодировать видеопотоки MPEG-2, VC-1 и H.264 как в SD, так и HD формате. В микросхеме имеется уже аппаратный блок масштабирования (скейлер), однако, дополнительно в нее также интегрирован DSP сопроцессор NeuroMatrix NMC3 [1], с помощью которого предполагается производить постобработку видео и декодирование аудио. Так как программное решение само по себе более гибко и функционально чем аппаратное, возник вопрос об использовании ядра NeuroMatrix Core(NMC) в качестве видео скей-лера с произвольным коэффициентом масштабирования и в частности из SD в HD.

Существуeт множество методов масштабирования изображений. Основными из них являют-