Смекни!
smekni.com

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

Московский государственный институт электроники и математики

(Технический университет)

Кафедра ИТАС

РЕФЕРАТ

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

Выполнил:

Проверил:

Принял:

МОСКВА 2003

ОГЛАВЛЕНИЕ

1. Введение

2. Алгоритмы компоновка

3. Алгоритмы размещения

4. Алгоритмы трассировки


    ВВЕДЕНИЕ

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

2. АЛГОРИТМЫ КОМПОНОВКИ

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

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

Для построения формальной математической модели компоновочных задач удобно использовать теорию графов. При этом электрическую схему интерпретируют ненаправленным мультиграфом, в котором каждому конструктивному элементу (модулю) ставят в соответствие вершину мультиграфа, а электрическим связям схемы – его ребра. Тогда задача компоновки формулируется следующим образом, Задан мультиграф G(X,U). Требуется “разрезать” его на отдельные куски G1(X1,U1), G2(X2,U2),…, Gk(Xk,Uk) так, чтобы число ребер, соединяющих эти куски, было минимальным, т.е.

минимизировать

ij

при

i,j = 1,2,…,k,

где Uij – множество ребер, соединяющих куски Gi(Xi,Ui) и Gj(Xj,Uj).

Другими словами разбиениями частей совокупности G на графы считаются, если любая часть из этой совокупности не пустая; для любых двух частей пересечение множества ребер может быть не пустым; объединение всех частей в точности равно графу G.

Известные алгоритмы компоновки можно условно разбить на пять групп:

1. алгоритмы, использующие методы целочисленного программирования.

2. последовательные алгоритмы

3. итерационные алгоритмы

4. смешанные алгоритмы

Алгоритмы первой группы хотя и позволяют получить точное решение задачи, однако для устройства реальной сложности фактически не реализуемы на ЭВМ. В последнее время наибольшее распространение получили приближенные алгоритмы компоновки (последовательные, итерационные, смешанные). При использовании последовательных алгоритмов сначала по определенному правилу выбирают вершину графа, затем осуществляют последовательный выбор вершин (из числа нераспределенных) и присоединение их к формируемому куску графа. После образования первого куска переходят ко второму и т. д. до получения желаемого разрезания исходного графа. В итерационных алгоритмах начальное разрезание графа на куски выполняют произвольным образом; оптимизация компоновки достигается парными или групповыми перестановками вершин графа из различных кусков. Процесс перераспределения вершин заканчивают при получении локального экстремума целевой функции, удовлетворяющим требованиям разработчика. В смешанных алгоритмах компоновки для получения начального варианта “разрезания” используется алгоритм последовательного формирования кусков; дальнейшая оптимизация решения осуществляется перераспределением вершин между отдельными кусками графа.

Последовательные алгоритмыкомпоновки

В последовательных алгоритмах компоновки «разрезание» исходного графа G(X,U) на куски G1(X1,U1), G2(X2,U2),…, Gk(Xk,Uk) сводится к следующему. В графе G(X,U) находят вершину xi

Xс минимальной локальной степенью
.

Если таких вершин несколько, то предпочтение отдают вершине с максимальным числом кратных ребер. Из множества вершин, смежных с вершинами формируемого куска графа G1(X1,U1), выбирают ту, которая обеспечивает минимальное приращение связей куска с еще нераспределенными вершинами. Данную вершину xi

X \ X1 включают в G1(X1,U1), если не происходит нарушения ограничения по числу внешних связей куска, т.е.

,

где α– элемент матрицы смежности исходно графа G(X,U); δ(xg) – относительный вес вершины xg, , равный приращению числа внешних ребер куска G1(X1,U1) при включении вершины xg во множество X1; E – множество индексов вершин, включенных в формируемый кусок графа на предыдущих шагах алгоритма; m – максимально допустимое число внешних связей отдельно взятого куска со всеми оставшимися.

Указанный процесс продолжается до тех пор, пока множество X1 не будет содержать nэлементов либо присоединение очередной нераспределенной вершины xj к куску G1(X1,U1) не приведет к нарушению ограничения по числу внешних соединений куска, равному

Следует отметить, что величина

не является монотонной функцией |X1|, поэтому, для того чтобы убедится в невозможности дальнейшего формирования куска вследствие нарушения последнего ограничения, необходимо проверить его невыполнимость на последующих шагах увеличения множества X1 вплоть до n. В качестве окончательного варианта выбирают кусок G10(X10,U10), содержащий максимально возможное число вершин графа G(X,U), для которого выполняются ограничения на число внешних связей и входящих в него вершин (nmin-nmax).

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

Сформулируем алгоритм последовательной компоновки конструктивных элементов.

1) t:0

2) Xf = Xt = Ø; t=t+1; Θ=1; α=nmax,

Где t, Θ – порядковые номера формируемого куска и присоединяемой вершины; α – ограничение на число вершин в куске.

3) По матрице смежности исходного графа | αhp|NxN, где N– число вершин исходного графа (при большом значении N для сокращения объема оперативной памяти ЭВМ используем не саму матрицу смежности, а её кодовую реализацию), определяем локальные степени вершин

.

4) Из множества нераспределенных вершин Xвыбираем вершину xjс ρ(xj) =

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

5) Из подмножества вершин Xlс одинаковой локальной степенью выбирают вершину xjс максимальным числом кратных ребер (минимальным числом смежных вершин), т.е. |Гxj| =

.