Определение, определение и управление правилами проектирования печатных плат

Altium Training

Altium Essentials: PCB Design Rules Creation

This content is part of the official Altium Professional Training Program. For full courses, materials and certification, visit Altium Training.

What approach do I use for defining design constraints?

Altium Designer предлагает два разных подхода к определению ограничений проекта: диалог PCB Rule and Constraints Editor dialog (описан на этой странице) и Constraint Manager.

Constraint Manager доступен в проекте разработки PCB только в том случае, если параметр Constraint Management был включен в диалоге Create Project dialog при создании этого проекта. Обратите внимание:

  • Если Constraint Manager был включен для проекта PCB, то диалог PCB Rule and Constraints Editor dialog not доступен в редакторе PCB.

  • Если Constraint Manager not не был включен для проекта PCB, можно использовать только прежние подходы к определению ограничений проекта (использование design directives и диалога PCB Rule and Constraints Editor dialog).

Чтобы быстро проверить, какой подход к управлению ограничениями проекта используется в текущем проекте PCB, откройте PCB-документ проекта, щелкните главное меню Design  и проверьте, какая команда доступна:

  • Constraint Manager – для этого проекта используется Constraint Manager .

  • Rules – для этого проекта используется диалог PCB Rule and Constraints Editor dialog.

Редактор PCB использует концепцию правил проектирования для определения требований к проекту. Требования проекта применяются с помощью элегантного подхода target these objects and apply those requirements - . В совокупности правила проектирования образуют «набор инструкций», которым следует редактор PCB. Они охватывают все аспекты проекта — от ширины проводников, зазоров, стилей подключения полигонов, стилей переходных отверстий при трассировке и т. д.; многие правила могут контролироваться в реальном времени с помощью онлайн-Design Rule Checker (DRC), и в любой момент можно также запустить пакетную проверку для создания отчета DRC. Правила определяются независимо от объектов.

Правила проектирования нацеливаются на конкретные объекты и применяются иерархически; например, может существовать правило зазора для всей платы, затем — правило зазора для класса цепей, а затем — еще одно правило для одной из контактных площадок в этом классе. Используя приоритет правила и область действия, редактор PCB может определить, какое правило применяется к каждому объекту в проекте.

Правило нацеливается на объекты с помощью управляемого ключевыми словами query language, который может варьироваться от широких идентификаторов, таких как NetClass или All, до точно заданного запроса, который прицельно охватывает сложное, зависящее от конкретной ситуации требование проекта.

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

Подробную информацию о проверке заданных правил проектирования см. в Design Rule Checking (DRC).

Основы системы правил PCB

Система правил, встроенная в редактор PCB этого программного обеспечения, имеет несколько фундаментальных особенностей, отличающих ее от большинства других систем правил проектирования, используемых в других средах редактирования PCB:

  • Rules are separate from the objects – правило не добавляется как атрибут объекта, а вместо этого добавляется в общий список правил и затем ограничивается так, чтобы применяться к этому объекту. Это позволяет применять правила к нескольким объектам и изменять их или применять к другим объектам, что в противном случае было бы затруднительно, если бы приходилось изменять атрибуты правил на уровне отдельных объектов.

  • Rules are targeted (scoped) by writing a query – вместо использования набора фиксированных, предопределенных областей действия правил для определения объектов, к которым применяется правило, используется гибкая система запросов. Это дает точный контроль над назначением каждой без исключения нормы проектирования.

  • Rules for any design situation – можно определить несколько правил одного и того же типа и нацелить их на разные наборы объектов, что обеспечивает полный контроль над определением ограничений платы. Например, можно задать разные правила ширины для трассировки цепей с различной шириной на разных слоях.

  • Each rule has a priority – любой объект проекта может подпадать под действие нескольких правил одного и того же типа, что позволяет учитывать как общие, так и более специфические ситуации. Для разрешения конфликтов между правилами используется их приоритет. Система просто проходит по правилам от наивысшего приоритета к низшему и выбирает первое, выражение(я) области действия которого соответствует проверяемому объекту(ам).

  • There are two types of rules – унарные правила (правила, определяющие требуемое поведение объекта) и бинарные правила (правила, определяющие взаимодействие между двумя объектами).

Правила проектирования в Altium Designer определяются и управляются из диалога PCB Rules and Constraints Editor dialog, как описано на этой странице. В качестве альтернативного подхода для управления правилами ограничений проекта можно использовать основанный на документе Constraints Editor (вкладка документа [Constraints]).

 
 
 
 
 

Определение и управление правилами проектирования

Доступ к диалогу PCB Rules and Constraints Editor dialog осуществляется выбором команды Design » Rules  в главном меню.

Команды Rules нет в меню Design? Проверьте, доступен ли у вас диалог PCB Rules and Constraints Editor dialog — подробнее.

