Научная статья на тему 'Методы теории графов в решении задач технического проектирования типовых элементов замены (ТЭЗ) ЭВМ'

Методы теории графов в решении задач технического проектирования типовых элементов замены (ТЭЗ) ЭВМ Текст научной статьи по специальности «Математика»

CC BY
142
27
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ТЕОРИЯ ГРАФОВ / ЭЛЕМЕНТЫ ЗАМЕНЫ (ТЭЗ) ЭВМ / ПРОЕКТИРОВАНИЕ / GRAPH THEORY / COMPUTER REPLACEMENT ELEMENTS / DESIGN

Аннотация научной статьи по математике, автор научной работы — Розанов В.А.

В статье представлены методы теории графов в решении задач технического проектирования типовых элементов замены (ТЭЗ) ЭВМ, автором приведен эффективный алгоритм удаления минимального числа вершин графа пересечений

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

METHODS OF GRAPH THEORY IN SOLVING PROBLEMS OF TECHNICAL DESIGN OF TYPICAL COMPUTER REPLACEMENT ELEMENTS

The article presents methods of graph theory in solving problems of technical design of typical computer replacement elements, the author provides an effective algorithm for removing the minimum number of vertices of the intersection graph

Текст научной работы на тему «Методы теории графов в решении задач технического проектирования типовых элементов замены (ТЭЗ) ЭВМ»

УДК 621.3.06; 004

МЕТОДЫ ТЕОРИИ ГРАФОВ В РЕШЕНИИ ЗАДАЧ ТЕХНИЧЕСКОГО ПРОЕКТИРОВАНИЯ ТИПОВЫХ ЭЛЕМЕНТОВ ЗАМЕНЫ (ТЭЗ) ЭВМ

В.А. Розанов

Аннотация. В статье представлены методы теории графов в решении задач технического проектирования типовых элементов замены (ТЭЗ) ЭВМ, автором приведен эффективный алгоритм удаления минимального числа вершин графа пересечений.

Ключевые слова: теория графов, элементы замены (ТЭЗ) ЭВМ, проектирование.

METHODS OF GRAPH THEORY IN SOLVING PROBLEMS OF TECHNICAL DESIGN OF TYPICAL COMPUTER REPLACEMENT ELEMENTS

V.A. Rozanov

Abstract. The article presents methods of graph theory in solving problems of technical design of typical computer replacement elements, the author provides an effective algorithm for removing the minimum number of vertices of the intersection graph.

Keywords: graph theory, computer replacement elements, design.

В ЭВМ 3 и 4 поколений основным способом коммутации модулей больших и сверхбольших интегральных схем (БИС и СБИС) является многослойный печатных монтаж. Модули размещаются на многослойных печатных платах ТЭЗ, то есть конструкциях с несколькими слоями диэлектрика, на каждом из которых располагаются проводники, осуществляющие коммутацию контактов модулей и разъема ТЭЗ, причем, подсоединение проводников к этим контактам возможно в любом из слоев. Этап технического проектирования типовых элементов замены (ТЭЗ) ЭВМ 3 и 4 поколений включает в себя ряд задач, решение которых обеспечивает выпуск конструкторской документации для их изготовления, наладки и дальнейшей эксплуатации. В частности, это задачи компоновки ТЭЗ из наименьших конструктивных единиц-модулей, размещения модулей на конструкции ТЭЗ и задача трассировки соединений ТЭЗ.

Приведем их краткую формулировку:

1. Компоновка ТЭЗ. Исходными данными для компоновки ТЭЗ являются схемы отдельных частей ЭВМ, представленные в системе функциональных элементов, конструктивные ограничения (емкость конструкции ТЭЗ, количество контактов разъема и т.д.).

Задача компоновки состоит в разбивке функциональных схем на конструктивно законченные части с учетом ограничений и некоторых критериев оптимальности. Результатом данного процесса являются незаконченные скомпонованные функциональные схемы ТЭЗ, с указанием его внутренних и внешних связей. Совокупность полученных данных является исходной для последующих этапов проектирования.

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

