книги из ГПНТБ / Штейн М.Е. Методы машинного проектирования цифровой аппаратуры
.pdfвающий этот максимальный поток. При |
этом часто |
в качестве критерия оптимизации выбора |
используют |
так называемую технологичность трассировки, которая
зависит от числа |
перегибов |
проводов |
на всем |
монтаж |
||
ном |
поле. Таким |
образом, |
задача |
трассировки |
сводит |
|
ся к |
построению |
всех трасс |
(если |
это |
допустимо) с ми |
|
нимальным числом перегибов проводов. Учет этого кри терия . оптимизации распределения возможен при применении лучевого алгоритма — модифицированного метода расстановки пометок. Основная идея его заклю чается в том, что пометку от источника получают не только узлы, связанные с ним дугой, не насыщенной пото
ком, |
но и все |
узлы, лежащие с ним |
на одной |
прямой, |
т. е. |
пометка |
с индексом источника |
находится |
как бы |
на луче, распространяющемся от данного узла во вза имно перпендикулярных направлениях по дугам, не на сыщенным потоком, до тех пор, пока он не .встретит на
сыщенную дугу или не пометит |
все узлы выделенных |
|
направлений. |
|
|
При распространении лучей от 'источника в каждом |
||
узле |
запоминается информация о |
направлении прихода |
и об |
узле, от которого произошло |
распространение лу |
ча. Эта информация 'используется на этапе восстановле ния трассы. Сама процедура восстановления трассы состоит в последовательном просмотре узлов в направ лении, обратном распространению луча, и в запомина
нии номеров только тех узлов, в |
которых меняется на |
правление луча. Эта процедура |
пошаговая и состоит |
в следующем. |
|
1-й шаг. Определяется направление и адрес узла, из которого был достигнут сток. Узел, соответствующий стоку, запоминается в списке трассы как исходный.
2-й шаг. Если этим узлом является источник, то он запоминается как последний в списке трассы, и процесс построения трассы заканчивается, в противном случае — переход к шагу 3.
3- й шаг. Запоминается в списке трассы узел, давший рассматриваемому пометку, т. е. узел, в котором прои зошло изменение направления луча. Далее переход к шагу 1.
При построении трассы можно учитывать и некото рые дополнительные ограничения. Так, например, широ ко распространенное ограничение на максимальную дли ну провода между электрическими контактами легко
202
может быть учтено, если пометки будут содержать ин
формацию |
о |
расстоянии |
между |
узлами. В |
этом |
случае |
в процессе |
построения трассы подсчитывается ее |
длина, |
||||
и если она на некотором |
шаге |
превышает |
допустимую, |
|||
то узлы исключаются из списка |
трассы, уничтожаются |
|||||
все пометки |
и строится |
трасса |
данного |
провода без |
||
учета пропускных способностей канала. При этом по метку получают все те узлы, расстояние которых до источника меньше предельного. Если сток получает по метку, то, значит, есть допустимый по длине вариант трассы. Он фиксируется в общем списке трасс. Затем в соответствии с ограничениями пропускных способно стей каналов из общего списка трасс удаляются те из них, кроме фиксированной, которые нарушают ограни чения пропускных способностей и обладают минималь ной длиной.
Процесс трассировки продолжается до тех пор, пока не будут получены все трассы либо не будет израсходо ван выделенный на решение лимит машинного времени.
Ясно, что в таком алгоритме порядок трассировки цепей существенно влияет на сходимость алгоритма. При этом разумное планирование конкуренции различ ных цепей на одни и те же каналы монтажного поля позволяет существенно повысить эффективность алго ритма. Основная идея такого планирования заключает ся в следующем.
Каждой из рассматриваемых цепей ставится в соот ветствие прямоугольник минимальной площади, охва тывающий все контакты (узлы) данной цепи. Эти пря моугольники наносятся на поверхность монтажного по ля в соответствии с размещением модулей, и каждому участку поля приписывается вес, равный числу прямо угольников, покрывающих данный участок. Затем каж дой цепи приписывается вес, равный минимальному значению веса участка поля, входящего в прямоуголь ник данной цепи. После этого порядок трассировки це пей определяется их упорядочением по уменьшению ве са, т. е. цепи, полностью принадлежащие областям с наибольшей плотностью проводов, будут трассировать ся в первую очередь.
Практика показывает, что упорядочение эффективно при жестких ограничениях на пропускную способность каналов и приводит к существенному увеличению числа проводников, проложенных на монтажном поле.
щ
7.5. Трассировка проводных соединений с учетом требований помехоустойчивости
При использовании ЦВМ для получения монтажной документации одной из важных и недостаточно иссле
дованных |
является |
проблема трассировки соединений |
с учетом |
требований |
помехоустойчивости. |
Ниже рассматривается указанная проблема, форму лируются и решаются наиболее важные из составляю щих ее задач для случая проводного монтажа панели, изображенной на рис. 7.5.1; монтажные соединения вы-
/ Z3
г1
Элемент
пространства.
Контакт
Разъемы
Рис. 7.5.1. Монтажная панель и заданная на ней плоскость |
RS. |
||||||
полняются |
по |
прямым, |
соединяющим |
соответствующие |
|||
контакты, |
или |
по определенным направлениям (кана |
|||||
лам). |
Принимается, что соединения |
прокладываются |
|||||
между |
-контактами, |
расположенными |
произвольным |
||||
образом на части плоскости, ограниченной |
прямоуголь |
||||||
ником |
панели |
(рис. 7.5. 1). Ограничений на |
число |
кон |
|||
тактов, |
объединяемых |
электрически, не |
накладывается, |
||||
но учитывается |
ограничение на допустимое |
число |
паек |
||||
к одному |
контакту. |
|
|
|
|
||
Для учета помех при трассировке сделан ряд упро щений: помехи на данном проводе определяются ариф-
204
метическим сложением «условных» шумов, наводимых остальными проводниками по отдельности (наихудшая ситуация, вероятность которой весьма мала); при рас чете «условного» шума используется эксперименталь ная зависимость уровня шума Um, приводящего к сра батыванию элементов ЦВМ, от длины I двух взаимодей ствующих проводов, разнесенных на расстояние d:
Um = f(l, d). |
(7.5.1) |
В дальнейшем Um будем называть |
допустимым шу |
мом. Эта зависимость позволяет учесть реальное взаи
модействие |
проводов |
без подсчета |
электростатической |
||||
и |
электромагнитной |
составляющих |
«наводимого» шума |
||||
по |
громоздким соотношениям, приведенным |
в [10]. По |
|||||
этому расчет помех |
с |
использованием |
(7.5.1) |
имеет от |
|||
носительный |
характер |
и может дать |
лишь |
ориентиро |
|||
вочное представление о помехоустойчивости полученных монтажных соединений. Однако простота машинной реализации метода оправдывает принятые допущения.
Кроме того, аналитические |
выражения, приведенные |
в [10], применимы лишь для |
анализа помехоустойчиво |
сти уже построенных трасс соединений при небольшом количестве последних и сами по себе не образуют ни какой процедуры построения этих трасс.
Заданные ограничения по помехоустойчивости вы полняются обычно разнесением взаимодействующих проводников в плоскости, использованием специальных кабелей и вынесением проводников в другую плоскость (объемный монтаж). Ниже предпринимается попытка решить задачу первым способом; там, где это невозмож но, предполагается использование второго или третьего.
Задача трассировки решается в предположении, что шумы в проводниках определяются только их относи тельным взаимным расположением. Временные соотно шения сигналов и шумов не учитываются.
|
Будем в дальнейшем цепью называть множество кон |
||
тактов устройства, электрически соединенных |
друг |
||
с другом. Участок цепи, соединяющий |
два контакта и |
||
не |
содержащий других контактов, |
назовем |
звеном. |
В |
качестве математического эквивалента электрической |
||
цепи удобно выбрать дерево (связный |
граф без циклов), |
||
тогда звено цепи представляется ветвью дерева |
(дугой |
||
графа). |
|
|
|
205
Исходными данными задачи являются множество {N} цепей устройства, контактам которых после разме щения ячеек на панели приписаны координаты в систе ме RS (рис. 7.5.1), и зависимость (7.5.1). Последняя учитывает свойства используемых элементов. Задача заключается в получении трасс всех соединений, задан ных множеством {Щ цепей с минимальной длиной Lj
каждой из них при уровне шума |
Uj в любой из цепей, не |
|||||
превышающем допустимого Um, |
т. е. в минимизации |
|||||
Lt= |
Е |
/ |
г - min, |
JG{N\, |
(7.5.2а) |
|
Ui= |
|
S |
2 |
Un<Um, |
(7.5.26) |
|
|
|
|
} ' e { / } t |
|
|
|
где {/}j — множество |
звеньев j-й цепи; UM— |
величина |
||||
шума, наводимого |
k-я |
цепью |
в |
t-м звене /-й |
цепи; Uj |
|
по (7.5.26) выражает суммарную величину шума, наве денного в /-Й цепи всеми остальными цепями из {N}.
Требование минимизации длины монтажных соеди нений обусловлено прежде всего необходимостью умень шения реактивных нагрузок на элементы, что оказывает влияние на быстродействие устройств.
Анализ зависимостей вида (7.5.1) для различных ти пов элементов ЦВМ показывает, что с точки зрения взаимного влияния монтажных соединений все цепи цифровых устройств можно разделить на три группы.
Группу А |
составляют |
все цепи, включающие |
выходы |
«мощных» |
элементов; |
группу В — цепи, включающие |
|
входы «чувствительных» элементов, и группу |
С — про |
||
чие цепи. Практически |
для обеспечения помехоустойчи |
||
вости монтажа оказывается достаточным учитывать вза имное влияние цепей групп А и В.
Соотношения (7.5.2а), (7,5.26) иллюстрируют основ ные проблемы машинной трассировки проводных соеди
нений: 1) выбор |
наилучшей |
очередности |
трассировки |
|||||
цепей; 2) отыскание минимального в каком-либо |
смыс |
|||||||
ле |
связывающего |
дерева для каждой цепи, являющего |
||||||
ся |
для нее |
монтажной |
трассой. Для |
решения |
первой |
|||
проблемы |
авторы |
не видят |
в настоящее |
время |
иного |
|||
пути, чем использование |
эвристических |
алгоритмов. |
||||||
Здесь предлагается следующий алгоритм, учитываю щий соотношение количества цепей различных типов
206
в цифровой аппаратуре (10—15% «мощных» цепей, 50—70% «чувствительных», остальное — прочие цепи). Вначале для всех цепей типа В (чувствительных) стро ятся минимальные деревья, после чего на панели зада ется «поле чувствительности», характеризуемое количе
ством чувствительных проводов |
F(R,S), |
приходящихся |
на элементарный квадрат (R,S) |
плоскости RS. Затем |
|
прокладываются трассы всех цепей типа А (мощных) таким образом, чтобы они по возможности обошли уча
стки |
панели, насыщенные «чувствительными» |
провода |
|||||||
ми. |
Это |
достигается |
удлинением |
трасс |
цепей |
типа А. |
|||
Соответствующее |
соотношение для у'-й цепи можно запи |
||||||||
сать следующим |
образом: |
|
|
|
|
||||
F = |
% |
Fi(R, S t r a i n |
при |
Lj<MLoi, |
|
(7.5.3) |
|||
|
|
€={' Ь |
|
|
|
|
|
|
|
где |
L0j — минимально |
возможная |
длина |
трассы, а М — |
|||||
'Коэффициент допустимого удлинения трассы. |
|
||||||||
Теперь трассы цепей типа В проверяются на помехо |
|||||||||
устойчивость. Для этого по полученным |
ранее |
трассам |
|||||||
мощных |
цепей |
составляется |
с использованием |
зависи |
|||||
мости (7.5.1) «поле шумов», характеризуемое средней величиной шума U(R, S), наведенного на элементарный квадрат (R, S) плоскости RS близлежащими мощными цепями. Для каждой из трасс цепей типа В подечитывается суммарная величина шума, наведенного в ней «полем шумов»; цепи, для которых не выполняется со отношение (7.5.26), корректируются. Рассмотрим под робнее названные этапы решения задач трассировки.
Как уже указывалось, первый этап начинается с по строения минимальных деревьев для цепей типа В. Из вестные (6, 11] алгоритмы построения минимальных свя зывающих деревьев в нашем случае не могут быть при менены по следующим причинам: в них отсутствует ограничение на число дуг, инцидентных одному узлу де рева (практически же число паек на один контакт всег да ограничено). Кроме того, большое число узлов в си стеме связывающих деревьев предъявляет исключитель но жесткие требования к реализуемости алгоритма на ЦВМ.
Поэтому предлагается следующий приближенный алгоритм. Для всех цепей типа В в произвольной после довательности строятся минимальные связывающие де-
20 7
ревья. Будем использовать известную формулировку задачи, предложенную Нримоы [11], и принятую там же терминологию, за исключением дополнительного ограни чения, устанавливающего, что любому из я узлов связы вающего дерева может быть инцидентно не более т дуг. Принципы построения минимальных связывающих деревьев с учетом указанного ограничения можно сфор мулировать следующим образом:
1. Всякий изолированный узел соединяется с ближай шим, не соединенным с т другими узлами.
2. Всякий изолированный фрагмент соединяется крат чайшей дугой с ближайшим узлом, не соединенным cm другими узлами.
Применение этих принципов к исходному множеству узлов {X} дает весьма эффективный алгоритм построе ния дерева, и хотя доказать минимальность последнего уже нельзя, все же практически результаты оказывают
ся достаточно близкими к минимальным. На |
рис. |
7.5.2,а |
|
приведено |
исходное множество {1 —10} узлов, |
а на |
|
рис. 7.5.2,6—соответствующая ему матрица |
расстояний |
||
А = (dij); |
в этом примере т = 2. |
|
|
Процедура построения минимального связывающего дерева состоит из нескольких итераций. На первой в каждом у'-м столбце матрицы отыскивается минималь ный элемент
( f l * j )i = m i n ( a j i ) , i = l , 2 , . . . , т, |
(7.5.4) |
т. е. для каждого узла из множества {X} отыскивается ближайший сосед (рис. 7.5.2,в). Если в 1-й столбце мини
мальным оказался |
элемент ац, а в у'-м — элемент |
ац, то |
||
в последнем |
выбирается |
другой, минимальный |
после |
|
вычеркивания |
ац, |
элемент |
спи. Множество {a*j}i, |
содер |
жащее п элементов, упорядочивается по возрастанию
(a*j), |
и из него |
поочередно |
выбираются |
все |
элементы |
|||||
(a*i)i |
( Р и с - |
7.5.2,в, д). |
Узлам |
i |
и у, |
соединяемым-соот |
||||
ветствующей |
a*j ветвью (рис. |
7.5.2, д), |
присваивается |
|||||||
метка |
р (номер |
фрагмента), |
а |
в соответствующие |
счет |
|||||
чики |
числа инциденций |
заносятся единицы (шаг 1 ите |
||||||||
рации I на рис. 7.5.2,д). |
|
|
|
|
|
|
||||
Если при |
выборе очередного |
(a*j)i оба |
узла |
соответ |
||||||
ствующей дуги |
имеют |
одинаковые |
метки, |
то |
дуга |
как |
||||
образующая цикл отбрасывается. При выборе очеред ной дуги для соединяемых ею узлов прежде всего про веряется, не достигло ли число инциденций значения т;
208
|
|
|
|
|
|
|
|
|
123U56789 |
|
|
W |
||||||
|
|
|
|
|
|
|
|
1 |
щ |
24 9 17152512736 32т |
||||||||
|
|
|
|
|
|
|
|
г |
9 |
%щ |
38231540253918 |
|||||||
|
|
|
|
|
|
|
|
Z4 |
|
25 |
||||||||
|
|
|
|
|
|
|
|
ъ |
|
23 |
|
16 7 192128\2429 |
||||||
|
|
|
|
|
|
|
|
и |
173816 |
1832 153923 19 |
||||||||
|
|
|
|
|
|
|
|
5 |
1523 7 18 |
1417221826 |
||||||||
|
|
|
|
|
|
|
|
6 |
25151932 |
щ |
щ 30112638 |
|||||||
|
|
|
|
|
|
|
|
7 |
27 |
*d |
21151730% |
51 9 |
в |
|||||
|
|
|
|
|
|
|
|
в |
|
|
||||||||
|
|
|
|
|
|
|
|
9 |
36252839221131% 2538 |
|||||||||
|
|
|
|
|
|
|
|
Ю |
323924231826 9 25% 14 |
|||||||||
|
|
а) |
|
|
|
|
|
|
344829192638 8 38 14 |
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
I итерация |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
v 5) 1-3(9) |
|
v5)6-8(11) |
|
|
|
|
|
|
i] итераций |
|
||||||||
-4h2-&flSf v2) 7-10(8) |
|
|
v i)i-i+ (17) |
|
v |
5)8-2 (25) |
||||||||||||
v 1)3-5(7) |
|
M$S~6itt7 |
|
|
л)г |
|
t(3<*} |
-J)а |
<*(еэ> |
|||||||||
9)4-7(15) |
V 4) 9-7(9) |
|
|
v 2)4-10(10) |
6) 10-1(34) |
|||||||||||||
v 6)5-6(14) |
|
7) 10-9(14) |
|
|||||||||||||||
|
|
|
|
|
|
|
|
|
г) |
|
|
|
||||||
|
|
|
6) |
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
Т итерация |
|
|
|
|
|
В итерация |
|
|||||||
|
|
Число |
Номер фрагмента |
Число |
номерфра |
|||||||||||||
|
|
гмента |
||||||||||||||||
|
|
инциОенций |
|
|
(метка) |
|
|
|
анцад. |
(метка) |
||||||||
|
Ж |
1 2 3 |
4 5 6 |
1 |
2 |
3 |
4 |
6 |
|
6 |
1 2 |
5 |
1 |
2 |
5 |
|||
|
1 |
|
1 |
|
|
|
а |
|
|
|
|
|
2 |
|
1 |
а. |
|
а. |
ины- |
2 |
1 |
2 |
|
а |
|
а. |
|
|
|
|
|
1 2 |
а |
а |
|||
4 |
|
|
|
|
|
|
|
|
|
|||||||||
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
верш |
5 |
1 |
|
2 |
а |
|
|
|
|
|
а |
|
|
|
|
|
|
|
6 |
1 |
|
1 2 |
|
|
|
|
|
|
а |
|
|
|
|
а |
|
||
номер |
7 |
|
2 |
|
|
|
|
-е- |
а |
|
|
г |
|
а |
||||
8 |
|
|
1 |
|
|
|
|
|
|
|
|
|||||||
9 |
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
а |
|
|
|
10 |
J |
|
|
|
|
|
|
|
|
|
|
|
2 |
|
|
а |
|
Рис. 7.5.2. Построение минимального связывающего дерева для мно жества узлов {1—10}.
14—230
если достигло — то с таким |
узлом |
уже не |
может соеди |
||||
ниться |
пи одна |
дуга. |
|
|
|
|
|
При |
соединении |
двух |
изолированных |
фрагментов |
|||
происходит поглощение одного фрагмента |
другим (на |
||||||
пример, |
поглощается |
фрагмент |
со старшей |
меткой). |
|||
В результате |
выполнения |
первой |
итерации |
отдельные |
|||
подмножества 'близко расположенных узлов оказывают ся объединенными в изолированные фрагменты, иногда
все |
узлы оказываются |
связанными, |
но чаще |
этого не |
|||||
происходит. В |
этом случае |
из |
матрицы |
расстояний |
ис |
||||
ключаются все |
столбцы и строки, соответствующие узлам, |
||||||||
имеющим т 'инциндентных дуг, и все |
элементы |
(a*j)i, |
|||||||
выбранные на |
первой |
итерации. |
|
|
|
|
|||
|
Затем выполняется |
вторая |
итерация |
алгоритма, |
поч |
||||
ти |
полностью |
аналогичная |
первой. |
Отличие |
состоит |
||||
в том, что при |
получении |
множества |
|
{a*j}^ из |
каждого |
||||
столбца дополнительно исключаются элементы, соответ
ствующие дугам одного фрагмента (рис. |
7.5.2,г, д). Это |
|
обеспечивает соединение кратчайшими |
из |
возможных |
дуг изолированных фрагментов (применение |
принципа |
|
2). Алгоритм заканчивает работу, когда |
все узлы исход |
||||
ного множества |
{X} |
оказываются |
связанными |
(всем |
|
присваивается |
одна |
метка, как |
это |
видно из |
рис. |
7.5.2,(5). |
|
|
|
|
|
Описанный алгоритм проверялся вручную на боль шом числе примеров с т = 2, 3 и п, достигавшим не скольких десятков; не было обнаружено ни одного при мера, для которого алгоритм не сошелся бы после вто рой итерации. Близость результата к минимуму интуи тивно ясна из описания процедуры и, кроме того, может быть проверена получением нижней оценки длины дере ва. Такой нижней оценкой, очевидно, будет длина дере ва, полученного по алгоритму Прима, если снять огра ничение на число инциденций узлов. Сравнительная эффективность алгоритма Прима [ill] и приведенного выше иллюстрируется рис. 7.5.2,а (пунктиром показано связывающее дерево, полученное итеративным наращи ванием изолированного фрагмента [II]). Суммарная длина дерева, построенного по алгоритму Прима, равна 142, а по приведенному алгоритму 119.
После построения минимальных связывающих де ревьев для цепей типа В составляется «карта чувстви тельности» панели устройства. Эта операция состоит в простом просмотре дуг всех деревьев для цепей типа В
215
и подсчете суммарного числа проводов F(R,S), |
пере |
|||
секающих -каждый элемент |
(R,S). |
|
|
|
Заключительной и |
весьма важной |
частью |
первого |
|
этапа является прокладка трасс цепей |
типа А |
на «кар |
||
те чувствительности». |
Для |
каждой из |
цепей |
строится |
связывающее дерево, дуги которого представляют собой трассы, удовлетворяющие соотношению (7.5.3). При этом описанная выше процедура построения минималь ного связывающего дерева используется лишь для опре деления очередности пар контактов, для которых на дан ной итерации прокладывается трасса.
Построение трассы, соединяющей очередные два кон такта цепи, осуществляется с помощью усовершенство ванного волнового алгоритма [12, 13], описанного ниже.
Ка.к известно [12, 13], волновой алгоритм для плос кости RS, разделенной на большое число элементов, требует большого времени счета и значительного объема памяти для хранения всех допустимых путей. Поэтому здесь предлагается учесть некоторые особенности рас пределения числа «чувствительных» проводов F(R,S) на плоскости, имеющие место в большинстве практиче ских случаев и существенно облегчающие решение зада чи. На рис. 7.5.1 показан примерный вид панели устрой
ства и наложенной на него |
плоскости |
RS. Оказывается, |
||||||
что значения функции |
F(R,S) |
распределены |
на плоско |
|||||
сти RS |
неравномерно, |
а именно: множества |
элементов |
|||||
с относительно |
большими |
F(R,S) |
образуют |
линейные |
||||
конфигурации |
(такие |
конфигурации |
элементов |
обра |
||||
зуются |
в местах плоскости, |
соответствующих |
разъемам |
|||||
панели). |
|
|
|
|
|
|
|
|
Нетрудно убедиться в том, что указанные неоднород |
||||||||
ности |
распределения |
F(R,S) |
на |
плоскости при |
работе |
|||
модифицированного волнового алгоритма обусловят не избежное «вытеснение» трасс в «каналы» с относитель
но |
малыми значениями F(R,S). |
Учет |
этого обстоятель |
||
ства позволяет |
построить процедуру |
получения |
трасс |
||
по |
принципу |
«укрупнения» |
элементов плоскости |
RS. |
|
В |
новой плоскости TU узлами, через |
которые должны |
|||
пройти трассы, являются пересечения «каналов», а ду гами—сами «каналы» (в прежней плоскости RS узлы находились в центрах элементов, а дугами служили ли нии, соединяющие центры двух соседних элементов).
Вес FZ{T,U) каждой дуги т определяется как сред нее значение F(R,S) для всех элементов соответствую-
14* |
211 |