Диалог PCB Rules and Constraints Editor dialog состоит из двух разделов:

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

    Дополнительную информацию о доступных типах правил и их ограничениях см. на странице PCB Design Rule Types и ее подстраницах.

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

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

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

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

    В сводном списке каждое правило отображается по следующим параметрам:

    • Name - имя правила.

    • Priority - текущий приоритет правила.

    • Enabled - включено ли правило в данный момент или отключено (щелкните, чтобы переключить это состояние). Отключенное правило будет отображаться в сводном списке серым цветом.

    • Type - тип правила.

    • Category - категория правил, к которой оно относится.

    • Scope - область действия правила (т. е. к какому(им) объекту(ам) оно применяется).

    • Attributes - атрибуты ограничений, определенные для правила.

    Щелкните запись конкретного правила на панели дерева папок (или дважды щелкните его запись в сводном списке), чтобы получить доступ к элементам управления его определением:

    • Name - текущее имя правила. Его можно изменить при необходимости.

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

    • Unique ID - уникальный идентификатор правила. Каждое правило само по себе является объектом проекта и, следовательно, осязаемой единицей данных. Использование ID обеспечивает уникальность. Особенно важен Unique ID для правила, созданного в области схемы. При добавлении параметров правил проектирования к объектам на схеме каждому параметру правила назначается уникальный ID. Те же ID присваиваются соответствующим правилам проектирования, создаваемым в PCB. Благодаря этому Unique ID ограничения правила можно редактировать как на стороне схемы, так и на стороне PCB, а изменения будут переданы при синхронизации.

    • Test Queries - нажмите, чтобы открыть диалог Test Queries Result dialog, который показывает количество объектов, затрагиваемых правилом с учетом определенных вами специализаций правила. Это позволяет увидеть, есть ли объекты, соответствующие запросу, а также проверить, соответствует ли набор объектов, затрагиваемых фильтрами и правилами, вашим ожиданиям. 

    • Rule Scoping Controls - эта область содержит элементы управления для определения области действия правила с точки зрения объектов, к которым или между которыми оно применяется.

    • Constraints - эта область диалога отображает ограничения, применимые к редактируемому типу правила. Используйте различные элементы управления, чтобы настроить эти ограничения по мере необходимости. Нажмите F1 над областью ограничений, чтобы открыть страницу для этого типа правила в разделе документации PCB Design Rule Types.

Диалог PCB Rules and Constraints Editor dialog — центральное место управления правилами проектирования.
Диалог PCB Rules and Constraints Editor dialog — центральное место управления правилами проектирования.

  • Поисковый механизм диалога позволяет использовать его в простом режиме поиска, вводя соответствующие ключевые слова Name, Type, Category или Attribute в основное поле Search.

  • Нажмите кнопку Switch to Document View в нижней части диалога, чтобы открыть Constraints Editor, который представляет собой интерактивный документ правил. 

Проверка правил проектирования

Новая плата, создаваемая программным обеспечением по умолчанию, включает правила, которые нужны не в каждом проекте, а многие другие правила проектирования потребуется скорректировать в соответствии с требованиями вашего проекта. По этой причине очень важно просмотреть правила проектирования. Это можно сделать в PCB Rules and Constraints Editor. Выберите Design Rules в верхней части дерева слева, затем просмотрите столбец Attributes для всех правил и быстро найдите те, значения которых требуется скорректировать.

При создании новой платы в нее включаются правила проектирования по умолчанию, которые могут быть не нужны для вашего проекта. Лишние правила можно отключить, щелкнув запись Design Rules или запись конкретной категории в PCB Rules and Constraints Editor и отключив правила (снимите флажки в столбце Enabled).

Плата по умолчанию также использует имперские единицы. Если ваша плата использует метрические, многие значения правил, например расширение паяльной маски, изменятся с округленных значений вроде 4mil на 0.102mm, а значение по умолчанию для Minimum Solder Mask Sliver изменится с 10mil на 0.254mm. Хотя эта наименее значимая цифра, например 0.002mm, несущественна при генерации выходных данных, при желании вы можете отредактировать эти настройки в правилах проектирования.

При просмотре правил проектирования обратите внимание, что порядок столбцов при необходимости можно изменить.
При просмотре правил проектирования обратите внимание, что порядок столбцов при необходимости можно изменить.

Правила проектирования по умолчанию

Когда создается новый документ PCB, он включает ряд правил по умолчанию, которые должны существовать для корректной работы системы проверки правил проектирования. Если правило по умолчанию удалено, оно автоматически создается заново при закрытии PCB Rules and Constraints Editor. Если есть правила проектирования, которые вы не хотите использовать, правильный подход к управлению ими — отключить их. 

Чтобы отключить правило, переключите соответствующий параметр Enable для этого правила в одном из сводных списков в правой части диалога PCB Rules and Constraints Editor. Отключенное правило отображается «серым». Подробнее об отключении правил проектирования.

Используйте параметр Enable, чтобы отключить ненужное правило. Отключенное правило отображается «серым».Используйте параметр Enable, чтобы отключить ненужное правило. Отключенное правило отображается «серым».

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

  • создать и использовать шаблон проекта, или

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

  • экспортировать свой набор шаблонных правил в файл правил PCB (*.RUL), а затем импортировать эти правила в текущий проект платы. Подробнее об экспорте и импорте правил проектирования.

Нажмите кнопку Create Default Rules , чтобы заново создать набор правил проектирования PCB по умолчанию. Если вы удалили правила, можно вернуть список правил по умолчанию, нажав эту кнопку. Если правило по умолчанию было изменено, оно не будет сброшено или заменено.

