Пакет CADSTAR. Урок 20. Редактор печатных плат системы CADSTAR: трассировщик P.R.Editor XR. Выполнение проверок и генерация отчетов
Юрий Потапов
Сергей Прокопенко
Для работы нам потребуется специальный пример Preditor1.pcb, который входит в комплект стандартной поставки программы CADSTAR.
- Находясь в редакторе плат системы CADSTAR,
выполним команду меню File/Open, в появившемся окне выберем папку Self Teach и в ней файл
Preditor1.pcb, после чего нажмем кнопку Open.
Откроется окно редактора печатных плат с выбранным проектом. - Выполним команду меню View/View All или нажмем кнопку
на панели инструментов.
- Выполним команду меню Tools/PREditor XR.
- В появившемся на экране диалоговом окне RIF Export Option нажмем кнопку OK.
- В появившемся на экране окне отчета нажмем кнопку Close и закроем его.
На экране откроется окно программы P.R.Editor XR, в котором будет отображаться выбранный нами проект печатной платы.
Проверка ошибок трассировки
Прежде чем приступать к трассировке топологии, изменим некоторые настройки программы.
- Выполним команду меню Configure/Routing/Routing Tool или нажмем комбинацию горячих клавиш CTRL+T.
- В появившемся окне Routing Tool Options сделаем
настройки, как показано на рис. 1, а именно: раз
решим добавление переходных отверстий (Vias
Allowed) и трассировку с нарушениями (Errors
Allowed) и, главное, включим проверку DRC «на
лету» (On Line DRC). Ширина проводников при
трассировке будет установлена согласно значению
параметра Necked, стиль трассировки будет орто
гональным (Angle 90). Будет выполнено: 1 проход
(Passes) и 10 попыток (Effort). - Нажмем кнопку OK и закроем окно. Как мы помним, файлы, загружаемые в программу P.R.Editor
XR, помимо проектных данных включают дополнительную информацию о правилах проектирования, которая описана в виде атрибутов. Перед
началом работы с топологией рекомендуется сформировать специальный отчет, в котором будет отображена вся информация о заданных в проекте атрибутах. - Выполним команду меню Utilities/Reports/Attributes.
На экране появится окно Attributes Report (рис. 2),
в котором приведена следующая информация,
упорядоченная в отдельные разделы:
- Basic Spacing Rules — общие правила, определяющие зазоры между объектами топологии, например space_trk_pin, space_trk_smd и т. д. Они задаются в окне Spacing Rules, вызываемом командой меню Configure/Spacings.
- Optimum Spacing Rules — правила, определяю-
щие оптимальные зазоры, например opt_trk_via,
opt_trk_pin и т. д., которые будут использоваться при оптимальной трассировке, запускаемой
с помощью команды меню Routing/Optimal
Spacing. Они задаются в окне Spacing Rules, вызываемом командой меню Configure/Spacings. - Power-plane Attributes — параметры шаблона заливки внутренних слоев питания
и заземления, например ppp_con_width,
ppp_clearance и т. д. Задаются в окне
Copper Pour, вызываемом командой меню Configure/Routing/Copper Pour. - Width And Layer Rules — правила, описывающие ширину проводников на слоях
(например, net_width), а также ряд других
настроек слоев (например, via_layer_pairs,
stacked_vias и т. д. - Bond Wire Rules — правила, ограничивающие максимальную и минимальную длину
проволочных перемычек в MCM-проектах,
например bond_len_max и bond_len_min. - Net/Spacing Class Definitions — правила,
определяющие классы цепей (например,
net_class) и зазоры между ними (например, spacing_class). - Mitering and Fattening Rules — правила,
описывающие на уровне платы параметры сужения или расширения проводников (например, min_len_thin, min_len_fat),
а также их скосов или скруглений (например, miter_min, miter_max). - Pin Routing Attributes — правила трассировки выводов компонентов, например
suppress_pin, pin_routing. - Differential Pair Definitions — описания
дифференциальных пар цепей, например
pin_diff_pair. - Network Topology Rules — правила, определяющие порядок соединения выводов
в цепи, например pin_order, src_pin_order. - Length/Delay Controls — правила, задающие ограничения на минимальную или
максимальную задержку сигнала в цепи,
например pin_max_length, pin_min_delay,
pin_length_group. - Crosstalk Attributes — параметры, необходимые вычислителю Field Solver для
оценки перекрестных искажений, например volt_amplitude, rise_time и т. д.
Приведенные в отчете данные могут помочь
нам выявить наиболее критические элементы и правильно определить стратегию трассировки.
Для изучения того, как работает механизм
проверки ошибок DRC, принудительно введем в проект несколько ошибок. Чтобы
ошибки были хорошо заметны на экране,
настроим для них специальный цвет.
нажмем кнопку
на панели инструментов
или нажмем комбинацию горячих клавиш
CTRL+H.
выполним щелчок левой кнопкой мыши на
значке +, расположенном слева от категории Errors Items на закладке Electrical.
Категория раскроется, и в списке появятся
две строки, одна из которых (Error) задает
цвет подсветки участвующих в нарушении
объектов, а вторая (Error Letter) задает цвет
текстовых маркеров ошибок (рис. 3).
названии подкатегории Error. Вся строка
окажется выделенной, а изменение цвета затронет все слои.
и в появившемся окне Choose Color с помощью мыши выберем малиновый цвет.
Новая настройка цвета тут же отобразится
в выделенной строке в окне Appearance.
на названии подкатегории Error Letter.
Новая настройка цвета тут же отобразится в выделенной строке в окне Appearance.
кнопку Apply, чтобы передать сделанные
изменения в проект, и нажатием кнопки
OK закроем окно.
Приступим к прокладке проводников.
нажмем кнопку
на панели инструментов.
Route или нажмем кнопку на панели инструментов.
кнопкой мыши и сдвинем курсор немного вверх.
Так как ранее мы разрешили ошибки трассировки, то программа спокойно проложит проводник на верхнем слое платы поверх расположенных на этом слое контактных площадок той же микросхемы
и подсветит объекты, участвующие в нарушении, малиновым цветом.
и зафиксируем вертикальный сегмент проводника (рис. 4).
Итак, в результате проделанных нами манипуляций мы получили проводник, нарушающий несколько правил проектирования, определяющих минимально допустимые зазоры. Отметим, что трассировщик
P.R.Editor XR выполняет проверку только
для активных слоев и видимых объектов.
Режим проверки правил DRC «на лету»
удобен тем, что наглядно показывает ошибки во время ручной трассировки платы.
При этом предполагается, что пользователь сам опознает эти ошибки по мере их
появления. При использовании автоматической трассировки ошибок может быть
много, и однозначная их идентификация
будет затруднена. В этом случае применяется пакетная проверка DRC с добавлением маркеров ошибок. Рассмотрим, как работает эта функция, но прежде сбросим полученную ранее подсветку ошибок.
Проводники и контактные площадки примут свой обычный вид. Теперь предположим, что мы ничего не знаем об этих
ошибках, например, они сделаны программой в автоматическом режиме, и нам необходимо их найти и исправить. Настроим и выполним пакетную проверку DRC.
На экране появится диалоговое окно Check
Options (рис. 5), в нем есть четыре закладки, на которых выбираются правила, применяемые к объектам: разных цепей (Net-Net), одной и той же цепи (Same Net), шин
или наборов цепей (Trunking), а также другие правила (Miscellaneous).
Кнопки On и Off позволяют одновременно включить или выключить все правила
на выбранной закладке, а «галочка» Check
в верхней части каждой закладки позволяет исключить из проверки всю соответствующую группу правил.
Net-Net выполнены, как показано на рис. 5,
то есть все «галочки» включены.
Items.
Options.
область платы, где должна быть выполнена проверка.
На экране появится отчет о найденных
ошибках. Объекты, участвующие в нарушении, будут подсвечены, а непосредственно в местах нарушений появятся текстовые маркеры ошибок (рис. 6).
Легко видеть, что система найдет две ошибки: одна из них будет помечена маркером
TT (Track to Track) — нарушение зазора
между проводниками разных цепей, вторая маркером TP (Track to Pin) — нарушение зазора между проводником и контактной площадкой разных цепей. Полный перечень возможных меток ошибок приведен в таблице. Обратите внимание, что
метки ошибок обозначаются строчными
буквами, если нарушение замечено между объектами одной цепи, и заглавными,
если в нарушении используются объекты
разных цепей.
или нажмем кнопку
на панели инструментов.
Маркер ошибки для объектов разных цепей |
Маркер ошибки для объектов одной и той же цепи |
Описание ошибки |
TT | tt | track-to-track, нарушен зазор «проводник – проводник» |
TV | tv | track-to-via, нарушен зазор «проводник – переходное отверстие» |
TP | tp | track-to-pin, нарушен зазор «проводник – контактная площадка» |
TC | tc | track-to-copper , нарушен зазор «проводник – область металлизации» |
TB | track-to-profile, нарушен зазор «проводник – граница платы» | |
TK | track-to-keep out area, нарушен зазор «проводник – граница запрещенной области» | |
VV | vv | via-to-via, нарушен зазор «переходное отверстие – переходное отверстие» |
VP | vp | via-to-pin, нарушен зазор «переходное отверстие – контактная площадка» |
VC | vc | via-to-copper, нарушен зазор «переходное отверстие – область металлизации» |
VB | via-to-profile, нарушен зазор «переходное отверстие – граница платы» | |
VK | via-to-keep out area, нарушен зазор «переходное отверстие – граница запрещенной области» | |
PP | pp | pin-to-pin, нарушен зазор «контактная площадка – контактная площадка» |
PC | pc | pin-to-copper, нарушен зазор «контактная площадка – область металлизации» |
PB | pin-to-profile, нарушен зазор «контактная площадка – граница платы» | |
CC | cc | copper-to-copper, нарушен зазор «область металлизации – область металлизации» |
CB | copper-to-profile, нарушен зазор «область металлизации – граница платы» | |
QB | testpoint-to-profile, нарушен зазор «тестовая точка – граница платы» | |
testpoint-to-testpoint, нарушен зазор «тестовая точка – тестовая точка» | ||
QA | testpoint-to-placement area, нарушен зазор «тестовая точка – контур компонента» | |
DD | нарушен зазор между краями отверстий сверления | |
AA | placement-to-placement , нарушен зазор «контур компонента – контур компонента» | |
AC | placement-to-clearance, нарушен зазор «контур компонента – контур clearance» | |
AI | placement-to-keep-in, нарушен зазор «контур компонента – область keep-in» | |
AB | placement-to-profile, нарушен зазор «контур компонента – граница платы» | |
AK | placement-to-keep-out, нарушен зазор «контур компонента – граница запрещенной области» | |
wm | длина перемычки в MCM-модулях вышла за рамки заданного диапазона | |
at | угол между проводником и краем контактной площадки менее 90 градусов | |
UU | trunk-to-trunk, нарушен зазор «шина – шина» | |
UT | trunk-to-track, нарушен зазор «шина – проводник» | |
UV | trunk-to-via, нарушен зазор «шина – переходное отверстие» | |
UP | trunk-to-pin, нарушен зазор «шина – контактная площадка» | |
UC | trunk-to-copper, нарушен зазор «шина – область металлизации» | |
UB | trunk-to-profile, нарушен зазор «шина – граница платы» | |
UK | trunk-to-keep-out area, нарушен зазор «шина – граница запрещенной области» | |
NN | via pattern-to-via pattern, нарушен зазор «шаблон переходных отверстий – шаблон переходных отверстий | |
NU | via pattern-to-trunk, нарушен зазор «шаблон переходных отверстий – шина» | |
NT | via pattern-to-track, нарушен зазор «шаблон переходных отверстий – проводник» | |
NV | via pattern-to-via, нарушен зазор «шаблон переходных отверстий – переходное отверстие» | |
NP | via pattern-to-pin, нарушен зазор «шаблон переходных отверстий – контактная площадка» | |
NC | via pattern-to-copper, нарушен зазор «шаблон переходных отверстий – область металлизации» | |
NB | via pattern-to-profile, нарушен зазор «шаблон переходных отверстий – граница платы» | |
NK | via pattern-to-keepout area, нарушен зазор «шаблон переходных отверстий – граница запрещенной области» |
Таблица. Перечень возможных меток ошибок
Система изменит масштаб таким образом, чтобы на экране оптимально отображалась первая из найденных ошибок. В строке состояния в нижней части экрана появится сообщение “ : Error Letter TP”, которое означает, что показана первая из двух
найденных ошибок и ее метка TP. Переход между найденными ошибками осуществляется щелчком левой кнопкой мыши или
нажатием клавиши TAB.
Система покажет вторую найденную ошибку с меткой TT.
Нам остается лишь очистить топологию
от маркеров ошибок.
Clear errors.
Следует помнить, что удаление маркеров
ошибок и соответствующей подсветки не
исправляет самих ошибок.
Формирование отчетов
Программа P.R.Editor XR позволяет формировать различные отчеты, включающие информацию о проекте и степени его завершенности. Один из наиболее важных — общий отчет о топологии проекта.
- Выполним команду меню Utilities/Reports/
Board Properties.
На экране появится окно отчета Board
Properties Report (рис. 7), в котором будет
находиться общая информация о проекте:
количество компонентов, цепей, переходных отверстий, сегментов проводников, их
суммарная длина, длина проводников на
каждом слое и т. д. Обратите внимание, что
в самом конце отчета будет приведена информация о сделанных нами ошибках трассировки. - Закроем окно отчета.
- Выполним команду меню Utilities/Reports/
Net Statistics.
Не менее интересен отчет со статистической
информацией цепей.
В появившемся на экране окне Net Statistics (рис. 8) в первом столбце приведен полный список цепей проекта, а в остальных пяти столбцах отображается следующая информация:
- Total_Conns — общее число связей цепи;
- Unrtd_Conns — число неразведенных связей;
- Unrtd_Length — суммарная длина неразведенных связей;
- Route_Length — суммарная длина разведенных сегментов;
- Angle_Length — суммарная длина разведенных неортогональных сегментов;
- Wrong_Length — суммарная длина сегментов, проложенных с нарушением приоритетного направления на слое;
- Length_Ratio — отношение суммарной длины цепи к ее манхеттеновской длине;
- Total_Vias — суммарное число переходных отверстий цепи;
- Blind_Vias — суммарное число глухих переходных отверстий цепи;
- Buried_Vias — суммарное число скрытых
переходных отверстий цепи; - Modified — признак того, что цепь модифицировалась с момента последнего сохранения проекта.
из списка в первом столбце.
Система изменит вид так, чтобы оптимальным образом отображать выбранную цепь.
Так как окно Net Statistics является немодальным, на практике бывает полезно использовать для отображения информации
не обо всех, а лишь о некоторых цепях.
команду меню Select/Named Signal.
(рис. 9) в списке Net Attributes выберем класс
цепей bus.
Все цепи, принадлежащие классу цепей bus,
окажутся выделенными и попадут в список
Selected.
Named Signal.
Выбранные цепи будут показаны в окне Net
Statistics, и для них будет выведена вся статистическая информация. Таким образом,
описанный метод позволяет выбирать цепи не только по имени, а по любому признаку (атрибуту) и оперативно получать информацию о ней. Разумеется, выбрать цепь
можно и непосредственно на топологии платы щелчком левой кнопки мыши. Отметим,
что наиболее интересным параметром в данном отчете является Length_Ratio, который
показывает, насколько эффективно проведена трассировка цепи.
Statistics.
Информацию об объектах на плате можно
получать с помощью обычной команды
Query.
на любом из объектов топологии.
На экране появится окно отчета, в котором
будет представлена основная информация
об указанном объекте. Пример отчета для
сегмента цепи показан на рис. 10. Здесь
приведены: тип объекта (type), слой (layer),
имя цепи (net), статус блокировки (status),
координаты начала и конца (start, end), дли-
на (length), длина цепи от узла до узла (NN
length), ширина (width) и угол наклона
(angle).
Например, при щелчке на одной из контактных площадок компонента отчет примет вид, показанный на рис. 11. Здесь приведены: тип объекта (type), слой (layer), имя
цепи (net), координаты (position), стиль
(pad type), направление трассировки (exit),
статус сваппинга (svapable), класс выводов
(pin_class), размеры (size/shape). Далее в отчете будет содержаться информация о компоненте, которому принадлежит данная
контактная площадка.
Описанные отчеты нельзя редактировать.
В то же время не следует забывать о команде Item Properties, которая по сути является еще одной разновидностью отчета,
но предоставляет возможность редактирования свойств объекта.
Properties или нажмем кнопку
на панели инструментов.
на контуре компонента U42.
На экране появится диалоговое окно
Component (рис. 12), в котором будут приведены основные параметры компонента.
Имеющиеся здесь текстовые поля и выпадающие списки дают возможность редактировать данные.
Обратите внимание, что при использовании команды Item Properties пользователь,
прежде чем выбрать другой объект, должен закрыть диалоговое окно. На практике полезно применять следующее правило: если необходимо просто посмотреть
информацию об одном или нескольких
объектах топологии, то лучше использовать команду Query, а если предполагается редактирование параметров, то лучше
использовать команду Item Properties. Также не следует забывать, что все параметры
должны меняться в допустимых пределах,
например, система не позволит сделать
проводник более широким, чем разрешено для данной цепи, или применить стиль
переходного отверстия, который связывает слои, отличные от исходных.
Следует упомянуть еще об одном виде отчета, которым на практике пользуются
очень часто: это инструмент измерения
расстояния между объектами.
или нажмем кнопку
на панели инструментов.
На экране появится окно Separation Report
с простым отчетом, в котором будет отображено только расстояние между указанными точками. В случае, когда в момент
задания точек под указателем мыши находятся какие-либо объекты топологии,
объекты выделяются, а отчет приобретает
расширенный вид (рис. 13). Здесь параметр
Line Length показывает расстояние по прямой между указанными точками, далее
приводится краткое описание выделенных
объектов и результат измерения расстояния между ними. В показанном на рис. 13
примере измерялось расстояние межу двумя вертикальными сегментами проводников разных цепей (ADD0 и ADD10), расположенными на слое Bottom (2), минимальное расстояние (Actual) составило 94,4 милс
при минимально допустимом (Required)
12 милс. Заметим, что окно отчета Separation
Report является немодальным, что дает
пользователю возможность выбирать другие объекты для измерения или выполнять
любые операции редактирования, не закрывая это окно.
Например, можно изменить текущие единицы измерения (рис. 14).
в выпадающем списке Length Units выберем строку millimeters (mm), а в поле
Number of Decimal Places зададим число
отображаемых цифр после запятой — 3.
Пока содержимое окна Separation Report
не изменилось.
Теперь информация в окне Separation
Report обновится, а все данные будут представлены в миллиметрах.
Отметим, что внутренняя база данных программы P.R.Editor XR использует метрическую систему и единицы измерения DSU
(Data Structure Unit). Преобразование между различными системами измерения выполняются с помощью этих единиц и используют их целочисленные значения, поэтому никаких ошибок округления или
приближения не возникает.
Оценка трассируемости проекта
Программа P.R.Editor XR имеет специаль-
ный инструмент, позволяющий в любой мо-
мент работы над проектом оценить его трас-
сируемость — некий набор параметров, поз-
воляющий сделать вывод о возможности 100%
разводки платы.
- Выполним команду меню Utilities/Reports/
Routability. - Нажмем кнопку Unroutable Pads.
- Нажмем кнопку Cancel и закроем окно
Routability. - Выполним команду меню Edit/Locate/Unroutable
Pins или нажмем кнопкуна панели
инструментов. - Нажмем кнопку OK и закроем окно сообщения.
- Выполним щелчок левой кнопкой мыши
или нажмем клавишу Tab. - Выполним команду меню Utilities/Checks/
Legality Checks. - Закроем окно отчета Legality Checking.
- Снова выполним команду меню Utilities/
Reports/Routability.
В окне Routability есть еще несколько кнопок. Кнопка Grid Loss позволяет оценить
эффективность соотношений шага рабочей сетки и ширины/зазоров проводников.
Кнопка Odd Biased Layers выводит информацию о слоях с заданным приоритетным
направлением трассировки, а также сколько проложенных проводников на слое соответствует этому направлению, и сколько контактных площадок имеет правильное направление трассировки стрингеров.
Кнопка Pad Separation позволяет оценить,
какое максимальное количество проводников может быть проложено между наиболее близко расположенными контактными
площадками для настроек по умолчанию.
Также здесь расположен инструмент, позволяющий построить карту вероятной
плотности трассировки. Предполагаемая
плотность проводников отображается
цветом, палитра соответствия приведена
в нижней части окна. - Нажмем кнопку Density map.
Система рассчитает карту плотности трассировки и отобразит ее на топологии платы (рис. 16). - Чтобы увидеть всю плату целиком, выполним команду меню View/View All или нажмем кнопку
на панели инструментов.
Легко видеть, что на плате имеется большое число областей, подсвеченных синим
и зеленым цветом, что означает, что оценочная плотность трассировки на плате не
превышает 50%. - Нажмем кнопку OK и закроем окно Routability.
- Выполним команду меню File/Exit.
- В появившемся окне Save нажмем кнопку
Discard.
На экране появится диалоговое окно Routability
(рис. 15). Главным здесь является параметр Routability Index (коэффициент трассируемости), который рассчитывается как
соотношение всей доступной для трассировки площади сигнальных слоев к площади, необходимой для прокладки всех
проводников. При расчете коэффициента трассируемости используются заданные ширины проводников, зазоры между цепями, размеры контактных площадок и переходных отверстий, запрещенные
зоны и другие параметры. Более подробное пояснение о методике расчета этого коэффициента можно получить, нажав
кнопку Routability Index.
В общем случае, если коэффициент трассируемости составляет 2–2,5, то с большой степенью вероятности можно сказать, что плата может быть разведена на 100%. В случае,
если плате присутствует большое количество SMD-компонентов, сильно загружающих
наружные слои платы, то коэффициент
трассируемости должен быть не ниже 3–3,5.
В поле справа от кнопки система отобразит
число контактных площадок, трассировка которых невозможна. Причины данного вывода могут быть разными: незаданные направления трассировки; неправильно описанная
форма; ширина стрингера (Necked) может
быть задана слишком большой, и трассировка будет нарушать требования по зазорам до
соседних площадок или других объектов.
Найти проблемные контактные площадки
можно с помощью функции Locate.
Система изменит вид таким образом, чтобы
оптимально отображать первую проблемную контактную площадку и выведет сообщение “Pad does not check legally” (контактная площадка размещена с нарушениями).
Система покажет следующую проблемную
контактную площадку и выведет знакомое
нам сообщение.
Попробуем разобраться в причине ошибки.
Нажмем кнопку OK и закроем окно сообщения.
На экране появится окно отчета Legality
Checking, содержащее отчет об ошибках размещения компонентов. Из этого отчета следует, что несколько компонентов на плате
установлено вне сетки размещения, и это
причина, по которой система воспринимает их контактные площадки не трассируемыми.
В завершение данного занятия нам остается только выйти из трассировщика
P.R.Editor XR без сохранения текущих результатов.
На следующем занятии мы подробно рассмотрим приемы интерактивной трассировки.