- минимум числа внешних связей ТЭЗ;

- минимум числа ТЭЗ, связанных с данным ТЭЗ.

Оптимизация по обоим критериям направлена на обеспечение успешного распределения коммуникаций ЭВМ по конструкциям.

Возможности технологии многослойного печатного монтажа и тенденция к уменьшению физического объема вычислительной среды приводят к необходимости максимального замыкания электрических связей внутри ТЭЗ и панелей. В некоторых случаях выдвигаются требования к функциональной законченности схем ТЭЗ.

При высокой интеграции модулей на ТЭЗ это требование, как и требование максимальной унификации ТЭЗ, удовлетворяется в основном для регулярных схем ЭВМ.

Требование к помехоустойчивости схем при высокой тактовой частоте заставляют компоновать в один ТЭЗ схемы, работающие в одном и том же такте синхронизации. Для выполнения этого условия все множество модулей разбивается на подмножества, в каждом из которых модули работают в одном такте, а компоновка проводится внутри каждого из подмножеств.

2. Размещение модулей на плате ТЭЗ. Исходными данными для этой задачи являются:

- перечень модулей, размещаемых на плате ТЭЗ;

- таблица цепей.

В перечне перечислены модули, без указания их координат на плате ТЭЗ.

В таблице цепей указаны: в графе «№ п/п» - номер цепи, в графе «Откуда» - источник сигнала, в графе «Куда» - перечислены приемники сигнала, в числе которых контакты модулей и разъема ТЭЗ.

Основным критерием оптимальности при решении задачи размещения модулей на плате ТЭЗ является требование разместить модули так, чтобы обеспечить условия для успешного решения задачи трассировки соединений между модулями ТЭЗ и его разъема в ограниченном числе слоев печатного монтажа, при условии соблюдения всех схемотехнических ограничений на него.

3. Трассировка соединений ТЭЗ. Исходными данными для этой задачи являются:

- перечень контактов модулей, размещенных на плате ТЭЗ, и контактов разъема ТЭЗ, с указанием их координат на плате;

- перечень цепей, с указанием координат контактов каждой цепи.

Каждая точка на плате ТЭЗ обычно задается в системе декартовых координат х, у, z, где z - номер слоя, х, у - координаты точки на слое с номером z. Контакты модулей и разъема, а также переходные отверстия со слоя на слой платы интерпретируются как точки, для которых указаны только координаты х, у, поскольку они соединяют все слои платы.

Введем следующие обозначения: множество всех контактов и переходных отверстий на плате обозначим через К. В множестве К выделены непересекающиеся подмножества DJ, элементы которых

- контакты, подлежащие соединению одной электрической цепью с номером _). Задача трассировки - осуществить соединения внутри каждого подмножества DJ с учетом технических и конструктивных ограничений и принятых критериев оптимальности. Обычно ставятся следующие ограничения:

1. Пропускная способность R0 единицы площади S0 слоя платы.

- максимальное число проводников, проходящих через площадку

2. Допустимые направления проводников в каждом слое.

3. Предельно допустимая длина проводников, зависящая от типа сигнала, проходящего по ним.

4. Максимально допустимое число слоев (Т ), в которых осуществляется трассировка.

Ограничения 1, 2 обычно задаются с помощью регулярной сетки каналов, по которым допустима прокладка проводников. В этом случае ограничения 1, 2 учитываются автоматически, поскольку рассматриваются как исходные данные задачи.

В качестве критериев оптимальности трассировки в известных разработках используются следующие:

- минимум суммарной длины связей;

- минимум числа связей, превышающих определенную длину;

- минимум числа слоев монтажа.

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