Создание нового правила

Чтобы добавить новое правило проектирования из диалога PCB Rules and Constraints Editor dialog, перейдите к нужному типу правила в дереве слева и выберите его, затем нажмите кнопку New Rule под сводным списком правил или щелкните правой кнопкой мыши нужный тип правила и выберите New Rule в контекстном меню.

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

Пример создания нового правила проектирования PCB.
Пример создания нового правила проектирования PCB.

При добавлении нового правила ему первоначально присваивается имя по умолчанию на основе конкретного типа правила. Например, если вы добавляете новое правило Clearance, имя по умолчанию будет Clearance. Если это имя по умолчанию не изменить, добавление еще одного нового правила того же типа приведет к появлению того же имени правила с увеличивающимся числовым суффиксом (т. е. Clearance_1Clearance_2 и т. д.).

Когда создается новое правило для определенного типа правил, ему автоматически присваивается приоритет 1 (самый высокий приоритет). Если уже существуют другие правила этого типа, их приоритеты будут соответственно сдвинуты (понижены) на единицу. После этого они считаются измененными — даже если на уровне области действия/ограничений они не изменялись напрямую. Поэтому все такие существующие правила этого типа будут отображаться как измененные (полужирным со звездочкой).

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

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

Чтобы полностью определить новое правило:

  • Присвойте правилу понятное имя, чтобы его можно было легко идентифицировать.
  • Определите область действия правила, выбрав параметры области действия из раскрывающегося списка(ов) или введя запрос (или запросы для бинарного правила).
  • Задайте ограничения правила.
  • Установите приоритет правила.

Использование Rule Wizard для создания нового правила

Новое правило также можно создать с помощью Design Rule Wizard. Доступ осуществляется напрямую с помощью команды Design » Rule Wizard или нажатием кнопки Rule Wizard в нижней части диалога PCB Rules and Constraints Editor.

Кнопка Rule Wizard будет недоступна, если существуют изменения в уже имеющихся правилах, которые еще не были «применены».

Используйте страницы Wizard для создания нового правила проектирования. Шаги следующие:

  1. Выберите нужный тип правила и задайте ему понятное имя (и комментарий, если требуется).
  2. Определите область действия правила. У вас будет возможность дополнительно уточнить область действия с помощью версии Query Builder, встроенной в мастер.
  3. Задайте приоритет правила.
Если на последней странице Wizard включен параметр Launch main design rules dialog, при нажатии кнопки Finish откроется диалог PCB Rules and Constraints Editor. Этот диалог можно использовать для редактирования ограничений только что созданного правила.

Используйте Design Rule Wizard, чтобы упростить создание правил.
Используйте Design Rule Wizard, чтобы упростить создание правил.

Дублирование существующего правила

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

  • С помощью дерева слева перейдите к нужному существующему правилу, щелкните его правой кнопкой мыши и выберите Duplicate Rule в контекстном меню.

  • Перейдите в дереве слева к конкретному типу правила, выберите правило для дублирования в сводном списке справа, затем нажмите кнопку Duplicate Rule под списком.

Упростите создание похожих правил с помощью функции дублирования правил.
Упростите создание похожих правил с помощью функции дублирования правил.

Дубликат правила будет иметь то же имя, что и исходное, с добавлением суффикса (например, _1) для различия. Его определение (область действия, ограничения и т. д.) будет идентично исходному. Что касается приоритета, ему будет присвоен следующий приоритет ниже, чем у исходного правила. Так, например, если исходное правило имеет приоритет 1, дубликату будет присвоен приоритет 2.

Создание правила из панели PCB Filter

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

Чтобы добавить новое правило проектирования:

  1. Нажмите кнопку Create Rule. Появится диалог Choose Design Rule Type. В этом диалоге перечислены все категории и типы правил, доступные в документе PCB.
  2. Выберите тип создаваемого правила и нажмите OK (или дважды щелкните непосредственно по записи).
  3. Появится диалог PCB Rules and Constraints Editor. Будет создано правило выбранного типа, и отобразится основное окно его редактирования, готовое для определения конкретных ограничений этого правила. Параметр области действия для правила будет установлен в Custom Query, а выражение запроса из панели PCB Filter будет соответствующим образом введено в область запроса.
  4. При необходимости измените имя правила и его ограничения. Также измените его приоритет, если нужно (по умолчанию ему будет присвоен наивысший приоритет).

Создайте новое правило проектирования непосредственно из панели PCB Filter — выражение запроса фильтра используется как область действия правила.
Создайте новое правило проектирования непосредственно из панели PCB Filter — выражение запроса фильтра используется как область действия правила.

Повторное использование предыдущих выражений запроса

Со временем в процессе трассировки различных плат будет создано некоторое количество полезных выражений запросов. Как правило, вам потребуется применять и повторно применять одни и те же запросы не только в одном проекте — но и в разных проектах. Для этого панель PCB Filter поддерживает понятия HistoricalисторииFavorite и HistoricalизбранныхFavorite запросов.

Когда запрос вводится и применяется с панели, он добавляется в «список истории» запросов. Кроме того, этот запрос можно добавить в «список избранного» запросов, нажав кнопку Add To Favorites. Используйте кнопки History и Favorites на панели, чтобы открыть соответствующие вкладки с такими же именами в диалоговом окне Expression Manager и просмотреть эти списки.

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

