Смекни!
smekni.com

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

6) Запоминаем исходную вершину формируемого куска графа

. Переходим к п.10

7) По матрице смежности

строим множество Xs=
и определяем относительные веса вершин
:

.

8) Из множества XSвыбираем вершину

. Переходим к п.10. Если таких вершин несколько, то переходим к п.9.

9) Из подмножества вершин Xvс одинаковым относительным весом выбираем вершину xjс максимальной локальной степенью, т.е.

.

10)

.

11) Если >m , то переходим к п.13.

12) Рассмотренные вершины включаем в формируемый кусок Xf = Xt .

13)Θ = Θ + 1.

14) Если Θ> α, то переходим к п.15, а противном случае – к п.7.

15) Если |Xf|<nmin, где nmin– минимально допустимое число вершин в куске, то переходим к п.21.

16) Выбираем окончательный вариант сформированного куска графа:

Xt = Xf ; X = X &bsol; Xt ; α = nmax .

17)Если |X|> nmax, то переходим к п.20.

18) Если |X|< nmin, то переходим к п.21.

19) Определяем число внешних связей последнего куска графа:

,

где F – множество индексов вершин, входящих в X. Если

, то переходим к п.21, в противном случае – к п.24.

20) Если t<k – 1 , где k - число кусков разрезания графа, то переходим к п.2, в противном случае – к п.23.

21) Предыдущий цикл «разрезания» считаем недействительным. Если t>1, т.е. имеется как минимум один ранее сформированный кусок, то переходим к п.22. в противном случае – к п.23.

22) Ищем другой допустимый вариант формирования предыдущего куска с меньшим числом вершин: t = t – 1;

.

Переходим кп.7.

23) Задача при заданных ограничениях не имеет решения.

24) Конец работы алгоритма.

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

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

Итерационные алгоритмы компоновки

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

Рассмотрим основную идею итерационного алгоритма разбиения графа G, заданного матрицей смежности, с минимизацией числа соединительных ребер. Разбиение графа G = (X,U) на lподграфов G1 = (X1,U1), G2 = (X2,U2),…,Gl = (Xl,Ul) сведем к разбиению на два подграфа. С этой целью в матрице смежности Rвыделим по главной диагонали две подматрицы R1 и R2. При этом порядок подматрицы R1 равен числу вершин, которые должны находится в G1, а порядок подматрицы R2 – числу всех оставшихся вершин графа. Необходимо так переставить строки и столбцы матрицы R, чтобы число ребер между G1 и оставшейся частью графа Gбыло минимальным. После этого подматрицу R1 из матрицы R исключаем, вычеркнув из Rстроки и столбцы, соответствующие элементам R1. Далее подматрицу R1 разбиваем снова на две подматрицы R2 и R2, причем порядок R2 соответствует числу вершин второго выделяемого подграфа, а порядок R2 – числу оставшихся вершин графа. Переставляем строки и столбцы R1 с целью минимизации числа соединительных ребер. После этого подматрица R2 исключается и процесс повторяется до тех пор, пока не будет выполнено разбиение графа Gна lподграфов.

Основная идея алгоритма заключается в выборе таких строк и столбцов, перестановка которых приводит к сосредоточению в диагональных клетках матрицы Rмаксимального числа элементов. Построим прямоугольную матрицу W = ||wi,j||nix(n-ni), в которой строки определяются вершинами из множества I, а столбцы – из множества V,

. На пересечении kстроки (
и qстолбца
находится элемент

,

где rk,q– элемент матрицы смежности R.

Элемент wk,qматрицы W характеризует изменение числа соединительных ребер между Giи Gjпри перестановке вершин

и
. Используя матрицу W, можно найти подстановку, которая увеличит число элементов в подматрицах R1 и R1 . Такой процесс повторяется до тех пор, пока в подматрице R1 не сосредоточится максимальное число единиц.

В итерационных алгоритмах предусмотрена возможность поиска оптимального варианта для различных начальных разбиений. Это связано с тем, что при использовании итерационных алгоритмов оптимальность решения в значительной мере зависит от того, насколько удачно было произведено начальное разбиение графа G(X,U).

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

3. АЛГОРИТМЫ РАЗМЕЩЕНИЯ

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

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

Поэтому все применяемые в настоящее время алгоритмы размещения используют промежуточные критерии, которые лишь качественно способствуют решению основной задачи: получению оптимальной трассировки соединений. К таким критериям относятся: 1) минимум суммарной взвешенной длины соединений; 2) минимум числа соединений, длина которых больше заданной; 3) минимум числа пересечение проводников; 4) максимальное число соединений между элементами, находящимися в соседних позициях либо в позициях, указанных разработчиком; 5) максимум числа цепей простой конфигурации.