При использовании последовательных методов трассировки минимизация суммарной длины проводников, проложенных ранее, обусловлена стремлением улучшить условия для трассировки последующих проводников, так как при ограниченных размерах и пропускной способности поля трассировки, ранее проложенные проводники создают препятствия для реализации последующих. Поскольку цепи не равноценны по характеру электрического сигнала, проходящего по ним, а также по критичности к помехам и возможным задержкам сигнала, то целесообразно минимизировать взвешенную сумму длин связей. Те же цели преследует оптимизация по второму критерию. Стремление минимизировать количество монтажных слоев диктуется конструктивными соображениями, поскольку число слоев всегда ограничено сверху. Критерии минимизации длин проводников и количества слоев противоречивы. Действительно, при неограниченном числе слоев контакты в каждом слое соединяются кратчайшими путями, а конфликтующие проводники могут быть перенесены в следующий слой. Ограничение числа слоев заставляет идти на увеличение длины некоторых проводников при попытке найти для них обходные пути. Отыскание оптимальной трассировки при наличии большого числа ограничений представляет собой весьма сложную задачу комбинаторного характера, полное

решение которой пока еще не получено ни в одной из известных работ. Некоторые частные задачи, возникающие при трассировке соединений, хорошо формализованы и известны алгоритмы их оптимального решения.

Необходимо отметить, что приведенное разделение общей задачи технического проектирования ТЭЗ на подзадачи не только традиционное, но скорее вынужденное, из-за слишком большого числа переменных, сложности целевых функций и обилии ограничений в обобщенной задаче технического проектирования, как задачи реализации некоторой функциональной схемы в заданном конструктивном базисе. Развитие методов автоматизации технического проектирования идет как в направлении реализации попыток объединения этих задач, так и в направлении еще более мелкого дробления на стандартные подзадачи. Первое имеет своей целью улучшение конечных результатов проектирования, второе облегчение алгоритмизации и сокращение затрат на создание и ведение программного обеспечения систем автоматизации проектирования (далее ПО САПР). Несмотря на попытки создания некоторых универсальных конструкций, на которых могут быть построены различные ЭВМ одной серии, переход к созданию ЭВМ повышенной производительности и прогресс технологий требует существенных изменений в стандартном конструктивном базисе.

В этих условиях использование конструктивно ориентированного ПО САПР связано с необходимостью внесения изменений в ранее созданные функциональные программы или с разработкой новых программ.

Опыт создания ПО САПР ЭВМ 3 и 4 поколений показывает, что целесообразно выделять часто применяющиеся подпрограммы САПР с легко настраиваемыми входными параметрами в отдельные библиотеки и на их основе строить подвижные комплексы программ для решения тех или иных прикладных задач.

При решении задач компоновки ТЭЗ и размещения модулей на ТЭЗ электрические цепи в них задаются списковыми структурами, в которых перечисляются контакты модулей, подлежащие соединению одной электрической цепью. Адреса этих модулей на ТЭЗ в своем большинстве еще не известны, не известен и порядок соединений контактов в цепи. Но, для решения указанных

задач необходимо на каждом шаге алгоритмов компоновки и размещения модулей на ТЭЗ знать степень связности между модулями или группами модулей, которая определяется количеством будущих реальных связей между ними.

В работе [9] рассматривается следующая графовая модель: каждому из «п» контактов цепи ставится в соответствие вершина «х» полного графа G (X, и), а проводникам, соединяющим контакты, ребра «и» графа. Электрическая цепь любой конфигурации интерпретируется как дерево с «п» вершинами, построенное на графе G (X, и). Если ограничения на количество проводников, подсоединяемых к любому из контактов цепи, отсутствуют, а все контакты цепи равнозначны, что соответствует в графовой модели цепи отсутствию ограничений на степень любой вершины дерева и требованию равнозначности его вершин, то количество различных деревьев «Т», которые могут быть построены на «п» вершинах, по теореме Кэли [2] равно:

Т = п п-2 (1)