Чтобы использовать выражение из любого из этих списков, дважды щелкните по соответствующей записи или выберите ее и нажмите кнопку Apply Expression. Диалоговое окно Expression Manager закроется, а выражение будет загружено в область Filter панели PCB Filter.

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

Задание области действия правила проектирования

PCB-редактор Altium Designer — это среда, управляемая правилами. Требования к проектированию обеспечиваются четко определенным набором правил проектирования, которые совместно задают ограничения для платы. Правила проектирования нацеливаются на определенные объекты в проекте. Чтобы система правил PCB понимала, к каким объектам применяется данное правило, ей необходимо знать область действия этого правила, то есть границы его применения. ScopingОбласть действия правила, или его нацеливание, задается в диалоговом окне PCB Rules and Constraints Editor.

Стандартные правила проектирования, а также новое добавленное правило, имеют область действия по умолчанию All, что означает применение к all objects на плате. С помощью раскрывающегося списка можно быстро настроить простую область действия правила.

Задайте область действия правила проектирования, чтобы определить его применение к объектам проекта.
Задайте область действия правила проектирования, чтобы определить его применение к объектам проекта.

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

Чтобы ввести запрос, установите первый раскрывающийся список Where The Object Matches в значение Custom Query. В нем будет отображаться запрос, который в данный момент используется механизмом правил для этого правила на основе текущих настроек раскрывающихся списков.

Запрос, по сути, представляет собой инструкцию для программы, которая определяет набор целевых объектов проекта. Запросы пишутся с использованием ключевых слов запросов. Так же, как запрос можно написать на панели Filter, чтобы найти определенный набор объектов, его также можно написать для определения объектов, на которые нацелено каждое правило. Например:

InNet('VBAT') And OnLayer('Bottom Layer')

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

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

В зависимости от того, является ли правило унарным или бинарным, потребуется определить соответственно одну или две области действия. Для унарного правила проектирования будут доступны элементы управления для задания одной области действия правила. Используйте параметры в области Where The Object Matches для помощи в построении выражения запроса, которое будет отображаться в области справа. Для бинарного правила проектирования будут доступны элементы управления для Where The First Object Matches и Where The Second Object Matches , чтобы задать обе области действия правила. Используйте доступные раскрывающиеся списки каждого из них для помощи в построении выражения запроса. Элементы управления одинаковы как при задании одной, так и двух областей действия правила.

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

Обновление запросов правил при изменении позиционных обозначений компонентов доступно, если в диалоговом окне Advanced Settings включен параметр PCB.Rules.UpdateQueryOnComponentDesignatorChange.

Обновление запросов правил при изменении имен полигонов доступно, если в диалоговом окне Advanced Settings включен параметр PCB.Rules.UpdateQueryOnPolygonNameChange.

Если в запросе есть синтаксическая ошибка, правило будет считаться недействительным и будет выделено красным в диалоговом окне PCB Rules and Constraints Editor как в дереве правил слева, так и в любом сводном представлении (категория правил или тип правила), где это правило отображается. Кроме того, текст типа правила и категории правил также будет показан красным в дереве правил слева. Поэтому, даже если вы свернули область дерева правил, содержащую недействительное правило, система все равно предупредит вас об этом на более высоком уровне иерархии. Предупреждающее сообщение также появится, если вы попытаетесь закрыть диалоговое окно. Область действия правила с синтаксической ошибкой может значительно замедлить процесс анализа DRC как в Online, так и в Batch режиме. Обязательно исправляйте все области действия правил, которые синтаксически некорректны.

Параметры области действия

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

Быстро создавайте запрос с помощью простых параметров области действия.
Быстро создавайте запрос с помощью простых параметров области действия.

Примеры простых параметров области действия:

  • All — создать запрос области действия, нацеленный на все объекты проекта.

  • Net — создать запрос области действия, нацеленный на все объекты в определенной цепи. Появится дополнительный раскрывающийся список, в котором можно выбрать нужную цепь из списка доступных вариантов, включая No Net.

  • Net Class — создать запрос области действия, нацеленный на все объекты в определенном классе цепей. Появится дополнительный раскрывающийся список, в котором можно выбрать нужный класс цепей из списка доступных вариантов, включая All Nets.

  • Layer — создать запрос области действия, нацеленный на все объекты на определенном слое. Появится дополнительный раскрывающийся список, в котором можно выбрать нужный слой из списка доступных вариантов.

  • Net and Layer — создать запрос области действия, нацеленный на все объекты в определенной цепи и на определенном слое. Появятся два дополнительных раскрывающихся списка, в которых можно выбрать нужные цепь и слой.

При задании области действия правила с помощью простых параметров области действия запрос все равно создается. Запрос отображается, если в первом раскрывающемся поле выбрать Custom Query.

Параметр Custom Query позволяет написать собственный, возможно более сложный, но и более точный запрос. Вы можете ввести собственный конкретный запрос для области действия правила непосредственно в область запроса справа. Кроме того, для помощи в создании логических выражений запросов доступны две функции. Это Query Builder и Query Helper. Они могут быть полезны, если вы не уверены в синтаксисе запроса или в том, какие ключевые слова доступны.

