- •1. Автоматизированное проектирование эвм
- •1.1. Этапы жизненного цикла промышленных изделий
- •1.2. Сапр эвм и их место среди других автоматизированных систем
- •1.3. Проектирование технического объекта
- •1.4. Этапы проектирования сложных систем
- •2. Общие сведения о сапр
- •2.1. Блочно-иерархический подход к проектированию
- •2.2. Классификация сапр
- •2.4. Виды обеспечения сапр
- •3. Математическое обеспечение сапр
- •2.3. Структура сапр
- •3.1. Требования к математическому обеспечению
- •3.2. Требования к математическим моделям
- •3.3. Классификация математических моделей
- •3.4. Формализация проектных задач
- •3.5. Математические методы описания моделей конструкций эвм
- •3.3.1. Понятия теории множеств
- •3.5.2. Элементы теории графов
- •3.5.3. Деревья
- •3.5.4. Способы задания графов
- •3.5.5. Характеристические числа графов
- •3.6. Математические модели электрических схем
- •Модель схемы в виде двудольного графа g(e, u, p)
- •Модель схемы в виде гиперграфа h(e, u)
- •Модель схемы в виде мультиграфа g(e, u)
- •4. Алгоритмы автоматизированного проектирования эвм
- •4.1. Основные свойства алгоритмов
- •4.2. Элементы теории сложности
- •5. Алгоритмы компоновки
- •5.1. Алгоритм покрытия
- •5.2. Последовательный алгоритм компоновки
- •5.3. Итерационный алгоритм компоновки
- •5.4. Смешанный алгоритм компоновки
- •6. Алгоритмы размещения элементов
- •6.1. Постановка задачи
- •6.2. Математическая модель задачи размещения
- •6.3. Метод ветвей и границ
- •6.4. Конструктивные алгоритмы начального размещения
- •6.5. Алгоритм обратного размещения
- •6.6. Итерационные алгоритмы улучшения начального размещения
- •6.7. Алгоритм групповых перестановок
- •6.8. Непрерывно-дискретные методы размещения
- •6.9. Размещение разногабаритных элементов
- •7. Алгоритмы трассировки межсоединений
- •7.1. Алгоритмы построения минимальных связывающих деревьев
- •7.1.1. Алгоритм Прима
- •7.1.2. Алгоритм Краскала
- •7.1.3. Кратчайшие пути
- •7.1.4. Задачи, близкие к задаче о кратчайшем пути
- •7.1.5. Алгоритм Франка – Фриша
- •7.1.6. Задача Штейнера
- •7.2. Алгоритмы раскраски графа
- •7.2.1. Алгоритм Вейссмана
- •7.2.2. Алгоритм, использующий упорядочивание вершин
- •Порядок проведения проводников
- •Трассировка соединений
- •Волновой алгоритм трассировки
- •7.4.2. Волновой алгоритм с кодированием по mod 3
- •7.4.3. Метод путевых координат
- •7.4.4. Метод Акерса
- •7.4.5. Оптимизация пути по нескольким параметрам
- •7.4.6. Методы повышения быстродействия волнового алгоритма
- •7.4.7. Многослойная трассировка
- •7.5. Лучевые алгоритмы трассировки
- •7.5.1. Алгоритм Абрайтиса
- •7.6. Канальные алгоритмы трассировки
- •7.7. Программа автоматической трассировки specctra
- •8. Графо-теоретический подход к синтезу топологии
- •Разбиение графа на планарные суграфы
- •8.1.1. Построение графа пересечений g’
- •8.1.2. Нахождение максимальных внутренне устойчивых множеств
- •8.1.3. Выделение из g' максимального двудольного подграфа h'
- •8.2. Нахождение гамильтонова цикла. Алгоритм Робертса-Флореса
- •Нахождение гамильтонова цикла
- •8.2.2. Построение графа пересечений g'
- •8.2.3. Построение семейства ψg '
- •9. Верификация. Основные понятия
- •9.1. Место верификации при проектировании вычислительных систем
- •9.2. Изоморфизм графов
- •10. Нахождение эйлерова цикла
- •10.1. Алгоритм Флери
- •10.2. Сравнение эйлеровых и гамильтоновых циклов
- •11. Эволюционные алгоритмы оптимизации
- •11.1. Генетические алгоритмы
- •11.2. Биоинспирированные методы в оптимизации
- •11.2.1. Муравьиные методы и алгоритмы
- •11.2.2. Пчелиные методы и алгоритмы
- •Заключение
- •Список литературы
- •Законы Мэрфи для программистов. Теория ошибок
- •Алгоритмы конструкторского проектирования эвм Учебное пособие по дисциплине «Конструкторско-технологическое обеспечение производства эвм»
5.4. Смешанный алгоритм компоновки
Смешанный алгоритм компоновки основан на идеях итерационного алгоритма, но для него не нужно начального разрезания. Он работает со всей матрицей соединений.
Алгоритм включает следующие шаги.
1. В матрице R выделяется подматрица порядка, равного числу вершин n1 в G1. Матрица R при этом разбивается на две подматрицы: R1 и R2.
2. По матрице R находится характеристики (xi).
3. Строится матрица B.
4. Определяется максимальный элемент bij≥0. Если в матрице В нет положительных элементов, по переход к п. 6. Переставляются вершины xi и xj. Получена матрица R’.
5. Последовательно выполняются п.п. 2-4 до тех пор, пока окажется для всех пар вершин bij0.
6. Из графа G удаляется часть G1, соответствующая подматрице R1.
7. Повторяется работа п.п. 1-6 с матрицами R2, R3, …, Rk-1.
8. Разбиение получено.
Продемонстрируем работу алгоритма на примере компоновки рис. 5.2.
1. В матрице R выделим подматрицу порядка n1 = 3 и вычислим (xi).
2. Для всех пар вершин разных кусков вычислим bij
3. Max b15 = 6. В матрице R переставляем строки и столбцы, соответствующие элементам x1 и x5 и пересчитываем (xi).
4. Все (xi) ≤ 0. Первый кусок сформирован X1={x2, x3, x5}.
5. Удаляем из графа G подграф G1.
6. В матрице R’ выделим подматрицу порядка n2 = 2 и вычислим (xi).
7. Для всех пар вершин разных кусков вычислим bij
8. Мах b16 = b47 =2. Поменяем местами x1 и x6.
9. Все (xi) ≤ 0. Сформирован второй кусок X2={x4, x6}. Оставшиеся вершины образуют третий кусок X3={x1, x7}.
Получено разрезание графа G, совпадающее с оптимальным (рис. 5.3 (б)).
6. Алгоритмы размещения элементов
6.1. Постановка задачи
Задачи размещения элементов и трассировки их соединений тесно связаны и при обычных ("ручных") методах конструирования решаются одновременно. В процессе размещения элементов уточняются трассы соединений, после чего положение некоторых элементов может корректироваться. В зависимости от принятой конструктивно - технологической и схемотехнической базы при решении этих задач используются различные критерии и ограничения. В результате получается точное пространственное расположение отдельных элементов конструктивного узла и геометрически определенный способ соединений выводов этих элементов.
Критерии качества и ограничения, связанные с конкретными задачами размещения и трассировки, опираются на конкретные конструктивные и технологические особенности реализации коммутационной части узла. Всю совокупность критериев и ограничений можно разделить на две группы в соответствии с метрическими и топологическими параметрами конструкции узлов и схем.
К метрическим параметрам относятся размеры элементов и расстояния между ними, размеры коммутационного поля, расстояния между выводами элементов, допустимые длины соединений и т.д.
Топологические параметры в основном определяются принятым в конкретной конструкции способом устранения пересечений соединений и относительным расположением соединений на коммутационном поле. К ним относятся: число пространственных пересечений соединений, число межслойных переходов, близость расположения друг к другу тепловыделяющих элементов или несовместимых в электромагнитном отношении элементов и соединений.
В конкретных задачах указанные параметры в различных сочетаниях могут быть либо главными критериями оптимизации, либо выступать в качестве ограничений.
Совместное решение задач размещения и трассировки представляет значительные трудности ввиду сложного характера взаимосвязи между отдельными параметрами конструкции и схем соединений. В связи с этим при алгоритмическом подходе к их решению они рассматриваются, как правило, раздельно. Сначала осуществляется размещение элементов, а затем трассировка межсоединений. Если необходимо, этот процесс может быть повторен при другом расположении отдельных элементов.
Основной целью размещения считают создание наилучших условий для последующей трассировки соединений при удовлетворении основных требований, обеспечивающих работоспособность схем.
В общем виде задачу размещения элементов узла описывают следующим образом.
Дано множество конструктивных элементов, связанных между собой в соответствии с принципиальной электрической схемой узла. Требуется разместить элементы на некотором плоском коммутационном поле (КП) таким образом, чтобы некоторый функционал достигал экстремального значения.
Исходными данными для размещения являются: данные о конфигурации и размерах КП (установка и крепление); количество и размеры элементов; схема соединений; ограничения на установку элементов.
Вариантами КП могут быть панель с проводными соединениями, печатная плата, подложка микросборки, кристалл БИС.
Основная сложность в постановке задачи размещения заключается в выборе целевой функции. Это связано с основной целью размещения, которую нельзя оценить без проведения трассировки. Особенностью критериев, используемых в задаче размещения, является их эвристический характер, т. к. все они косвенно учитывают условия трассировки. Классическим критерием является критерий суммарной длины соединений (СДС), который интегральным образом учитывает многочисленные требования, предъявляемые к расположению элементов и трасс их соединений. Это обуславливается рядом факторов:
уменьшение длин соединений улучшает электрические параметры схемы;
чем меньше суммарная длина соединений, тем, в среднем, проще их реализация в процессе трассировки;
уменьшение суммарной длины соединений снижает трудоемкость изготовления монтажных схем, особенно схем проводного монтажа;
данный критерий относительно прост с математической точки зрения и позволяет косвенным образом учитывать другие параметры схем путем присвоения весовых оценок отдельным соединениям.
Кроме СДС в САПР нашли применение следующие критерии:
расстояние между элементами, соединенными наибольшим числом связей;
число пересечений проводников на КП;
длина наиболее длинных связей;
число перегибов проводников;
число межслойных переходов;
параметры паразитных связей между элементами и проводниками;
равномерность распределения температуры по поверхности КП и др.
Всю совокупность алгоритмов размещения можно разделить на следующие основные группы:
алгоритмы решения математических задач, являющихся моделями задач размещения;
конструктивные алгоритмы начального размещения;
итерационные алгоритмы улучшения начального размещения;
непрерывно - дискретные методы размещения.
К первой группе относится, прежде всего, метод ветвей и границ для задачи квадратичного назначения, к которой при определенных упрощениях сводится задача размещения: набор позиций считается фиксированным, элементы рассматриваются как геометрические точки, схема соединений представляется взвешенным графом соединений.
Вторая и третья группы включают приближенные алгоритмы, в основном предназначенные для оптимизации размещения элементов в фиксированном наборе позиций.
Характерной особенностью конструктивных алгоритмов является то, что они создают размещение. Итерационные алгоритмы предполагают задание начального размещения.
Конструктивные алгоритмы используют последовательный или параллельно - последовательный процесс установки элементов в позиции при локальной оптимизации функции - критерия размещения.
В итерационных алгоритмах производится переразмещение элементов или их групп с целью минимизации выбранного критерия. Эти алгоритмы требуют существенных затрат машинного времени и используются для получения окончательного размещения.
Основной областью применения непрерывно - дискретных методов размещения являются конструкции, в которых позиции для установки элементов заранее не фиксированы. Исходной базой для построения алгоритмов данной группы являются непрерывные модели и механические аналогии задачи размещения.
