Определение области действия правил_AD

This document is no longer available beyond version 20.2. Information can now be found here: Scoping a Design Rule for version 24

Applies to Altium Designer versions: 19.0, 19.1, 20.0 and 20.1
 

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

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

Вместо выбора из ограниченного предопределенного списка возможных опций, определение области действия правила осуществляется вводом так называемого запроса (Query). Фактически, запрос является инструкцией для системы, определяющей набор проектных объектов, на которые правило должно действовать. Написание запроса осуществляется с помощью ключевых слов запроса. Точно так же, как запрос вводится в панели Filter для поиска определенного набора объектов, запрос вводится для определения объектов, на которые будет действовать отдельное правило. Пример:

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

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

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

Опции определения области действия

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

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

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

Используйте опцию Custom Query для составления более сложного выражения запроса области действия правила.Используйте опцию Custom Query для составления более сложного выражения запроса области действия правила.

Query Builder является более простым средством составления запросов, которое использует подходящие типы и значения и позволяет создавать запросы только с помощью соответствующих "строительных блоков". Для создания более сложных конструкций запросов, с полным синтаксисом ключевых слов и операторов, используйте Query Helper.

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

Нажмите кнопку , чтобы открыть диалоговое окно 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 Helper достаточно интуитивно понятна, особенно если разбить его на три отдельных раздела, как показано на изображении ниже:

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

Этими разделами являются:

  1. Раздел запроса – используйте этот раздел диалогового окна для составления выражения запроса. При вызове диалогового окна, в этом разделе по умолчанию будет доступно выражение, которое используется в данный момент для области действия правила. Вы можете вводить текст непосредственно в этом разделе; в качестве подсказки будет отображаться контекстно-зависимый список возможных ключевых слов.
  2. Операторы – в этом разделе диалогового окна доступен набор математических и логических операторов для построения выражения. Нажмите кнопку, чтобы добавить соответствующий оператор в текущее положение курсора в выражении запроса в разделе Query выше.
  3. Категории, ключевые слова и объекты – этот раздел диалогового окна обеспечивает доступ к функциям платы, спискам объектов платы и системным функциям, которые можно использовать для создания выражения запроса. Щелкните ЛКМ по подкатегории в одной из этих трех областей, чтобы отобразить список соответствующих ключевых слов или объектов в разделе справа. Найдите ключевое слово или объект, который нужно использовать в строке запроса, и дважды щелкните ЛКМ по его строке – она будет добавлена в текущее положение курсора в выражении запроса в разделе Query выше.

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

При использовании диалогового окна Query Helper для построения запроса щелкните ЛКМ по ключевому слову в одном из доступных списков и нажмите клавишу F1, чтобы открыть документацию по этому ключевому слову в Справочнике по языку запросов.

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

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

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

  1. Скобки
  2. Not
  3. ^, *, /, Div, Mod, And
  4. +, -, Or, Xor
  5. =, <>, <, >, <=, >=
  6. &&, ||
Этот порядок приоритетов аналогичен тому, который используется в Pascal-подобных языках. Неоднозначности разрешаются путем обработки слева направо. Учет скобок ведется изнутри наружу, а учет равных уровней ведется слева направо.
Настоятельно рекомендуется использовать скобки везде, где есть хоть какая-то вероятность того, что запрос может быть интерпретирован некорректно. Использование скобок устраняет разночтения и упрощает чтение выражений другими пользователями.

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

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

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

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

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

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

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

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

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

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

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

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

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

Из диалогового окна PCB Rules and Constraints Editor

Диалоговое окно PCB Rules and Constraints Editor включает в себя возможность проверки запросов, что позволяет быстро увидеть, к каким объектам применено определенное правило. Нажмите кнопку в верхней правой части главного окна редактирования правила, которое вы хотите проверить. Будет открыто диалоговое окно Test Queries Result, которое отобразит количество объектов, попадающих в область действия выражения, сколько из них применимы к текущему правилу и сколько из них применимы исходя из текущего приоритета правила (если существует множество применимых правил проектирования). Щелчком ЛКМ по ссылке справа вы можете быстро применить фильтр, чтобы увидеть соответствующие объекты в проектной области для каждого из случаев.

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

Из панели 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, настройте уровень затенения, применяемого к объектам, которые не попадают в область действия активного фильтра, с помощью ползунка, доступного в том же разделе панели.

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

Для изменения запроса правила, а также его ограничений, дважды щелкните ЛКМ по строке правила в панели либо щелкните ПКМ и выберите Properties из контекстного меню. Будет открыто соответствующее диалоговое окно Edit PCB Rule, где вы можете внести изменения.

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

Content
Content