Используйте параметр Custom Query, чтобы создать более сложное выражение запроса.
Используйте параметр Custom Query, чтобы создать более сложное выражение запроса.

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

  • Query Builder — это более простой способ построения запроса, использующий чувствительные к контексту типы условий и значения, которые позволяют строить выражение только из релевантных «строительных блоков». Для расширенного построения запросов с полной спецификацией ключевых слов и синтаксисом операторов используйте Query Helper.

Задание области действия правила с помощью Query Builder

Когда выбран параметр Custom Query, нажмите кнопку , чтобы открыть диалоговое окно Building Query from Board, которое позволяет создать запрос для нацеливания на определенные объекты в документе проекта путем простого построения строки условных выражений.

Левая часть диалогового окна используется для указания условия(ий), необходимых для нацеливания на требуемый набор объектов. Каждое условие состоит из Condition Type и Condition Value. Раскрывающиеся поля для них заполняются записями, относящимися к построению области действия для текущего типа правила, и значениями для выбранного типа условия соответственно.

По мере определения условия в правой части диалогового окна отображается предварительный просмотр текущего построенного запроса. Условия можно объединять с помощью AND и/или OR, а также задавать приоритет (с использованием скобок/отступов), чтобы уточнить целевой набор объектов. Когда выражение запроса будет определено должным образом, нажатие OK загрузит это выражение в область запроса диалогового окна PCB Rules and Constraints Editor.

Обратите внимание, что при отображении в диалоговом окне PCB Rules and Constraints Editor в начало и конец выражения запроса соответственно добавляются дополнительные открывающая и закрывающая скобки.

Используйте Query Builder для построения логического выражения запроса через последовательность условных выражений.
Используйте Query Builder для построения логического выражения запроса через последовательность условных выражений.

Задание области действия правила с помощью Query Helper

Когда выбран параметр Custom Query, нажмите кнопку , чтобы открыть диалоговое окно Query Helper. Базовый Query Engine анализирует PCB-проект и выводит список всех доступных объектов, а также общих ключевых слов для использования в запросах.

Работа с Query Helper достаточно интуитивна, особенно если разделить ее на три отдельные области, как показано на изображении ниже:

Пример сложного запроса, заданного с помощью Query Helper.
Пример сложного запроса, заданного с помощью Query Helper.

Эти области:

  1. Query Region — используйте эту область диалогового окна для составления выражения запроса. Выражение, которое в данный момент действует для области действия правила, по умолчанию будет доступно в этой области при открытии диалогового окна. Вы можете вводить текст непосредственно в этой области; в качестве помощи будет появляться контекстно-зависимый «список подсказок» возможных ключевых слов или объектов.
  2. Operators — эта область диалогового окна предоставляет набор математических и логических операторов для использования при построении выражения. Нажмите кнопку, чтобы добавить этот оператор в текущую позицию курсора внутри выражения запроса в области Query выше.
  3. Categories, Keywords and Objects — эта область диалогового окна предоставляет доступ к доступным PCB Functions, PCB Object Lists и System Functions, которые можно использовать для создания выражения запроса. Щелчок по подкатегории в любой из этих трех областей отобразит список соответствующих ключевых слов или объектов в области справа. Найдите ключевое слово или объект, который нужно использовать в строке запроса, затем дважды щелкните по его записи; запись будет вставлена в текущую позицию курсора внутри выражения запроса в области Query выше.

Используйте кнопку (внизу слева в диалоговом окне), чтобы проверить синтаксическую корректность выражения. Когда выражение запроса будет определено должным образом, нажатие OK загрузит это выражение в область запроса диалогового окна PCB Rules and Constraints Editor.

При использовании диалогового окна Query Helper для построения запроса щелчок по ключевому слову в одном из доступных списков и нажатие F1 откроют документацию по этому конкретному ключевому слову в Query Language Reference.

Приоритет операторов в выражениях запросов

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

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

  1. Скобки
  2. Not
  3. ^, *, /, Div, Mod, And
  4. +, -, Or, Xor
  5. =, <>, <, >, <=, >=
  6. &&, ||

Этот порядок приоритетов аналогичен используемому в языках типа Pascal. Неоднозначности разрешаются при обработке слева направо. Скобки вычисляются изнутри наружу, а операции одного уровня — слева направо.

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

Приоритизация правил

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

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

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

Важным аспектом управления правилами является обеспечение корректной установки всех приоритетов. При создании нового правила по умолчанию ему назначается наивысший приоритет. Используйте кнопку Priorities в нижней части диалогового окна PCB Rules and Constraints Editor, чтобы настроить приоритеты в диалоговом окне Edit Rule Priorities.

Изменяйте приоритеты правил в диалоговом окне Edit Rule Priorities.
Изменяйте приоритеты правил в диалоговом окне Edit Rule Priorities.

