Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по САПР1.doc
Скачиваний:
80
Добавлен:
02.05.2014
Размер:
146.43 Кб
Скачать

Вопрос №11

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

Наборы типовых модулей включают в себя:

1) элементные модули, состоящие из логически несвязанных элементов многоцелевого назначения;

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

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

Математическая формулировка задачи покрытия – пусть задан набор модулей T= (t1,t2,…tn), гдеn– число типов модулей в наборе. Этот набор характеризуется матрицей А, равной [aij]mn, в которойaij– соответствует числу логических элементовiтипа в модулеjтипа, аm- общее число типов логических элементов во всех модулях, заданного набора.

Поэлементый состав заданной функциональной схемы характеризуется: , гдеbiчисло элементовi-типа в схеме.

Введем целочисленную переменную Xj, характеризующее количество модулей, необходимых для покрытия схемы.

В простом случае задачу отыскания покрытия с минимальным количеством модулей.

Тогда целевая функция примет вид: , гдеXjцелое число.

Для минимизации стоимости покрытия используют целевую функцию вида: ,Cjстоимость модулейjтипа.

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

Обычно логическую схему представляют ориентированным графом, множество вершин которого соответствует элементам схемы, а множество рёбер связям между элементами. Аналогично каждому модулю поставим в соответствие ориентированный подграф и в результате получим некоторое множество mориентированных подграфов, соответствующим модулем заданного набора. Задача покрытия формулируется как покрытие графаG= (A,X) подграфами из множестваM=(G`1,G`2…G`n).

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