В работе [9] показано, что математическое ожидание числа ребер М^а), инцидентных любой из произвольно взятых вершин «а», в любом дереве из совокупности «Т», равно

М^а) = 2(п - 1)/п (2)

математическое ожидание числа ребер, инцидентных одновременно вершине «а» и «к» другим вершинам этого дерева, равно:

М ^„к) = 2к/п, (3)

где 1 < = к < = п-1

Значение вероятности появления любого, наперед заданного ребра (аЬ) дерева, равно

раь= 2/п (4)

В работе [8] рассматривается правомерность формул (2), (3), (4) и для случая, когда все вершины деревьев равнозначны, но степень любой вершины не более 2. Этот случай соответствует схемотехническому требованию последовательного обхода контактов электрической цепью.

В работах [4], [10] формулы (2), (3), (4) использовались для вычисления коэффициентов относительной и абсолютной связности модулей при решении задач автоматизации компоновки ТЭЗ и размещения модулей на ТЭЗ.

Рассмотрим задачу нахождения оптимальной цепи, связывающей «п» контактов, у которых известны координаты на плате ТЭЗ. Поставим в соответствие множеству контактов цепи DJ множество вершин К полного графа G (К, V), где V - множество ребер. Если известна величина (вес) каждого ребра V полного графа, то задача нахождения оптимальной цепи, связывающей «п» вершин этого графа сводится к задаче построения на «п» вершинах минимального дерева, то есть дерева с минимальной суммой величин (весов) ребер. Алгоритм построения минимального дерева предложен Краскалом [13]. Дальнейшее развитие алгоритм получил в работе Прима [7], который, распространяя задачу минимизации суммы положительных длин, на более общие задачи минимизации произвольной возрастающей функции или максимизации произвольной убывающей функции длин ребер, предложил удобную для реализации на ЭВМ модификацию алгоритма.

Использование алгоритма Краскала-Прима позволяет оптимально решить задачу трассировки для схем с проводными (кабельными) соединениями, если допустимое число подсоединений к одному контакту не менее 5. В противном случае, алгоритм с учетом упомянутого ограничения, приводит к результатам, отличающимся от оптимальных, по некоторым, данным в пределах 4-5%. Можно указать на работу [11], в которой алгоритм Краскала-Прима применялся для оптимизации схем с кабельными соединениями, причем в случае [11] алгоритм использовался впервые в СССР в системе автоматизации проектирования при создании большой серийной специализированной ЭВМ.

В схемах с многослойным печатным монтажом нахождение оптимальной цепи существенно сложнее. Трудности возникают из-за недопустимости пересечений проводников в одном слое, а также из-за ограничений на конфигурацию проводников, накладываемых топологией допустимых каналов.

Если в общем алгоритме трассировки предусмотрено построение всех цепей на одной плоскости с последующим распределением

конфликтующих проводников по слоям, то в оценке веса ребра графа G (K, V) необходимо учитывать количество пересечений каждого проводника с проводниками ранее построенных цепей. Под весом ребра Кт Kn в таком случае можно понимать величину, равную:

L = c,h + c21 , (5)

mn 1 2 mn' v '

где:

h - количество пересечений проводника Km Kn с проводниками ранее построенных цепей.

l = |X - X| + |Y - Y |, (6)

mn m n m n

где:

X , Y ; X , Y - координаты вершин K , K ; c1, c2 - весовые коэффициенты.

Значения коэффициентов c1, c2 можно изменять в зависимости от условий конкретной задачи. Увеличение коэффициента c1 делает алгоритм более критичным к количеству пересечений, увеличение c2 - к геометрической длине проводников.

Построение цепи с помощью алгоритма Краскала - Прима позволяет найти цепь с минимальным значением функции качества F, равной:

F = - УУ1 , (7)

О ^m^n mn' v '

где:

1 = 0, если вершины Км и Kn не имеют непосредственных соединений и 1 = 1 .