Изначально в диалоговом окне будут перечислены все экземпляры правил для типа правила, который в данный момент выбран в диалоговом окне PCB Rules and Constraints Editor. Используйте поле Rule Type, чтобы изменить тип правила и вывести список конкретных правил, определенных для этого типа. Определенные правила перечислены в порядке текущего приоритета — от 1 (наивысший приоритет) и ниже. Выберите запись правила и используйте кнопки Increase Priority и Decrease Priority, чтобы переместить его соответственно выше или ниже в порядке приоритетов.

При добавлении нового правила к типу правила, который уже содержит одно или несколько существующих правил, приоритет будет установлен в 1 (то есть наивысший приоритет). При дублировании правила копии присваивается приоритет ниже исходного правила.

Можно настроить несколько правил одного и того же типа. Может случиться так, что объект проекта будет охвачен более чем одним правилом с одинаковой областью действия. В этом случае возникает конфликт. Все конфликты разрешаются настройкой приоритета. Система проходит по правилам от наивысшего приоритета к низшему и выбирает первое, выражение(я) области действия которого соответствуют проверяемому объекту(ам). Есть одно исключение: к объектам могут применяться несколько правил проектирования Matched Length, и в этом случае применяются все правила.

Изменение существующих правил

Разумеется, правила можно изменять в любое время. Более того, получение окончательного рабочего набора правил часто включает несколько важных уточнений тут и там. Обычно это касается области действия, чтобы гарантировать, что соответствующие правила «захватывают» нужные целевые объекты проекта. Выберите существующее правило в диалоговом окне PCB Rules and Constraints Editor и внесите необходимые изменения в его область действия и атрибуты ограничений.

Изменения, внесенные в существующие определения правил, выделяются как в панели дерева папок, так и в соответствующих сводных списках. Такие записи отличаются тем, что имя правила становится полужирным, а справа от имени отображается звездочка. Звездочка указывает, что правило является существующим правилом, которое было изменено, а не вновь созданным правилом (которое отображается полужирным без звездочки).

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

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

Пометка недействительных правил

Если система определяет правило как недействительное — например, из-за проблемы с выражением запроса области действия или из-за недопустимого значения ограничения — оно будет помечено как недействительное. Такое правило будет выделено красным в диалоговом окне PCB Rules and Constraints Editor как в дереве правил слева, так и в любом сводном представлении (категория правил или тип правила), где это правило отображается. Кроме того, текст типа правила и категории правил также будет показан красным в дереве правил слева. Поэтому, даже если вы свернули область дерева правил, содержащую недействительное правило, система все равно предупредит вас об этом на более высоком уровне иерархии. Предупреждающее сообщение также появится, если вы попытаетесь закрыть диалоговое окно.

Область действия правила с синтаксической ошибкой может значительно замедлить анализ DRC в режимах Online и Batch, поэтому обязательно исправляйте все области действия правил, которые синтаксически некорректны.

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

Отключение правил

В управляемой правилами среде редактора PCB этого программного обеспечения нередко со временем накапливается весьма внушительный и полный набор правил, позволяющий успешно накладывать ограничения на платы. По тем или иным причинам в процессе работы у вас может возникнуть необходимость отключить некоторые правила; возможно, они неприменимы к данной плате или их нужно временно отключить, чтобы снизить нагрузку на Design Rule Checker (и, как следствие, повысить его производительность!). Отключение — хороший способ сохранить такие правила на случай, если они снова понадобятся в будущем.

Чтобы отключить правило, переключите соответствующий параметр Enable для этого правила в одном из соответствующих сводных списков в правой части диалога PCB Rules and Constraints Editor. Отключенное правило также будет отображаться «приглушенным».

Пример отключенных правил, отображаемых серым шрифтом в сводном списке.
Пример отключенных правил, отображаемых серым шрифтом в сводном списке.

Правила также можно отключать/включать непосредственно из панели PCB Rules And Violations panel. Переключите связанный с правилом параметр On. Это отражается в параметре Enable правила в диалоге PCB Rules and Constraints Editor.

Удаление правил

Чтобы удалить одно правило проектирования в диалоге PCB Rules and Constraints Editor:

  • С помощью дерева слева перейдите к нужному существующему правилу, щелкните правой кнопкой мыши и выберите Delete Rule в контекстном меню.
  • Перейдите к конкретному типу правила в дереве слева, затем выберите правило для удаления в сводном списке справа. Затем нажмите кнопку Delete Rule(s) под списком.

Имя правила будет отображаться полужирным с зачеркнутым начертанием, чтобы обозначить его как удаление, которое еще не было «применено».

Удаление одного правила.
Удаление одного правила.

  • Если конкретное правило проектирования больше не требуется, но может снова использоваться в будущем, вместо удаления его можно просто отключить. Для этого переключите соответствующий параметр Enable для правила в одном из соответствующих сводных списков в правой части диалога PCB Rules and Constraints Editor.

  • Несколько правил можно удалить одним действием из представления сводного списка. Для этого выберите правила для удаления (поддерживаются стандартные сочетания клавиш Shift+click и Ctrl+click), затем нажмите кнопку Delete Rule(s) под списком.

  • Некоторые правила должны присутствовать, чтобы система Design Rule Check работала корректно; если одно из таких правил удалено (так что правил этого типа больше не осталось), оно будет автоматически создано заново. Подробнее см. стандартные правила проектирования.

