Опубликован: 20.01.2011 | Уровень: для всех | Доступ: свободно | ВУЗ: Московский государственный открытый университет им. В.С. Черномырдина
Лекция 19:

Компоновка модулей. Методы разбиения электрических схем на функционально законченные модули

< Лекция 18 || Лекция 19: 123 || Лекция 20 >
Аннотация: Рассматривается методика решения важных задач конструкторского проектирования - разбиение/компоновка электрической схемы на функциональные части.
Ключевые слова: электрическая схема, конструирование, компоновка, ПО, элемент, базис, разбиение схемы, ограничения, площадь, критерии, минимум, унификация, объём, внешнее соединение, обратная связь, стоимость, коррекция, класс, логическая схема, функциональная группа, полнота, избыточность, компоновка схемы, математическая модель, мультиграф, пересечение множеств, объединение, подмножество, сечение, граф, разбиение множества, инцидентность, отношение, внутренние ребра, разбиение, целочисленное программирование, последовательный алгоритм, итерационный алгоритм, вершины графа, перестановка, внешние ребра, экстремум, целевая функция, алгоритм, оптимизация, математическое программирование, метод ветвей и границ, дерево решений, поиск, затраты, функциональная схема, представление, мощность множества, вершина, множество вершин, подграф, генератор, Неориентированный граф, смежность, матрица смежности, локальная степень вершины, внутренние связи, улучшение, показатели качества, связь, числа связности, значение, равенство, связность

Показать на конкретном примере решение задач разбиения электрической схемы.

19.1. Общая постановка задачи

К первоочередной задаче конструирования относится компоновка узлов, т.е. распределение схемы по конструктивно-функциональным узлам.

РЭС в общем случае всегда содержит иерархию конструктивных частей (см. рис. 19.2).

Многоуровневый процесс компоновки может выполняться "снизу вверх" или "сверху вниз".

В первом случае осуществляется последовательная компоновка узлов возрастающей сложности (например: плат, панелей, стоек.), а во втором - узлы высшего уровня последовательно разбиваются на узлы меньшей сложности.

В ходе указанного процесса определяется состав каждого конструктивного узла, а также схемы внутриузловых и межузловых соединений.

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

Узлы составляют конструктивный базис устройства и, как правило, функционально унифицированы.

Среди задач компоновки узлов можно выделить два характерных класса.

К первому относятся задачи компоновки конструктивных узлов, в которых осуществляется разбиение схем на узлы с учётом таких ограничений, как количество элементов в узлах, число внешних выводов на узлах, суммарная площадь, занимаемая элементами и соединениями, и количество узлов.

Главными критериями для такого разбиения являются: минимум числа образующихся узлов, минимум числа межузловых соединений или внешних выводов на узлах.

Такие задачи возникают при разбиении схемы устройства на узлы большой степени сложности, к которым не предъявлены требования в отношении схемной унификации. Прежде всего, это задачи распределения отдельных печатных плат (ТЭЗов) по панелям в ЭВМ, распределения микросборок по печатным платам и разбиение схем на БИСы частичного применения.

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

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

В ряде случаев при компоновке узлов особое внимание должно быть уделено определённым соединениям. Это, прежде всего, касается минимизации задержек в распространении сигналов. Как правило, переход соединительных цепей с одного уровня на другой влечёт за собой уменьшение быстродействия схем или необходимость введения усилительных каскадов. Поэтому при компоновке целесообразно локализовать некоторые цепи в пределах одного узла, например, цепи обратных связей в логических схемах. С другой стороны, определённые сигналы должны быть доступны для контроля неисправностей и поэтому должны иметь внешние выводы. Целесообразно может быть также создание и повторение отдельных элементов и сигналов с целью минимизации задержек или сокращения необходимого числа внешних выводов. Решение последней задачи особенно важно при реализации устройств на основе БИС, поскольку удельная стоимость одного внешнего вывода в таких схемах, измеряемая требуемой площадью реализации, становится эквивалентной стоимости десятков и сотен комп онентов. В таких ситуациях может потребоваться коррекция отдельных фрагментов или даже всей схемы в целом.

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

Их называют задачами компоновки конструктивных узлов.

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

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

В дальнейшем будем считать, что набор типовых модулей задан.

Основными критериями при компоновке схем типовыми модулями являются:

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

В качестве ограничений принимают конструктивные и функциональные характеристики типовых модулей.