mn nm

Технология прокладки цепей, определяемая сетью допустимых каналов и наличием ранее построенных проводников на плате, рассматриваемых как препятствия, приводит к неоднозначности в задании величины (веса) ребра, связывающего вершины Km, Kn. Если существуют V различных ребер, соединяющих вершины Km, Kn, то задача отыскания минимального дерева на полном графе, трансформируется в задачу отыскания этого дерева на полном муль-тиграфе. Если принять за величину ребра, соединяющего вершины, величину 1 = min 1 , то, как показано в работе [5], непосредственное

применение принципов 1 и 2 Прима для построения кратчайшего дерева и в этом случае приведет к построению оптимальной цепи.

Заметим, что в выражение (5) можно ввести ряд слагаемых, учитывающих такие характеристики, как количество «изломов» печатного проводника, количество «теневых» участков проводника и т.д.

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

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

В работе [6] задача построения печатного проводника, соединяющего два контакта цепи, сводится к задаче нахождения кратчайшего пути между двумя вершинами взвешенного графа методами динамического программирования.

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

Интересен метод распределения конфликтующих проводников на два слоя печатной платы, предложенный Кодресом [12].

Каждому проводнику, соединяющему два контакта цепи, ставится в соответствие вершина графа пересечений Gп. Если два проводника, принадлежащие разным цепям, пересекаются, то соответствующие вершины графа G соединяются ребром. Задача рас-

пределения проводников на два слоя сводится к задаче правильной раскраски вершин графа пересечений в два цвета. (Под правильно раскрашенным графом понимается граф, у которого никакие смежные вершины не окрашены одним цветом). Критерий возможности окраски графа двумя цветами дает теорема Кенига [2]: «Граф может окрашиваться двумя цветами, если и только если он не содержит нечетных циклов». Кодрес предлагает алгоритм удаления минимального числа ребер графа пересечений так, чтобы оставшийся подграф не имел нечетных циклов. Удаление ребер в графе пересечений G означает устранение пересечений проводников в исходной схеме соединений. Метод [12], к сожалению, не пригоден непосредственно для решения задачи распределения проводников более чем в двух слоях, поскольку теорема Кенига дает критерий возможности окраски графа только двумя цветами. Однако, идея использования операций на графе пересечений и критерия Кенига может оказаться плодотворной и при решении задачи распределения проводников в п слоях (при п > 2), если удастся найти эффективный алгоритм удаления минимального числа вершин графа пересечений с тем, чтобы оставшийся подграф стал бы бихроматическим. Эта задача была решена в работе [1], авторы которой предложили следующий алгоритм:

1. Осуществляется трассировка всех печатных проводников на одной плоскости с минимизацией их длин и числа взаимных конфликтов.

2. Для полученной совокупности проводников строится граф пересечений. Его вершины соответствуют построенным проводникам, а ребра связывают вершины, соответствующие конфликтующим проводникам.

3. Методом целочисленного линейного программирования удаляется минимальное количество вершин графа пересечений вместе с инцидентными им ребрами, так чтобы оставшийся подграф стал бихроматическим.

4. Вершины полученного подграфа окрашиваются в два цвета.

5. По перечню удаленных вершин графа подготавливается информация для 1 этапа.

6. Повторяются 1, 2, 3, 4, 5 этапы до тех пор, пока количество бих-роматических подграфов не станет равным п/2, при п - четном или (п - 1)/2 при п - нечетном.

7. Если п - нечетное и есть удаленные вершины из последнего обрабатывавшегося подграфа, повторяются 5 и 1 этапы, причем при выполнении первого этапа проводится трассировка тех проводников, которые не конфликтуют с ранее построенными.

8. Если п - четное и есть удаленные вершины из последнего подграфа, иными словами, есть неразмещенные в п слоях проводники, оставшиеся после выполнения 7 этапа, то они проводятся либо волновым алгоритмом Ли [14] по уже сформированным слоям, либо навесным монтажом.