Для многих типов правил стандартные правила создаются при создании нового документа PCB. Аналогично, если все конкретные правила одного из таких типов будут удалены, стандартное правило будет автоматически добавлено снова при следующем открытии диалога PCB Rules and Constraints Editor. Кроме того, стандартные правила можно создать снова, нажав кнопку Create Default Rules в нижней части диалога.

Экспорт и импорт правил

Правила проектирования можно экспортировать из диалога PCB Rules and Constraints Editor и импортировать в него. Это позволяет сохранять и загружать избранные определения правил между различными проектами.

  • To export – щелкните правой кнопкой мыши в любом месте дерева слева в диалоге и выберите Export Rules. Откроется диалог Choose Design Rule Type dialog, в котором можно выбрать правило(а) проектирования для экспорта. В открывшемся диалоге Export Rules to File можно задать имя файла .rul и выбрать расположение. Экспортированные правила сохраняются в файле правил PCB (*.rul).

  • To import – щелкните правой кнопкой мыши в любом месте дерева слева в диалоге и выберите Import Rules. Откроется диалог Choose Design Rule Type dialog, в котором можно выбрать правило(а) проектирования для импорта. В открывшемся диалоге Import File укажите файл .rul для импорта. 

При импорте одного или нескольких наборов правил (в файле *.rul ) с теми же именами, что уже существуют, после нажатия Rule Set Already Exists в диалоге откроется диалог Select Design Rules (). Для обработки импортируемых правил в наборе доступны следующие действия:

  • Add to existing rules – выберите импорт всех выбранных правил; в случае конфликта (если в проекте уже существует правило с тем же именем) правило из файла будет импортировано с суффиксом _<n> в имени.

  • Add and replace matching rules – выберите импорт всех выбранных правил; в случае конфликта существующее правило проектирования будет заменено правилом из файла.

  • Replace all – выберите удаление всех существующих правил в наборе правил и импорт всех выбранных правил.

Если в PCB уже существует более одного набора правил, вы можете выбрать один из указанных выше вариантов для каждого набора правил с помощью открывающегося диалога Some Rule Sets Already Exist ().

Отчеты по правилам проектирования

Отчет по текущим определенным правилам проектирования можно сформировать в диалоге PCB Rules and Constraints Editor. Отчет может охватывать все категории правил, конкретную категорию правил или конкретный тип правила — в зависимости от выбранной записи в дереве папок. Отчет можно сформировать следующим образом:

  • Откройте нужный сводный список, щелкните правой кнопкой мыши и выберите команду Report из контекстного меню либо нажмите кнопку Report под списком.
  • Щелкните правой кнопкой мыши соответствующую запись в дереве папок и выберите команду Report из контекстного меню.

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

Создание отчета по правилам PCB.
Создание отчета по правилам PCB.

Определение правил на схеме

Ограничения проектирования (правила) можно определить до этапа компоновки PCB, добавив директивы Parameter Set в исходный документ(ы) схемы с настроенными правилами. Область действия соответствующего правила проектирования PCB, создаваемого при переносе проекта в документ PCB, определяется характером объекта, которому назначен параметр. Следующая таблица суммирует поддерживаемые варианты соответствия параметров схемы и области действия правил PCB.

Добавить правило к... Из... Для области действия правила PCB...
Провод панели Properties (при просмотре свойств выбранного объекта набора параметров), после размещения объекта Parameter Set на проводе с помощью команды Place » Directives » Parameter Set. Сеть
Шина панели Properties (при просмотре свойств выбранного объекта набора параметров), после размещения объекта Parameter Set на шине с помощью команды Place » Directives » Parameter Set. Класс сетей
Жгут панели Properties (при просмотре свойств выбранного объекта набора параметров), после размещения объекта Parameter Set на жгуте с помощью команды Place » Directives » Parameter Set. Класс сетей
Blanket панели Properties (при просмотре свойств выбранного объекта набора параметров), после размещения объекта Parameter Set на границе blanket с помощью команды Place » Directives » Parameter Set. Включите класс с требуемым именем, чтобы создать класс сетей для всех сетей, охваченных blanket, который затем будет использоваться для области действия правила. Класс сетей

Во всех случаях метод добавления параметра на основе правила одинаков:

  1. Добавьте параметр как правило.

  2. Выберите тип правила для использования.

  3. Настройте ограничения для выбранного типа правила.

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

Подробнее о Parameter Sets.

См. пример использования директивы Differential Pair вместе с Blanket для определения правил проектирования на схеме.

Проверка применения правил

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

По сути, есть два метода проверки областей действия правил — либо выбирать объекты проектирования и анализировать правила, которые в данный момент к ним применяются, либо взять правило (в разных местах программы) и посмотреть, какие объекты подпадают под его область действия.

С точки зрения объекта

Для любого размещенного объекта в текущем проекте вы можете быстро получить информацию о том, какие унарные правила проектирования применяются к этому объекту. Наведите курсор на объект, щелкните правой кнопкой мыши и затем выберите Applicable Unary Rules. Все определенные правила проектирования, которые могут быть применены к выбранному объекту, будут проанализированы и перечислены в диалоговом окне Applicable Unary Rules.

Правила проектирования, применимые к одному примеру объекта проекта — унарные правила.
Правила проектирования, применимые к одному примеру объекта проекта — унарные правила.

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

