This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
\ }
Команда содержит наименование свойства и его значение. Значением могут быть спецификаторы, числа или строка символов, в зависимости от того, какие требуются свойства. Команда дает возможность присваивать как стандартные свойства, так и пользовательские для одного или более выводов компонента. При этом необходимо указать имя компонента и имя каждого вывода или же использовать опцию selected для присвоения свойств ранее выбранным выводам. Каждое свойство имеет имя и значение. Значение свойства может быть числом, идентификатором, строкой символов. Стандартные свойства для выводов состоят из: Force_to_terminal_point <значение свойства> Exit_direction <значение свойства> Свойство можно присвоить в системе Specctra или в файле проекта, но если оно присвоено в файлег то его нельзя изменить или удалить в системе Specctra. Свойства присваиваются только индивидуальным выводам конкретного компонента. Эти свойства имеют приоритет перед свойствами для образа вывода (image pin). Примеры команд
Component_pin_property C81 2 (uprp_l 0.02) Component_pin_property 116301 3 5 9 (uprop_2 xyz)
Component_property Эта команда присваивает физические, электрические и другие свойства компонентам. {component_propertx)—1
I—|
112
\<property_value>\
^^П—
Команды автоматической трассировки Она позволяет присваивать стандартные или пользовательские свойства компонентам. Стандартные свойства содержат несколько физических свойств и электрических параметров. К физическим свойствам относятся тип, высота, рассеиваемая мощность. Как правило, свойства содержат идентификатор свойства и значение. Возможно выбрать компоненты перед использованием этой команды или указать идентификатор компонента. С помощью команды report (отчет) можно получить информацию о свойствах, присвоенных всем компонентам в проекте. Возможно также получение данных о рассеиваемой мощности для всей платы. При присвоении или удалении свойств компонентов система Specctra фиксирует эти изменения при использовании команды write, чтобы запомнить файл размещения или сессионный файл. Однако в этих файлах не фиксируются свойства компонентов, заданные командой Image_property. См. также: Autodiscrete Autorotate
1
Define room Initplace Interchange
I
Place_rule Room_rule Select component
.
.
'
.:•
•
,
Unplace
\ Примеры команд Примеры ниже присваивают свойства поименованным компонентам. Component jproperty C81 (type capacitor) (heigth 0.0280) Component_property U28 U40 (heigth 0.1800) Component_property Rl R2 R5 (power_dissipation 500) Component_property Ul U2 (value 10k) Примеры ниже присваивают свойства всем выбранным компонентам. Component_property (type capacitor) (value 0.5pf) (power_dissipation 0.5) Componentjproperty (heigth 0.05) Дескриптор физических характеристик присваивает тип, высоту, вес и мощность рассеивания для свойств или образов компонентов.
113
Глава 4
Type — определяет, какие маленькие компоненты выбираются для автоматического размещения. Маленькими компонентами считаются компоненты с тремя или менее выводами, в том числе: Capacitor, сюда относятся только маленькие конденсаторы (которым присвоены соответствующие свойства и те конденсаторы, которые имеют выводы, подключенные к цепям земли или питания, и которым не присвоены резистивные или дискретные свойства). / ' Discrete, к которым относятся компоненты с малыми размерами. Resistor, к которым относятся только маленькие резисторы. Small, к которым относятся все маленькие компоненты. Large, к которым относятся все большие компоненты. По умолчанию применяется тип Small. Heigth — определяет диапазон высот компонента. Значение -1 означает, что высота не определена. Это значение присваивается компоненте по умолчанию. Power_dissipation — присваивается максимальная мощность рассеивания для подсчета общей мощности рассеивания всех компонентов в комнате. Значение -1 установлено по умолчанию и означает отсутствие этой информации. См. также команды define room и room_rule для дополнительной информации об ограничениях при размещении в комнатах. ' Дескриптор электрических характеристик компонентов определяет электрические свойства индивидуальным компонентам.
Эти свойства не имеют функциональной важности для системы Specctra, но могут быть необходимы для других целей в основной системе проектирования.
114
Команды автоматической трассировки
Cost Эта команда устанавливает цены трасс и перекрывает внутреннюю ценовую таблицу трассировщика.
Way — стоимость прокладки трассы в неправильном направлении. Например, стоимость прокладки горизонтального сегмента трассы на слое для вертикальных трасс. • •' ' • \ -•'' •'" • • ' ' • • ' г-'--Cross — стоимость конфликта пересечения трасс. !
Via — стоимость использования ДСО. Off_grid — стоимость трассировки вне дискретной сетки. OFF_center — стоимость подключения вывода к проводнику вне центра вывода. Side_exit — стоимость подключения трассы к выводу на длинной стороне. Squeeze — стоимость создания нарушения зазора между трассой и ДСО. Значение стоимости устанавливается с помощью дескриптора стоимости. Он может иметь идентификатор или числовое значение: Идентификатор стоимости
Численное значение
Forbidden
100
Heigth
50
Medium
25
Low
8
Free
О
Layer — стоимость использования именованного слоя для трассировки, при этом задаются значения типа (Туре), который может быть length или way.
115
Глава 4
:
'.
.'•:••;.
.-••••'•.
Length — стоимость любой трассы на слое. Way — стоимость неверного направления трассы на слое. Вы можете перекрыть внутренние установки стоимости и ввести их фиксированные значения с помощью этой команды, хотя это не рекомендуется. Для того чтобы вернуться к предопределенным значениям стоимости, можно ввести команду cost way -1. Для запрета использования ДСО можно .выдать команду cost via forbidden, хотя более эффективный путь запрета ДСО — команда Unselect all vias. Команда cost off_grid_forbidden игнорируется, если центр пленарной КП лежит вне дискретной сетки. Примеры команд Cost way_f orbidden Cost via low Cost layer LI forbidden Cost layer L2 higth (type way)
Critic Эта команда помогает улучшить качество трассировки без перекладки трасс. Она проверяет наличие ступенек и удаляет выступы.
Команда подобна команде clean, но отличается одним существенным аспектом. Команда clean полностью перекладывает каждый провод, а команда critic пытается осуществить локальные улучшения топологии проводников, при этом она выполняется значительно быстрее.
Пример команды Critic
116
Notch and bend point removal
is changed to
Stairstep removal
is changed to
Команды автоматической трассировки
Define commands Эти команды создают классы, группы, наборы групп, дифференциальные пары, таблицы и регионы. Они также используются для задания ранжировки цепей, отношений классов, факторов шумов для попарных слоев. Индивидуальные команды define рассматриваются в соответствующих разделах, примеры этих команд приведены ниже: -..'
Define bundle Define class Define class_class Define group Define group_set Define layer_noise_weight Define net Define padstack
•
Define pair Define region Примечание. • Информация по заданию зон запрета приведена в команде define keepout.
Define bundle Эта команда привязывает цепи к именованным жгутам (набору проводов) для дальнейшей трассировки с сохранением для всех трасс подобной топологии. <*WV>Cb—-
Bundle — эта опция создает или редактирует жгут, который включает информацию о заданных расстояниях и слоях.
117
Глава 4 Gap — опция специфицирует заданные расстояния между проводниками, которые трассируются как жгут. Эта опция может затрагивать один или более слоев, поэтому можно специфицировать многократные зазоры. Layer — идентифицируются слои, для которых заданы зазоры. Nets — указывает цепи посредством идентификатора цепи или использует выбранные (selected) цепи. Add_net — добавляет один или несколько цепей в существующий жгут. Эта опция может не содержать информации о зазорах. Remove_net — удаляет цепь или цепи из заданного ранее жгута. Вообще, возможно удаление всех цепей из жгута, после чего в пустой жгут можно просто добавить цепи. Эту команду удобно использовать для идентичной топологии трасс для двух или более цепей. Порядок размещения идентификаторов цепей в жгуте не влияет на порядок их трассировки, поскольку этот порядок определяется физическим размещением КП жгута. Примеры команд Define (bundle addr_bundle (gap 10 (layer ml m2)(nets addrl addr2 addr3)) Define (bundle addr_bundle (add_net addr4)) Define (bundle addr_bundle (remove_net addrl))
Define class Эта команда присваивает имя группе цепей. Как вариант, возможно присвоение правил для определяемого класса. Class — группа цепей, которой присвоено имя. .
.
.
1
Rule — присваивает одно или более правил в текущей команде. *
1
Circuit — присваивает правила для цепей в текущей команде. Дескрипторы Rule и Circuit можно использовать для задания зазоров, прокладки трасс, временных характеристик, наводок и шумов. Имя класса должно быть уникальным. Цепь может состоять в более чем одном классе, но если классы конфликтуют, то применяется правило из последнего определенного класса. Определение класса. Формирование класса удобно для присвоения различных правил, применяемых ко всем цепям в классе, в соответствии с иерархией классов. Опции Add_net и add_selected_net позволяют добавить цепь в класс. При этом существующие цепи в классе сохраняются, а существующие для них правила
118
Команды автоматической трассировки применяются к вновь добавленным цепям. Для удаления цепи из класса используются опции remove_net и remove_selected_net. Для расформирования класса применяется команда disband.
Примеры команд Define (class C2 sig2 sig3 sig4) — эта команда создаст класс С2, содержащий 3 цепи. Define (class СЗ sig5 sig6 (circuit (use_via v25))) — эта команда создаст класс СЗ и присвоит правило использования для этогрй«лаеса ДСО типа v25. Define (class С4 sig5 sig6 (rule(width 0.01)(clearance 0.008))) — команда создаст класс С4 и присвоит ширину трасс и зазор. Дескриптор цепей определяет цепи в классе.
Composite — определяет список имен цепей, которые можно представить параметрами <начальный индеко, <конечный индеко, <шаг> и, возможно, пара-
119
Глава 4 метрами префикс и суффикс. Префикс это один или более нечисловых символов, которые определяют начальный символ одной или более цепей. Начальный индекс, это положительное целое число, которое представляет начальное целое как часть имени цепи, а конечный индекс — последнее целое как часть имени цепи, при этом шаг — это положительное целое число между начальным и конечным индексами. Суффикс — это аналог префиксу, но определяющий последний символ в имени цепи. Selected — опция включения в класс выбранных ранее цепей. Add_net — добавить одну или более цепей в именованный класс. Add_selected_net — добавить выбранные цепи в класс.
I
Remove_net — удалить указанные цепи из класса без его роспуска. Remove_selected_nets — удаляет ранее выбранные цепи из класса.
Дескриптор задания правил проектирования присоединяет правила к выбранному классу. Layer__rule — опция определяет правила трассировки проводников класса на заданных слоях. Rule — опция присоединения правил в текущую команду. Дескриптор топологии определяет приоритетный порядок подключения выводов компонентов для каждой цепи в классе. Topology — определяет приоритетную топологию для присоединения КП к каждому члену цепи в классе.
Дескриптор сегмента (от — до) определяет единственную связь вывод-вывод для элементов цепей в к,лассе. Comp_order — опция определяет последовательность связей вывод-вывод с использованием имен компонентов.
120
Команды автоматической трассировки
Define class_class Эта команда присваивает имя группе из двух или более классов для установления межклассовых правил в классах.
Class_class — опция определяет группу классов, которой можно присвоить одно имя. Classes — после этой опции задаются имена классов, которые им были присвоены в файле проекта или по команде Define class. По меньшей мере, здесь должны быть упомянуты 2 идентификатора классов. Эти классы, если их много, рассматриваются попарно. Для определения правил между специфицированными классами необходимо задавать отдельные команды class_class только для пары классов. Directional — этот дескриптор определяет, какой класс является источником и какой приемником шумов. Определение направления возможно только для определения параллельных (на одном слое) и тандемных (межслойных) шумов. Layer_rule — определяется правило трассировки для всех проводов на указанных слоях.. 1 '
. •
Примеры команд Define (class_class C2 СЗ (rule (parallel_segment (gap 0.005)(limit 0.05))))
Define group Эта команда присваивает имя группе отрезков цепей от — до (fromto). Возможно, при желании, присвоить правила проектирования и трассировки для этих групп. Group — за этой опцией следует идентификатор группы. (
Selected — включает ранее выбранные отрезки цепей в группу. Layer_rule — правила трассировки всех проводников на указанных слоях. Rule — присваивает правила в текущую команду.
Глава 4
Circuit — присваивает электрические правила в текущую команду. Add_fromto — добавляет отрезки цепей в именованную группу. Add_selected_fromtos — добавляет выбранные текущие отрезки цепей в группу. Remove_fromto — удаляет специфицированные отрезки цепей из группы без ее разрушения. Remove_selected_fromtos — удаляет текущие отрезки цепей из группы. К группам применяются все допустимые системой Правила. Такие присвоения выполняются с помощью команд circuit и rule. Для роспуска групп применяется команда forget. Примеры команд Define (group gl (fromto Ul-20 U2-33) (fromto U3-12 U4-16) (fromto U5-1 U6-4) (circuit (use_via v!2))) define (group gl (add_fromto (fromto Ul-21 U3-34))
Команды автоматической трассировки
Define group_set Эта команда позволяет присвоить имя набору специфицированных групп.
Опции для этой команды логически похожи на соответствующие опции для сегментов в группе. К ним относятся: Composite (с параметрами префикс, индекс начала, индекс конца, шаг, суффикс), layer_rule, add_group, add_selected_group, remove_group, remove_selected_group. Для расформирования набора групп применяется команда forget. ' ; • • < • •
t ..'•
'
.
'
•
.
Примеры команд '
Define (group g5 (fromto Ul-13 U3-10) (fromto U3-15 U4-7)) define (group g6 (fromto Ul-9 U3-16) (fromto U3-14 U4-6)) define (group_set grpsetl g5 g6 (rule (limit_vias 5))) define (group g7 (fromto Ul-12 U3-9) (fromto U3-14 U4-6)) define (group_set grpsetl (add_group g7))
123
Глава 4
Define keepout Эта команда определяет запретные зоны.
Ч .
,?
- LH
Keepout — опция определяет координаты запретной зоны и присваивает зоне метку (идентификатор). Зона — это область печатной платы, где запрещены все трассы и объекты (провода, ДСО, компоненты, выводы). Place_keepout — запрещает размещение компонентов и выводов в указанной зоне. Каждая такая зона должна иметь уникальное имя (метку). Wire_keepout — запрещает прокладку трасс в зоне. Bend_keepout— запрещает изгибы трасс в зоне с указанной меткой. Via_keepout — запрещает наличие ДСО в зоне. Elongate_keepout — запрещает продлевание проводников из зоны. Зона может быть прямоугольной (rectangle), круглой (circle) или полигоном (polygon) и замкнутой. Объекты не должны касаться или пересекать границы зоны. Если метка зоны не задана, система присваивает метки по умолчанию и дает им метку с последовательными номерами, начиная с keepout 1. Для расформирования зоны служит команда forget. Для отображения или запрета отображения зон служат команды view или vset. Невозможно изменить конфигурацию зоны, определенную как часть библиотечного элемента. Для изменения зоны необходимо ее расформировать и определить заново. Примеры команд Define (keepout (rect signal 1.550 4.890 7.630 9.750)) — здесь определена прямоугольная зона запрета размещения и трассировки. Define (place_keepout plc_keepl (poligon si 0.1 1.500 4.750 -2.375 4.750 -2.375 3.000 0.250 3.000 6.250 2.000 -2.375 2.000 -2.375 0.500 1.500 0.500 1.500 4.750)) Дескриптор rect задает прямоугольную зону на сигнальных или несигнальных слоях.
124
Команды автоматической трассировки
Затем задается имя слоя и вершины прямоугольника. Вместо метки зоны можно задать дескриптор signal для идентификации всех сигнальных слоев. Вершины задаются координатами X или Y в абсолютной или относительной системе координат, например для координат (0,2) и (3,1) введите 0 2 3 1 . Вершины — это диагонально противоположные углы прямоугольника. Дескриптор circle задает круглую зону.
Затем задается диаметр круга и координаты центра. Дескриптор poligon задает многоугольник для зоны, затем задается ширина линии контура полигона и координаты каждого угла.
•
Define layer_noise_weight
Эта команда задает таблицу шумовых факторов для трассировщика, когда он вычисляет параллельные и тандемные шумы. Она создается для специфицированной пары слоев.
Layerj_pair — за этим дескриптором следует метка или метки слоев, для которых выявляются шумовые факторы. Значения шума используются для вычисления наведенных шумов на слоях. Таблица шумов содержит пары имен слоев и шумовой фактор. При вычислении параллельно наведенных шумов пара имен слоев — это дважды повторенное имя одного слоя, при тандемных — это два разных имени, например: layer_pair sigl sigl или layer_pair sigl sig2.
125
Глава 4
• ••
." • •
• : . •; -у ;
Примеры команд Define (layer_noise_weight (layer_pair si si 1.00) (layer_pair s2 s2 0.900) (layer_pair s5 s5 0.880) (layerjpair s5 s6 0.900) (layer_pair si s2 0.920))
Define net Эта команда присваивает атрибуты или свойства для всей цепи или для специфицированных сегментов цепи. Для этого можно использовать дескрипторы circuit и rule.
"I*
дан
126
t!
[
Команды автоматической трассировки Net — опция специфицирует набор выводов (цепь), имеющих одинаковый потенциал напряжения или передающий один и тот же сигнал. Здесь возможно задать метку сегмента цепи. Comp_order — определяет последовательность соединений только выводов компонентов в цепи посредством задания меток (имен) компонентов. Order — опция определяет последовательность соединений выводов посредством перечисления их меток. Expose — опция для формирования стрингеров к сквозным выводам компонентов, при этом можно указать метки как компонентов, так и выводов. Noexpose — запрещает стрингеры для указанных выводов. Source — при последовательной трассировке цепи указанные здесь, выводы являются источниками. Load — при последовательной трассировке указанные здесь выводы являются нагрузкой. Terminator — этот вывод ограничивает трассу для цепи и является последним. Layer_rule — здесь задаются правила трассировки для всех наборов групп на заданных слоях. Add_pins — назначается один или более выводов к добавленному или существующему компоненту в специфицированной цепи. Отметим, что при использовании этой команды нельзя специфицировать сегмент цепи, который имеет форму петли. Система в этом случае выдаст предупреждающее сообщение. Примеры команд Define (net sigl (order Ul-1 U2-2 U4-4)) Define (net sig20 (fromto U10-2 U6-4) (fromto U6-4 U20-3 (rule (width 0.030))) (fromto U20-3 U20-4 (circuit (use_layer TOP)))) define (net sigl (order Ul-1 U2-2) (comp_order U2 U3)) define (net sig2 (expose U7)) '•
•'
'
'
•
127
Глава 4
Define padstack Эта команда специфицирует размещение ДСО под планарной КП для планарных компонентов.
Padstack — опция специфицирует метку стека КП и одну или более позиций размещения ДСО на планарной КП. Метка КП должна быть определена в стеке КП проектного файла. Via_site — указывает смещение ДСО относительно точки привязки планарной КП, описанной в стеке. 1
Attach — дает возможность использовать (on) или не использовать (off) указанное выше смещение. Use_via — разрешает использовать одно или более мест для ДСО на планарной КП. ДСО можно разместить непосредственно под КП, а также и значительно сместить за границу планарной КП. Эта команда должна использоваться совместно с правилом via_at_smd. Примеры команд Define (padstack smd_2 (via_site 0.07)(attach on) Define (padstack smd_2 (off)) Define (padstack smd_2 (via_site .07)(attach off)) Define (padstack smd_2 (via_site .07)(attach on)(use_via via_a)))
Define pair Эта команда определяет одну или более пар цепей или проводов, которые должны трассироваться как дифференциальные пары, т. е. иметь одинаковую топологию. Pair — опция для дифференциальной пары. Nets — перечисляет пару именованных цепей для дифференциальной пары. Selected — присоединяет определение пары для двух ранее заданных цепей. Gap — расстояние (зазор) между парой сегментов трасс.
128
Команды автоматической трассировки Layer — определяет метку слоя для специфицированного зазора. Wires — определяет пару как два сегмента цепи.
Если зазор установлен для пары, трассировшик пытается выдержать этот зазор на всей длине этой пары. Для ликвидации пары используется команда forget pair.
Примеры команд Define (pair (nets sig!6 sig 17 (gap 0.005))) Define (pair (nets A?+ A?- (gap 0.008)))
Define region Эта команда определяет прямоугольную или полигональную зоны, в пределах которой устанавливают ширины трасс и зазоры.
5 Зак. 27
129
Глава 4
:
\
Region — опция определяет регион (область платы) и вводит правила для него. Как вариант можно задать метку региону. Rect — задает прямоугольную зону парой координат вершин и приписывает ее к слою или ко всем сигнальным слоям (signal). Poligon — задает полигональную зону с тремя или более парами координат и апертурой шириной 0, а также приписывает ее к слою или ко всем сигнальным слоям. Region_net — задает зазоры и ширины трасс в регионе для специфицированной цепи. Region_class — задает зазоры и ширины трасс в регионе для специфицированного класса цепей. Region_class-class — задает зазоры между классами в регионе. Эта команда предназначена для задания области трассировки, где можно задать отличные от остальной платы зазоры и ширин проводников. Правила проектирования можно задать для всего региона, для единственного класса или цепи в пределах региона или задать отношения между двумя классами в этом регионе. При задании региона необходимо выбрать его форму (прямоугольник или полигон), указать имя слоя и расположение и присвоить правила для зазоров и ширин проводников, которые будут действовать в регионе. Как вариант региону можно задать Имя. Если имя не присвоено, система присвоит его автоматически. Это имя должно быть уникальным и содержать любую комбинацию букв и цифр, за исключением пробела, скобок и точки с запятой. Присвоенное региону имя можно использовать в последующих командах для обращения к региону. Однако изменить или удалить имя существующего региона невозможно. Правила проектирования, установленные для региона имеют высочайший приоритет. Примеры команд Define (region regionl (rect si 0.975 1 1.75 6) (rule (width 0.015))) define (region rgn2 (poligon signal 0 1.500 4.750 2.375 4.750 2.375 3.000 0.2503.0000.2504.000 1.5004.0001.5004.750) (region_class class 1) (rule (clearance 1.5))) Дескриптор
130
Команды автоматической трассировки
В команде может употребляться дескриптор виртуальной КП
<positive_dimension>
Имя виртуального вывода задается в файле проекта или присваивается в системе Specctra. Виртуальное имя вывода можно использовать в нескольких цепях. Position — определяет местоположение вывода. Radius — определяет расстояние от виртуального вывода, на которое можно сдвинуть подключение вывода для исключения нарушения правил проектирования. По умолчанию оно равно 0,5 дюйма.
131
Глава 4
Def key Эта команда отображает существующие ключи программирования и позволяет привязать команды Specctra к клавишам.
Имя ключа
Defkey Defkey (f3 ctrl) x Defkey (f5 shift) (undo)
Delete Команда позволяет удалять ранее определенные объекты из окружения автотрассировщика. All wires — опция удаляет все проложенные трассы, за исключением защищенных и фиксированных.
132
Команды автоматической трассировки
All_poly_wires — удаляет полигоны, если они не защищены. All region — удаляет все регионы. Selected — удаляет все выбранные трассы. Selected poly_wires — удаляет все полигонные трассы. Conflicts — удаляет все пересечения трасс и места нарушений зазоров. -segment — позволяет трассировщику снять конфликт посредством удаления отдельных сегментов и создания гидов (индикаторов связности в виде прямых линий) от одного сегмента к другому. При значительном количестве конфликтов вводить команду удаления конфликтов не рекомендуется. Лучше использовать команду filter для их удаления. Include fast — удаляет трассы, которые создают нарушения, связанные с длинами трасс или задержками прохождения сигнала. Net — удаляет все трассы, принадлежащие указанным цепям. Region — удаляет идентифицированные зоны и все связанные с этой зоной установки (правила проектирования). Wirebond — удаляет все трассы и КП интегральных микросхем, к которым подведены проводники при использовании гибридной технологии.
133
Глава 4 Fence — удаляет все барьеры (разрешенные для трассировки зоны со специальными свойствами). Incomplete_wires — удаляет некомплектные (недоразведенные) трассы. Incomplete_wires net — удаляет некомплектные трассы для указанных цепей. Testpoints — удаляет все контрольные точки. Все операции удаления записываются в таблицу истории трассировки в статусе отчета, поскольку эти действия могут изменить информацию о конфликтах и не разведенных связях. Примеры команд Delete all wires Delete incomplete_wires (net SYNC1) Delete incomplete_wires Delete poly_wires Delete selected ч
Delete selected poly_wires Delete fence Delete net GND Delete conflicts Delete all regions Delete region region 1 Delete testpoints
Did_file Эта команда дает возможность системе автоматически записывать команды в Did-файл.
Off — опция прекращает запись данных в файл и не регистрирует последующие команды.
134
Команды автоматической трассировки On — открывает файл с заданным именем и закрывает ранее открытый файл. Suspend — приостанавливает запись данных в файл. Resume — продолжает запись данных в ранее приостановленный файл. Обычное расширение этого файла .did.
Примеры команд Did_file off Did_file on myfile.did Did_file suspend Did_file resume
Direction Эта команда определяет направление трасс на заданном слое.
Опции данной команды позволяют задать: • преимущественное горизонтальное направление трасс и устанавливают низкую стоимость для таких трасс (horizontal); •
преимущественное вертикальное направление (vertical);
•
ортогональные направления (ortogonal);
• положительное диагональное направление (снизу—слева, вверх—вправо и обратно) (positive_diagonal) или отрицательное диагональное (negative_diagonal). Off — эта опция делает указанный слой недоступным для трасс вообще. По умолчанию, система присваивает направления трасс так: • слой 1 — горизонтально • слой 2 — вертикально
135
Глава 4 •
___
слой 3 — горизонтально
• слой 4 — вертикально и т. д. Примеры команд Direction LI vertical Direction S3 ortogonal Direction S5 positive_diagonal
DO Команда читает DO-файл и управляется им.
Трассировщик читает команды из специфицированного файла. В этом файле могут присутствовать любые команды автотрассировщика. Команды DO-файл а могут выдаваться следующими способами: • вводом с клавиатуры, для ввода команд непосредственно находясь в системе Specctra; • с помощью меню, посредством указания строки Execuite DO File в меню File; • вложенным DO-файлом, когда трассировщик последовательно считывает команды управления из каждого DO-файла так, как они появляются. В основной файл можно вложить до 20 дополнительных, например: Командная последовательность Do file I
Размещение команд ввод командной строкой
Grid via 10
DO-файл 1 строка 1
Do file 2
DO-файл 1 строка 2
Bus diagonal
DO-файл 2 строка 1
Fanout
do-файл 2 строка 2
(pin_type signal) grid via 5 route write wire myfile
136
DO-файл 1 строка 3 lOdo-файл 1 строка 4 DO-файл 1 строка 5
Команды автоматической трассировки При запуске трассировщика можно использовать переключатель -do в качестве четвертого способа управления DO-файлом. Если исходный файл DO инициализирован с этим переключателем, строка do
Пример команды Do myrules.do
Evaluate Эта команда производит немедленное вычисление выражения и записывает результат в систему.
Выражение может быть простой переменной или сложным выражением. Результат может быть строкой символов, вещественным или целым числом. См. также команду setexpr.
Примеры команд Evaluate (6.334/2.54) — здесь просто вычисление. Evaluate (conflict_wire) — здесь используется метка системной переменной для отображения текущего конфликтного значения. •
Fanout
'
-
Эта команда формирует короткие отводы от КП к ДСО для планарных или сквозных выводов компонентов (стрингеры). За этой командой сразу следует число проходов для формирования стрингеров, обычно для этого рекомендуется 5 проходов, однако при отсутствии числа выполняется'один проход. . > Direction — опция заставляет трассировщик выводить стрингеры внутри выводов компонента (in), снаружи (out) или любым способом (in_out). Location — заставляет трассировщик выводить стрингеры внутри контура компонента, вне контура или как подучится (inside, outside, anywhere).
137
Глава 4
138
Команды автоматической трассировки Pin_share — разрешает формировать стрингеры для сквозных КП. По умолчанию применяется выражение pin_share off, которое формирует ДСО для каждого вывода компонента. Когда задано pin_share on, трассировщик выводит стрингеры с ДСО к цепям одного потенциала, если эта стоимость меньше стоимости использования ДСО и соседний вывод находится не далее max_len. Smd_share — опция похожа на предыдущую, но относится к планарным выводам. Via_share — позволяет трассировщику при формировании стрингеров совместно владеть одним ДСО для одинаковых цепей. Условия умолчания (via_share off) состоит в том, что трассировщик использует отдельное ДСО для каждого планарного вывода компонента. Share_len — устанавливает максимальное расстояние от вывода до ДСО. Расстояние по умолчанию составляет 200 мил. Via_grid — опция устанавливает временную дискретную сетку только на этап формирования стрингеров. Временная сетка должна быть кратна сетке на плате, что, кстати, является условием умолчания. Direction — специфицируется сетка по осям. Без этой опции сетка одинакова по обеим осям. Offset — задает смещение для сеток по осям. Smart_via_grid — разрешает трассировщику автоматически определять начальную сетку для ДСО, которая позволяет прокладывать одну или две трассы между смежными ДСО. Если выбран дескриптор one_wire_between, то проводится одна трасса, а при two_wire_between две трассы. Depth — опция управляет числом слоев «глухих» и «захороненных» (не сквозных) дополнительных отверстий (ДО), используемых для формирования стрингеров и направлений трасс. Эту опцию можно использовать для более плотной трассировки многослойной печатной платы (МПП) по методу межслойных переходов. Примечание. «Глухими» считаются ДО, просверленные для межслойных переходов, включая первый или последний слои, «захороненными» считаются ДО, просверленные во внутренних слоях МПП для создания межслойного перехода. Opposite — опция вводит стрингер на противоположной стороне платы. КП стрингера на первом слое располагаются оппозиционно (навстречу) к КП на последнем слое, а КП последнего слоя оппозиционно к КП на первом слое. КП для стрингера на внутренних слоях вводятся аналогично по отношению к ближайшему слою. .* Up — устанавливает КП стрингера навстречу стрингеру первого слоя. Значение О для этой команды не ограничивает глубины отверстия.
139
Глава 4 Down — устанавливает КП стрингера навстречу стрингеру последнего слоя. Мах_1еп — ограничивает расстояние от вывода компонента до ДСО. Это расстояние отсчитывается от центра вывода до центра ДСО. Pin_type — определяет тип КП, для которого формируется стрингер. Active — все сигнальные КП, которые связаны с одним или более другими КП, и все цепи питания. Это есть значение по умолчанию, если не использован другой тип КП. Signal — все КП сигнальных цепей, связанные с другими КП. Power — все КП силовых цепей. Unused — все КП, как сквозные, так и пленарные, не входящие в какую-либо цепь. Все такие КП объединяются в цепь с именем «Unused_pins». Exlude_through_pin — исключает неиспользованные сквозные КП из числа тех, для которых формируются'стрингеры. АН — использовать все КП компонента, включая активные и неиспользованные. Single — все сигнальные цепи с единственной КП. Если команда fanout используется без опций, то это эквивалентно набору команд: Fanout I (direction in_out) (location anywhere) (pin_share off) (smd_share off) (via_share off) (pin_type active) Если компоненты, выводы или цепи не выбраны, то стрингеры создаются для всех активных планарных компонентов. Для формирования стрингеров можно выбрать компоненты, выводы, цепи и сегменты цепей, при этом в активные не могут входить одновыводные цепи.
Если выбраны
Тогда
Компоненты
Только выбранные компоненты получают стрингеры
Цепи
Стрингеры формируются только для КП, входящих в цепи.
Компоненты и цепи
Стрингеры создаются для планарных компонентов, принадлежащих указанным цепям, а также для выбранных компонентов.
14О
Команды автоматической трассировки Выводы
Стрингеры создаются только для выбранных планарных КП, а не указанные выводы тех'же цепей стрингеров не получают.
Сегменты
Только планерные КП, входящие в сегмент, получают стрингеры.
Возможно использовать отдельные команды fanout для подключения стрингеров к различным типам выводов дифференциально, при этом возможно специфицировать тип КП более одного раза в одной команде для обработки специальных ситуаций, например: Fanout (direction in)(pin_type power) Fanout (direction out)(pin_type signal)(pin_type unused) Результат этих команд таков, что КП силовых цепей получат стрингеры внутри цоколевки компонента, а сигнальные и не подключенные (не окрашенные) КП будут иметь стрингеры за пределами цоколевки. Команда установки правил проектирования rule также влияет на подключение стрингеров, что иллюстрируется ниже: Правило smd_to_turn_gap устанавливает минимальное расстояние между первой точкой изгиба трассы и пленарной КП. Правило smd_via_same_net устанавливает минимальное расстояние от планарной КП до первого ДСО на трассе. Правило power_fanout предусматривает управление последовательностью трассировки между силовыми выводами, ДСО и конденсаторами в цепях питания. Перед использованием команды fanout следует учитывать следующие соображения: • Стрингеры целесообразно применять в многослойных печатных платах, и их обычно не используют для ДПП. • Дискретную сетку для стрингеров необходимо задавать только на период работы по их введению, после чего следует вернуться к сетке для платы в целом. • Вместо того чтобы прилагать усилия для формирования стрингеров ко всем пленарным выводам компонента, лучше присвоить контрольные точки к сигнальным цепям после окончания трассировки с помощью команды testpoint (контрольная точка). Трассировщик попытается сдвинуть существующие ДСО на тестовую дискретную сетку, если она задана для контрольных точек, перед тем как создавать новое место для контрольных точек. • Команду bus diagonal рекомендуется использовать перед командой ввода стрингеров, так как эта команда выполняется быстро, и ее результаты могут быть пересмотрены перед выполнением других команд.
141
Глава 4 • Если нет желания создавать стрингеры для всех выводов компонента, то можно использовать команды select pins или select area pins для выбора конкретных КП. После этого стрингеры будут только у выбранных КП. • Команда вида fanout (pin_type all) формирует стрингеры для всех КП, включая и не присоединенные к цепям (без окрасок). • Цепи с одной КП, как правило, стрингеров не получают, пока не будет получена команда fanout (pin_type all) или fanout (pin_type single). Проблемы формирования стрингеров затрагиваются в таких командах, как highligth, protect, smart_route. Примеры команд Fanout Select component U254 Fanout (pin_type all) Fanout (depth opposite 2) (share_len .5) Fanout 5 (pin_type signal)(via_share on (maximum_connections 2)) Fanout (smart_via_grid two_wire_between) Fanout (smart_via_grid one_wire_between preferred) Grid via. 100 V25 Fanout (via_grid .025) Fanout (pin_type unused (exclude_through_pin) Fanout (direction out)(location outside)
142
Команды автоматической трассировки Микро стрингеры под планарными KIT Глухие (внешние) и захороненные (внутренние) дополнительные микроотверстия (при реализации плат способом межслойных переходов) могут быть подключены к пленарным КП без отводов, с помощью команды fanout. Когда включена опция Micro Via, команда fanout пытается создать дополнительное отверстие (ДО) под планарной КП, даже если они располагаются оппозиционно на противоположной стороне ПП. Для этого программа пытается, во-первых, сдвинуть ДО от центра КП, но в пределах ее контура, чтобы избежать конфликта с планарной КП на другой стороне ПП. Во-вторых, можно использовать несквозные микроотверстия при правильном применении правил задания слоев в опции depth.
Fence Эта команда позволяет создать одну или более разрешенных для трассировки зон для разделения аналоговых и цифровых сигналов.
Можно задать прямоугольную зону для разводки только связей внутри этой зоны (жесткое разделение) или разрешить аналоговым и цифровым сигналам трассироваться в различных зонах (мягкое разделение). Такая зона задается координатами диагональных углов прямоугольника. Можно определить несколько таких зон. При перекрытии зон вычисляется суммарная зона. Для удаления зон применяется команда delete fence. В одном проекте не должно быть одновременно мягких и жестких зон. Более подробная информация о создании таких зон приведена в разделе set soft_fence. •f
Примеры команд Fence 0.6 1.35 1.0 0.85 Fence 1.05 1.38 1.73 0.8
Filter Эта команда удаляет финальные конфликты трассировки посредством запуска такого прохода трассировщика, который увеличивает стоимость конфликта и, как следствие, минимизирует число не разведенных цепей.
143
Глава 4
•
•
Если после большого числа проходов трассировщика осталось некоторое число конфликтов и закончен проход clean, можно использовать проходы с командой filter, чтобы обеспечить бесконфликтную трассировку. Когда запускается эта операция с числом проходов больше единицы, на каждом проходе прогрессивно увеличивается штраф за конфликт. На последнем таком проходе штраф принимает максимальное значение, и любые оставшиеся конфликты после этого прохода считаются неразрешимыми для трассировщика. Максимальное число проходов фильтрации равно пяти. Примеры команд Filter Filter 5
Fix/unfix Эта команда препятствует трассировке или перетрассировке цепей.
Selected — эта опция фиксирует только выбранные цепи. При этом фиксируется вся цепь, включая любые частично разведенные цепи. Net — фиксирует все терминалы и проложенные трассы для специфицированной цепи. Class — фиксирует все цепи специфицированного класса. Эта команда гарантирует, что выбранные или специфицированные цепи не затрагиваются трассировщиком во всех последующих операциях. Такое возможно только для цепей, упомянутых в команде unfix. Трассы фиксированных цепей рассматриваются как запретные и не могут быть вовлечены в конфликты. Команда unfix возвращает нормальный статус фиксированным цепям по команде fix, однако эта команда не действует на цепи, помеченные в командном файле как type fix или как type route. Статус этих цепей можно изменить, только редактируя командный файл. Команды фиксации и расфиксации относятся только к цепям или отрезкам цепей (в том числе к группам отрезков). Для управления перетрассировкой проводников служат команды protect/unprotect.
144
Команды автоматической трассировки Примеры команд Fix selected Unfix selected Fix selected group Unfix selected group Fix group groupl Fix group group2 groupS Unfix group groupl group2 groupS
Fix net elk Unfix net elk Fix class critical Unfix class critical
Forget Эта команда удаляет или расформировывает наборы объектов, зоны и свойства объектов.
145
Глава 4
. '
Class — эта опция расформировывает классы и удаляет все правила для всех class и class-class для цепей в этих классах. Net — удаляет все правила, присвоенные к именованным цепям и ликвидирует любые определения для отрезков этих цепей. Order_only — удаляет только отрезки перечисленных Цепей, оставляя все другие правила без изменения. Удаляются отрезки и виртуальные КП, созданные по команде define net. Group — распускаются одна или более созданных групп сегментов и присвоенные им правила проектирования. Group_set — распускаются одна или более наборов групп и правила зазоров, ширин трасс и установки времени. Pair — удаляются парные ассоциации между одной или более пар цепей. При использовании дескриптора fromto удаляются отрезки цепей (связи вывод-вывод или от — до). Keepout — расформировываются одна или более запретных зон. Удалить можно как индивидуальную зону (по ее метке), так и зоны внутри области (с дескриптором area). Property — опция идентифицирует удаляемое свойство. Каждое стандартное или пользовательское свойство содержит метку (property_name) и значение (property_value). Именно эти данные необходимы для удаляемых свойств. Следует отметить, что возможно удаление свойств, присвоенных в системе Specctra, но не в исходном проектном файле. /
Bundle — удаляет определения жгутов, заданные командой define bundle (здесь под жгутом понимаются наборы цепей, которые должны иметь одинаковую топологию). Отметим, что по команде report возможна распечатка отчета о всех предопределенных цепях и правилах. Возможна генерация отчетов о всех текущих классах, группах, наборах групп, парных цепях, жгутах, запретных зонах или свойствах, при этом расформированные объекты в отчеты не включаются. Свойство «распустить» упоминается также в командах: Define bundle Define class Define group Define group_set Define keepout Define pair
146
Команды автоматической трассировки И в режимах: Component_property Component_pin_property Image_property Image_pin_property Layer_property Net_property Примеры команд Forget class thin
s
Forget group gl Forget pair (nets sig!6 sig 17) Forget group_set grpsetl Forget pair (nets A?+ A?-) Forget pair (nets *) Forget keepout keepoutl keepout2 •
'
N
Forget keepout (area 1.550 4.890 7.630 9.750) (layer signal)) forget component_property Ul (property my_prop-l) forget component_property U2 US (property type heigth) U4 U5 (property heigth) Forget image_pin_property Ic2 p5 p6 (property prop_x) P4 p5 (property prop_y)
' \ Дескриптор area описывает расположение или область, где планируется распустить запретные зоны.
При этом возможны опции: Layer — определяет единственный или все сигнальные слои в проекте (signal).
147
Глава 4
'
_
Type — распускает только указанные Типы запретных зон внутри заданной области (area). Такими типами могут быть: place — распустить запретную зону слоя размещения, wire — распустить запретную зону для проводников, via — отменяет запретную зону для ДСО или ДО, bend — что отменяет запретную зону для изгибов трасс, elongate — отменяет запрет пролонгации трасс, all — отменяет всякие запретные зоны, которые препятствуют всем'трассируемым и размещаемым объектам.
По умолчанию тиц зоны all. Чтобы удалить запретную зону в определенной позиции, необходимо указать координаты вершин на ПП, а для прямоугольника — координаты противоположных вершин. По умолчанию Specctra удаляет все запретные зоны внутри указанной области. Дескриптор свойств объектов <property_object_descriptor> идентифицирует тип объекта и один или более примеров объектов. Ниже приведены возможные варианты свойств объектов: Component_pin_property — специфицирует одну или более выводов указанного компонента. Имена выводов присваиваются образу компонента в файле проекта или в библиотечном файле. Информация о способах присвоения свойств выводам компонента приведена в команде component_pin_property. Component_property — специфицирует одну или более меток компонентов. Как придать свойства компоненту, описано в команде component_jproperty. Image_pin_property — указывает один или более выводов указанного образа. Идентификатор метки образа есть его имя в файле проекта или в библиотечном файле в разделе библиотеки. Информация о свойствах образа вывода приведена в команде image_pin_property. Image_property — специфицирует один или более меток образа. Эта метка есть имя, присвоенное в файле проекта или в библиотечной секции. Более подробная информация об этом приведена в команде image_property.
148
Команды автоматической трассировки Layer_property — указывает один или более слоев. Более подробно об этом описано в команде layer_property. Net_property — указывает одну или более цепей. Это метка сигнальной или силовой цепи, определенная в файле проекта. Более подробно об этом описано в команде net_property.
Grid-route_major_factor Эта команда задает дополнительную дискретную сетку для каждой сетки проводов.
При задании этой команды указывается значение в целочисленном формате для установки дополнительной дискретной сетки для основной сетки проводов. Значение определяет число вторичных точек сетки между точками основной сетки трассировки. Например, если специфицировано 5 для дополнительной сетки, а сетка проводов имеет шаг 0.2, то на экране будет отображена каждая вспомогательная сетка с шагом 0.1 единицы измерения. Для задания цвета дополнительной сетки можно использовать команду define_color palette. Дополнительная сетка никак не влияет на эффект трассировки. Дополнительная информация приведена в командах grid wire и view grid. Пример команды Grid route_major_factor 5
Gridjsmart Эта команда устанавливает минимальные сетки для ДСО и трасс, вычисляет начальную сетку для ДСО, которая используется, пока трассировщик не закончит 3 прохода или не выполнит разводку трасс на 50%. Сетка ДСО затем уменьшается до минимального значения для всех оставшихся проходов трассировки.
149
Глава 4
.
Wire — специфицирует минимальную сетку для трасс. Via — специфицирует минимальную сетку для ДСО. Direction — специфицирует шаг сетки по осям координат X или Y. Если этот параметр не установлен, сетка будет иметь шаги по обеим осям. Offset — специфицирует смещение (положительный размерности) для сеток относительно начала координат платы. Команда установки «умной» сетки заменяет команды установки grid wire и grid via. Сетка трасс получает свое значение после ввода команды и сохраняет это значение до конца трассировки, если не была перекрыта командой grid wire. Сетка для ДСО вычисляется программно (начальное значение) по формуле: Сетка ДСО = диаметр ДСО + 2х (ширина трассы + зазор трасса — ДСО) + зазор трасса—трасса. Опция offset устанавливает сетку только по одной из осей координат. Она задает смещение первой точки сетки из начала координат платы. Если доступен более чем один тип ДСО, трассировщик использует для вычисления шага сетки ДСО с минимальным диаметром. Целью команды grid smart является трассировка начального прохода на самой большой сетке ДСО, чтобы исключить препятствия размещению ДСО. Меньшая сетка ДСО мешает трассировщику на более поздних проходах. Как правило, команда позволяет проложить 2 провода Между ДСО, за несколько проходов трассировки, а затем перейти к прокладке одного провода для лучшей сходимости процесса.
Примеры команд Grid smart (wire 0.001)(via 0.025)
Grid smart (wire 0.05)(via 0.15)(offset 0.025)
Grid snap Эта команда определяет указатель захвата дискретных точек для интерактивного редактирования областей, таких как комната, запретная зона, или граница. Direction — опция определяет шаг сетки в направлении X или Y. Если эта опция не установлена, то шаг сетки принимается одинаковым в обеих направлениях. Offset — определяет значение смещения сетки относительно начала координат сетки (это всегда положительное целое).
15О
Команды автоматической трассировки Команда grid snap заставляет указатель позиции принимать значения, кратные дискретной сетке, что необходимо при интерактивном размещении и трассировке. Более детально этот параметр рассматривается в команде mode. При автоматических процедурах этот параметр не используется. Для отключения захвата указателя в команду необходимо ввести параметр —1. Этот параметр обсуждается также в команде set show_snap_grid_cursor.
Пример команды Grid snap O.I
Grid via Эта команда определяет сетку для ДСО. rid via )—H<posrf/ye_d/mans/on>|
Direction — эта опция задает сетку по осям X или Y. Offset — задает смещение сетки относительно начала координат платы. Эта команда перекрывает сетку, вычисленную по команде grid smart. Примеры команд Unit toil Grid via 100 v_40 Grid via 100 (offset -0.05)
151
Глава 4
Grid via_keepout Эта команда разрешает автотрассировщику использовать определенные позиции сетки ДСО. grid via_keepout
)
>| <posnive_dimension>\
Опции direction и offset выполняют функции, описанные выше. Примеры команд Grid via_keepout 100 Grid via_keepout 0 Grid via_keepout 0.5 (direction x) Л
Grid wire Эта команда определяет сетку трассировки. | <positive_dimension>
Опции direction и offset выполняют функции, описанные выше. Примеры команд Grid wire 25 Grid wire 20 layer 1 Grid wire 25 sigl (direction y)
152
Команды автоматической трассировки
Highlight Эта команда графически выделяет определенные проектные объекты или условия трассировки для легкой идентификации.
-t
cfuridant_wires
J-
shield
testpoint_antennas И
J-
testpoint_violations
>$тшЯ
Bend — опция выделяет все изгибы трасс на 45 или 90 градусов. Component — все выводы именованного компонента.
153
Глава 4 Color <eolor_name> — специфицирует цвет подсветки. Net — подсвечивает всю трассу определенной цепи. No_fanout — подсвечиваются все пленарные сигнальные КП, для которых предусмотрено формирование стрингеров по команде fanout. Если была команда fanout (pin_type power) то подсвечиваются только силовые КП, не содержащие стрингеры. No_testpoint — подсвечиваются все цепи без контрольных точек. Off_grid — подсвечиваются КП, трассы и ДСО, которые находятся вне дискретной сетки и участвуют в цепи. Неподключенные КП не выделяются. Дополнительная опция all выделяет все не дискретные объекты. Incomplete_wires — подсвечиваются некомплектные печатные проводники. К ним относятся: • Трассы вывод-вывод с отсутствующими отрезками. Здесь «отсутствующими» могут быть или не быть направления к другим отрезкам цепей. • Отрезки цепей, которые связаны с трассой вывод-вывод, но цепь в целом не разведена или заканчивается ответвлением к другому отрезку. • Отрезки, которые начинаются на КП вывода, а заканчиваются без подключения куда-либо. •
Висящие трассы, после выполнения команды Delete conf lict_segment.
Reduntant_wires — подсвечиваются излишние сегменты и ДСО цепей. Shield — подсвечиваются все экранированные проводники, включая экранированные землей и привязанные к ДСО. No_shield — подсвечиваются все проводники, которые предполагалось экранировать, но этого сделать не удалось из-за отсутствия места для экранирующих трасс. Wrong_width — индицируются трассы, ширина которых не была изменена после выдачи команды change_width_by_rule. Off — отменяет все подсветки. Testpoint_antennas — подсвечиваются все отводы на контрольные точки. Эти трассы должны быть заданы как контрольные и подсоединены к нужной цепи единственной трассой. Testpoint_violation — подсвечиваются все контрольные точки (КТ), имеющие нарушения правил их формирования, в том числе: КТ на неверной стороне платы, КТ лежит вне заданной дискретной сетки, имеется КТ, хотя они не были заданы, для КТ применен ошибочный тип ДСО, КТ сформирована на расстоянии больше допустимого.
154
Команды автоматической трассировки Power_fanout_order_violation — подсвечиваются все связи с нарушением правил power_fanout. Это правило определяет последовательность соединений между силовыми КП, ДСО и развязывающими конденсаторами. Order_violation — подсвечиваются все конечные точки цепи, для которых нарушена последовательность подключения. Такой точкой может быть вывод компонента, ДСО с тремя или более подключенными трассами или т-образное подключение. Stack_via — подсвечиваются все ДСО, которые полностью или частично перекрывают ДСО на других слоях. Shield_tie_down_interval_overrun — подсвечиваются все нарушения правил, заданные правилом shield_tie_down_interval, которое устанавливает максимальное расстояние между отводящими проводниками для подсоединения к экрану на земляном слое. Команду подсветки полезно использовать для визуализации расположения объектов или заданных условий на ПП. Для контроля размещения трасс можно подсветить компоненты, сигнальные цепи и различные условия трассировки, такие как изгибы проводников и не растрассированные проводники. При визуализации компонентов или сигнальных цепей Specctra также подсвечивает КП выводов, трассы, и другие элементы цепей, подключенных к компоненту. То же относится и к цепям. Цвет индикации задается интерактивной командой задания цвета (View — Color palette). Способ подсветки не влияет на процессы размещения и трассировки. • ' ., •• . • г Примеры команд Highlight bend 90 Highlight net +5V HighLight net (color yellow) +5V Highlight no_testpoint HighLight shield
If Эта команда выполняет одну из двух групп команд автотрассировщика, основываясь на вычислении выражений.
У^ду ""
^t**wjiiimaiiv_yivu "~ \
^ У / У ~ 1 ~ ~
]
^Q)—
155
Глава 4 Если значение выражения не нулевое, то выполняется первая группа команд. Если же значение выражения равно нулю, то выполняется группа команд, следующая за ключевым словом else. Целью команды if является выполнение альтернативных команд в процессе автотрассировки. Выражение может включать системные переменные, определенные в руководстве Design Language Reference.
Примеры команд Первая команда инициирует 25 проходов трассировки, затем 2 прохода очистки. Затем проверяется количество конфликтов. Если это количество меньше пяти, то запускаются дополнительные 2 прохода очистки, иначе запускается 50 дополнительных проходов трассировки и 4 прохода очистки. После if-блока трассировщик выполняет команду report status. Route 25 Clean 2 If (conflict_wire < 5) Then (clean 2) Else (route 50 16; clean 4) Report status route.sts. Общая информация относительно генерации отчетов дана при описании команды Report Commands. В следующем примере использована системная переменная, проверяющая наличие в проекте планарных компонентов, а также неиспользование слоев Тор, Bottom или обеих. Если да, то выполняется проход формирования стрингеров, иначе трассировщик выполняет 25 проходов. If (smd_pins &&! (top_layer_sel && bottom_layer_sel) Then (f anout 5) Route 25 If (conflict_wire <5) Then (clean 2) Else (route 50 16; clean 4)
Image__pin_property Эта команда присваивает свойства образу КП. Дескриптор <property_name> идентифицирует стандартные или пользовательские свойства. Каждое присваиваемое свойство должно содержать имя свойства (метку) и значение. Значением может быть дескриптор, число или строка символов, в зависимости от назначения свойства.
156
Команды автоматической трассировки image_pin_property
i
CD~^M
ШИН
При присвоении свойств необходимо специфицировать имя образа (
метку
свойства
(<property_name>)
и
значение
К Стандартным свойствам образа вывода относятся: Force_to_ternunal_point <property_value> Exit_direction <property_value> Свойства можно присвоить в системе Specctra или в файле проекта. Просмотреть свойства можно с помощью отчета (property report) в команде report. Этот отчет содержит текущие значения свойств, присвоенных всем образам выводов в проекте. Свойства образов выводов относятся ко всем примененным образам, но свойства выводов, присвоенные специфическим компонентам, имеют приоритет перед свойством простой КП. Примеры команд Image_pin_property C81 2 (uprop_l 0.02)
• -
Image_pin-property 11631 3 5 9 (uprop_2 xyz)
Image_property Эта команда присваивает физические свойства, свойства общности и пользовательские свойства корпусам объектов.
Команда присваивает одному или нескольким корпусам стандартные или пользовательские свойства. Стандартные свойства корпуса содержат физические свойства и имена семейств корпусов. К физическим свойствам относятся тип, высота и рассеиваемая мощность. Как правило, свойства содержат метку свойства (идентификатор) и значение свойства. Значением могут быть числа, дес-
Глава 4 крипторы (ключевые, зарезервированные в системе слова) или просто строка текста (см. команду image properties) с перечнем свойств, которые можно присвоить образам. Физические свойства идентифицируются типом корпуса (type), максимальной высотой (heigth) и максимальной рассеиваемой мощностью (power dissipation). Свойства общности (family properties) присваиваются именам семейства корпусов при задании правил f amily-to-f amily для КП и границ тела корпуса для размещения. При необходимости можно генерировать общий отчет о рассеиваемой мощности печатной платой (power dissipation report) и отчет о всем семействе корпусов (image famile report). Если вы присваиваете или удаляете физические и другие свойства корпусам, Specctra не регистрирует эти изменения (при использовании команды Write), чтобы сохранить файл размещения или файл сессии. Однако физические свойства, присвоенные индивидуальным компонентам, в этих файлах регистрируются. Эти проблемы упоминаются также в командах autodiscret, autorotate, define room, iniplace, interchange, placejrule, room_rule, select component, select family, select image, unplace. .
Примеры команд Следующие примеры присваивают свойства именованным корпусам. Image_property — C0805 (type capacitor) (heigth 0.0280) Image_property — plcc_20 plcc_28 (heigth 0.1800 — .1200) Image_property — SOIC14 (power_dissipation 500) Следующие примеры присваивают свойства всем выбранным корпусам. Select image IC62 IC63 Image_properties (heigth -10.051) Image_properties (family f am_l) Дескриптор
Свойство семейства есть метка, которая присваивается идентификатору корпуса как метка общности. Можно присвоить один и тот же корпус одному или более семействам, а семейство может содержать один или более корпусов. После введения корпуса в семейство можно применить правила размещения (place_rule) к телу КП и их корпусам в других семействах. Для удаления корпусов из семейства можно применить команду reset family.
158
Команды автоматической трассировки Дескриптор физических свойств (physical_property) используют для задания типов, высоты и мощности компонентам или корпусам.
В этом случае опция type служит для обработки маленьких компонентов в процессе автоматического размещения. Маленькими компонентами считаются компоненты с тремя или менее КП. Выбираются: Capacitor — включают только маленькие конденсаторы и маленькие компоненты, все КП которых подключены только к силовым цепям, однако такое свойство не применимо к резисторам и дискретным элементам. Discrete — включают в себя только маленькие дискретные компоненты (это свойство присваивается такому маленькому компоненту, который необходимо размещать отдельно от остальных). Resistor — включают только маленькие резисторы (с типом свойства маленький резистор). Small — включают в себя все маленькие компоненты (это значение по умолчанию). Опция высоты (height) присваивает минимальную и максимальную высоту для комнаты. Значение -1 означает отсутствие ограничений по высоте (значение по умолчанию). Опция рассеиваемой мощности присваивает значение максимальной мощности для определения суммарной мощности всех компонентов в комнате. Значение -1 означает отсутствие этих данных (это значение принято по умолчанию). Опция type используется, когда необходимо классифицировать компоненты в соответствии с правилами размещения или для особой обработки платы при операциях авторазмещения. Опция height используется, когда предполагаются ограничения по высоте компонентов при их авторазмещении в комнате.
159
Глава
4
_
Опция power_dissipation используется, когда предполагаются ограничения по выделяемой компонентами мощности для комнаты. Система Specctra распознает следующие компоненты и типы образов: • большой (lagre); • маленький (small); • конденсатор (capacitor); • резистор (resistor); • дискретный компонент (discret) — это маленький компонент, который должен размещаться отдельно от остальных. По умолчанию большой компонент содержит 3 или более выводов, а маленький — 3 или менее. Они взаимно исключительны. Возможно присвоить свойство «большой» компоненту или образу с числом выводов 3 и менее, но нельзя присвоить свойство «маленький» компоненту с числом выводов более трех. В то же время свойство типа «резистор», «конденсатор» или «дискретный элемент» можно присвоить большому или маленькому компоненту или образу. Они также взаимоисключающи. Если компонент имеет три или менее выводов, подключенных к силовой цепи, и при этом ему не присвоено какое-либо допустимое свойство, система автоматически считает такой компонент конденсатором. В процессе авторазмещения Specctra различает большие и маленькие компоненты. Правила размещения можно присвоить каждому типу на ПП с помощью команды image set. ' Более подробно вопросы ограничений для авторазмещения рассмотрены в командах define room и room_rule. Дескриптор <user_property_name> идентифицирует пользовательские свойства. Каждое такое свойство должно содержать имя и значение. В системе Specctra пользовательские свойства рассматриваются как метки, которые обрабатываются в другой системе проектирования или с помощью специальных пользовательских процедур или программ.
Layerjproperty Команда присваивает свойства слоям. flayer_property
>~H
Имя свойства определяет стандартные или пользовательские свойства. Как обычно, каждое свойство должно иметь имя (метку) и значение. Значение может быть либо другой меткой, либо числом или строкой текста. Команда позволяет присвоить как стандартные свойства (standartjproperties), так и пользователь-
16О
Команды автоматической трассировки ские (user properties) для одного или нескольких сигнальных или силовых слоев. Для каждого слоя можно присвоить свой идентификатор (метку). Для визуализации свойств слоев можно использовать команду report, которая генерирует перечень текущих свойств, присвоенных всем слоям в проекте.
Примеры команд Layer_property si (uprop_l 0.02) Layer_property si s2 (uprop_2 xyz) В этих примерах слоям присвоены пользовательские правила uprop_l и uprop_2 со значениями 0.02 и xyz.
License usage Эта команда используется для проверки доступных и используемых лицензий (вспомогательных программ). licence usage )-
Команда создает отчет, в котором перечислены доступные и используемые лицензии. Этот отчет можно записать в файл, если указать имя файла вместо дескриптора window. Если не указать ничего, то отчет будет записан в текущую директорию с именем license.rpt.
Пример команды License usage window.
Limit Эта команда устанавливает абсолютный контроль над каждой связью, проверяя число пересекающихся проводников, число ДСО, число изгибов и максимальное расстояние для неверно проложенных трасс. Cross — эта опция задает максимальное число допустимых конфликтов для печатных соединений. Via — максимальное число ДСО, допустимое при трассировке соединения. Bend — максимально допустимое число изгибов трасс. Way — максимальное значение нарушений расстояний в цепи. %
• '
бак. 27
161 - ' -
. . •
Глава 4
Команда limit позволяет специфицировать глобальный контроль трассировки, применительно ко всем связям вывод-вывод. Значения лимита лежит в пределах 0—255. Установить значение лимита можно после выполнения нескольких проходов трассировки, а затем установить это значение по умолчанию, равное -1.
Примеры команд
Limit via 3 Limit way 300 Limit way -1 4
Miter
Эта команда изменяет 90-градусные изгибы проводников на 135 градусов, задавая определенное сглаживание топологии трасс.
162
Команды автоматической трассировки Опция pin специфицирует ввод фаски или дуги в КП (включая пленарные), если расстояние между КП и изгибом трассы равно или больше чем ортогональный размер фаски (ОРФ (setback)). Дистанция ОРФ измеряется от центра вывода до поворота трассы. Опция slant заменяет неверно ориентированный сегмент на сегмент под углом 135 градусов или на дугу, когда длина неверного сегмента равна или больше чем ОРФ. Опция tjunction заменяет Т-образное соединение на соединение под углом 135 градусов, где ОРФ есть расстояние от Т-образного соединения до начала фаски. По умолчанию значение miter tjunction равно 0,5 дюйма. Опция bend специфицирует фаску или закругление (дугу) вместо изгиба трассы. Параметр start_OPФ указывает начальное ОРФ-расстояние, которое принимается как попытка. Когда все попытки неудачны в течение начальной итерации, тогда значение ОРФ делится на 2 и производятся попытки применить это новое значение ко всем 90-градусным изгибам трасс. Если результат опять неудачен, то ОРФ значение снова делится пополам и используется новое значение. Наконец, если результат деления на 2 стал меньше чем £та!_ОРФ, то это последнее значение применяется ко всем закруглениям, пока все попытки решить проблему не станут неудачными и процесс останавливается. Если же установлен только start_OPФ, то £ша!_ОРФ по умолчанию приравнивается к минимально допустимой ширине трассы. Опция style задает стиль закругления, в том числе diagonal — который заменяет углы поворота 90 на 135 градусов, или round — который заменяет угол дугой и тем скругляет поворот. Если стиль закругления — дуга, то значение ОРФ применяется ко всем углам. Если же ОРФ не задан, то по умолчанию miter round setback приводится к линейной единице, которая вычисляется как: Линейная единица = ширина трассы + зазор между трассами. Эта единица вычисляется для определенного слоя. Layer <имя слоя> Эта опция позволяет применить операцию сглаживания к заданному слою. При задании нескольких слоев их имена необходимо писать через пробел. Команда Miter подобна команде recorner, но с расширенными возможностями. При опции diagonal углы трасс в 90 градусов заменяются на углы 135 градусов. Если эту команду применить без опций, то операция применяется ко всем типам сглаживания, а по умолчанию производится диагональное сглаживание. Например, команда miter аналогична команде: Miter (pin) (slant) (bend) (tjunction) (style diagonal) Если выдать команду сглаживания без указания типа, то параметр ОРФ принимает значение по умолчанию. В этом случае значение для вывода и уклона принимается равным одному дюйму. 6
*
163
Глава 4
' •
•
В течение операции сглаживания трассировщик выявляет все 90-градусные углы и пытается заменить их на 135-градусные или на дуги, используя значения ОРФ, как оно задано, или по умолчанию. Если по крайней мере одна попытка применить сглаживание успешна в течение прохода, трассировщик повторяет операцию с установленным значением ОРФ по отношению к оставшимся углам 90 градусов. Если необходимо произвести технические изменения или повторить трассировку, можно использовать команду unmiter для удаления всех 135-градусных углов трасс. Трассировщик работает более эффективно, когда перетрассирует ортогональные проводники. Типы закруглений определяются следующим образом: • Pin <setback> специфицирует наклонный отрезок трассы (фаску) или дугу, начинающиеся в центре КП (включая планарные КП), если расстояние от КП до изгиба трассы равно или больше, чем setback. Собственно, величина setback для сглаживания трассы от КП до ортогонального изгиба трассы измеряется от центра КП до точки изгиба.
setback
•
is changed to
Slant <setback> — опция заменяет сегмент трассы запрещенного направления на 135-градусный сегмент или на дугу, если длина этого сегмента равна или больше установленного значения для setback.
setback is changed to
setback
setback
Bend <start_setback>
setback is changed to '
164
Команды автоматической трассировки • Tjunction <setback> специфицирует изменение ортогонального Т-подключения трассы на 135-градусное, где ОРФ есть расстояние от точки подключения до начала фаски. Значение по умолчанию 0,5 дюйма. •
Layer — управляет операцией сглаживания на указанных слоях. Для этого надо ввести названия слоев, разделенных пробелом.
Имеются несколько способов закругления: •
Diagonal —•* заменяет 90 градусов на 135.
• Round — заменяет угол трассы в 90 градусов на радиальное закругление. При этой опции значение setback используется для всех углов. Если же этот параметр не специфицирован, то он приравнивается одной линейной единице, где: Линейная единица = ширине трассы + зазор между трассами. setback
Н
h-
setback
Примеры команд
Miter Miter (pin 50) (slant 100) (bend (1000 50) (style diagonal)
Mode Эта команда устанавливает режим для левой клавиши мышки.
Interactive routing mode Для отображения описания режимов интерактивной трассировки необходимо выбрать режим option в составе команд трассировщика. 'Ниже приведен список ключевых слов, используемых в этом режиме: Change_connectivity Change_poligon Change_yia
165
Глава 4 Change_wire Check_area Copying Copy poligon
Cut Cut_poligon Режим удаления Delete keepout Delete net Delete poly_wire Delete segment Delete wire Режим редактирования Edit Edit fence Edit keepout Edit poligon Edit region Edit ruler Режим редактирования топологии
Pic net Pin attribute Add virtual pin Delete virtual pin Move virtual pin Reorder guides Fix/unfix pin Set fromto rules Highlight Measure Merge poly_wire Merge keepout 166
Команды автоматической трассировки Repair net
v
Rotate_via (доступно только с лицензией RouteMVia) Режим выбора Select comp Select guide Select net Select pin Select poly_wire Select wire '
"
•
• ' " . ' * *
slide Change^conn — нажмите левую клавишу мышки (ЛК) для изменения цепи, в которой есть провода или электрические полигоны, на цепь, которая выбирается из списка существующих цепей в диалоговом боксе. Change_poligon — нажмите ЛК для замены слоя или цепи для полигона. Change_via — нажмите ЛК для выполнения операций: •
заменить один тип ДСО на другой;
•
изменить атрибуты КП для контрольной точки;
•
изменить атрибуты КП для стрингера;
•
заменить количество столбцов или строк в массиве ДСО.
Change_wire — нажмите ЛК для изменения ширины индивидуальных сегментов проложенных трасс. Change_area — нажмите ЛК для обнаружения и отметки нарушений правил размещения и трассировки в пределах прямоугольника. Задание прямоугольной зоны производится мышкой вручную. Copying — нажмите ЛК для создания копий трасс и ДСО. При этом возможно создание копии трассы по длине и топологии. Можно копировать стрингеры с их атрибутами, компонент с сохранением образа. Отметим невозможность копирования трасс, принадлежащих силовым цепям. Copy poligon — нажмите ЛК для копирования индивидуальных объектов или объектов в пределах прямоугольной области. Возможно копирование электрического полигона (металлизированного полигона, соединенного с цепью) и запретной зоны. Critic wire — нажмите ЛК для удаления лишних изгибов трасс в пределах указанной прямоугольной области платы.
167
Глава 4 Cut — нажмите ЛК для разбивки сегмента цепи на два сегмента (сегмент цепи — это отрезок трассы в виде прямой линии). Однократное нажатие клавиши разрывает сегмент в указанной точке. Двукратное нажатие клавиши в различных позициях разрывает все сегменты трасс, которые пересекают нарисованную линию между двумя позициями. Cut_poligon — нажмите ЛК для разрезания прямоугольной области на два полигона. Разрезание происходит следующим образом: • Если имеется два или более перекрывающихся полигонов, то разрезан будет только верхний.. • Разрезаются только ортогональные или 45-градусные полигоны. • С помощью этой команды полигоны нельзя разрезать на куски. • При разрезании полигона его связность рассчитывается заново. • При разрезании запретной зоны высокого уровня, определенного в проектном файле, все изменения будут занесены в файл сессии. Delete — нажмите ЛК для удаления сегментов, трасс, цепей или запретных зон. Опциями являются: • Delete segment, который помечается нажатием ЛК для удаления одиночного сегмента. • Delete wire, который помечается нажатием ЛК для удаления всех сегментов между двумя терминальными точками. К таким точкам относятся выводы, ДСО или Т-подключения. • Delete keepout, который помечается нажатием Л К для удаления запретных зон. Однако нельзя удалить запретную зону, заданную как обра» (образ компонента, типовой корпус, который включает в себя уникальное имя и определение выводов). Кроме того, образ компонента может включать изображение габаритных размеров компонента, сторону установки компонента на плате, его ориентацию и связанные с компонентом барьеры трассировки. • Delete poly_wire, который помечается нажатием ЛК для удаления металлизированного полигона. • Delete net, который помечается нажатием ЛК для удаления всех принадлежащих цепи трасс и ДСО. Однако цепь не удаляется. Edit — нажмите ЛК для прокладки или редактирования трассы или металлизированного полигона, запретных зон или регионов. Опциями являются: • Edit — позволяет прокладывать новые или редактировать существующие трассы. • Edit poligon — позволяет рисовать металлизированный полигон. • Edit fence — позволяет рисовать специальную область для трассировки.
168
Команды автоматической трассировки • Edit keepout — позволяет рисовать области запрета для размещения или трассировки. Тип такой зоны определяется запрещаемыми объектами. • Edit region — позволяет рисовать области запрещения действия определенных правил проектирования. • Edit ruler — позволяет рисовать калиброванную линейку где-либо в рабочей области. Edit topology — нажмите Л К для задания одного из режимов редактирования. Опциями являются: • Pick_net — выбирается цепь для топологического редактирования. • Pin_attrb — позволяет присвоить атрибуты для выводов-источников, нагрузки и ограничителя, атрибуты стрингеров для сквозных выводов компонентов для редактируемой цепи. • Add_virtual_pin — позволяет добавить виртуальные выводы для редактируемой топологии цепи. • Remove_virtual_pin — удаляет виртуальные выводы из цепи. • Move_virtual_pin — перемещает виртуальные выводы. •
.
Reorder (reorder_by_comp) — позволяет изменить последовательность или связность редактируемой цепи. Возможна спецификация таких стратегий трассировки, как starburst, daisy, mid-driven daisy, balanced daisy.
• Fix_pin — разрешает или запрещает трассировку выводов редактируемой цепи. • Set_rules — позволяет установить правила проектирования для индивидуальных отрезков редактируемой цепи. Возможна установка зазоров, направлений трасс, временных факторов, экранировок, перекрестных наводок и шумов. •
Forget_fromto — позволяет удалить установленные для отрезков правила проектирования редактируемой цепи.
Highlight — нажмите ЛК для интерактивной подсветки цепей. Measure — нажмите ЛК для установления режима измерения. Это позволяет измерять расстояния между двумя точками или выбирать информацию о трассируемых объектах, нарушениях правил проектирования в специфицированных координатах. При этом Specctra отображает результаты измерений в выводном окне, области вывода сообщений и координатной области. Merge keepout — нажмите ЛК для установки режима слияния зон. Возможно слияние перекрывающихся полигонов одного типа, а также можно занимать одинаковые слои и вводить одинаковые правила проектирования в пределах области посредством быстрого перемещения указателя поперек области. \ Merge poly_wire — нажмите ЛК для установки режима слияния металлизированных зон.
169
Глава 4 Repair net — нажмите ЛК для удаления сегментов трасс, которые нарушают установленный порядок прокладки отрезков трасс для цепи. Rotate_via — нажмите ЛК для вращения ДСО через 90 градусов. Select — нажмите ЛК для выбора объектов в операциях трассировки или отмените выбор для ранее выбранных объектов. Типами таких объектов являются: Component, Net, Wire, Guide, Pin, Poly_wire. Slide — нажмите ЛК для перемещения индивидуальных объектов или объектов в пределах области. Можно перемещать сегменты трасс, ДСО, изгибы трасс, полигоны (металлизированные полигоны и зоны запрета) и границы полигонов.
Draw modes Для установки этого режима (режима рисования) нажмите ЛК после команды mode edit. После этого возможно: • рисовать разрешенные зоны (барьеры) в режиме Draw Fence; •
рисовать запретные зоны в режиме Draw Keepout;
• рисовать регионы в режиме Draw Region; •
рисовать линейки в режиме Edit ruler.
Рисование барьеров (разрешенных зон) Барьеры определяют разрешенные для трассировки области, представляющие собой многоугольники (вершины, соединенные линиями). Для их рисования необходимо ввести указателем каждый угол, a Specctra рисует линии между этими точками. Если положение последней точки не совпадает с первой, система автоматически замыкает контур. Разрешенную зону можно поместить на единственном слое или на всех сигнальных слоях. Система трассирует соединения внутри разрешенной зоны в зависимости от типа такой зоны — жесткой (по умолчанию) или мягкой (см. команду set soft fence для дополнительной информации). При необходимости задавать точные координаты такой зоны следует использовать команду fence. При необходимости изменить образ зоны или расположение существующей зоны, ее необходимо удалить и затем переопределить. Для удаления следует использовать команду delete fence. Отметим, что жесткие и мягкие разрешенные зоны не могут сосуществовать одновременно, т. е. все такие зоны в проекте могут быть либо жесткими, либо мягкими.
Рисование запретных зон Запретные зоны определяют запрещенные для трассировки области, представляющие собой многоугольники (вершины, соединенные линиями). Для их рисования необходимо ввести указателем каждый угол, a Specctra рисует линии
17О
Команды автоматической трассировки между этими точками. Если положение последней точки не совпадает с первой, система автоматически замыкает контур. Запретную зону можно поместить на единственном слое или на всех сигнальных слоях. Запрещенные объекты не могут касаться или пересекать контур зоны. При необходимости задавать точные координаты такой зоны следует использовать команду define keepout. При необходимости изменить образ зоны или расположение существующей зоны, ее необходимо распустить и затем переопределить. Для роспуска следует использовать команду forget. Зону, если она определена в системе Specctra, можно распустить, но если она задана в проектном файле в секции образов, ее удалить невозможно. Рисование региона Регион определяет область действия правил проектирования трассировки, представляющей собой многоугольники (вершины, соединенные линиями). Для их рисования необходимо ввести указателем каждый угол, a Specctra рисует линии между этими точками. Если положение последней точки не совпадает с первой, система автоматически замыкает контур. Запретную зону можно поместить на единственном слое или на всех сигнальных слоях. При необходимости задавать точные координаты такой зоны следует использовать команду define region. По умолчанию правила для региона применяются ко всем цепям региона. Как вариант можно задать такой регион, в котором правила относятся только к определенной цепи, к определенному классу цепей или между двумя классами. Для этого необходимо использовать команду rule. При необходимости изменить образ региона или расположение существующего региона, его необходимо распустить и затем переопределить. Для роспуска следует использовать команду forget. Рисование линейки Линейка представляет собой градуированную шкалу, нарисованную между двумя точками в рабочей области. Каждые 5 рисок оцифровываются значениями расстояний. Линейка может быть вертикальной, горизонтальной или диагональной под 45 градусов.
Net_property Эта команда присваивает свойства цепи.
171
Глава 4 Дескриптор <property_name> специфицирует стандартные или пользовательские свойства. Каждое свойство должно иметь метку <property_name> и значение <property_value>. Значение может быть другим дескриптором, числом или строкой текста. Команда позволяет присвоить свойства одной или нескольким цепям. Возможно выбрать цепи перед обращением к этой команде или указать имя каждой цепи
Net_property sigl (uprop_l 0.02) Net_property sig2 sig3 (uprop_2 xyz) Net_property (uprop_3 1.2)
Order Эта команда задает топологию цепей в смысле последовательной или звездообразной трассировки.
Sturburst — опция разрешает метод трассировки цепей, использующий трассировку в виде звезды для каждого вывода. Daisy — разрешает только один вход и единственный выход в цепи для каждой КП и не разрешает Т-подключение. Другими словами, это правило трассировки типа «ромашка» (звезда), при котором цепь имеет единственный вывод-источник и несколько выводов-приемников. Этот вариант называется простой цепочкой. Можно задать разновидности такой топологии трассировки с помощью опции type. Туре — вариантами топологии являются: 172
Команды автоматической трассировки • mid_dfaven — когда терминатор размещается в конце каждой цепи, а нагрузка присоединяется опять к источнику. Если в цепи более одного источника, то они сцепляются вместе с первым источником перед обработкой оставшейся цепи. Другими словами, это такой способ трассировки цепей, при котором источники (Source), соединенные в цепочку, находятся в центре цепи, а два приемника (Terminator) — на ее концах. • balanced — когда сегменты сцепляются цепочкой и нагрузка распределяется одинаково между КП-источниками и КП-терминаторами. Если найден больше чем один КП-источник, КП-терминаторы и КП-нагрузки подсоединяются как ветви к ближайшему КП-источнику, а остальные КПисточники подключаются в виде простой цепочки. Другими словами, это . такой способ трассировки цепей, при котором каждая цепь имеет по меньшей мере один стартовый вывод или источник и два или более оконечных выводов или приемников. При этом источники (в случае, если их больше одного) соединяются в единую цепь цепочкой, которая затем разветвляется на несколько ветвей, идущих к приемникам, в отличие от техники daisy chain, при которой минимизируется суммарная длина проводников, соеди-' няющих пары выводов, и каждый вывод не может принадлежать более чем двум сегментам цепи. Такая топология позволяет сбалансировать нагрузку на выводы источника и облегчить трассировку цепей, сочетая преимущества топологий «ромашка» и «цепочка». Как правило, источником являются выводы микросхем, а приемниками их входы. Selected •— упорядочиваются только выбранные цепи. All_net — любые цепи, которые не отмечены как упорядоченные. Net — определяет порядок трассировки поименованных цепей. Когда Specctra читает файл проекта, он разделяет множество КП-цепей на 2 терминальных соединений. Способ такого разделения зависит от того, имеется ли какое-либо упорядочение в этом файле. Если ничего такого нет в проектном файле, Specctra принимает режим звездообразной трассировки. Команда order изменяет начальную последовательность трассировки. Поэтому необходимо решить, нужно ли реорганизовывать все цепи или установить тот или иной порядок трассировки для нескольких важных цепей. Такой выбор можно сделать с помощью мышки или непосредственным вводом команды. При выборе команды order необходимо задать тип упорядочения, при этом упорядочение относится только к нерастрассированным цепям. Наилучший результат трассировщик получит при трассировке по методу starburst. Если в цепях файла проекта определены КП как источник, нагрузка или терминатор, но не задана команда на их упорядочение, необходимо выдать команду order daisy для разводки их в цепочечном режиме от источника к нагрузке и терминатору. После команды assign_pin необходимо выдать команду order daisy
173
Глава 4 чтобы упорядочить КП в соответствии с присвоенными им свойствами. Если же в файле проекта перечислены упорядоченные сегменты проводников, необходимо ввести команду forget net, перед использованием команды order для упорядочения этих сегментов. Следует при этом помнить, что команда forget net отменяет все правила для цепей.
Примеры команд
Order daysi (type mid_driven) ^terminator!
[terminator |
order daysi (type balanced)
terrninator^J
Protect/unprotect Эта команда запрещает автотрассировщику делать проходы перетрассировки существующих трасс и ДСО. Команда unprotect снимает запрет. АН — опция касается таких объектов как: Testpoints, который включает все контрольные точки; Vias, который включает все ДСО. All poly_wires — эту опцию используют для запрета полигонов с электрическими характеристиками (металлизированных). Она не влияет на проводники. All wires — касается проводников. Selected_wires — касается только выбранных текущих трасс. Layer_wires — касается всех проложенных трасс на указанных слоях, причем можно задать несколько слоев. Class — касается всех проложенных цепей 1 включенных в класс. 174
Команды автоматической трассировки
Net — то же для всех именованных цепей. Selected_poly_wires — запрещает только полигоны из проводников, которые ранее выбраны. Attr — касается только таких ДСО, которые имеют атрибуты. Если объекту присвоено несколько атрибутов, то можно запретить такой объект, используя любой из этих атрибутов. Например, можно использовать опцию fanout для запрета проводников, растрассированных с помощью этой команды. То же относится к команде bus. Type_soft — запрещает/отменяет запрет всех проводников и ДСО, которые автотрассировщик мог стирать или вводить при необходимости трассировать другие проводники. Type_route_mode — опция позволяет отменить запреты для трасс и ДСО, заданных в файле проекта, при использовании последовательно команд unprotect для отмены защиты этих объектов: • Использование unprotect type_route_mode означает, что трассы, определенные как type_route, могут быть переведены в незащищенные с помощью последовательности команд. • Использование protect type_route_mode означает, что трассы, определенные как type_route, не могут быть переведены в незащищенные с помощью последовательности команд.
175
Глава 4
.
Команду protect рекомендуется использовать для защиты растрассированных и других объектов, которые необходимо предохранить от изменения. Эту команду можно применить к стрингерам и жгутам, которые необходимо сохранить без изменения, а также для сохранения трасс, считанных из внешнего файла (например из PDIF-файла). Отметим, что рассмотренная команда применима только к проложенным трассам. См. команды fix и unfix для управления трассировкой цепей. Примеры команд Protect all wires Protect all wires (attr f anout) Protect all wires (attr bus) Unprotect all wires (attr bus) Unprotect selected wires Protect net CLK1 Unprotect net CLK1 Protect layer_wires s2 s3 Unprotect layer_wires L2 L3 Protect all vias (attr f anout) Unprotect all vias Protect all testpoints Unprotect all testpoints
Quit Эта команда позволяет выйти из системы Specctra.
Команда quit прекращает операции Specctra. Если вы не сохранили изменения в проекте, Specctra напомнит о необходимости запоминания файла сессии и предложит опцию для удаления текущего DID-файла. Эту команду можно ввести интерактивно или из DO-файла. При использовании этой команды в виде —quit при запуске Specctra, операция немедленно прекращается после последней выполненной в DO-файле команды.
176
Команды автоматической трассировки Пример команды Quit
Read colormap Эта команда загружает файл цветовой карты (файл определения цветов различных объектов).
Colormap — опция загружает ранее сохраненную в файле цветовую карту. Дополнительная опция form загружает цветовую карту в текущей палитре, вместо установленной в сессии, и отображает диалоговый бокс цветовой карты для интерактивной корректировки цветов или выбора палитры. При использовании этой команды, Specctra читает поименованный файл цветовой карты. Этот файл содержит данные, которые определяют дисплейные цвета и образы для проектных объектов, и графические характеристики в рабочих зонах. См. также команду write colormap. Пример команды Read colormap colorl.std
Read keepout Эта команда загружает запретные зоны из файла сессии.
Keepout — опция загружает высокоуровневые запретные зоны из файла сессии, который содержит данные из предварительной сессии трассировки. В этом файле сохранены только те запретные зоны, которые были добавлены, модифицированы или удалены. Высокоуровневые запретные зоны — это зоны, определенные в секции структур в файле проекта или в файле сессии.
Пример команды Read keepout design.ses
177
Глава 4
•• •
:
Read routes Эта команда загружает файл трасс.
Routes '— опция загружает файл трасс, который содержит все растрассированные проводники и ДСО плюс дополнительную информацию для трансляции данных трассировки обратно в главную САПР. Ignore_net — опция делает недоступными имена цепей, зафиксированные в секции Net-out файла трасс, но дает возможность системе Specctra определить имена цепей на основе КП, трасс и ДСО проекта. Туре — выбирает тип проводников из файла трасс с признаком protect или unprotect. Эта команда читает файлы, созданные по команде write routes. При этом любые существующие проводники заменяются проводниками из файла трасс. Если Вы не хотите соединять трассы из файла трасс с существующими трассами, используйте команду delete all wires перед командой read routes. При использовании команды write session и новом запуске Specctra с помощью файла сессии читать файл трасс как выполнение отдельной операции нет необходимости. При изменении списка цепей в САПР можно применить операции ЕСО для трассировщика, загрузив файл проекта с трассами или файл трасс. Можно использовать команду read routes с опцией ignore_net для загрузки файла трасс для процесса ЕСО. Примечание. Механизм ЕСО (Engineering Change Order) позволяет записывать в файл все изменения, выполненные в графическом редакторе, и передавать их для внесения изменений в электрическую схему, при этом возможна прямая и обратная корректировка. Примеры команд Read routes rev_c.rte Read routes (ignore_net) rev_d.rte
178
|
Команды автоматической трассировки
Read_wire Эта команда загружает файл проводников.
Wire — опция загружает файл проводников, который содержит данные о всех растрассированных проводниках и ДСО. Туре — выбирает тип проводников из файла трасс с признаком protect или unprot^ct. Вы можете считать файл из внешнего файла или добавить данные из файла к существующим трассам. При этом происходит замещение существующих трасс трассами из файла. Если это нежелательно, то необходимо использовать команду delete all wires перед считыванием.
Пример команды Read wire rev a.w
Recorner Эта команда заменяет 90-градусные изгибы трасс на 135-градусные. Более мощная команда для этих целей — команда Miter.
Pin — изменяет угол отрезка трассы от КП и ДСО до изгиба трассы на 135 градусов, если угол изгиба размещен далее чем установленное значение setback (т. е. ортогонального размера фаски — ОРФ). Из этой операции исключены прямоугольные КП. Slant — заменяет два 90-градусных изгиба двумя 135-градусными.
179
Глава 4 Bend — заменяет 90-градусный угол изгиба трассы на 135-градусный (сглаживает угол фаской). Round — заменяет угол 90 градусов на дугу. Diagonal — выполняет операцию сглаживания для всех подходящих случаев — для pin, slant, bend, при этом учитываются соответствующие размеры фасок. По умолчанию значения setback равны соответственно: для pin и slant — 1 дюйм, для bend — 0,5 дюйма, для round — сумма ширины трассы и зазора трасса-трасса. Целью сглаживания изгибов является улучшение технологичности изготовления ПП. Ввод дуги, сглаживающей квадратные углы, доступен только при наличии лицензии fast circuit. Каждый угол проверяется на допустимость, чтобы не создать новые конфликты. Команда recorner diagonal выполняет операции сглаживания для всех КП (pin), сдвигов трасс (slant) и изгибов (bend) одновременно. При проведении технических доработок или перетрассировки проекта необходимо использовать команду unmiter для ликвидации сглаженных углов, так как трассировщик работает эффективнее с ортогональными трассами. Для дуги размер скругления может быть уменьшен против заданного, чтобы корректно вписать закругляющую дугу в топологию трассы. Как правило, команда сглаживания запускается на последнем этапе трассировки, перед передачей трассировки в основную САПР ПП. Примеры команд Recorner bend 0.250 Recorner diagonal 0.5 0.5 0.5
Undo/redo Эти команды отменяют и возвращают результаты интерактивных операций редактирования, трассировки и размещения.
Единственную интерактивную операцию, можно отменить вводом команды undo или используя [f3] или [undo].on на клавиатуре. Несколько операций можно отменить вводом .нескольких таких команд. При этом можно немедленно реверсировать команду undo вводом команды redo. Эту команду можно ввести как [Shift] [f3] или [shift] [undo]. Интерактивными операциями трассировки и редактирования, которые можно взаимно исключать командами undo и redo, являются:
18О
Команды автоматической трассировки Add/Edit Poligon Change Connectivity Change Poligon Change Via Change Wire Copy Poligon Copy Rout Critic Route Cut Segment
\
Cutout Poligon Delete (все режимы, за исключением Repair Net) Edit Route Merge Wiring Polygon Move Select/Unselect (за исключением КП)
Если в памяти системы нет никакой команды для отмены, то появляется информационный бокс с сообщением: Noting (more) to undo. С помощью команд взаимоотмены нельзя выполнить такие операции как: Repair Net, Edit Topology, Select/Unselect gate, subgate, pin и операции terminator. Примеры команд Unplace on Undo Redo
Reduce_padstack Эта команда разрешает уменьшение размеров и, возможно, формы сквозных КП на слоях ПП. reduce_padstack J
181
Глава 4
-:.-.•--:'
On — команда с этой опцией предписывает трассировщику немедленно установить альтернативные КП, независимо от статуса конфликта. После этого восстановить прежние размеры и форму возможно только при повторном запуске системы Specctra. Auto — команда с этой опцией может быть применена, если у трассировщика могут возникнуть трудности с выполнением 100-процентного результата. Трассировщик продолжает процесс и устанавливает меньшие размеры КП, если снижение конфликтных ситуаций происходит слишком медленно. Off — команда с такой опцией отключает ранее выданную команду с функцией auto. Эта команда эффективна только если ранее было проведена редукция КП. Это значение команды принято по умолчанию. Команда reduce_padstack освобождает критическое для прокладки трасс пространство на плотных ПП. После принятия этой команды трассировщик устанавливает альтернативные малоразмерные образы контактных площадок на определенных слоях. Такая переустановка размеров может быть применена только к сквозным КП, а КП альтернативных размеров должны быть включены в файл проекта. Примеры команд Reduce_padstack on Reduce_padstack auto Reduce_padstack off
Release license Эта команда проверяет наличие лицензий в списке доступных лицензий для всех пользователей Specctra. release license
j
^
Эту команду можно использовать для получения описаний доступных лицензий во время сессии Specctra без прерывания сессии. Полученные таким образом сведения становятся доступными для других пользователей. Выводимый список показывает корректные названия лицензий в стандартном формате или в формате RPP. Используйте соответствующий стиль для
182
Команды автоматической трассировки Пример команды Release license RouteADV
Repaint Эта команда индицирует часть рабочей области окна Specctra.
После ввода этой команды все видимые слои перерисовываются в порядке их перечисления на панели слоев, от нижнего к верхнему. Если вы проводите интерактивную трассировку и имеете набор активных и альтернативных слоев, эти слои выводятся сверху. Совет: остановить обновление экрана, если указатель мыши находится в рабочей зоне, можно нажатием клавиши [ESC]. Возможно использовать опцию repaint в команде set, чтобы разрешить или запретить все операции обновления экрана или разрешить обновления, только когда явно закончена операция визуализации (такие как окно, панорама, перерисовать). По умолчанию доступны все варианты перерисовки.
i
Возможно использование опции dofile_auto_repaint в команде set, для того чтобы разрешить перерисовку рабочей зоны после операций, заданных в командном файле. , ;
Пример команды Repaint
Report
• •
•
'
\ •
Эта команда формирует отчет о трассировке или размещении. Возможно создать следующие специфические отчеты: Class Class-class Component (идентификатор компонента) Corners
-
'
"
••
\ '
у
Crosstalk
Eel Group Group_set
183
Глава 4 Keepouts Layer (имя слоя) Length Net bundles Net (имя цепи) No_fanout Order_violention (no_stubs) Padstack Pairs
.
Power_fanout_order_violantion Property (объект) Regions Stack_via_depth Status Testpoint Unconnect Vias
File — опция отображает все специфицированные файлы в окне отчета, но необходимо специфицировать также имя существующего текстового файла. Design — отображает текущий проектный файл в окне отчета. Невозможно сохранить проект в новом файле и нельзя прогнать отчет о проекте из файла do. Invocation — генерируются все ошибки и предупреждающие сообщения после старта Specctra.
184
Команды автоматической трассировки Selected_objects — опция распечатывает информацию о выбранных объектах. Вы должны выбрать одну или более цепей, компонентов, образов, сегментов трасс, проводов и КП, о который надо получить информацию. Информация о цепи состоит из имени, числа КП, ДСО, проводов, Т-подключений для каждой цепи и длины трасс. Информация о компоненте состоит из имени, ориентации, слое размещения, координат точки привязки, имени корпуса и типа. Информация об образе состоит из имени и числа выводов для каждого образа и позиционного обозначения для каждого компонента. Информация о сегментах трасс включает данные сегмента, манхеттенскую длину неразведенных связей и действительную длину протрассированной части незаконченной связи для каждого сегмента. Информация о проводе состоит из сегментных данных, идентифицированных позиционным обозначением и номером вывода или типом объекта, координатами размещения для каждого сегмента трассы и слоя, на котором растрассированы сегменты проводника. / Информация о выводе компонента состоит из позиционного обозначения и номера вывода или типе объекта, координат расположения, описания каждого вывода (padstack) и слоя, на которых каждый вывод подсоединен. По умолчанию имя файла отчета — selobj.rpt. Детальное содержание информации в этом отчете приведено в selected object report. Для генерации отчета возможно использовать window для отображения отчета в окне отчета. Можно также указать имя файла
Примеры команд Report class
'
;
.
'
Report file boardS.do Report net siglS siglS.rpt Report selected_objects Ниже приведены типы отчетов: Class — составляется список всех предопределенных классов и цепей, входящих в эти классы. По умолчанию имя файла отчета classes.rpt. Для включения в список правил для классов, используйте команду report rules.
185
Глава 4 Class-class — составляется список всех предопределенных пар класс-класс. По умолчанию имя файла отчета clscls.rpt. Для включения в список правил для текущих пар классов используется команда report rules. Component — составляется список типов, имен образов, сторон платы, размеров, ориентации и координат компонентов. Для этого можно задать выбор компонента или указать его позиционное обозначение. В отчет будут включены все правила размещения, относящиеся к компоненту, включая присвоенные образы и свойства компонентов. В отчет включаются данные о каждом выводе компонента, их позиции, имена цепей, стек КП, имя цепи, присвоенные образы КП и их свойства. По умолчанию имя файла отчета comp.rpt. Corners — суммируется статус всех углов трасс, в список вносятся все углы в 90 и 135 градусов, дуги и другие углы. Указывается, сколько осталось изгибов в 90 градусов после работы команд recorner и miter. По умолчанию имя файла отчета corners.rpt. Crosstalk — составляется список заданных правил для параллельных и тандемных наводок и шумовых ограничений, включая нарушения правил и т.п. Информация о нарушениях правил состоит из имен цепей, соединений вывод—вывод, и задействованных сигнальных слоев. При генерации этого отчета Specctra также фиксирует графически перекрестные наводки с помощью белого прямоугольника, между сегментами-нарушителями правил. Длинная сторона этой метки пропорциональна величине нарушения. По умолчанию имя файла отчета xtalk.rpt. Eel — составляется список нарушений в цепях, имеющих логику эмиттерных связей с именами выводов и длин трасс между КП-источниками и КП-терминаторами. По умолчанию имя файла отчета net_ecl.tmp. Group — составляется список всех текущих групп сегментов (направлений). По каждой группе содержится информация об именах групп, имена цепей и связей вывод-вывод. По умолчанию имя файла отчета group.rpt. Group_set — составляется список заданных наборов групп, в том числе имена групп в каждом наборе. По умолчанию имя файла отчета grpset.rpt. Keepouts — составляется список запретных зон, их типов, образов, слоев и координатной информации. По умолчанию имя файла отчета keepouts.rpt. Layer — составляется список свойств и их значений, принадлежащих слою. По умолчанию имя файла отчета layer.rpt. Length — составляется список всех цепей, имеющих правила длин или задержек, значения этих правил, реальная длина трасс и задержек или временные задержки в каждой цепи, общие нарушения и сообщения об ошибках для каждой цепи или сегмента. По умолчанию имя файла отчета length.rpt.
186
Команды автоматической трассировки Net — приводятся данные о цепи, включая имя, присвоенный фиксированный статус, класс цепей, число КП, ДСО, проводников, Т-подключений и данные о длине трасс для специфицированной цепи. По умолчанию имя файла отчета net.rpt. .
-N,
Net_bundles — приводятся данные о каждой цепи или сегменте, входящих в жгут, и их взаимные зазоры на слое (здесь под жгутом понимаются наборы цепей, которые должны иметь одинаковую топологию). Если же зазоры не специфицированы, Specctra использует правило для самого большого зазора для цепей в жгуте и выводит строку: No Bundles Gap Specified. По умолчанию имя файла отчета bundles.rpt. No_fanout — составляется список всех выводов компонентов, которые не получили стрингеров после прогона последней команды fanout. Информация о выводах состоит из имени вывода, координат, стека КП и имени цепи, с которой вывод связан. В отчет включаются только такие КП, которые были указаны в последней опции pin_type в команде fanout. Этот отчет показывает наличие КП, к которым трассировщик не сумел подключить стрингеры. Отсюда можно сделать вывод, были ли такие КП блокированы или не смогли подключиться из-за установленных параметров. По умолчанию имя файла отчета nofanout.rpt. Order_violention — составляется список нарушений правил проектирования при использовании опции no_stab, с помощью идентификатора имен цепей и координат обнаруженных нарушений. По умолчанию имя файла отчета voils.tmp. Padstack — формируется список ДСО, КП и стека пленарных КП из библиотечной секции файла проекта. По умолчанию имя файла padstack.rpt. Pairs — составляется список цепей или сегментов сформированных дифференциальных пар и зазоров между ними. Если этот зазор не специфицирован как дифференциальная пара, Specctra использует зазор трасса-трасса и отмечает этот факт выводом сообщения: No Pair Gap Specified. По умолчанию имя файла отчета pairs.rpt. Power_fanout_violation — формируется список всех неподключенных КП, которые нарушали правила проектирования для стрингеров силовых цепей, и регистрируется общее число нарушений. По умолчанию имя файла отчета pwr_f an_order_viol. rpt. Property — формируется список свойств и их текущие значения. Фиксируется список имен объектов, свойства типов (системных или пользовательских), имен свойств и значений свойств. Необходимо специфицировать один или более типов объектов <property_objects> для включения в отчет. Можно выбрать: Component — список свойств каждого компонента в проекте. Component_pins — список свойств каждого вывода компонента в проекте.
187
Глава 4 Image — список свойств каждого корпуса в проекте. Image_pin — список свойств образа каждого вывода в проекте. Regions — составляется список всех заданных регионов, в том числе типов (регион, цепной регион, класс региона или класс-класс региона), образ, имя слоя, координаты каждого региона. По умолчанию имя файла отчета region.rpt. Stack_via_depth — формируется список нарушений правил проектирования для стека несквозных дополнительных отверстий. Status — составляется список данных трассировки, в том числе: • статус трассировки; •
история трассировки;
• статистика трасс; .
• суммарная статистика для слоев. Дополнительно к этому отчету автотрассировщик создает упрощенную статистику трассировки, отображает их в выводном окне и в конце каждого прохода трассировки запоминает их в файле по умолчанию monitor.sis. Specctra автоматически обновляет статусный файл после трассировки каждой сотни проводников. По умолчанию имя файла status.rpt. Testpoint — составляется суммарная информация о числе цепей, не имеющих контрольных точек, о числе контрольных точек на каждой стороне ПП, размере дискретной сетки для КТ, расстоянии между КТ и правилах для зазоров. В этом отчете содержится также информация о каждой КТ, в том числе координаты, тип, слой, имя стека КП, имя вывода или ДСО и имя цепи. Также содержатся единицы измерения. По умолчанию имя файла отчета tstpt.rpt. Для индикации нарушений правил проектирования КТ следует использовать команду highlight testpoint_violation. Unconnect — составляется список всех неподключенных отрезков (от-до) с именем цепи. В список входят позиционные обозначения, номера выводов и координаты для каждой КП в отрезке. По умолчанию имя файла отчета unconn.rpt. Vias — составляется список всех ДСО в проектном файле, сформированных в течение интерактивной и автоматической трассировки. По каждому ДСО выдается следующая информация: • слои, на которых они размещены; •
были ли ДСО выбраны для трассировки;
•
размеры огибающей рамки для ДСО;
•
форма ДСО на каждом слое.
. ' • . . • По умолчанию имя файла отчета vias.rpt.
188
Команды автоматической трассировки
Report conflict Эта команда генерирует отчет о текущих конфликтах в проекте.
Conflict — составляется список конфликтов по зазорам и пересечениям и заданные правила. Трассировщик проверяет все проложенные трассы и отображает конфликты в графическом виде. Ромбом отображаются конфликты пересечений, а прямоугольником — конфликты зазоров. Туре — опция идентифицирует все типы конфликтов для включения в отчет. Можно выбрать: • place — для вывода данных о компонентах, которые нарушили правила размещения и суммирования типов нарушений; • route — для вывода данных о конфликтах трасс; • all — для вывода данных о всех конфликтах. Эта команда отображает отчет о конфликтах в окне отчета и запоминает его в виде текстового файла. По умолчанию имя файла отчета conflict.rpt. Примеры команд
Report conflict Report conflict conflicts.rpt Report conflict (type route)
Report network Эта команда создает отчет, который содержит список цепей. Network — создает список имен цепей, число КП, ДСО, трасс, Т-подключений в каждой цепи и манхэттенскую длину трасс для каждой Цепи (включая одноконтактные цепи). По умолчанию имя файла отчета network.rpt. -Name — опция сортирует информацию в алфавитном порядке по именам цепей.
189
Глава 4
-Length — опция сортирует информацию о цепях по длине трасс от самой длинной к самой короткой. -Ratio — сортирует информацию о цепях по величине отношения действительной длины трасс, деленной на манхэттенскую длину. -Extra — сортирует информацию о цепях по разнице между действительной и манхэттенской длиной. По умолчанию производится сортировка по наименованию цепей. Если в команду не включены имя файла или дескриптор window, Specctra использует имя файла отчета по умолчанию network.rpt и запоминает отчет в текущей директории. Примеры команд Report network Report network -length Report network brdl.rpt Report network brd2.rpt -ratio Report network window -extra
Report rules Эта команда создает отчет, который содержит установленные текущие правила проектирования. Rules — формируется список текущих правил проектирования. Правила для зазоров выдаются отдельно для каждой установки объект—объект. В отчет входят имя файла проектирования, число сигнальных и силовых слоев и размеры ДСО и декретной сетки для трасс. По умолчанию имя файла отчета rules.rpt. Include — специфицируются правила, которые должны быть включены в отчет. При этом, возможно получить все правила (all) или только выбранные —pcb, layer, class, group, Group_set, net, fromto, class-class или padstack, region для приоритетных уровней вашего проекта. Если в команду не включены имя файла или дескриптор window, Specctra использует имя файла отчета по умолчанию rules.rpt и запоминает отчет в текущей директории.
190
Команды автоматической трассировки
Примеры команд Report rules Report rules newrules.rpt Report rules (include class)
;
Report rules (include net group)
Route Эта команда запускает автотрассировщик.
191
Глава 4 Параметр <passes> специфицирует число проходов трассировщика. Обычно рекомендуется 25 проходов. Параметр <start_pass> устанавливает точку в таблице штрафов, которую трассировщик использует в начале серии проходов. Типичными значениями являются: I — это значение является начальной стоимостью в начале трассировки. 6 — это значение стоимости после первых пяти проходов. Здесь штрафы являются относительно низкими. -
'
•'**:
II — значение стоимости после первых десяти проходов. Здесь штрафы являются относительно умеренными. 16 — значение стоимости после первых 15 проходов. Здесь штрафы являются относительно высокими. Параметр <start_pass> не рекомендуется использовать неопытным пользователям. Remote — опция удаляет трассы, когда трассировщик пытается переложить трассы и не будет восстанавливать трассы в первоначальной позиции. Эту опцию рекомендуется использовать, если число неудачных попыток проложить трассу больше 100 и при этом имеются сотни или тысячи конфликтов после десяти или более проходов. Эта опция выполняется автоматически, если трассировщик обнаружил плохую сходимость процесса и более 50 попыток. Цепи с уровнем приоритета 200 или выше не перекладываются и не удаляются. Команду route можно использовать в любое время, но не в режиме паузы. Возможна команда без указания числа проходов для единственного прохода. Specctra использует количество заданных проходов, пока имеются конфликты или непроложенные трассы. После достижения 100% разводки, без пересечений трасс и нарушений зазоров неиспользованное количество проходов аннулируется. Индикатор процесса трассировки
192
Команды автоматической трассировки diagonal_mode> можно разрешить трассировщику использовать диагональную трассировку. Дополнительная информация о режимах трассировки приведена в командах bus, fanout, smart_route. Примеры команд Route 25 Route 50 16 Route 5 (remove) .
Rule Эта команда устанавливает правила с наличными приоритетами в иерархии правил.
Pcb — опция задает правила проектирования для проекта, в том числе для зазоров, ширин проводников, временных задержек, взаимных наводок и шумов. Layer — задает правила проектирования для указанных слоев. Дескрипторами для этого являются pcb, signal, power. Для слоя можно задать зазоры, ширины проводников, временные факторы, взаимные наводки, шумы, веса шумов и штрафы. Class — правила для специфицированных классов, определенных в системе Specctra или проектном файле. Возможно задание зазоров, ширин трасс, направлений трасс, задержки, экранировки, взаимных наводок и шумов. 7 Зак. 27
193
Глава 4
'
-
Group_set — правила для наборов групп. Возможно задание зазоров, ширин и времен. Net — правила для цепей. Возможно задание зазоров, ширин трасс, направлений трасс, задержки, экранировки, взаимных наводок и шумов. Group — правила для групп. Возможно задание зазоров, ширин трасс, направлений трасс, задержки, экранировки, взаимных наводок и шумов. Class-class — правила трассировки для указанных классов. Можно задать зазоры, взаимные наводки и шумы. Directional — этот дескриптор определяет, какой класс является источником и какой приемником шумов. Опция используется только совместно с дескрипторами параллельных и тандемных шумов. При этом нужно указать пары классов в нужной последовательности. Нельзя использовать directional, когда заданы правила взаимных наводок между проводниками единственного класса. Padstack — применяются правила к указанным стекам КП. Применить можно только правила зазоров. Region — правила для указанного региона. Задать можно зазоры и ширину трасс. Selected — применяется только к выбранным цепям. Установленные правила в Specctra перекрывают правила в файле проекта. Ниже приведена последовательность иерархий, которые зафиксированы в Specctra и они не могут быть отменены: Imagejmage
Устанавливает правила между имиджами (посадочными местами компонента). Это высочайший уровень иерархии
Family_family
Устанавливает правила между семействами. Семейством является группа имиджей „
Room_image_set
Устанавливает правила для набора имиджей, присоединенных к комнате
Room
Устанавливает. правила для комнаты, которая является областью платы, в которой Specctra размещает специфицированные компоненты
Super cluster
Устанавливает правила для суперкластера, т. е. для группы компонентов, которые рассматриваются как единый компонент
Component
Устанавливает правила для компонента, который является примером имиджа
Image
Устанавливает правила для имиджа, который определяет посадочное место (footprint — «отпечаток ноги»)
lmage_set
Устанавливает правила для имиджей с одинаковыми типами свойств. Тип свойства это определения — большой, маленький, конденсатор или другой дискретный элемент
Pcb
Устанавливает глобальные правила для всех компонентов в проекте. Это самый низкий уровень иерархии
194
Команды автоматической трассировки Объектные дескрипторы определяют уровни приоритетов для правил. Список типов правил, относящихся к каждому уровню приоритета правил, указан в разделе routing rule hierarchy. Для установки своих правил необходимо использовать
]
Rule pcb (limit_vias 3) Установить зазоры для слоя: Rule layer SI (clearance 50 (type smd_to_turn_gap)) Установить правило параллельных сегментов для класса: Rule class critical (parallel_segment (gap 25) (limit 150)) Установить правило параллельных сегментов для группы: Rule group gl (parallel_segment (gap 25) (limit 150)) Установить лимит пути для выбранной цепи: 7
*
195
Глава 4
.
Rule selected (limit_way 5) Установить общие правила для планарных КП: Rule pcb (via_at_smd on (grid on)(fit on)) Установить шумовые правила для класса: Rule class clock (max_nouse 400) Rule class clock (parallel_nouse (gap 5) (threshold 50)(weigth .04)) Rule class clock (tandem_nouse (gap 12)(threshold 50)(wigth .01)) • Установить правила задержек для класса: Rule class clock (time_length_factor .51) Rule class clock (min_total_delay 1.2) Rule class clock (max_total_delay 1.5) Установить ширину трасс для региона: Rule region region 1 (width 10) Установить разрешение Т-образного соединения трасс для набора групп: Rule group_set grpsetl (junction_type term_only) Установить зазоры для стеков КП: Rule padstack V25 (clearance 20 (type via-via)) Rule padstack V35 (clearance 25 (type via-via)) Установить ленточную ширину для цепи: Rule net wr7 (pin_width_taper up_down) Установить правила для контрольных точек всем цепям проекта: Rule pcb (testpoint (insert on)(grid 100)) Установить правило межслойных зазоров между классами: Rule class_class Cl C2 (inter_layer_clear 3 (type wire_wire wire_pin) (layer_depth 2)) Установить правила экранировок для цепи: Rule net wr9 (shield_gap 10) . Rule net wr9 (shield_width 12) Rule net wr9 (shield_loop open) Установить правило создания силовых стрингеров для всех силовых цепей в проекте. Эта команда будет пытаться соединить развязывающие конденсаторы перед отводами к ДСО: Rule pcb (power_f anout (pin_cap_via) 196
Команды автоматической трассировки Команду rule можно использовать для: •
установки зазоров;
•
установки межслоиных зазоров;
:
; ••' *-
• установки ширины проводника; • управления шириной сегмента трассы, входящей или покидающей КП; • установки фактора преобразования времени для задержки сигналов в трассе; • установки фактора для вычисления эффективной длины трассы на слое и эффективной длины ДСО; • установки максимальной длины трассы на слое;
•,
» установки правила, которое маркирует слой как запрещенный для трассировки; • установки максимальной амплитуды и длины пробела в соответствии с образом трассы (в виде последовательности меандров); • установки порядка цепей для звездообразной и цепочечной трассировки; • управления использования Т-подключения для звездообразной трассировки; • установки максимума длины стрингера и использования Т-подключения для цепочечной трассировки; • управления типом Т-подключения для разных дисциплин трассировки; • установки максимального числа изгибов в соединении; • установки максимального числа допустимых конфликтов пересечений в соединении; . . » установки максимального числа ДСО в соединении и в цепи; • установки максимально допустимого расстояния для трассы в запрещенном направлении в соединении; • разрешения интерактивного создания излишних проводов для цепи; • установки максимального шума допустимого в цепи; • управления вычислением параллельных и тандемных наводок; • управления параллельными и тандемными сегментами для расчета поперечных наводок; • установки минимальной длины, свыше которой эффект шумовой насыщенности становится фактором в вычислении шумов; • управления зазорами экранов, шириной экранирующих трасс и петля какого типа сформирована; • управления шириной экранирующих трасс, которая позволяет тандемному экрану превзойти ширину экранируемой трассы; •
управления дистанцией между отрезками экранируемых трасс;
• управления вводом контрольных точек в процессе трассировки;
197
Глава 4 • управления последовательностью стрингеров силовых КП развязывающих конденсаторов; • управления использованием ДСО под пленарными КП; • установки «рисунка» многочисленных вводимых ДСО (via) для многочипового модульного проекта в виде спирали, наклонной линии или ступенек. Дескриптор
[allow_redundant_wifing
Когда это правило разрешено, то интерактивный трассировщик может позволить создавать и оставлять петли из трасс. По умолчанию это запрещено. i Дескриптор
198
Команды автоматической трассировки Туре — указывает объекты, для которых задаются правила зазоров. Можно использовать специальные дескрипторы для спецификации зазоров между объектами, такими как ДСО в одной и той же цепи (via_via_same_net). Можно применить специальные дескрипторы для спецификации зазоров между двумя типами объектов. Такими объектами являются сквозные КП (pin), планарные КП (smd), ДСО (via), сегменты проложенных трасс (wire), запретные зоны или контур платы (area) и контрольные точки (testpoint). Можно использовать любую комбинацию из двух таких ключевых слов с подчеркиванием между ними. Например: (type pin_pin) (type pin_wire) Если же тип не указать, то правила зазоров относят на все типы объектов. Smd_via_same_net — планарные КП и ДСО в той же цепи. Via_via_same_net — ДСО в одной и той же цепи. Antipad_gap — КП и окружающий медный экран.
Pad_to_turn_gap
край сквозной КП и первый поворот или изгиб сегмента
трасс. Smd_to_turn_gap — край пленарной КП и первый поворот или изгиб сегмента трасс. Buried_via_gap — зазор между глухими дополнительными межслойными переходами на различных слоях. Можно использовать опцию layer_depth для контроля, сколько смежных слоев надо проверить для глухих дополнительных отверстий. Layer_depth — для задания количества проверяемых смежных слоев (положительное целое число), рассматриваемых, когда автотрассировщик проверяет зазоры между глухими ДО. Если число слоев между ДО больше, чем указанное положительное число, то правило зазоров не применяется. Значение 0 при задании значения зазоров позволяет объектам касаться краями, значение -1 означает отсутствие спецификации правила. Дескриптор эффективной длины переходного отверстия <effective_via_length> устанавливает правила для контроля величины, которая добавляется к вычисленной длине проводника за счет сквозного ДО.
<positive_dimension>
X -1
199
Глава 4 Дескриптор межслойных зазоров
\
Н
<positive_integer>
->G)
Туре — опция идентифицирует объекты, которым можно присвоить межслойные зазоры. Возможно, использовать ключевые слова объект—объект для задания допустимых зазоров между двумя типами объектов. К ним относятся сквозные КП (pin), планарные КП (smd), переходные (со слой на слой) КП (via), проложенные сегменты трасс (wire), запретные зоны и внешний контур платы (area). Возможно задание любой такой пары с помощью ключевых слов, разделенных символом подчеркивания. Если же тип не указан, то установленный зазор будет относиться ко всем типам объектов. Layer_pair — опция задает пару слоев, для которых задаются допустимые зазоры. Layer_depth — опция задает количество смежных слоев, которые рассматриваются трассировщиком при применении правил межслойных зазоров, к объектам одного или другого класса. Эта опция применима только к объектам класс— класс в иерархии правил. Это правило задает минимальное расстояние между объектами на разных слоях. В общем случае правила межслойных расстояний используется для защиты цифровых цепей от пересечения (на разных слоях) с аналоговыми цепями. Для этого необходимо определить классы аналоговых цепей и классы цифровых цепей и присвоить зазор типа класс-класс с дескриптором layer_depth, например: Rule class_class Cl C2 (inter_layer_clear (type wire_wire wire_pin) (layer_depth 2) Дескриптор типа Т-подсоединения <junction_type> правила такого подключения применительно к КП и сегментам трасс.
200
Команды автоматической трассировки
Дескриптор junction_type позволяет задать такой тип с помощью опций: Term_only — которая разрешает Т-образное подключение к любым КП и ДСО; Supply_only — который разрешает такое подключение только к КП-источникам; АИ — который разрешает такое подключение ко всем КП и сегментам трасс. В случае задания звездообразной трассировки правило t-iunction должно быть задано перед заданием типа подключения. Для цепочечной трассировки перед установкой типа подключения необходимо задать правило максимальной длины отвода подключения (max_stub) со значением больше 0. Отметим, что индивидуальные КП, проводники и полигоны-проводники могут быть заданы как КП-источники с помощью команды assign_supply. Дескриптор описания амплитудной характеристики трассы
<тах_атр>
\—^| <тах_атр> . [ J '
1
Это тот случай, когда трассировщику необходимо выполнить^ заданное ранее правило минимальной длины трассы (min_length). Значение максимума и минимума амплитуды задается как диапазон размеров амплитуды в высоту. Если же минимум не задан, то он принимается по умолчанию — как величина большая чем 3 ширины трассы или ширина трассы, плюс зазор между трассами. Значение мах_атр препятствует формированию амплитудных трасс и предписывает лабиринтную трассировку для выполнения требования минимальной длины. Значение —1 для max_amp разрешает амплитудный образ трасс, а значение —1 для min_amp возвращает минимальную высоту амплитуд к значению по умолчанию. На рисунке ниже показан фрагмент трассы в виде «аккордеона».
„ J
amplitude
Accordion patten
\I\ _г Gap
2O1
Глава 4
-
Дескриптор фактора длины
^G)
• ^^ lenght_factor )
bf~
| ^^—~^~
Этот дескриптор устанавливает коэффициент (вещественное число) для вычисления эффективной (полезной) длины трассы на слое. 'Значение должно быть равным или больше 0, а значение -1 отменяет задание этого правила. Фактор длины упорядочивает вычисление длины провода на слое. Реальная длина умножается на этот коэффициент для получения действительной длины трассы на слое. Дескриптор зазора
3
^l<positive_dimension>\
Если величина такого зазора равна или меньше допустимого зазора между сегментами трасс, этот параметр игнорируется. Дескриптор лимита изгибов
<positive_integer> \-
Значение этого параметра от 0 до 255. Дескриптор лимита пересечений определяет максимальное число конфликтов пересечений при трассировке соединения. Значение этого параметра от 0 до 255. Дескриптор лимита ДСО определяет максимальное количество ДСО при трассировке соединения.
Значение этого параметра от 0 до 255. Это правило задает число ДСО для сегментов трасс (from to). См. также правило max_total_vias для данных об управлении числом ДСО в цепи. Дескриптор лимита длины отрезков трасс неверного направления
202
Команды автоматической трассировки
Значение 0 не допускает наличия таких трасс, значение -1 отменяет это ограничение. Неверное направление означает прокладку горизонтального отрезка трассы на слое с преимущественными вертикальными трассами и наоборот. Отметим, что значение 0 для этого правила может значительно увеличить общее число ДСО в проекте. . Дескриптор максимального шума <max_nouse> определяет максимально допустимый шум, накопленный в цепи.
-н:
Значение этого правила есть вещественное число. Когда обнаруживается нарушение заданного значения, трассы, для которых производились вычисления, перекладываются заново для уменьшения шума ниже минимального значения. См. также правила parallel_nouse и tandem_nouse. Дескриптор максимального разброса длины трассы <max_stagger> без учета направлений сегментов трасс задает этот разброс длины на смешанных (одновременно используемых) слоях.
Значение -1 отменяет это ограничение, в результате чего соединение может быть оттрассировано без ограничений на его длину на смешанном слое. Смешанным считается силовой слой, на котором могут находиться сигнальные связи. Дескриптор максимального ответвления <max_stub> определяет максимально допустимую длину ответвления отрезка трассы при подключении объекта к цепочке.
max_stub
<positive_dimension>
Т
2ОЗ
Глава 4 Длина ответвления, это расстояние между КП или ДСО и точкой Т-соединения. Длина такого «пня» измеряется от центра КП до центра точки подключения. Значение этого параметра, равное 0, не разрешает ввод таких ответвлений, значение больше 0 разрешает, а значение -1 отменяет установку. Опция типа подключения junction_type позволяет задать такое подключение только для трасс или для КП и ДСО. Дескриптор максимального числа ДСО (дополнительных переходных со слоя на слой отверстий) задает это число для трасс цепи.
—*<)>—> <posltive_integer>
Это правило можно установить для цепи, отрезка (от — до) в группе или для цепи в классе. При применении этого правила к классу, ограничение будет касаться каждой цепи в классе, но не суммарному числу ДСО в классе. См. также правило limit_vias для информации об управлении числом ДСО в трассах от • — до (отрезках трасс). Дескриптор параллельных шумов задает вычисление параллельных наведенных шумов для параллельно проложенных трасс на заданном слое.
^| <positive_dimensiorr>
Опциями в этом случае могут быть: Off — задает отказ от вычислений шумов. Gap — восстанавливает такие вычисления и устанавливает значения зазоров (gap), интенсивности наводок (weight) и порогового значения (threshold) для вычисления параллельных наведенных шумов. Зазоры — это расстояние от края до края объектов, для которых вычисляются наведенные шумы. Такие шумы вычисляются, если зазоры между параллельными проводниками равны или меньше заданных, а трассы являются параллельными на дистанции, которая превосходит пороговое значение. Отрицательное значение подразумевает перекрытие трасс. Если пороговое значение параллельных отрезков не установлено, то по умолчанию используется значение зазоров.
204
Команды автоматической трассировки Интенсивность или вес наводок — это наведенный шум от цепи на единицу длины трассы. Такой параметр используется в cctl crosstalk модели. Значение его должно быть выражено в виде вещественного числа в электрических единицах измерения, согласованными с установленными в системе линейными единицами измерения. Например, если наводка между параллельными проводами равна 2 милливольта на мм, то вес равен 2 (при установке в Specctra единиц измерения — мм). Наведенный шум вычисляется умножением параллельных длин на установленное весовое значение для излучающей цепи. Наведенные суммарные шумы вычисляются как линейная или среднеквадратичная сумма наведенных шумов (линейная принята по умолчанию). На рисунке ниже приведен пример соотношения между зазорами и наведенными шумами.
.010 .020 .030 .040 .050 .060 Зазор (дюймы)
Дескриптор параллельного сегмента <parallel_segment> определяет необходимость учета наводок при параллельно проложенных проводниках на одном слое.
Опции gap и limit для этого параметра аналогичны описанным выше. Дескриптор ширины трассы подключения КП к трассе
205
Глава 4 yj—
-^жрп
эег*
—
\~m~~~~MmS
"*<
"P
Л
i
>
k
<
1
>"
— ^^ up_down ^—
L^__off_jJ — wT^
Опции для этого случая могут быть: Down — уменьшает ширину отрезка трассы. Это значение по умолчанию. Up — увеличивает ширину отрезка трассы, если это не приводит к конфликту со смежной КП. Up_down — уменьшает или увеличивает ширину отрезка трассы при необходимости. Off — возвращает ранее установленную ширину подвода. Max_length — ограничивает длину подводящего отрезка трассы. Правило pin_width_taper сравнивает соответствующую ширину отрезка трассы с шириной КП при их отличиях. Все другие отрезки трасс выполняют правила для ширин трасс в целом. Изменения ширин трасс не производится, если это приводит к конфликтам. Опция максимальной длины позволяет сформировать такую порцию трассы, которая короче отрезка трассы к КП. Если же задать такое значение максимальной длины, которое длиннее, чем соединяющий отрезок трассы, то изменена будет только подводящая трасса. Дескриптор силового стрингера <power_fanout> устанавливает последовательность трассировки стрингеров между силовыми КП, ДСО и развязывающими конденсаторами.'
@
»<power_fanout)
>ф
>С
order
Pin_cap_via —• эта опция позволяет проложить трассу прямо к конденсатору, перед ДСО. Pin_via_cap — опция позволяет проложить трассу к ДСО перед подключением к конденсатору. None — отменяет ранее установленное правило для силовых стрингеров.
206
Команды автоматической трассировки Это правило применимо только к компонентам, входящим в категорию больших, или к развязывающим конденсаторам, которые подсоединяются одним выводом в цепь питания, а другим заземляются и имеют свойство «конденсатор». Эта тема затрагивается также в разделах для команд high_ligth и report, Дескриптор изменения стратегии трассировки
Starburst — эта опция позволяет устанавливать многочисленные входы и выходы для выводов. Daisy — разрешает только один вход и один выход при подключении КП к цепи и не разрешает Т-подсоединения. Такая стратегия трассировки называется простой цепью. С помощью опции типа можно задать некоторые разновидности этой стратегии. Туре — опция устанавливает разновидности организации цепочки для трасс, в том числе: Mid_driven — когда КП-терминатор размещается в каждом конце цепи, а КПнагрузки добавляются в разные стороны от источника. Если имеется более одного источника, то они выстраиваются в цепочку перед соединением с нагрузкой. Balanced — когда связи от — до являются цепочечными и входят в нагрузку между КП-источниками и КП-терминаторами. Если определено более одного источника, то ветви для них подсоединяются обратно к ближайшим КП-источникам, а оставшиеся КП-источники упорядочиваются в простую цепочку. При выборе опции mid_driven в цепи должно быть точно два КП-терминатора и один или более КП-источников, а при выборе стратегии balanced КП-нагрузки равномерно распределяются между КП-источником и КП-терминатором. Дескриптор фактора ограничения длин объектов на слое
frestrictedjayer_length_factor
2О7
Глава 4
'•
Правила действуют как переключатели для идентификации слоев с ограничениями. Значение 1 маркирует слой с ограничениями. Значение 0 снимает ограничения, значение -1 вообще отменяет все спецификации ограничений. По умолчанию все слои имеют фактор ограничения длины на слое равными 0. Например! Rule layer sigl sig4 (restricted_layer_length_factor 1) — маркирует слои sigl и sig4, как слои с ограничениями. Только цепи с правилами для слоев с ограничениями будут трассироваться на этих слоях. Define (class restricted (selected)(layer_rule sigl sig4 (rule / (restricted_layer_length_factor 1))) — маркирует слои как имеющие ограничения на уровне класс-слой, что означает, что ограничения трассировки применяются к цепям в классе «restricted» на этих слоях. Дескриптор длины насыщения <saturation_length> устанавливает минимальную длину, выше которой влияние шумового насыщения становится фактором в вычислении шумов. ^р
i
>^ saturation_length )
^j<positive_dimension>\—>^ .
>•
Когда общая параллельная длина пары жертвы и агрессора — превосходит длину насыщения, вычисленный шум масштабирует общий шум с помощью отношения длины насыщения к общей параллельной длине. Это правило применяется к вычислению параллельных и тандемных шумов для уровней иерархии правил в отношении платы, класса и цепи, при использовании модели типа Ctla crosstalk. Эта модель используется в Specctra по умолчанию. Для использования эта модель должна быть установлена в системе. Она может присутствовать в следующих двух случаях: В составе файла проекта с использованием ключевого слова crosstalk_model в
+\ <positive_dimension> |—
Указанный зазор имеет приоритет перед существующими значениями зазоров между трассами. Установка значения зазора в -1 снимает правило, после чего зазор определяется по правилам, установленным для сигнальных цепей.
208
Команды автоматической трассировки Дескриптор экранной петли <shield_loop> задает правило, которое проверяет возможность замыкания концов экранирующего провода в процессе экранировки.
ф
К
shieldjoop
При этом опциями являются: Closed, которая означает, что Specctra трассирует экранирующие трассы, замыкая петлю или Open — которая означает, что петля не замыкается. При этом трассировщик обычно добавляет ДСО к каждому экранирующему проводу для их подсоединения к силовым слоям. По умолчанию установлена замкнутая петля. Дескриптор <shield_tie_down_interval> устанавливает расстояние между ответвлением на экране для его подключения к «земле». ф
>{shieldjie_down_intervar)
Н <positive_dimension>\
Значение -1 отменяет эту установку. Дескриптор <shield_width> задает установку ширины экранирующей трассы.
-Н <posltive_dimension>\—
Значение -1 отменяет установку, после чего ширина этой трассы принимает значение экранируемой. Дескриптор <spiral_via> устанавливает правила введения трассировщиком ДСО для установки крепежных винтов (обычно это неметаллизированные сквозные отверстия).
Опция vin_gap устанавливает минимальное горизонтальное расстояние между ДСО одинакового вида на смежных слоях. Используйте дескриптор крепежных ДСО совместно с командой rule чтобы задать правила для ПП, слоя, класса, цепи, группы, набора групп и сегментов. По
2О9
Глава 4 умолчанию такая установка отсутствует (off). Когда правило получает значение on, правило минимального расстояния контролирует дистанцию между последовательными ДСО. Если же min_gap не установлен, то придерживаются правила для самой большой дистанции между ДСО на всех слоях для такого вида. Трассировщик соединяет каждое ДСО в образе в направлении правого угла относительно первичного ДСО, в результате получается образ ДСО и связей в виде квадрата, если смотреть сверху.. Дескриптор стека дополнительного переходного отверстия <stack_via_depth> задает размер глухих и захороненных отверстий. stack_via_depth
\ - ^^ - ^
Это правило применяется только на уровне платы в иерархии правил и работает вместе с правилом задания стека <stack_via>. Например, чтобы вернуть размеры стеков и позволить слою соединиться с тремя слоями, необходимо ввести следующие команды: Rule pcb (stack_via on) Rule pcb (stack_via_depth 3) Дескриптор стека ДСО <stack_via> имеет опцию on, которая подразумевает, что два ДСО могут быть помещены в стек, если терминальные точки двух ДСО являются одинаковыми, что приводит в результате к центрированному стеку.
При опции off рассмотренные ДСО не помещаются в стек. Правило stack_via применяется к ПП и слоям по уровням приоритетов в rule hierarchy. Например, чтобы позволить перекрываться ДСО в проекте, нужно выдать команду: Rule pcb (stack_via on). Дескриптор <staggered_via> устанавливает правило, которое управляет вводом ДСО в виде, приблизительно соответствующем зигзагу.
L-fr^p-fr^JTi ix_gap_)-»(<positive_dimension>|-»iT)
210
Команды автоматической трассировки Трассировщик соединяет каждое ДСО, для реализации заданного образа смещая каждое следующее ДСО на 180 градусов относительно предыдущего, что создает образ из отверстий и связей в виде прямой линии, которая делает петлю после подключения каждого отверстия. Min_gap — устанавливает минимальное горизонтальное расстояние между ДСО одного вида на смежных слоях. Max_gap — устанавливает максимальное горизонтальное расстояние между ДСО одного вида на смежных слоях. Используйте рассматриваемый дескриптор совместно с командой rule для установки правил на уррвне ПП, слоя, цепи, класса, группы, наборов групп и отрезков от — до. По умолчанию применяется правило off. Дескриптор <staired_via> устанавливает правила, которые управляют трассировщиком при вводе ДСО в виде ступенек.
Опции min_gap,, max_gap аналогичны рассмотренным выше. Трассировщик располагает их в одном направлении, чтобы подсоединить каждое отверстие так, что создается образ ДСО, лежащих на одной прямой линии. Дескриптор
Опция off отменяет подсчет шумовка опция gap восстанавливает правило подсчета и задает значения gap, weight, threshold для вариантов подсчета параллельно наведенных шумов.
211
Глава 4
•
'
_______
Gap устанавливает зазор для вычислений шумов. Наведенный шум вычисляется для параллельных или тандемных трасс с зазором, который равен или меньше заданному, и трасса является параллельной на дистанции, которая превосходит значение порога (threshold). Если порог не установлен, для этого используется значение зазора. Опция weigth задает удельное значение наведенных шумов, т. е. количество милливольт на линейную единицу длины в системе.. Дескриптор тандемного сегмента (tandem_segment) специфицирует сегментные наводки между цепями на смежных сигнальных слоях.
Для такого сегмента задаются значения зазора и минимальной длины (gap, limit). Если трассы паралелльны на дистанции, превосходящей или равной заданному лимиту, а расстояние между ними равно или меньше заданного зазора, трассировщик перетрассирует эти трассы в течение последовательных проходов. Информация об управлении сегментами и шумами между трассами на одном слое приведена при описании правил parallel_cegment и parallel_nouse. Дескриптор
^jtandem_shield_overhang)
Н <positive_dimension>\
>^)
>•
Этот дескриптор используется для спецификации дополнений к ширине на каждой стороне экранирующей трассы. Общая ширина экранирующей трассы представляет собой удвоенное значение Tandem_shield_overhang плюс ширина экранируемой трассы. По умолчанию значение такого дескриптора равно ширине экранируемой трассы, что в результате устанавливает ширину экранирующей трассы, в 3 раза превышающую экранируемую. Дескриптор
212
Команды автоматической трассировки
Direction — устанавливает сетку по одной из осей координат. Offset — устанавливает смещение для сеток. Side — задается сторона платы как front для первого слоя, как back для последнего слоя или как both для обеих слоев. По умолчанию — back. Use_via — идентифицирует один или более стеков КП для контрольных точек. Если стек не задан, трассировщик использует самый маленький размер сквозной КП, разрешенный для трассировки.
213
Глава 4 Center_center — задает минимальное расстояние между центрами двух КТ. Если значение этой опции не задано, контроль межцентровых расстояний не производится. Comp_edge_center — задает минимальное расстояние между центром КТ и границей компонента. Если значение этой опции не задано, проверка не производится. Image_outline_clearence — задает минимальный зазор между КТ и границей компонента. Allow_antenna — разрешает вводить антенну (ответвление от трассы типа стрингера) для КТ. Pin_allow — разрешает вводить сквозную КП для КТ. В этом случае можно дополнительно задать список компонентов со сквозными КП для их использования в качестве КТ. Если компонент не задан, будут использованы сквозные КП, удовлетворяющие требованиям дискретной сетки и зазорам. Мах_1еп — ограничивает длину трассы для антенны КТ. Длина измеряется от точки привязки КП до центра ДСО КТ. Правило задания контрольных точек используется для улучшения тестируемости печатной платы посредством введения контрольных точек на трассируемые сигнальные цепи. КТ можно присвоить цепи, классу или всей плате. Контрольная точка может использовать сквозные или пленарные КП. Если произведено изменение правила для КТ, и трассировщик производит после этого дополнительные проходы, производится переопределение всех КТ на основе вновь введенных правил. Например, если КТ введена на первый слой, а затем правило для КТ установило последний слой, Specctra удалит КТ с первого слоя и попытается установить КТ на последний слой после прохода route или clean. Обычно добавление КТ производится после 100% разводки трасс. На этой стадии для КТ используются преимущественно существующие ДСО. Общая методология использования КТ с командой трассировки в файле do приведена ниже: • устанавливают все правила проектирования за исключением КТ; • задают от 25 до 50 проходов; •
устанавливают правила ввода КТ;
/
• задают проход очистки; • задают, при необходимости, дополнительные проходы трассировки; •
задают проходы трассировки.
Например, для добавления КТ во все цепи, используя сетку с шагом 100 мил, введите команду: Unit mil Rule pcb (testpoint (insert on)(grid 100)
214
Команды автоматической трассировки Чтобы добавить КТ для всех цепей, используя сетку 100 мил, которая смещена на 25 мил, введите: Unit mil Rule pcb (testpoint (insert on)(grid 100 (offset 25))) Чтобы добавить КТ на каждую цепь, за исключением цепей sigl, sig2, sig3 с сеткой 100 мил, введите: , Unit mil Rule pcb (testpoint (insert on)(grid 100)) Define (class cl sigl sig2 sig 3)
•
Rule class cl (testpiont (insert off)) Чтобы добавить КТ для цепей sigl sig2 sig3 на нижнем слое на сетке 100 мил, для цепей sig4, sig5 и sig6 на первом слое с сеткой 200 мил, для цепи sig7 с использованием текущей сетки для ДСО и размещением КТ на любой стороне и для цепи sig8 на сетке 75 мил для ДСО со стеком ТР1, введите: Unit mil Rule pcb (testpoint (insert off)) Define (class back sigl sig2 sig3) Rule class back (testpoint (insert on)(side back)(grid 100) Define (class front sig4 sig5 sig6) Rule class front (testpoint (insert on)(side front )(grid 200)) Rule net sig? (testpoint (insert on)(side both)) Rule net sig8 (testpoint (insert on)(grid 75)(use_via TP1)) Команда smart_route не производит ввод КТ, пока трассировка не осуществится на 80% . Вы специфицируете соответствующие установки правил для tesatpoint и затем запускаете smart_route с опцией testpoint. Команда report testpoint генерирует суммарную информацию по контрольным точкам. В отчет входит список цепей, не имеющих правил для КТ и цепей, для которых не удалось найти места для КТ. Так как КТ не предусмотрены для дифференциальных пар, список таких КТ также включается в отчет. С помощью команды select net можно добавить КТ в указанные цепи и проводники. Дескриптор фактора продолжительности времени
215
Глава 4 Этот фактор есть отношение отрезка времени к единице длины и используется как множитель при вычислении действия длины трассы на временные задержки сигналов. Вычисленный коэффициент основан на текущих единицах измерения, таких как мм или дюймы и которые должны совпадать с единицами измерения времени в проекте. Установка правил для временных задержек рассмотрена при описании команды circuit. . i Дескриптор Т-подключения трасс
Опции on позволяют, a off запрещают эти действия. Если Т-подключение разрешено, то с помощью дескриптора типа подключения junction_type они могут появляться на сегментах трасс или только на выводах компонентов, на простых КП, на ДСО или на КП, соединенных с силовыми цепями. Дескриптор
Соответствующие опции on или off разрешают или запрещают это. Grid — опция, которая вводит ПО в точку привязки КП (off) или в точку дискретной сетки, ближайшую к ней (on). Значение по умолчанию off. Fit — опция предписывает размещение ПО полностью внутри границ планарной КП, при соответствующем разрешении ввода (on). При таком вводе необходимо использовать рассматриваемый дескриптор перед выдачей команды fanout. Например, вместо строки fanout (pin_type signal)(direction out) рекомендуется использовать строки: Rule pcb (via_at_smd on (grid on)(f it on)) . Fanout (pin_type signal)
216
Команды автоматической трассировки Различие между результатами, полученными с использованием стрингеров вне КП и под ними, показано на рисунке ниже:
-•пи. _D 8 8
fanout (pintype signal) (direction out)
via_at_smd on(frt_on) fanout (pintype signal)
DO Дескриптор ширины трассы <width> позволяет задать ширину трассы. I <positive_dimenslon> \
Seed via Эта команда разрывает единую диагональную трассу на две коротких с помощью ввода ДСО.
-force — добавляет переходное отверстие под пленарные КП компонента для ДПП. Команда контролирует максимальную длину проводника для диагональных трасс. Specctra разрывает соединение между двумя КП, если оно длиннее в направлении X и Y, чем специфицированное. По крайней мере, одно сквозное ПО должно быть определено для всех сигнальных слоев перед использованием команды seed via. По умолчанию расстояние равно 1 дюйму. Как правило, рассматриваемая команда используется для больших многослойных плат. Так как число ДСО может при этом существенно возрасти, в зависимости от заданного в команде расстояния, то рекомендуется для таких плат задавать 2 дюйма.
217
Глава 4
Select/unselect Эти команды задают доступные трассировщику связи, ДСО и слои.
Р omplete_wireS)shielding '
—WT5
ownsj-
Group — определяет группы отрезков трасс (от — до). Такая группа содержит один или более отрезков, которые реализуют соединения от вывода одного компонента до вывода другого (или того же) компонента. Group_set — определяет группы для набора групп: Class — определяет классы цепей. В таком классе могут быть все КП, ДСО, проводники и гиды (прямолинейные индикаторы связности). Net — определяет цепи. Для цепей должны быть введены идентификаторы цепей или «окраски» в отечественной терминологии. Component — определяет компоненты, или «стандартные библиотечные элементы» в отечественной терминологии. Specctra всегда отображает их позиционные обозначения.
218
Команды автоматической трассировки Туре — определяет, какие объекты, подключенные к компоненту, имеют свойства выбран/не выбран, при этом такими объектами могут быть wire или net. Layer — задает слои для трассировки. Этот выбор не влияет на видимость слоя. При таком задании можно использовать символы ? и *, как это принято для задания имен файлов. Via — определяет доступные трассировщику КП для ДСО. Layer_wires — определяет все провода на указанных слоях. Bundle — определяет жгуты из цепей, определенные в команде define bundle (здесь под жгутом понимаются наборы цепей, которые должны иметь одинаковую топологию). t Incomplete_wires — выбирает некомплектные провода. К ним относятся: • Связи от вывода до вывода с отсутствующими сегментами. • Сегменты, которые являются мишенью для сегментов трасс, но заканчиваются без связи или в конце направляющего провода. • Сегменты, которые начинаются в КП вывода и заканчиваются без реализации соединения. • Трассы, заканчивающиеся гидами после выполнения команды delete conflict — segment. Shielding — выбирает или отменяет выбор всех экранированных проводов и экранированных с развязками (имеющих ответвления типа стрингера, которые со-л единяют экранирующие провода с ч экранирующей цепью) на специфицированных экранируемых цепях. Shield_tie_downs — выбирает (или отменяет выбор) все растрассированные или не растрассированные развязки на указанных экранируемых цепях. Unrouted_shield_tie_downs — выбирает или отменяет- выбор всех нетрассированных развязок для указанных экранируемых цепей. Все выбранные объекты Specctra отображает желтым цветом.
Примеры команд Select group Gl Select net ABUS?? Select class CLKS1 CLKS2 Select component U2 (type net) Select layer LI L4 Select via V2 7 Select group_set grpsetl
219
Глава 4 Select layer_wires SI S2 Select pins Ul-5 U3-6 Unselect layer L5 L6 Unselect via 50
Select/unselect all Эти команды выбирают все или отменяют такой выбор для соединений, подключенных ко всем объектам определенного типа, или всех ДСО, или слоев, доступных для операций автотрассировки. •
220
•
_
,
.
-
'
.
;
Команды автоматической трассировки Nets — опция выбора или отмены всех цепей в проекте. Опция касается индикаторов связности (guides), ДСО, трасс и КП, присоединенных к цепи. Components — касается всех компонентов на одной или обеих сторонах платы (front, back). Side — управляет текущими операциями на верхнем или нижнем слое платы. По умолчанию — на обеих сторонах. Groups — выбирает или отменяет выбор для всех групп от — до (отрезков цепей). Группа содержит один или более отрезков. Group_sets — группы, которые принадлежат всем наборам. Layers — все сигнальные слои в проекте. Vias — все ДСО, определенные в проекте. Poly wires — только полигоны-проводники.
,
' ' • :,
'
'-*••
Wires — все проводники, включая полигоны-проводники. Shields — все цепи с экранировкой и все, что в них входит. Pairs — все дифференциальные пары. Length_rule — все цепи с ограничениями по длине трасс. Length_error — все цепи с нарушениями ограничений по длинам трасс. Unroutes — все гиды (guides — индикаторы неразведенных соединений) всех нерастрассированных соединений. * Pins — все КП выводов компонентов на заданных слоях или соединенных с заданной цепью на одном или более слоях. Возможно выбрать все КП на определенных слоях с помощью спецификатора layer и указать один или более слоев. Можно выбрать все КП, принадлежащие цепи или слою, с помощью спецификатора net и указать одну или более цепей. По умолчанию команда относится ко всем КП в проекте. Net — все компонентные КП, подсоединенные к одной или более целям. Objects — все трассируемые и размещаемые объекты. Routing — все трассируемые объекты. Placement — Все размещаемые объекты.
,
.
.
.
.
-
:
'
Bundle — все жгуты всех цепей (здесь под жгутом понимаются наборы цепей, которые должны иметь одинаковую топологию).
221
Глава 4
•
Уместно отметить, что совершенно нет необходимости перед началом трассировки вводить команду выбора всех цепей. Трассировщик производит, в отсутствии такой команды, трассировку всех цепей. Но если выбрана одна или более цепей, обрабатывает трассировщик только их. Такой же порядок затрагивает выбор слоев для трассировки. В некоторых САПР печатных плат не все КП, заданные в проекте, доступны для автотрассировщика. По умолчанию в файле проекта системы Specctra выбираются только те КП для ДСО, которые доступны для трассировки в этих САПР. КП для ДСО, указанные как запасные в проектном файле, не выбираются. Примеры команд Select all wires Select all poly_wires Select all componenets (side front) Select all groups Select all group_sets
. •
Select all pairs
>
Select all length_rule -,
Select all unroutes
•
Select all pins (layer si s2) Unselect all nets Unselect all vias Unselect all layers
Select/unselect all Эти команды применимы ко всем трассируемым объектам, размещаемым объектам или к тем и другим.
Objects — относится ко всем объектам для трассировки и размещения. Placement — относится только к объектам для размещения. Routing — относится только к таким объектам, как все компоненты, КП выводов, висящие проводники и ДСО в составе трасс.
222
Команды автоматической трассировки Примеры команд
.
Select all placement Select all objects
Select/unselect area Эта команда касается выбора или отмены ранее выбранных объектов в определенном месте или зон.
Net — касается объектов, полностью или частично находящихся в определенной зоне. Ими являются все КП выводов компонентов, провода и висящие (недотрассированные) трассы в составе указанной цепи. Wire — трассы полностью или частично в зонах. Poly_wire — электрические полигоны (металлизированные полигоны с «окраской»), полностью или частично в зонах. Guide — гиды (индикаторы связности) в указанных зонах. Гидами являются нерастрассированные соединения типа вывод—вывод. ' Pin — все КП выводов компонентов внутри зоны Component — компоненты в пределах зоны. Specctra индицирует их позиционные обозначения. Туре — определяются присоединенные к компонентам объекты по типам. Ими могут быть провода (wire) или цепи (net). По умолчанию это провода. ' Toggle — эта опция является переключателем, т. е. все ранее выбранные объекты становятся невыбранными и наоборот. Он не затрагивает объекты неопределенного типа.
223
Глава 4 Примеры команд Select area net 1.325 4.350 Select area net 8.855 5.440 11.75 2.63 toggle Select area componenet 8.345 5.550 Select area component 0.600 0.225 1.025 0.600 (type net) Select area pin 2.25 3.50 3.75 4.25 Unselect area wire 8.855 5.440 11.75 2.63 Unselect area guide 3.35 .650 1.375 1.9
Select/unselect f romto Эта команда затрагивает отрезки трасс типа от — до (имея в виду соединение вывод-вывод).
\+j
|—
Degree — касается отрезков, расположенных в специфицированных углах, измеряемых против часовой стрелки, в диапазоне 0—360 градусов. Area — касается отрезков для каждого вывода, расположенного в зоне, заданной двумя противоположными углами. \ Length — касается отрезков, если длина его диагонали не превосходит указанной длины. Cross — касается отрезков, которые пересекают зону, заданную двумя противоположными углами. Примеры команд Select fromto Select fromto (degree 80 100) Select fromto (area 30 65 170 -25)(degree 170 190) Select fromto (length 75 125) Select fromto (cross -100 -72 -20 -72)
224
Команды автоматической трассировки Unselect fromto Unselect fromto (degree 80 100)
Select/unselect pins Эта команда выбирает или отменяет выбор КП выводов компонентов в операциях размещения или трассировки.
All pins — опция касается всех КП выводов компонентов в проекте (по умолчанию) на одном или более указанных слоях. Layer — касается всех КП на выбранных слоях (сигнальных или силовых). Pins — касается одного или более выводов компонентов. Можно также выбрать выводы, к которым подсоединены проводники и висящие проводники. Equivalent — касается специфицированных выводов компонентов и их эквивалентов где-либо в проекте. Выводы компонентов являются эквивалентными, если они выполняют те же логические функции, даже если они имеют одинаковые или различные имена. Примерьт команд Select pins Ul-5 Ul-6 U2-4 U2-5 Select all pins Select equivalent pins U2-8 U6-3 U23-4
Set Эта команда управляет отображением слоев, интервалом обновления статусного файла и некоторыми опциями трассировщика.
При использовании этой команды имеются различные условия, которые можно контролировать. Можно установить, как слои должны отображаться на экране, интервал обновления файла состояния системы, опции для трассировщика, 8 Зак. 27
225
Глава 4 включая туда модель поперечных наводок и опции отчета о наводках. HBKQTOрые из таких установок требуют переключателей, некоторые требуют значений или своих опций. Для установки условий используется значение
Примеры команд Set update_interval 200 Set gather_wires off Set graphing 4 *
226
Команды автоматической трассировки Set nouse_accumulation RSS Set sof t_f ence on . Set same_net_checking on Set force_to_terminal_point on Set routability_colors 15 Set diagonal_mode on Set tandem_depth 2 Set dynamic_zoom off Set min_selection on Рассмотрим значения для условий
227
Глава 4 Cctla — которая использует те же правила с учетом фактора шумового насыщения (см. правило <saturation_length_descriptor> для детальной информации). По умолчанию используется модель cctl, например: set crosstalk_model cctla. Diagonal_mode — для управления использованием трассировщиком диагонального режима трассировки. При этом возможны варианты: On — означающий, что трассировщик может использовать диагонали при необходимости трассировки типа «память», при формировании массива КП в виде ступенек и около существующих диагональных трасс. Как правило, эта опция не производит большого числа диагональных трасс. Always — означающий, что трассировщик всегда прокладывает трассы с длинными диагоналями, в зависимости от доступного пространства. Эта опция приводит к большому числу диагональных трасс. Off — означающий, что трассировщик никогда не использует диагональные трассы и трассирует только ортогонально. По умолчанию установлен режим on. Пример команды: set diagonal_mode always. Диагональная трассировка в основном протекает медленнее ортогональной. Особенно падает производительность при использовании команды set diagonal_mode always. С этой опцией, вероятно, нельзя получить плотный, жесткий проект. L)ofile_auto_repaint — для задания перерисовки экрана, если команды выдаются из файла DO. Возможны опция on, которая разрешает такую перерисовку (это условие умолчания), и off, которая запрещает, например: set dofile_auto_repaint. Выключение dofile_auto_repaint влияет только на операции из DO-файла. При необходимости выключения этой команды, но желании производить перерисовку экрана после какой-то определенной операции, можно просто включить команду repaint в DO-файл, например: Clean 2 Repaint Dynamic_pinswap — для выполнения перестановки местами КП в составе цепи в процессе операций трассировки, например: set dynamic_pinswap on. Перестановка (свопинг) КП выводов компонентов в цепи может быть полезен в платах с компонентами типа DIE, BGA. После каждого прохода трассировщик просматривает пересекающиеся трассы и пытается исключить такие пересечения посредством свопинга КП цепи и перекладки трасс. Необходимая для свопинга информация должна быть транслирована из пользовательской САПР и включена в определение компонентов в проектный файл Specctra. Трассировщик не сможет свопировать КП в соединении, если был изменен их образ, в соединение добавлены новые выводы компонентов или удалены «окраски» цепей из КП соединения.
228
Команды автоматической трассировки Для детальной информации см. команды change_component_image и define net pin. Соединения из фиксированных выводов не свопируются (см. команду lock). Dynamic_zoom — для операций панорамирования или увеличительного стекла в рабочей зоне. Опция on разрешает эти операции, опция off запрещает динамические операции с экраном, но статические остаются доступными. Условия умолчания зависят от установок в файле Specctra.ini или определяются скоростью работы компьютера. Если с помощью секции [GUI] в этом файле установлено "AllowDynamicZoom=l", начальное состояние есть on. Если "AllowDynamicZoom=0", то off. Edit_abort_uses_undo — позволяет интерактивному трасировщику отменять помещенные в стек памяти трассы или ДСО, когда оператор прерывает редактирование трасс. Опция on позволяет восстановить из стека в их предыдущую позицию после прерывания редактирования и новом запуске редактора, опция off позволяет сохранить данные в стеке после прерывания редактирования. По умолчанию значение off. Пример команды: set_edit_abort_uses_undo on. Force_to_terminal_point — определяет способ подключения трассы к КП. При установке опции on подключение производится к точке позиционирования (базовой) КП, опция off разрешает подключение к любому месту образа КП. Например: set_force_to_terminal_point on. Gather_wires — определяет способ объединения трасс в дифференциальные пары или в жгут с исключением дополнительных изгибов (стягивание параллельных проводников на минимально допустимое расстояние). Опция off разрешает оставлять дополнительные изгибы, опция on — удаляет их (это условие умолчания), например: set gather_wires on. Graphing — разрешает отображать данные на экране в виде окон для различных слоев или в виде композиции слоев. Для первого варианта необходимо указать число слоев для их раздельного просмотра вводом целого положительного числа от 1 до 8, например: set graphing 4. Include_pins_in_crosstalk — позволяет учитывать или не учитывать КП при вычислениях шумов, которые используют правила для параллельных или тандемных шумов, например: set include_pins in_crosstalk on. По умолчанию опция off. Microvia — управляет возможностью использования характеристик Micro Via в строке команды и в графическом пользовательском интерфейсе. Этот набор команд требует специальной лицензии. Этот набор предполагает: • Ввод усовершенствованных стрингеров, для размещения их под прямо противоположными планарами на другой стороне платы, что отмечено в замечаниях к команде fanout. • Установку глухих и внутренних межслойных переходов на различных слоях с одинаковыми координатами и расширенную поддержку контроля заглублений.
229
Глава 4
.
• Позволяет задавать данные для массивов отверстий в файле проекта, который учитывает правила для схем с целью создания таких массивов автоматически в течение трассировки. Дополнительные характеристики позволяют интерактивное редактирование и модификацию массивов КП. См. также команды: Use_via_circuit rule Change via mode Rotate via mode. Min_selection — управляет выбором зоны для вырезания сегментов трасс. Это условие управляет поведением команды select area wire, которая позволяет выбрать удаляемые сегменты трассы. Опциями являются: On — которая ограничивает выбор сегментов до первого встретившегося псевдовывода для разветвления трассы, ДСО, Т-подключения или вывода (КП) в обоих направлениях вдоль трассы. Тем самым запрещается вырезание сегмента, когда он ограничен псевдовыводом. Off — который ограничивает выбор сегментов до первого встретившегося псевдовывода для разветвления трассы, ДСО, Т-подключения или вывода (КП) в обоих направлениях вдоль трассы от выбранной точки. Это условие умолчания и нормального поведения команды select area'wire. Отметим, что псевдовывод разветвления трассы (на два направления) существует в том случае, если сегмент трассы разрезан (режим cut segment) с помощью команды set и опции cut_mode_splits_wires, которая доступна в меню Cut Segment Mode (правая клавиша мышки). Nouse_accomulation — устанавливает методику, вычислений общего уровня наведенных шумов в цепи. Опциями могут быть: Linear — которая означает суммирование шумов на приемной цепи как шумовых добавок от индивидуальной цепи — источнике шумов (агрессора). RSS — которая означает квадратичное суммирование шумов на приемной цепи (квадратный корень из суммы квадратов шумов от агрессора), например: set_accumulation RSS. По умолчанию — линейное суммирование. Nouse_calculation — позволяет контролировать шумовую интерполяцию из указанной пользователем таблицы шумов. Возможны опции: Stairstep — при этом интерполяционные значения вычисляются для фиксированных рядов имеющихся значений (значение по умолчанию). Linear_interpolation — при этом интерполяционные значения вычисляются в точных точках между заданными значениями, например: set_nouse_calculation linear_interpolation.
230
Команды автоматической трассировки Repaint — задает условия для перерисовки экрана. Опция on позволяет все операции перерисовки (по умолчанию), опция off запрещает перерисовки, опция manual разрешает перерисовки, только когда используется команда repaint или выполняются операции визуализации, такие как zoom или pan, например: set repaint manual. Reroup_order_viols — позволяет трассировщику делать попытки перекладки трасс в зависимости от нарушений заданной последовательности трассировки. Такие нарушения правил проектирования могут появляться в процессе трассировки или когда считаны routes file или wire file, которые содержат некорректно проложенные трассы. Можно использовать команду set reroute_order_viols off, если необходимо запретить перекладку цепей. По умолчанию опция on. Rotate_jamper_via — разрешает системе поворачивать несимметричные переключательные КП. Опциями являются on и off (по умолчанию). Поворот на 90 градусов иногда необходим трассировщику. Roundoff_rotation — определяет методику расчета поворота не круглых КП на угол, не кратный 90 градусов. Опция on означает, что трассировщик поворачивает КП и не привязывает ее к ближайшей координате, а опция off при вычислении положения КП после поворота отсекает десятичную часть полученных координат (это условие умолчания). Routability_colors — задает цветовую плотность отображения данных на дисплее. Значение плотности должно лежать исключительно в пределах от 2 до 20. См. также команду density analysis. Пример команды: set routability_colors. Same_net_checking — разрешает системе Specctra проверять нарушение зазоров между объектами одной и той же цепи. Это тот случай, когда сегменты трасс, ДСО или КП расположены слишком близко. Опциями являются on — которая позволяет такие проверки, или off — которая запрещает (значение умолчания). Пример команды: set same_net_checking on. Правила via_via и via_via_same_net проверяются всегда и не затрагиваются указанным выше контролем. Search_tapering — разрешает автоматическое формирование специального способа подключения КП к трассе в виде усеченного конуса в процессе трассировки (опция on) или на этапе постпроцессирования (опция off). Пример команды: set search_tapering on (это значение по умолчанию). Shadow_mode — определяет, как отображаются выбранные цепи и компоненты, т. е. в виде специально выбранного цвета (желтый в цветовой карте по умолчанию) или в виде приглушенных цветов для невыбранных объектов. Опциями являются on для отображения выбранных объектов в выбранном цвете, а остальных объектов в цветах слоя, и off для отображения выбранных объектов в цвете слоя и невыбранных в приглушенных цветах. Условие умолчания — off. Пример команды: set shadow_mode on.
231
Глава 4 Show_snap_grid_cursor — для отображения курсора в позициях ближайшего узла дискретной сетки в интерактивном режиме работы с помощью левой клавиши мышки (опция on) и для курсора без привязки к сетке (опция off). Например: set show_snap_grid_cursor off. Цвет захваченного курсора определяется цветом подсветки, который является по умолчанию белым. Soft_fence — задает мягкий (on) или жесткий (off) барь'ер для трассировки (разрешенную зону). Мягкий барьер позволяет трассировщику: • трассировать все соединения внутри барьера, касаясь границ барьера; • трассировать все связи вне мягкого барьера, не касаясь его границ и не пересекая их; • игнорировать барьеры всеми соединениями, которые пересекают мягкие барьеры. Жесткие барьеры заставляют трассировщик прокладывать только такие соединения, которые полностью находятся внутри барьеров (это значение по умолчанию). Пример команды: set soft_fence on. Stub_viols_costs — определяет штраф за прокладку'стрингера с длиной отвода к ДСО превышающую допустимую по правилу max_stub. По умолчанию опция on, которая допускает ряд нарушений длины отвода, установленного внутри трассировщика. Можно использовать положительное целое для увеличения этого числа, что улучшает условия полной растрассировки. Если же это нежелательно, то используют опцию off. Примеры команд: Set stab_viols_costs 2 Set stub_viols_costs off Отчет о состоянии трассировщика распечатывает число нарушений длин отводов в каждом проходе трассировки. Его можно использовать для анализа. Чтобы увидеть нарушения,'используйте установку setup_check и запустите команду check. Можно также использовать команду highligth для тех же целей. Swap_fanouts — позволяет трассировщику проводить попытки свопинга (взаимозамены) стрингеровских соединений к КП в течение проходов трассировки и очистки. Опция on разрешает свопинг, опция off запрещает свопинг во время проходов трассировки (это условие умолчания). Пример: set swap_fanouts on. Соединения с заблокированными КП не свопируются (см. команду lock). Необходимая упакованная информация по свопингу должна быть транслирована из исходной САПР ПП и включена в определения компонентов в проектный файл Specctra. Трассировщик не может свопировать КП компонентов после изменения их образов, добавления КП новых соединений или удаления из цепи КП. См. команды change component_image и define net pins для дополнительной информации.
232
Команды автоматической трассировки Tandem_depth — позволяет управлять числом смежных сигнальных слоев (глубиной), учитываемых при вычислении тандемных шумов и сегментных наводок. Эти установки определены в правилах tandem_nouse и tandem_segment. Значение по умолчанию равно 1. При значениях меньше или равном 0 принимается 1. Пример условия: set tandem_depth 2. Отметим, что смежные слои, разделенные силовым слоем (экраном земли или питания), не рассматриваются, даже если они попадают в заданный диапазон глубины. Unknown_user_property_warning — дает возможность системе Specctra выдавать (опция on) или не выдавать (опция off) предупреждения, если вы определили пользовательские свойства и присвоили им метки (имена), которые Specctra не распознала. Значение on — условие умолчания. Пример условия: set unknown_user_property_warning off. Update_interval — определяет частоту обновления статусного файла при работе трассировщика. Для этого надо определить число проложенных связей перед обновлением файла (по умолчанию число таких связей 100), например: set update_interval 200. Via_to_layer_pattern — дает возможность использовать на заданном слое залитые (заполненные цветом) образы отверстий при отображении их на экране. Опция on означает заполнение цветом слоя, опция off — заполнение специфицированным для заполнения ДСО цветом в установленной цветовой карте (значение по умолчанию). ' Пример условия: set via_to_layer_pattern on. I
Write_permission (group[read | noread] [write | nowrite])(public[read | noread] [write | nowrite]) — разрешает читать или писать файл при сохранении информации о размещении или трассировки. Опциями являются: Read или noread, которая позволяет или запрещает другим просматривать или загружать файл в систему Specctra. Write или nowrite, которая разрешает или позволяет другим сохранять файл. Рассматриваемая команда недоступна в Windows-версии Specctra.
Set condition overview Вы можете использовать команду set, чтобы установить условия, которые управляют: ' •
автотрассировщиком;
• трассировкой с ДСО; • проверкой установленных правил проектирования;
233 ч
Глава 4
•
• вычислениями шумов и наводок; • интерактивной трассировкой; • характеристиками графического дисплея; • другими свойствами. Эти категории упомянуты здесь только для удобства. Например, некоторые условия автоматической трассировки применимы к ручной и наоборот. Для автотрассировщика можно устанавливать условия: • обновления интервала создания статусного файла; • подключения трассы к базовой точке КП вывода компонента; •
объединения трасс дифференциальных пар или жгутов перед их подключением трасс к КП вывода;
• динамического свопирования КП выводов в цепи для выводов, разрешенных к свопированию; • свопирования стрингеров для выводов, разрешенных к свопированию; • изменения ширины трассы при подключении к выводу для выравнивания ее ширины по отношению к КП вывода, если это предпочтительнее, чем выполнение этой операции на этапе постпроцессирования; • жестких или мягких границ зоны трассировки; • разрешения перетрассировки при нарушениях стратегии трассировки цепей; • установки штрафов при нарушениях длин стрингеров; • установки разрешения диагональной трассировки в различных ситуациях и для вразличных объектов; • разрешения округления при вычислении координат КП. Для трассировки с ДСО можно установить условия: • разрешения поворачивать несимметричные КП для переключателей; • измерения зазоров и расстояний между трассами для глухих и межслойных отверстий. Для правил проектирования можно установить условия: • необходимости контроля зазоров между элементами одной и той же цепи; • необходимости контроля средней длины дифференциальных пар. Для вычисления шумов и перекрестных наводок: •
вид модели, используемой для отчета о перекрестных наводках;
• метод вычисления общих шумов, аккумулированных на приемной цепи; • метод вычисления шумов (метод интерполяции);
234
Команды автоматической трассировки • необходимость учитывать образ КП вывода при вычислении параллельных или тандемных шумов; • учет смежных сигнальных слоев при вычислении тандемных шумов и перекрестных наводок. Для интерактивной трассировки: • критерии выбора для разрезания сегментов трассы; • разрешение интерактивному трассировщику автоматически объединять полигоны в режиме сдвига; • разрешение интерактивному трассировщику отображать курсор в режиме привязки к сетке в режимах редактирования и рисования; • разрешение интерактивному трассировщику отменять проталкивание трассы (между соседними, ранее проложенными) в режиме редактирования трасс. Для характеристик графического отображения: • как отображать слои; . • сколько цветовых градаций можно использовать при анализе цветовой плотности на экране; • доступность динамического панорамирования и увеличения на экране; • доступность режима теней для отображения выбранных объектов;
,
• доступность отображения заполнения образа КП в сравнении с заполнением слоя; • разрешения или запрещения перерисовки всех рабочих областей или только после явных операций визуализации (таких Как панорама, увеличение или перерисовка); • разрешения выполнять автоматическую перерисовку экрана после операций, выполненных по командам Do-файла. Другие условия: •
разрешить системе выдавать предупреждения о выданных пользовательских свойствах, если они не распознаются;
• какие разрешения установлены для файлов, сохраняемых после работы Spectra (только для операционной системы UNIX); • имеются ли лицензии для Micro Via, доступные в командной строке или в меню.
Setexpr Эта команда вычисляет выражение и запоминает результат в переменной.
\
>ф
Н
<expression>
[—>ф—>
235
Глава 4 Любые созданные переменные можно использовать в последовательности setexрг выражений и в командах evaluate, if и while. Возможно переопределение переменных посредством того же имени в команде setexpr. Только созданные пользователям переменные могут быть изменены с помощью этой команды. Системные переменные изменяются только автотрассировщиком. Примеры команд Setexpr count (о) Setexpr count (count+1)
Set_f ocus Эта команда управляет командными функциями, присвоенными единичным символам на клавиатуре (ключам).
Опциями являются: Window — выполняет присвоенные ключам команды при перемещении указателя в рабочей зоне и нажатии ключа. Command — выполняет присвоенные ключам команды при перемещении указателя в зоне ввода команд и нажатии ключа. Toggle — переключает действие ключа между рабочей и командной зонами. Для отображения списка текущих определений ключей можно использовать команду defkey или диалоговый бокс определения команд в графическом интерфейсе Specctra. Для переключения зоны действия ключа можно использовать клавишу табуляции. Примеры команд Set_f ocus window Set_focus command Set_f ocus toggle
236
Команды автоматической трассировки
Setup_cheek Эта команда задает опции контроля для сессии трассировки.
getup_check)-r->^T)
H
Типами контроля, которые можно задать с помощью команд setup_check и check, являются: Тип
Значения по умолчанию
Length
on on
Limlt_way
off
Max_vias
off
Miter
off
Order
off
Pin
off
Polygon_wire
off
Protected
off
Same_net_check
off
Stagger
off
Stub
off
Use_layer
.off ,
Use_via
off
Xtalk (crosstalk)
on
Conflict
По.умолчанию программа контроля трассировщика выявляет конфликты и нарушения правил поперечных наводок и длин. После установки значений опций необходимо установить команду cheqk для организации проверок этих правил. Установленные значения опций будут сохранены в течение сессии и переустановлены по умолчанию в начале каждой новой сессии. Заметим, что команда check позволяет переустановить эти опции без setup_check. Примеры команд Setup_check (miter on)(polygon_wire off) Setup_check (use_layer on)(use_via on)(limit_way on)(same_net_check on)
237
Глава 4 Типы контроля: Conflict — нарушения зазоров. Length — нарушения заданных правил длин. Limit_way — нарушения длин трасс. *
*
Max_vias — нарушения максимума отверстий для цепей, трупп, классов, отрезков (от — до). Miter — нарушения углов трасс. Order — нарушения последовательности трассировки цепей. Pin — нарушения зазоров между КП и другими объектами. Polygon_wire — нарушения зазоров между полигоном с именем цепи и другими объектами. Protected — нарушения зазоров между защищенными трассами или ДСО и другими объектами. Same_net_sheck — нарушения зазоров между объектами одной и той же цепи. Stagger — нарушения правила для максимально допустимого разброса длин трасс на смешанных слоях. Stub — нарушения максимальной длины «пня» (отвода от КП для стрингера). Use_layer — нарушения правил использования слоя. Use_via — нарушения правил использования ДСО. Xtalk — нарушения правил для наводок.
Sh Эта команда запускает команды системного уровня внутри пользовательского графического интерфейса системы Specctra (GUI). •&\ <sheff_command> \-\
J^G i_command>\
Команда позволяет использовать командную оболочку в DOS или UNIX и исполняемые файлы WINDOWS посредством их ввода в область ввода команд в Specctra. Для ввода набора командных оболочек их необходимо разделить символом (;). Если заключить командные оболочки в скобки, то можно вводить команды Specctra в ту же строку. Если команда запускает другое приложение, необходимо закрыть прикладное окно, перед тем как запустить систему Specctra. Если отдельное окно не открыто, результаты команды будут переданы в окно вывода.
238
Команды автоматической трассировки В системе Windows NT команда shell является командой, которую можно ввести в ответ на приглашение. с. ' "•'• • ' . • • • • " ' • ' • Примеры команд Sh calc Sh ls-|4.w Sh more monitor.sts
Sh ps -aux Sh date > routing.note ; vi routing.note Sh uncompress revb.wir.Z (sh telnet); route 5; clean 2
Shield Эта команда автоматически прокладывает экран вокруг неэкранированной'трассы, указанной в правилах проектирования.
Эта команда особенно полезна, если необходимо экранировать трассы, имеющие Т-подключение. Перед использованием этой команды необходимо убедиться, что около экранируемой трассы имеется достаточно места для прокладки экранируемых трасс. Это можно сделать, увеличивая зазоры для таких цепей перед их трассировкой. После прокладки таких трасс с увеличенными зазорами необходимо восстановить предварительные зазоры для этих цепей и ввести команду shield для трассировки экранов. Команда заставляет трассировщик прокладывать экранирующие трассы для всех цепей, имеющих право на экраны, но не имеющих их. Команда shield не выполняет контроль зазоров. Поэтому нужно сразу перед трассировкой экранируемых в дальнейшем соединений задать увеличенные зазоры. Пример команды В примере прокладываются экраны для четырех цепей, которые после трассировки имеют Т-подключения. Для того чтобы убедиться в адекватных зазорах для экранирующих трасс, необходимо их увеличить перед трассировкой. Затем запускают трассировку. Так как 4 цепи имеют Т-подключения, экраны не трассируются, даже при наличии соответствующих установок для них. Наконец цепи выбираются снова, их зазоры восстанавливаются и запускается команда экранировки.
239
Глава 4 Select net netl net2 net3 net4 Rule selected (clearance 10) Unselect on Route 25 Select netl net2 netS net4 Rule selected (clearance 5) Shield
Show_component_labels Эта команда определяет тип идентификаторов компонентов для просмотра. ^show_component_labels) —
]
l-K(>->
^f
->£
rnf Hn<-
X-
clusterjd
)—
k
>/<
— >•£ imagejd 3 — — >•( logical_part_id ) — — ^•^physical_part_id) — — >•£ compjpinjd ) — — ^£ pinjd ) — 1
— ^-£ virtual_pin_id ) — '
Type — опция типа имеет значения: Ref_des — для отображения позиционных обозначений. Cluster_id — для индикации имен кластеров для каждого компонента. Image_id — индицирует имя корпуса (образа). Logical_part_id — индицирует имя логической секции для компонентов, занесенных в файл проекта как дескриптор .логической части
24О
Команды автоматической трассировки •
Side — разрешает применение текущих операций только на первом слое (front), последнем (back) или на обоих (both).
Команда vset позволяет отображать или не отображать метки. Метки компонентов по умолчанию невидимы. Команда show component_labels автоматического обновления экрана не производит. Для этого следует ввести команду repaint. •
,
.'
Примеры команд Vset component_labels on Show component_labels (type ref_des)
"
Repaint Show component_labels (type image_des) Repaint Show component_labels (type comp_pin_id) (side back) Repaint Show component_labels (type phisical_part_id) (side front) Repaint
Show unroutes Эта команда разрешает отображение индикаторов связности или гидов (иногда их называют не разведенным соединением). {show unroutes}-i—>/
all .'placed last front , back
Jbetween selected. highlighted
у
All — все неразведенные связи. Placed — отображает те гиды, которые идентифицируют неразведенные соединения к компонентам внутри границы размещения. 9 Зак. 27
241
Глава 4 Last — отображает гиды, которые идентифицируют неразведенные соединения к последним автоматически размещенным компонентам. Front — отображает только те гиды, которые отображают связи компонентов на первом слое платы. Back — то же для последнего слоя платы. Between — отображает гиды связей между выводами на первом и последнем слое платы. Selected — отображает только выбранные гиды или гиды связей для выбранных компонентов, проводов, цепей или выводов. . \ Highlighted — отображает только те гиды, которые являются в этот момент подсвеченными. Гиды могут скрывать другие объекты в насыщенных проектах. Эта команда позволяет делать выбор нужных объектов и уменьшить сложность отображаемой картины. В начале сессии Specctra отображаются все гиды.* Примеры команд Vset unroutes on Show unroutes placed Repaint Show unroutes highlight repaint Show unroutes front Repaint Show unroutes selected repaint
Skill_cmd Эта команда позволяет выдать команду SKILL из области ввода команд Specctra без специального перехода в режим SKILL (см. skill_mode).
Примеры команд Skill_cmd (print("total componenets=% d\n" totalcomp)) Skill_cmd(load("~design_macros/sum_comps.il")) См. также skill_mode, cct_mode
242
Команды автоматической трассировки
SkiU_mode Эта команда устанавливает область ввода команд Specctra для приема команд языка программирования SKILL (режим SKILL). Предварительно необходимо выдать команду cct_mode. После ввода рассматриваемой команды появляется возможность печатать команды SKILL в области ввода команд. Возможно также использование SKILLкоманды load запуска файла со SKILL-командами. !.
Примеры команд Skill_mode Prinft("total components=%d\n" totalcomp) Cct_mode Skill_mode Load"-design_macros/sum_comps.il" Cct_mode Skill_mode For(I 0 5{cct_cmd("z out")}) Get mode
System variables Ниже перечислены доступные системные переменные: Имя переменной
Тип
Описание
Bottom_layer_sel
Целое
1, если выбран слой bottom, иначе О
Complete_wire
Количество
Процент полноты трассировки в %
Conflict_clearance
Целое
Количество нарушений зазоров
Conflict_crossing
Целое
Количество конфликтов пересечений
Conflict_wire
Целое
Кол-во конфликтов зазоров и пересечений
Conflict_xtalk
Целое
Кол-во нарушений по наводкам
Connections
Целое
Кол-во связей слоя трассировки
Locked_comp
Целое
Кол-во фиксированных компонентов
Partial_selection
Целое
Значение равно 0; если выбраны все цепи или ни одной, равно 1, если выбрана одна или больше цепей, но меньше, чем все
Placedcomp
Целое
Кол-во размещенных компонентов
9*
243
Глава 4 Power_layers
Целое
Кол-во силовых слоев
Reduction_ratio
Целое
Коэф. уменьшения конфликтов относительно последнего прохода трассировки
Reroute_wire
Целое
Количество переложенных трасс и сегментов трасс в текущем проходе
Rou'te_pass
Целое
Текущий или последний проход трассировки
Sel_comps_list
Строка
Имена выбранных компонентов
Sel_nets_list
Строка
Имена всех выбранных цепей
Sel_signal_layers
Целое
Кол-во выбранных сигнальных слоев
Selectedcomp
Целое
Кол-во выбранных компонентов
Selectednet
Целое
Кол-во выбранных цепей
Signal_layers
Целое
Кол-во сигнальных слоев
Smd_pins
Целое
Кол-во пленарных выводов
Thru_pins
Целое
Кол-во сквозных выводов
Top_layer_sel
Целое
1, если выбран первый слой, иначе 0 Кол-во проходов для текущей команды
Total_pass
. Строка
Total_pins
Целое
Общее число выводов
Total_vias
Целое
Общее число ДСО
Totalcomp
Целое
Общее число компонентов на плате
Unconnect_wire
Строка
Неподключенные соединения
Units
Строка
Пользовательская единица измерения
Unplaced_comp
Целое
Число неразмещенных компонентов вне границ размещения
Unplaced_large
Целое
Кол-во больших компонентов вне границ размещения
Unplaced_small
Целое
Кол-во маленьких компонентов вне границ размещения
Smart_route Эта команда трассирует плату на основе хорошей сходимости процесса Min_via_grid — устанавливает минимальные значения дискретной сетки по осям координат для ДСО. При этом, возможно специфицировать значение только по одной из осей (direction), или одинаковое по обеим осям (offset). Min_wire_grid — дискретная сетка для трасс. 244
Команды автоматической трассировки
->^auto_farioul_smd_share)—
offset
y+\<positive_dimension>\
Direction — устанавливает сетку по одной из осей координат. Auto_fanout — разрешает трассировщику предварительную' трассировку стрингеров. Auto_fanout_via_share — контролирует использование при трассировке стрингеров одной и той же цепи одного общего переходного отверстия для двух или более пленарных выводов компонента. Опция on разрешает этот вариант, опция off разрешает использовать для каждого планарного вывода уникальное переходное отверстие.
245
Глава 4 Auto_fanout_pin_share — контролирует подключение планарного вывода компонента к переходному отверстию, когда формируются стрингеры. Опциями являются: on —т которая означает, что планарная КП может быть подключена к сквозному переходному отверстию, если стоимость этого ниже, чем стоимость использования ДСО (это условие умолчания), или off — которая означает, что пленарный вывод компонента подключается безусловно. Auto_fanout_smd_share — контролирует прокладку трасс между ближайшими пленарными КП одной цепи так, что они совместно используют отводящую трассу и вывод или переходное отверстие при формировании стрингеров. Опциями являются: on — которая означает, что соединения межДу пленарными выводами прокладываются так, что они совместно используют один и тот же отвод от вывода, если эта стоимость ниже, чем стоимость формирования отдельного стрингера для каждого планарного вывода, или off — котораяЪзначает, что каждый пленарный вывод компонента получает стрингер (это условие умолчания). Auto_miter — контролирует выполнение трассировщиком операций сглаживания топологии трасс после окончания проходов трассировки, формирования контрольных точек и очистки. При не 100-процентной трассировке сглаживание не выполняется. Опциями являются: on — которая включает сглаживание, т. е. трассировщик заменяет углы изгибе тресс с 90 на 135 градусов, или off — которая выключает сглаживение, т. е. трассировщик не изменяет углы изгибов трасс {это условие умолчания). Auto_testpoint — контролирует выполнение трассировщиком ввода дополнительных контрольных точек (КТ). Опциями являются: On — включает ввод КТ, т. е. трассировщик добавляет КТ для проложенных трасс сигнальных цепей с использовением установок side и grid. Off — отключает ввод КТ, т. е. трассировщик не добавляет КТ (это условие умолчания). Установка side определяет, на кеком слое должны быть сформировены КТ — не первом, последнем или не обоих (front, back, both). КТ, установленные на слое контроля, представляют собой контрольные ДСО, не перекрываемые корпусом компонента. Значение по умолчанию — back. Установке grid устенавливает дискретные сетки, одинаковые по осям координат или разные, а также смещенные относительно нуля координат платы. Опция direction зедеет сетку по осям X или Y, опция offset зедеет смещение, при отсутствии опций шаг сетки одинаков по обеим осям. По умолчанию для КТ используется текущая сетка. Сетка для КТ определяется в зависимости от шага пробника, применяемого для контроля платы тестера. С помощью коменды «умной» трассировки (smart_route) можно трессировать только выбранные цепи командой select. Умная трассировке евтометически создает файл трасс с именем по умолчанию bestsave.w.
246
Команды автоматической трассировки Примеры команд Smart_route Smart_route (min_via_grid l)(min_wire_grid 1) Smart_route (min_via_grid 5(direction x)) (min_wire_grid l(offset 5)) Smart_route (auto_fanout off) Smart_route (auto_miter on) Smart_route (autp_testpoint on(side back)(grid 25))
Sort
\
Эта команда контролирует последовательность прокладки трасс для соединений при трассировке.
Smart — опция сортирует непроложенные отрезки трасс (от — до) по приоритетной схеме, установленной из ведущей САПР ПП. Random — опция сортирует непроложенные сегменты в случайном порядке. Length — опция сортирует непроложенные сегменты в соответствии с их манхэттенскими длинами (Dx+Dy). Порядок сортировки может быть от коротких к длинным (up) или от длинных к коротким (down). Условие умолчания — от коротких к длинным. Area — опция сортирует не проложенные сегменты по размеру области, занимаемой сегментами. Порядок сортировки может быть от маленькой к большой (up — это условие умолчания) или от большой к маленькой (down). Specctra производит сортировку непроложенных сегментов для каждого прохода трассировки. Если метод сортировки не задан, то будет использован метод, использованный в smart-трассировке. Когда на плате просматривается большое количество длинных диагональных сегментов, можно заставить трассировщик проложить их первыми, используя сортировку по длинам с опцией down перед запуском любой команды route. » Примеры команд Sort length down Sort area up
247
Глава 4
Spread Эта команда пытается увеличить расстояние между трассами и между трассами и выводами компонентов.
Extra — добавляет максимально возможный зазор между объектами. Для этого необходимо задать начальный самый большой зазор
248
Команды автоматической трассировки
Status_file Эта команда переадресует информационный статусный файл трассировки из файла по умолчанию monitor.sts в другой специфицированный файл.
В процессе операций трассировки Specctra автоматически запоминает статусную информацию в файле monitor.sts в той же директории, что и проектный файл. Рассматриваемая команда позволяет переадресовать данные для этого файла в другой файл и директорию. Такая переадресация возможна также с помощью переключателя -s в момент запуска Specctra.
Пример команды
Status_file grid 1. sts
Stop Эта команда задает паузу в операциях трассировки и размещения.
Эта команда после задания паузы переводит систему в режим ожидания. Например, после начала прохода трассировки можно напечатать stop для остановки прохода и возврата в режим ожидания команд. Это аналогично выдаче команды Pause, затем Stop с помощью мышки и графического интерфейса GUI. Когда команда размещения или трассировки выдаются из файла DO, можно ввести Stop и все последующие команды DO-файла будут игнорированы. Команда останова может быть выдана в таких операциях трассировки как clean, critic, fanout, filter, miter, route, smart_route, spread, а также в таких операциях размещения как autodiscrete, autorotate, form_claster, initplace, interchange, swap.
Tax Эта команда задает фактор стоимостей (штрафов) для трассировщика. Way — цена прокладки трассы в запрещенном направлении. Cross — цена конфликта пересечений. Via — цена использования ДСО.
г
Off_grid — цена размещения входных или выходных КП вне сетки.
249
Глава 4 Off_center — цена размещения входных или выходных КП не по центру. Side_exit — цена подключения выходной КП на длинной стороне. Squeese — цена нарушения зазора трасса—ДСО. Layer — цена использования указанного слоя для прокладки трасс.
По умолчанию фактор стоимости равен 1. Установленное значение фактора умножается на 1, причем переустановка возможна в любое время. Опции squesee и layer оказывают влияние на число конфликтов и число неразведенных трасс. Если они установлены менее 1, трассировщик создает больше конфликтов и меньше неразведенных соединений. Соответственно, если эти параметры больше 1, трассировщик порождает меньше конфликтов и потенциально больше неразведенных соединений. Значение фактора не должно превосходить 11. Примеры команд
Tax cross .9 Tax via .8 Tax layer SI 1.1
Testpoint Эта команда контролирует ввод контрольных точек. Grid — опция определяет дискретную сетку по одной из оси, по обеим осям или со смещением. Direction — указывается направление сетки по осям координат Offset — смещение сетки относительно начала координат платы
25О
Команды автоматической трассировки
_oulline_clearance)-^|<pos/f)Ve_c//mensi'ofi>
Side — сторона платы для контрольных точек — первая, последняя и обе (front, back, both). По умолчанию — последняя. Use_via — идентифицирует один или более стеков КП в качестве КТ. Center_center — контролирует минимальное расстояние между центрами двух КТ. Comp_edge_center — контролирует минимальное расстояние между центром КТ и границей компонента. Image_outline_clearance — контролирует минимальное расстояние между границей КТ и границей, компонента Allow_antenna — контролирует разрешение антенны (отвода) при вводе КТ.
251
Глава 4 Pin_allow — управляет разрешением использования сквозных отверстий в качестве КТ. Когда есть разрешение, можно использовать имя компонента для идентификации списка компонентов со сквозными КП для использования их в качестве КТ. При отсутствии такого списка используются все сквозные КП, удовлетворяющие требованиям сетки и зазоров. Мах_1еп — ограничивает длину трассы для антенны КТ. Эта длина измеряется от точки привязки КП до центра КТ. Use_rule — указывает на использование при вводе КТ установленных правил проектирования на уровне РСВ (платы в целом). Команда ввода КТ должна использоваться после окончания всех трассировок, но перед очисткой, раздвижкой и сглаживанием. В этой стадии преимущества получают ДСО. ,. Общий метод для достижения хорошей тестируемости — формирование стрингеров для планарных КП, а затем защита соединений между КП и ДСО, что гарантирует доступность для тестирования всех планарных выводов компонентов. Такой метод можно использовать при трассировке многослойных ПП, но он может оказаться расточительным в сравнении с методом формирования КТ. Рассмотрим следующие факторы: • Для этих стрингеров может потребоваться-много дополнительных ДСО, которые с другой стороны могут подсоединяться непосредственно к планарам. • Если ДСО являются защищенными, то уменьшение их числа на этапах перетрассировки также является проблемой. • Возможность трассировать на слоях установки компонентов всегда ограничена ранее проложенными и защищенными трассами. • В цепи из пяти выводов появляются 5 защищенных ДСО, в то время как только одна КТ требуется для КТ. Примечание автора: В практике разработки отечественных печатных плат значительное внимание уделяется такому понятию, как ремонтопригодность платы, которое подразумевает возможность физического отсоединения вывода компонента от цепи, которой он ранее принадлежал. Обычно это выполняется подрезкой стрингеров и прокладкой навесных проводников для реализации новых топологий соединений. С этой точки зрения применение КТ не находит широкого применения как антитезис формирования стрингеров для каждого вывода компонента. Примеры команд Testpoints Testpoints (side both) Testpomt (grid o.lOO)(use_via Vl_9 V9)(pin_allow on)
252
Команды автоматической трассировки Testpoint (center_center 0.100) Testpoint (image_outline_clearance 0.050) Если вы хотите установить КТ на разных сторонах платы, необходимо использовать раздельные команды testpoint, например: Testpoint (side front)(use_via Vl-6 Vl-1) Testpoint (side back)(use_via Vl-6 V6-6)
Unit Эта команда устанавливает рабочие единицы намерения.
Эти единицы можно установить в любое время сессии автотрассировки. Ввод команд, вывод файлов отчета и вывод на дисплей производится в этих единицах измерения. Ими могут быть сантиметр, дюйм, мил (тысячная дюйма), миллиметр, микрон (cm, inch, mil, mm, um). Пример Unit mil
команды
' ' •. •'.
Unmiter Эта команда удаляет 135-градусные повороты трасс.
Если эту команду необходимо1 применить к определенному слою, то можно указать опцию layer и его идентификатор. Вместе с тем эта команда не удаляет закругленные углы трасс.
253
Глава 4
.
'
Примеры команд
Unmiter Unmiter layer LI
View Эта команда управляет отображением слоев в рабочей зоне системы Specctra. <signaljayerjd> <sistem_layer>':
Идентификатор <signal_layer> задает имя сигнального слоя. Идентификатор <system_layer> задает имя системного слоя в системе Specctra. Каждый системный слой обеспечивает визуальные характеристики, такие как гиды (индикаторы связности цепей) или метки компонентов. В единственной команде view можно указать одно или более ключевых слов, разделенных пробелами. После использования одной или нескольких команд включения или отключения визуализации сигнальных или системных слоев, экран автоматически обновляется. Ниже приведен список системных слоев, которые можно использовать для просмотра трассировки и размещения: Component_labels, error, grid, keepout, origin, pin, power > power_pins, region, site, unroute, via, via_grid, wire. При желании отобразить с помощью этой команды метки компонентов или гиды для трассировки (не трассировки) можно использовать команду show для управления отображением типа метки или гида. При этом возможно: •
Использовать команду show_component_labels для отображения имен компонентов (позиционных обозначений), идентификаторов выводов, имен кластеров компонентов, имен образов (корпусов компонентов), метки логических или физических частей компонентов или метки виртуальных'выводов.
• Использовать команду show unroutes для отображения гидов для неразведенных соединений, гидов для сигнальных цепей, соединенных с размещенными или выбранными компонентами или гидов для неразведенных силовых цепей. Приведем дополнительные ключевые слова этапа размещения, которые представляют системные слои для отображения: Place_error Place_back
254
Команды автоматической трассировки Place_front Place_grid С помощью использования ключевых слов density, histogram, force_vector с командой view можно управлять этими характеристиками так же, как с помощью .меню авторазмещения (Autoplace menu). См. также view grid, vset. Примеры команд View L2 L3 off ViewL2L3on View via on Команда show имеет следующие опции: Component_labels — отображает или подавляет отображение меток, которые идентифицируют компоненты, выводы, виртуальные выводы, образы к'орпусов, логические части компонентов, физические части компонентов, кластеры компонентов, в зависимости от типа, выбранного в команде show_component_labels. Error — отображает или подавляет отображение нарушений правил трассировки и символов нарушений для всех видимых сигнальных слоев. Grid — отображает или подавляет отображение дискретной сетки, если она задана. Возможно использовать команду view grid для представления сетки в виде точек или линий. Keepout — отображает или подавляет отображение запретных зон на всех сигнальных слоях. Origin — отображает или нет базовые точки компонентов (когда видимы контуры компонентов) на всех видимых сигнальных слоях. . i Pin — отображает или нет выводы компонентов на всех видимых сигнальных слоях. Power — отображает или нет гиды (линии полетов), которые показывают неразведенные связи силовых цепей. Power_pins — отображает или нет метки питания (Р) или земли (G) на силовых выводах при видимых контурах компонентов. Region — отображает или нет границы регионов на всех видимых сигнальных слоях. • Site — отображает или нет расположение выбранных корпусов компонентов. Unroute — отображает или нет гиды, показывающие неразведенные соединения вывод—вывод.
255
Глава 4
•
Via — отображает или нет ДСО на всех видимых сигнальных слоях. Via_grid ;— отображает или нет сетку ДСО, если она задана. Wire — отображает или нет проложенные трассы на всех видимых сигнальных слоях.
View grid Эта команда отображает способ визуализации сетки для трасс и размещения.
Имеется 2 варианта — линия (lines — по умолчанию) или точки (dots), например: view dots
Vset Эта команда в значительной мере идентична команде view. vset
<signal_layer_id> V<sistem_layei>
While Эта команда вычисляет выражение <expression> для вычисления команд внутри цикла.
Вычисление выражения повторяется, пока результат не будет равен 0. Необходимо обеспечить при этом обязательное окончание цикла. Примеры команд Route 25 Setexpr count(5) While (count > 0 && conflict_wire >10)
256
Команды автоматической трассировки (route 10 16 clean 2 setexpr count (count -1) clean 2 write wires wires.w
Wildcard Эта команда определяет альтерйативные символы для замены символа звездочки (*) для использования в качестве команды после подстановки нужного символа.
Эта команда используется, когда звездочка появляется в проектном файле как часть имени файла, таких как имя цепи, идентификатор компонента, имя образа, имя файла или имя стека контактных площадок. . Необходимо заменить
Примеры команд Wildcard $ Wildcard %
Wirebond Эта команда размещает КП и трассы для связи каждой контактной площадки с выводами интегральных микросхем, установленных на плате.
<padstack_id> \
H <max_length> H->^T)
>"
257
Глава 4
•
Bond — размещает КП для подключения отдельной трассы для каждого вывода микросхемы. При этом необходимо: • Идентифицировать имя стека КП специального вида (обычно это планарная контактная площадка прямоугольного вида). • Указать максимальное расстояние между выводом микросхемы и размещением этих КП <max_length>. Максимальная длина должна выражаться положительным вещественным числом. В течение этой операции специального вида, Specctra автоматически размещает КП, основываясь на выбранном стеке КП (описании КП на слое) и специфицированной максимальной длине связи в виде прямолинейного отрезка трассы. После этого производится прокладка всех межсоединений, указанных в таблице цепей. Примеры команд Wirebond U4 (bond Р70 100 Р55 150) Wirebond Ul (bond site 3.175 site 4.175 site 5.275 site 6.275)
Write Yoa eii aiaa ni66afyao aafifla oaeouaai Y6iae6a a aeaa oaemTaiai баёёа. Session — опция создает текстовый файл, который содержит имя файла проекта, историю предварительных сессионных файлов, данные по размещению компонентов, послойные данные и трассы. Возможно: • Использовать опцию comment для добавления информации в файл сессии в конце секции истории. • Использовать опцию include для добавления информации о размещении, даже если изменения.размещения компонентов не производилось. Routes — создается текстовый файл, который содержит данные о всех проложенных трассах и ДСО плюс дополнительные данные для трансляции данных трассировки обратно в САПР пользователя. С помощью опции include можно добавить информацию о гидах и КТ в;файл трассировки. Эта же опция позволяет перенести в текстовый файл информацию о виртуальных КП. Опция type служит для включения защищенных, незащищенных и выбранных трасс для сохранения составных коллинеарных трасс как единственной спрямленной трассы. Имя файла по умолчанию design.rte. Wire — опция в основном аналогична предыдущей (без данных для обратной трансляции в САПР), по умолчанию имя файла design.w. Include — опция служит для включения информации о гидах и КТ в файл трасс и проводов. Дополнительный дескриптор guides позволяет добавить гиды, поэтому пользовательская САПР может определить топологию не разведенных в Specctra соединений. Дескриптор testpoint добавляет секцию КТ в конце файла.
258
Команды автоматической трассировки
Exclude — служит для дополнительной информации о виртуальных КП. Туре — служит для дополнительной информации о защищенных, незащищенных и выбранных проводах. . , 1
Network — создает текстовый файл, который содержит сеть линий связи, использованных в проектном файле, имя этого файла по умолчанию design.net. Padstacks — создает текстовый файл с описанием использованных КП, имя этого файла по умолчанию design.pad. Conflict — создает текстовый файл с описанием конфликтов пересечений и зазоров. Имя этого файла по умолчанию design.cnf. Corner — создает текстовый файл, содержащий список всех углов и дуг в массиве трасс. Имя такого файла по умолчанию design.crn. Файл сессии не содержит какие-либо определения или правила проектирования, установленные или измененные в течение сессии. Для получения таких данных необходимо создать файл did, отредактировать его и запустить его как файл DO при повторном прогоне сессии.
259 /
Глава 4 Примеры команд Writes wires final.w Write routes (include testpoint) Write routes (type protect) Write session (comment new bypass caps added) Write session (permission (group read write)(public read nowrite)) Опция
Session file Когда достигнуты удовлетворительные результаты размещения и трассировки, целесообразно сохранить информацию о сессионном файле перед выходом из системы Specctra. Эти данные могут быть использованы для повторного запуска сессии в более позднее время, а также для трансляции данных в САПР пользователя. Файл сессии содержит файл проектирования, список предшествующих файлов сессий, список других созданных файлов в течение сессии и текущий статус. Для данных размещения список свопингов отображает список цепей с новыми данными о соединениях, если эта операция выполнялась. Поэтажная информация содержит список определений кластеров и комнат. При использовании этого файла для повторного запуска сессии Specctra читает этот файл, загружает указанный в файле сессии файл проекта, загружает результаты размещения, этажные планы и данные трассировки и применяет содержащиеся в файле сессии данные свопинга.
Routes file Данные трассировки в файле трассировки содержат трассы и ДСО. Здесь имеется также информация для обратной трансляции трассировочных данных в исходную САПР. Он может содержать данные о гидах и КТ, если соответствующие операции имели место.
Wire file Информация о трассировке в этом файле включает в себя данные о трассах и ДСО.
Write colormap Эта команда сохраняет в текстовом файле информацию о цветовой карте. Colormap — эта опция создает текстовый файл, содержащий данные о присвоенных расцветках объектам и графическим элементам.
260
Команды автоматической трассировки
Form — опция специфицирует палитру используемых цветов для графических элементов, отличных от текущих установок, и использует ее для цветовой карты. Примеры команд Write colormap Write colormap (form) Write colormap colorS.std (permission public nowrite)
Write environment Команда сохраняет текущую цветовую карту, определения ключей или то и другое в директории .cct.
Environment — опция создает текстовый файл в .cct-директории, который содержит переменные окружения в текущей сессии. Опция colors запоминает именно цветовую карту, а опция keys именно определения ключей. По умолчанию сохраняются оба эти определения. В системе UNIX можно использовать опцию
261
Глава 4 • В системе Windows 95 директория .cct помещается в директории Windows (декларированной в переменной окружения WINDIR), например: WINDIR=C:\wm95 Specctra запоминает файлы расцветок и ключей в C:\win95\..cct. Сохранить цветовую карту можно в другом файле или директории с помощью команды write colormap, а загрузить ее оттуда с помощью команды read colormap. Сохранить файл определения ключей можно в другом файле с помощью команды write keys, а загрузить их оттуда с помощью команды defkey.
Примеры команд Write environment
»
Write environment (colors) Write environment (permission (group read nowtite))(keys)
Write keys Эта команда запоминает информацию о ключах в текстовом файле. 1
i k —^
{
->l ^+\
Keys — запоминает определения ключей в текстовом файле, который содержит серию команд defkey. По умолчанию имя файла defkey.std. Для доступа к файлам чтения и записи в системе UNIX их необходимо сохранить с помощью команды write и опции
262
Заключение Использование DO-файлов для автоматического выполнения процедур размещения и трассировки из среды PCAD 2000 отнюдь не препятствует переходу к интерактивной работе непосредственно в подсистеме Specctra. При этом возможно остановить выполнение DO- файла, произвести оценку полученных результатов, при необходимости оптимизировать их вручную, после чего продолжить работу DO-файла. Для остановки работы этого файла достаточно ввести отдельной строкой в его состав команду STOP. Specctra прекращает автоматическое выполнение команд из DO-файла, при этом в строке статуса появляется сообщение IDLE, после чего пользователь может производить любые интерактивные операции непосредственно в системе Specctra. Для продолжения работы достаточно выдать команду AutoRoute/Route. В появившемся окне AutoRoute'(cM. рисунок ниже) можно установить (при необходимости) новые значения параметров трассировки, после чего нажать клавишу ОК. Трассировщик продолжит свою работу.
Minimum Via Grid: f? Minimum Wire Gri J7 FanoutifAppropri Via Sharing Pin Sharing
:
:;;- : ':,,
enerate-Testpoints
Следует отметить, что в случае выбора режима работы трассировщика Smart может появится сообщение, помещенное на рисунке ниже:
:: Route: Layet reduction may be possible on this board, tji deleting all wires, unselecting one horizontal and one vertical layer, and then restart smart_route.
OK
I
263
Заключение Подпрограмма Smart Route сообщает, что для данцой платы число заданных слоев избыточно и его можно уменьшить. Для этого рекомендуется попытаться удалить все проложенные трассы, переустановить направление трасс на оставшихся слоях и затем перезапустить Smart Route. Такое сообщение может быть выдано трассировщиком в процессе его работы и без прерывания, если трассировщик обнаружит явный избыток заданных для платы слоевуВообще прервать работу системы Specctra можно в любое время путем выдачи команды File/Quit, после чего появляется окно прерывания:
Save And Quit
Quit (No Save)
Cancel
Help
Для прекращения трассировки и полного отказа от ее результатов следует пометить «галочкой» строку Delete Did File и щелкнуть Quit (No Save). Для сохранения промежуточных результатов следует только щелкнуть на Save And Quit. Отметим также, что в случае прерывания выполнения файла DO имеется возможность сохранить в текущем каталоге проектный файл системы Specctra (*.DSN). Этот файл имеет кодировку ASCII, т. е. является текстовым и может быть использован как альтернативный вариант интерфейса к взаимодействующей САПР. Фрагмент файла в формате DSN приведен ниже:
(РСВ C:\TESTS\TT10\RPla.pcb (parser (host_cad ACCEL) (host_version 15.00) (string_quote ' ) (constant Top 1) (constant intl 12) (constant int2 13) (constant int3 14) (constant int4 15) '(constant Bottom 2) ) (resolution MM 1000) (structure (rule (clearance 0.3048)) (boundary (rect pcb 13.3994 12.8993 277.412 186.908)
264 _?'•;
. '
Заключение (boundary (path signal'0 262.411 24.8999 28.4002 24.8999 28.4002 24.8999 25.4 27.9001 25.4 27.9001 25.4 174.907 25.4 174.907 265.412 174.907 • 265.412 174.907 265.412 27.9001 265.412 27.9001 262.411 24.8999) (layer "Top (type signal) (rule (clearance (rule (clearance (rule (clearance (rule (clearance (rule (clearance (rule (clearance
0.3 0.3 0 .3 0.3 0 .3 0 .3
(type (type (type (type (type (type
pin_pin pin_smd smd_smd))) pin_wire smd_wire))) wire wire) ) ) smd via pin via) ) ) via wire) ) ) via via) ) )
•
(layer (type (rule (rule
intl signal) (clearance (clearance (clearance (clearance (clearance (clearance
(layer (type (rule (rule (rule (rule (rule (rule
int2 signal) (clearance (clearance (clearance (clearance (clearance (clearance
0 .3 0 .3 0.3 0 .3 0 .3 0.3
(type (type (type (type (type (type
pin_pin pin smd smd smd) )) pin wire smd wire) ) ) wire_wire) ) ) smd via pin via) ) ) via wire) ) ) via via) ) )
(layer int3 (type signal) (direction off) (rule (clearance (rule (clearance (rule (clearance (rule (clearance (rule (clearance (rule (clearance
0 .3 0 .3 0 .3 0 .3 0 .3 0.3
(type (type (type (type (type (type
pin_pin pin smd smd smd) )) pin wire smd wire) ) ) wire wire) ) ) smd_via pin_via) ) ) via_wire) ) ) via via) ) )
(layer int4 (type signal) (direction off) (rule (clearance (rule (clearance (rule (clearance (rule (clearance
0 ,3 0.3 0 .3 0..3
(type (type (type (type
pin_pin pin_smd smd smd) )) pin wire smd wire)))' wire wire) ) ) smd_via pin_via)))
0 .3 0 .3 0 .3 0 .3 0 ..3 0 .3
(type (type (type (type (type (type
pin_pin pin smd smd smd) )) pin_wire smd_wire) ) ) wire wire) ) ) smd via pin via) ) ) via_wire) ) ) via via) ) )
«• •
265
Заключение (rule (clearance 0.3 (type via_wire))) (rule (clearance 0.3 (type via_via))) (layer (type (rule (rule (rule (rule (rule (rule
Bottom signal) (clearance (clearance (clearance (clearance (clearance (clearance
0.3 0.3 0.3 0.3 0.3 0.3
(type (type (type (type (type (type
pin_pin pin_smd smd_smd))) pin_wire smd_wire))) wire_wire))) smd_via pin_via))) via_wire))) via_via)))
(grid (grid (rule (via
via .01) wire .01) (width .25)) CCTVIA_552.ps CCTVIA_319.ps CCTVIA_194.ps CCTVIA_182.ps CCTVIA_161.ps CCTVIA_35.ps CCTVIA_19.ps CCTVIA_13.ps CCTVIA_7.ps CCTVIA_l.ps CCTVIA_0.ps 'CCTVIA_(Default)' (spare
(placement (component 4PSP910 (place X3 145.406 105.404 front
ВНИМАНИЕ! УКЦ Родник Софт приглашает Учебно-консультационный центр ОАО Родник Софт объявляет о наборе слушателей в группы по изучению САПР электронных устройств. Занятия ориентированы как на специалистов-производственников, так и на пользователей, впервые проявивших интерес к САПР, в первую очередь к P-CAD, ОгСАО, Protel и Microwave Office. Выпускники УКЦ получают «Сертификат пользователя», дающий право на приобретение изученного программного продукта со скидкой, дополнительные бесплатные консультации, методическую литературу, а так же скидку на последующее обучение. ОАО Родник Софт. Россия, Москва, 113556, Нахимовский проспект, дом 1, корп.1. Тел.(095) 113-7001,113-2688. Факс (095) 317-9754.
www.rodnik.ru, [email protected].
266
Содержание Введение
з
Глава 1. Общие сведения о системе Specctra
4
Взаимодействие пользовательской САПР с системой Specctra Проектный файл системы Specctra Взаимодействие между Specctra и пользовательской САПР печатных плат Команды управления системой Specctra Размещение компонентов Интерактивное редактирование и трассировка Автотрассировка Расширенный набор правил (ADV) . Проектирование с учетом удобства производителя плат (DFM) Гибридное проектирование (HYB) Правила проектирования высокочастотных цепей (FST) . . Оценка результатов размещения Коррекция ошибок размещения . Маркировка нарушений при размещении Исправление ошибок размещения Анализ результатов размещения Оценка длин цепей Способы выполнения проектов с повышенными требованиями
5 6
6 9 10 10 11 . .12 12 12 12 13 13 13 14 15 15 16
Размещение компонентов Запрет трассировки на внешних слоях Оптимизация правил проектирования . . Некоторые особенности .подготовки данных для трассировки . . . . . . . Трассировка двухслойных плат Поперечные наводки и параллельные шумы Многовариантные правила для наводок •. . Контроль наводок типа class-class Контроль наведенных шумов
16 19 19 .20 22 .23 23 .24 25
Глава 2. Интерфейс с трассировщиком SPECCTRA . . .26 Сохранение вашего проекта Запуск трассировщика
26 26
Клавиша DO File Клавиша Output PCB File Клавиша Output Log File Клавиша Load Клавиша Save Button Клавиша Set Base DO Wizard
27 .27 .27 27 28 .28 28
. ,'Д •.
267
Содержание
-
Редактирование текста Клавиша Classes Net Клавиша Command Line Атрибуты PCAD 2000 и трассировщик Specctra . Трассировщик и категории цепей Категории трассировщика Specctra Процесс трассировки Файл протокола (LOG File) Ручная трансляция файла и автотрассировка Выявление и устранение ошибок
29 29 31 32 32 .32 33 33 34 34
Глава 3. Команды автоматического размещения компонентов
36
Общая информация о выборе объектов для размещения Align ., Apply_small_comp_pattern Assign_small_comp_pattern Associate Autodiscrete Autorotate
Change align_base Change component_image Change work_origin Check Checkmode Component_property Component_pin_property Define cluster •••• . Define component , . . . . . . . Define keepout Define net pins . Define place_boundary Define room Delete component Disassociate Forget Form^cluster Grid place High_speed Image_property Image_pin_property Initplace Interchange ... Keep_selected Layer_property
268
36 37 37 38 39 39
-,
..
42
43 44 .45 . .45 47 47 . . . . .48
49
'.
51 52 53 54 55 56 57 57 59 61 61 62 , . .63 64 66 68 68
_ Lock\unlock ... Mode Net_property Place ! Place_status_file Push Place_rule Rebuild_power_net Relocate Room_rule . . . . . . . ' . Secondary_connection . Sequence Site , . ... Splash Swap Trade Unplace Select/unselect all objects : Select/unselect area Select/unselect cluster Select/unselect component Select/unselect family Select/unselect gates Select/unselect image Select/unselect logical_part Select/unselect physical_part Select/unselect pin Select/unselect room Select/unselect room_cohtents Select/unselect subgates Select/unselect terminators
Содержание .
;...
......
.,. . -.
'
..
.....'
...
,....,
.
•.".
Глава 4. Команды автоматической трассировки Правила описания синтаксиса команд .....', Assign_pin .. Assign_supply Autosave Bestsave . Bus > Cct_cmd Cct_mode . Center Change . Change_width_by_rule Check_area -.
68 .69 .70 71 71 72 72 . . .74 . .74 75 .76 76 77 77 78 79 80 .81 81 . . .82 , . .82 83 84 .85 85 86 86 87 87 .88 89
91
.91 92 94 96 97 97 98 99 99 .-.100 100 101
269
Содержание Check Circuit . Т Circuit rules overview Clean . : Component_pin_property Component_property Cost Critic Define Commands Define bundle Define class Define class_class Define group Define group_set Define keepout . Define layer_noise_weight Define net Define padstack Define pair Define region Defkey Delete . . Did_file .. Direction DO Evaluate Fanout .'
... . .....' ,
.
,.\
.
... ....;... ....
Microvia fanout under SMD pads
Fence Filter Fix/unfix Forget Grid-route_major_factor Grid_smart Grid snap Grid via Grid via_keepout Grid wire Highlight If Image_pin_property Image_property Layer_property License usage
27O
101 103 105 .111 . .112 112 115 . .116 117 117 118 121 .121 123 124 125 126 128 128 . .129 . .132 132 134 .135 136 137 .137 143
••••••
-,-•••
143 143 144 145 149 .149 150 151 152 152 153 155 .156 157 160 161
Содержание Limit Miter Mode
.161 .162 165
Interactive routing mode Draw modes
Net_property Order Protect/unprotect Quit Read colormap Read keepout ...'...' Read routes Read_wire ; Recorner . . . Undo/redo Reduce_padstack Release license Repaint Report Report conflict Report network Report rules Route Rule Seedvia . . . Select/unselect Select/unselect all Select/unselect all objects Select/unselect area Select/unselect fromto Select/unselect pin Set Set condition overview Setexpr Set_focus Setup_check Sh Shield Show_component_labels Show unroutes Skill_cmd Skill_mode System variables Smart_route
.165 170
.,,
'.,'....
...
. •• . ,
. .171 ,172 .174 .176 177 177 178 179 179 180 181 .182 183 183 189 .189 190 191 193 .217 .... .218 220 222 223 224 225 225 233 235 236 237 238 239 240 241 242 243 243 .244
271
Sort Spread Status_file Stop
.
Tax Testpoint Unit Unmiter
.247 248 249 249
,
249 250 253 253
View
254
View grid
256
Vset While . . ' . . . Wildcard Wirebond
.256 256 ,. .257 . .257
,'..
Write Session file Routes file
258 260 260
/
Wire file Write colormap Write environment Write keys
260 260 .261 262
Заключение
. .263
Елшин Юрий Михайлович
Справочное руководство по работе с подсистемой SPECCTRA в PCAD 2000 Ответственный за выпуск В. Мйтин Макет и верстка Н. Бармина
Обложка Е. Холмский
ООО Издательство «СОЛОН-Р» ЛР №066584 от 14.05.99 Москва, ул. Тверская, д. 10 стр. 1 ком. 522 Формат 70x100/16. Объем 17 п. л. Тираж 2000 экз. АООТ «Политех-4» Москва, Б. Переяславская, д. 46 Заказ № 2 7.
272
ОАО Родник Софт, официальный представитель вед у щи \ производителей САПР электронных устройств, предлагает: Altium P-CAD 2001 - сквозное яроектяроваяяе аналого-цифровых электронных устройств Protel 99 SE - моделирование я сквозное яроектярованяе аналого-цифровых я цифровых электронных устройств PeakFPGA- моделирование цифровых устройств я синтез ПЯИС с нсяояьховаяием языка VHDL . CircuitMaker 2000 - мояеяяроваиие электронных схем Набор модулей для систем P-CAD и Protel - интерфейсы, утилиты, средства документирования, библиотеки я яр.
Appied W a v e R e s e a r c h Microwave Office - моделирование устройств СВЧ Visual System Simulator - моделирование систем сяязи на функциональном уровне
Системы моделирования т сквозного проектирования интегральных сжем РСВ Design Studio, OrCAD - моделирование я сквозное нроектярояаяяе аналого-цифровых электронных устройств S P E C C T R A - размещение т трассировка яечатныж яяат
Innoveda Набор программ для яроектнрояаняя я мояеяяроваяия смешанных цифровых м аналоговых систем
ПО других производителей В ETA Soft |Оуяа*мс Soft АяаНхус, Inc.) - термический анализ электронного оборудования Microwave Studio fConpiiter ШтяШют Tectaeiegy KCSTff - 30 моделирование СВЧ-устройств и антенн Lavenir (Laveeir} - яояготовка уяраяляшних файлов ял* изготовления фотошаблонов печатных плат . S y s t e m V i e w KEiaBix} * моделирование динамических систем на уровне функциональных блоков. ОТ ТО |ОТ_ТО Software бгонре) - верифнкация и редактирование топологии 1C OmegaPlus KQsaatic EMC} - анализ целостности сигналов печатных «лат., перекрестных искажения., ЭНС н излучения яриборов и устройств WSCAD KWSCAP ElectreBic} - создание яряяцяяяаяьяых электрических схем дя* электротехники АСОНИКА-К и -Т |МИЭв1,1рГТУ1 - анализ теяяовых эффектов я надежности радиоэлектронных комяонентоя я устройств
Рессия,, Москва., 11355®,, HaxwMOBCKMi лр-т, дом 1„ жорл-1 (095) 113-7001,, 113-2688 Факс 317-9754 www..r0dinik..ru