После проведения компоновки узлов электронного устройства решаются задачи размещения элементов в конструктивном объёме этих узлов и трассировки межсоединений.

19.2. Математическая формулировка задачи разбиения

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

Тогда задача компоновки формулируется следующим образом.

Задан мультиграф G (Х,U).Задача компоновки формулируется как задача разбиения или "разрезания" этого графа на отдельные куски G_{1}(Х_{1}, U_{1})……... G_{ i }(Х_{ i}, U_{i})……. G_{k }(Х_{ k }, U_{k }) так, чтобы число рёбер, соединяющих эти куски, было минимальным, т.е. необходимо минимизировать величину

\sum\limits_{i=1}^{l}{\sum\limits_{i=1}^{l}{ U _{i j }}},\;\;i\ne j ( 19.1)

где U _{i j} - множество ребер, соединяющих куски G_{ i }(Х_{ I }, U_{i}) и G_{ j }(Х_{ j }, U_{ j}).

Совокупность частей В (G) называется разбиением (разрезанием) графа G = (Х, U), если

\forall G_{ i }\in В (G) (G_{ i }\ne \varnothing ), i\in I; \\
\forall G_{i }, G_{j} \in В (G) [G_{i }\ne G_{j}  \Rightarrow  Х_{i} 
I\limits_{i\in I}Х_{j} = \varnothing  \wedge  ( U_{i } I U_{j} = U_{ i j }\vee U_{i j} I U_{j} = \varnothing )];\\
\bigcup\limits_{i\in I}G_{ i  }= G. ( 19.2)

Другими словами, совокупность В (G) = \  G_{ 1 }, G_{2 }, …, G_{i },… ,     G_{l}\ является разбиением графа G, если любая из этой совокупности не пустая, если для любых двух частей из B (G) пересечение множества вершин пусто, а пересечение множества ребер может быть не пустым, а также, если объединение всех частей в точности равно графу G.

В выражении (19.2) U_{ i j} определяет подмножество рёбер U_{ i j} \subseteq  U, попадающих в разрез (сечение) между частями G_{ i } и G_{j} графа G.

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

Пусть, граф G разбит на части G_{ 1 }, G_{ 2,} …………..G_{ l }.

В соответствии с этим разбиением множество рёбер U графа G можно представит в виде:

U = U_{ 1 }\cup U_{ 2 }\cup  ………. \cup U_l = \bigcup\limits_{i=1}^{l}{ U _{i}}. ( 19.3)

Тогда каждое подмножество ^{ } U_{ i } можно представить как:

U_{ 1  }=  U_{ 1 1  }\cup U_{ 1 2  }\cup  ………. \cup  U _{1 i}  ……… \cup  U_{ 1 l};\\
U_{ 2  }=  U_{ 2 1  }\cup U_{ 2 2  }\cup  ………. \cup  U _{2 i} ………. \cup U_{ 2 l};\\ 
U_{ i}  =  U _{ i1  }\cup  U_{ i2  }\cup  ………. \cup  U_{ i i}   ……..\cup  U_{ il}; \\
U_{ l }=  U_{ l 1  }\cup U_{ l  2  }\cup  ………. \cup   U_{l  i}  ………\cup  U_{ ll}, ( 19.4)

где U_{ i   } - подмножество всех рёбер, инцидентных вершинам Х_{ i} части графа G_{ 1} ; U_{j i} - подмножество рёбер, соединяющих подмножество вершин Х_{ i} внутри G_{j } - между собой; U_{ i j}            (U _{j i} ) - подмножество рёбер, соединяющих части G_{ i } и G_{j} между собой.

Отношение суммарного числа внутренних рёбер (рёбер подмножеств U_{i i}) к суммарному числу соединяющих рёбер (рёбер подмножеств U _{i j} ) называется коэффициентом разбиения \Delta(G) графа G:

\Delta G = \sum\limits_{i=1}^{l}{ U _{i i}    0,5}  \sum\limits_{i=1}^{l}{\sum\limits_{j=1}^{l}{ U _{i j} }}  =  
\sum\limits_{i=1}^{l}{ U _{i i}   / K} . ( 19.)

Коэффициент разбиения \Delta  (G) служит для оценки разбиения графа G на части. Его можно также использовать для сравнения разбиения графов.

Под оптимальным разбиением графа G = (X, U) понимают такое разбиение B (G), при котором выполняется условие

K = \min, ( 19.6)

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

< Лекция 18 || Лекция 19: 123 || Лекция 20 >