Любые правила, которые применялись бы к объекту, но в настоящее время отключены, также будут отмечены крестиком и отображаться с зачеркиванием.

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

Если к двум выбранным объектам не применяются никакие бинарные правила, то версия диалогового окна Binary  Applicable Rules не откроется.

Правила проектирования, применимые между двумя примерами объектов проекта — бинарные правила.
Правила проектирования, применимые между двумя примерами объектов проекта — бинарные правила.

С точки зрения правила

Проверка с помощью панели PCB Rules And Violations

Вы также можете быстро увидеть, к каким объектам применяется конкретное правило, с помощью панели PCB Rules And Violations. На панели перечислены все определенные в данный момент правила для проекта. Можно просматривать все правила или перейти к просмотру по конкретному типу правила — при условии, что для активного проекта определено хотя бы одно правило любого данного типа. При щелчке по конкретному правилу в области Rules панели будет применена фильтрация, использующая правило как область действия фильтра. Будут отфильтрованы только те объекты проектирования, которые подпадают под область действия правила. Используя функцию подсветки Mask (или Dim), вы можете быстро увидеть итоговые объекты, на которые нацелено правило.

Пример использования панели PCB Rules And Violations для проверки того, к каким объектам применяется выбранное правило.
Пример использования панели PCB Rules And Violations для проверки того, к каким объектам применяется выбранное правило.

Если метод подсветки в диалоговом окне установлен в Mask, отрегулируйте уровень маскирования, применяемого к объектам, не подпадающим под область действия активного фильтра, с помощью ползунка Masked Objects, доступного в разделе Mask and Dim Settings на вкладке View Options панели View Configuration. Если метод подсветки в диалоговом окне установлен в Dim, отрегулируйте уровень затемнения, применяемого к объектам, не подпадающим под область действия активного фильтра, с помощью ползунка Dimmed Objects, также доступного в этом разделе панели.

Использование панели PCB Rules And Violations для анализа того, к каким объектам применяется правило, особенно полезно при создании запроса для области(ей) действия правила, поскольку правило можно редактировать прямо из панели, и, следовательно, запрос можно «подстраивать», пока нужные объекты не будут охвачены областью(ями) действия.

Чтобы отредактировать область(и) действия правила, а также его ограничения, дважды щелкните запись правила на панели или щелкните правой кнопкой мыши и выберите Properties в контекстном меню. Появится соответствующее диалоговое окно Edit PCB Rule, где можно внести изменения.

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

Правила можно редактировать непосредственно из панели PCB Rules And Violations, что позволяет на лету дополнительно уточнять область действия правил и/или ограничения.
Правила можно редактировать непосредственно из панели PCB Rules And Violations, что позволяет на лету дополнительно уточнять область действия правил и/или ограничения.

Проверка через диалоговое окно PCB Rules and Constraints Editor

Диалоговое окно PCB Rules and Constraints Editor включает средство тестирования запросов, позволяющее быстро увидеть, к каким объектам применяется конкретное правило. Нажмите кнопку  в правом верхнем углу диалогового окна для правила, которое вы хотите проверить. Появится диалоговое окно Test Queries Result. Диалоговое окно отображает следующее:

  • Expression result — количество объектов, подпадающих под область действия выражения.

  • Objects applicable to rule — количество применимых объектов на основе выражения и типа текущего правила.

  • Expression and rule priority (только для унарного правила) — количество применимых объектов на основе выражения, типа и приоритета текущего правила (то есть, если существует правило более высокого приоритета, объекты, охватываемые этим правилом, не будут учитываться в этом значении).

  • Rules with highest priorities (только для унарного правила) — если существуют правила с более высокими приоритетами, их список будет представлен в диалоговом окне вместе с количеством объектов, применимых к ним (то есть их значениями Expression and rule priority).

Щелкнув ссылку справа, вы можете быстро отфильтровать и увидеть применимые объекты в каждом случае непосредственно в пространстве проекта. Используйте раскрывающийся список Mask для выбора NormalMask, или Dim  в зависимости от того, как вы хотите подсветить затронутые объекты в документе PCB. Если установлен флажок Zoom , документ PCB также будет масштабирован к затронутым компонентам.

 
 
 
 
 

Быстро просматривайте объекты, охваченные выражением области действия правила, с помощью функции Test Queries.
Быстро просматривайте объекты, охваченные выражением области действия правила, с помощью функции Test Queries.

AI-LocalizedЛокализовано с помощью ИИ
Если вы обнаружили проблему, выделите текст/изображение и нажмитеCtrl + Enter, чтобы отправить нам свой отзыв.
Доступность функций

Доступные вам функции зависят от того, какое решение Altium вы используете: Altium Develop, Altium Agile Teams, Altium Agile Enterprise или Altium Designer (при активной подписке).

Если вы не видите описанную функцию в используемом вами программном обеспечении, свяжитесь с отделом продаж Altium, чтобы узнать больше.

Устаревшая документация

Документация Altium Designer больше не разделена по версиям ПО. Если вам необходим доступ к документации по старым версиям Altium Designer, посетите раздел Устаревшая документация на странице Прочие установщики.

Content