
- •Компьютерные технологии проектирования вычислительных устройств
- •Структура сапр
- •1. Математические модели конструкций и схем ву
- •Модель компонента
- •Модели электрических схем
- •Компьютерные технологии проектирования печатных плат в среде p-cad Создание символов компонентов
- •Конструкторско-технологические параметры печатных плат
- •Отверстия печатных плат
- •Стеки контактных площадок (Pad Stacks) и переходных отверстий (Via Stacks).
- •Создание на пп посадочных мест компонентов.
- •Создание схемы электрической принципиальной
- •2). Размещение модулей на мкп
- •Алгоритмы и модели компоновки ву
- •Критерии оптимизации при разрезании электрической схемы
- •1 , Если tf t(xj)
- •Итерационный алгоритм разбиения гиперграфа
- •Пример алгоритма типизации.
- •Покрытие функциональных схем модулями заданного библиотечного набора
- •Задача размещения модулей.
- •Размещение компонентов в регулярном монтажном пространстве
- •Размещение компонентов в нерегулярном монтажном пространстве
- •Алгоритм последовательного размещения
- •Метод силовых функций (непрерывно – дискретный алгоритм размещения)
- •Задача "перераспределения" выводов модуля
- •Подсчет изменения суммарной длины связей в итерационных алгоритмах
- •Трассировка электрических соединений
- •Математическая формулировка задачи трассировки электрических соединений.
- •Алгоритмы трассировки
- •Эвристический алгоритм трассировки. Двухлучевой алгоритм трассировки
Какую работу нужно написать?
Критерии оптимизации при разрезании электрической схемы
Рассмотрим такие критерии для схем, представленных в виде Моделей 1 и 2.
Модель1.
Исходные данные: мультиграф схемы G(X V), R = ||rij||NxN,
где N – число вершин мультиграфа,
- каждому элементу xiX приписан его "вес" pi > 0. "Вес" элемента м.б. связан с размерами элемента (занимаемая им площадь или объем), массой, мощностью теплового рассеивания, числом выводов элемента и т.д.
- "вес" блока Gg pgдоп (в простейшем случае – допустимое число модулей в блоке Ngдоп),
- допустимое число внешних выводов Kgдоп в блоке Gg (этот критерий связан с числом контактов предписанного схеме разъема).
Требуется: при заданных выше условиях скомпоновать модули xi X по блокам Gg, Gs (g, s =1,W) таким образом, чтобы количество межузловых соединений K=∑Kg было бы минимальным и выполнялись ограничения на формирование блоков.
Решение.
Введем матрицу переменных =|| ig ||NxW, в которой элемент
{
δgsf
1, если xi Xg
ig = = 0
Число внешних связей блока Gg определяется выражением
Kg
=
rij*ig*(1
- jg)
≤ Kgдоп.
Действительно, произведение ig*(1 - jg) = 1 только в том случае, если модули xi и xj находятся в разных блоках Gg и Gs, т.е. xi Xg, xj Xs.
Таким образом, критерий оптимизации – общее количество межблоковых связей – определяется выражением
K
=
rij*ig*(1
- jg)
(*)
Это выражение дополняется ограничивающими условиями:
ig
= 1 -
модуль xi
должен использоваться только один раз,
ig
= 1 -
только один
блок Gg
может содержать модуль xi.
ig*pi
≤ pgдоп
-
ограничение
на число модулей в блоке.
Модель 2.
Исходные данные: Схема в виде гиперграфа G = (Z T), ∆ = ||if||
{
δgsf
1 если xi X(tf)
if =
0
- каждому элементу xi X приписан его "вес" pi > 0. "Вес" элемента м.б. связан с размерами элемента (занимаемая им площадь или объем), массой, мощностью теплового рассеивания, числом выводов элемента и т.д.
- "вес" pgдоп блока Gg (в простейшем случае – допустимое число модулей в блоке Ngдоп),
- допустимое число внешних выводов Kgдоп в блоке Gg (этот критерий связан с числом контактов предписанного схеме разъема).
Требуется: при заданных выше условиях скомпоновать модули xi X по блокам Gg, Gs (g, s =1,W) таким образом, чтобы количество межузловых соединений
K=
было бы минимальным и выполнялись
ограничения на формирование блоков.
Решение.
Введем матрицу переменных =||ig||NxN, в которой элемент
{
δgsf
если xi Xg
ig =
0
Тогда задача разрезания схемы на блоки формулируется в виде задачи линейного программирования с ограничивающими условиями.
Минимизировать выражение
К =
igifjfjs
, xi
Xg,
xj
Xs,
tf
T(xi
xj)
Это выражение дополняется ограничивающими условиями:
ig
= 1 -
модуль xi
должен использоваться только один раз,
ig
= 1 -
только один
блок Gg
может содержать модуль xi.
ig*pi
≤ pgдоп
-
ограничение
на число модулей в блоке.
Последовательный алгоритм разбиения гиперграфа
Постановка задачи:
Задана электрическая схема в виде гиперграфа G = (Z T), Δ = ||if||NxM.
Требуется:
Множество вершин |X| = N гиперграфа разделить на два непересекающихся подмножества X1 и X\X1 так, чтобы минимизировать значение целевой функции
K
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsf
{
δgsfpf*gf
, f
= 1,M
1, если tf T(X1) 1, если tf T(X\X1)
pf = gf =
0 0
Произведение pf*gf = 1 только в том случае, если tf T(X1) и tf T(X\X1) или tf T(X1, X\X1).
К – число связей между двумя подмножествами вершин X1 и X\X1.
Решение задачи:
Допустим, что часть вершин из X уже вошла в подмножество X1.
Для любой вершины xj X\X1 введем некоторую оценку относительно уже сформированной части вершин в подмножестве X1. Для этого используем матрицу ||if||NxM , у которой
{
δgsf
{
δgsf
{
δgsf
{
δgsf