Какими же особенностями обладает описанный алгоритм?

Во-первых, после получения на 1 этапе полной картины трассировки с локальной оптимизацией по величинам звеньев цепи, на 3-этапе максимально заполняются два слоя платы.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

Итак, многие подзадачи технического проектирования ТЭЗ сводятся к следующим задачам на графах:

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

2. Построения оптимальных связывающих деревьев на графах и мультиграфах.

3. Поиск оптимального пути на взвешенном графе.

4. Раскраска вершин графа минимальным количеством цветов.

5. Выделение из графа максимального бихроматического подграфа.

При создании Единой системы автоматизации проектирования (ЕСАП) для решения перечисленных и других графовых задач была создана и постоянно наращивалась библиотека стандартных программ многократного применения, построенная на принципах ППП [3].

Библиографический список

1. Беляков А.Н., Бугаев Е.К., Розанов В.А. Метод распределения проводников в многослойных печатных платах // Труды МИЭМ: «Проблемы автоматизации проектирования и производства ЭВМ». Вып. XVI. Ч. 1. М., 1971.

2. Берж К. Теория графов и ее применение. М., 1968.

3. ЗайцеваЖ.Н., ШмелевА.Г., РозановВ.А. О построении систем автоматизации проектирования ЭВМ на основе пакета прикладных программ решения графовых задач // Вопросы РЭ. Серия ЭВТ. 1977. Вып. 9.

4. Кандарицкий С.В., Розанов В.А., Стихов А.Н. Алгоритм компоновки элементов ЭВМ // Труды МИЭМ: «Проблемы автоматизации проектирования и производства ЭВМ». Вып. XVI. Ч. 1. М., 1971.

5. Малышева И.И., Розанов В.А., Юрин О.Н. Метод решения задачи построения кратчайших связывающих сетей на мультиграфах // Труды МИЭМ: «Проблемы автоматизации проектирования и производства ЭВМ». Вып. XVI. Ч. 1. М., 1971.

6. Малышева И.И., Розанов В.А., Юрин О.Н. Автоматизация технического проектирования печатных плат // Вопросы РЭ. Серия ЭВТ. 1972. Вып. 3.

7. Прим Р.К. Кратчайшие связывающие сети и некоторые обобщения // Кибернетический сборник. 1961. № 2.

8. Розанов В.А. Методы учета неоднозначности задания связей в задачах размещения и компоновки элементов // Проблемы управления в социальных и экономических структурах: сборник статей. М., 2002.

9. Розанов В.А., СыпчукП.П., Юрин О.Н. Анализ методов решения задачи размещения элементов на конструкциях ЭВМ // Труды МИЭМ: «Проблемы автоматизации проектирования и производства ЭВМ». Вып. XVI. Ч. 1. М., 1971.

10. Розанов В.А., Юрин О.Н. Метод размещения элементов с нефиксированными связями // Труды МИЭМ: «Проблемы автоматизации проектирования и производства ЭВМ». Вып. XVI. Ч. 1. М.,1971.

11. Розанов В.А., Юрин О.Н. Внедрение комплекса программ автоматизации составления монтажной документации // Вопросы СРЭ. 1967. Вып. 14.

12. Kodres U.R. Formulation and Solution of Circuit Card Design Problems through use of Graph Methods // Advances in Electronic Circuit Packaging. 1962. Vol. 2.

13. Kruskal J.B. On the shortest spanning subtree of a graph. Proc. Amer. Math. Soc. 1956.

14. Lee C.Y. An algorithm for path connections and its applications. IRE Transaction V EC-40. № 3.

В.А. Розанов

Кандидат технических наук, доцент

Академия труда и социальных отношений, г. Москва

E-mail: viktor.rozanov@mail.ru

i Надоели баннеры? Вы всегда можете отключить рекламу.