Working with Directives on a Schematic

Altium Training

Altium Essentials: Schematic Updating

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

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

  • директивы, связанные с автоматической компиляцией исходных документов схемы.
  • директивы, используемые для передачи информации, заданной на листе схемы, на PCB.

В следующих разделах эти области и связанные с ними директивы рассматриваются подробнее.

Директивы, связанные с компиляцией

Проекты со временем развиваются и создаются поэтапно. По мере завершения каждого этапа нередко возникает необходимость проверить его изолированно от остальной части проекта. Компиляция отдельного документа схемы (или всего проекта) на промежуточных этапах процесса захвата часто приводит к появлению ряда сообщений об ошибках, вызванных цепями, которые еще не были добавлены, или межсоединениями между фрагментами схемы, которые все еще не завершены. Такие сообщения не несут реальной пользы, поскольку лишь создают шум вокруг действительно важной информации. Самый быстрый и простой способ подавить эти ошибки компиляции — разместить директивы No ERC или Compile Mask.

Директива No ERC

Директива No ERC размещается на узле цепи для подавления всех предупреждений проверки электрических правил и/или условий нарушения ошибок, обнаруженных при проверке проекта схемы. Подробнее см. на странице Validating Your Design Project.

Директива Compile Mask

Директивы No ERC отлично подходят для подавления небольшого числа нарушающих правила выводов, портов, входов листа или цепей в проекте. Но в некоторых случаях может потребоваться исключить целый раздел проекта, включая компоненты. Используйте директиву Compile Mask (Place » Directives » Compile Mask command) или нажмите кнопку Compile Mask () в раскрывающемся списке директив на Active Bar, чтобы эффективно скрыть содержащуюся в ней область проекта от Compiler, что позволяет вручную предотвратить проверку ошибок для цепей, которые, возможно, еще не завершены и, как вы знаете, вызовут ошибки компиляции. Это может быть очень полезно, если вам нужно скомпилировать активный документ или проект, чтобы проверить целостность проекта в других конкретных областях, но вы не хотите видеть «шум» сообщений, создаваемых Compiler для незавершенных частей проекта.

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

Рассмотрим пример схемы на изображении ниже, где подключение к устройству LCD1 еще не завершено. Компиляция только этой схемы (Project » Validate PCB Project) приведет к многочисленным сообщениям о нарушениях (показаны ниже), каждое из которых вызвано незавершенной цепью. Наведите указатель на изображение, чтобы увидеть эффект размещения директивы Compile Mask вокруг незавершенной цепи. Эти нарушения будут проигнорированы Compiler, тогда как остальная часть схемы — полностью соединенная — будет проверена. Обратите внимание, что объекты, действительно попавшие под маску, то есть полностью находящиеся внутри ограничивающего прямоугольника маски, будут отображаться серым цветом.

Наведите указатель на изображение, чтобы показать эффект использования директивы Compile Mask для скрытия нарушений Compiler, вызванных незавершенной цепью.
Наведите указатель на изображение, чтобы показать эффект использования директивы Compile Mask для скрытия нарушений Compiler, вызванных незавершенной цепью.

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

Директивы, связанные с PCB

Как единая среда проектирования, Altium Designer позволяет задавать требования к PCB еще до начала трассировки платы. Это достигается путем добавления и задания параметров для объектов, размещенных на листе(ах) схемы.

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

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

  • Ограничения компоновки PCB
  • Дифференциальные пары
  • Классы цепей

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

В основе этой функциональности лежит директива Parameter Set directive.

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

Директива Parameter Set.
Директива Parameter Set.

Она действует как контейнер для любого количества параметров, относящихся к цепи, к которой присоединена директива Parameter Set. Можно разместить стандартную директиву Parameter Set без параметров (Place » Directives » Parameter Set), а затем добавить нужный параметр(ы) позже. В следующих разделах подробнее рассматривается использование этих директив на основе параметров. Доступны как пользовательские (Parameter Set), так и предопределенные (Differential Pair) директивы набора параметров. Единственное различие между пустым набором параметров и предопределенным набором параметров заключается в том, что предопределенные наборы параметров включают параметр, как будет описано ниже.

Подробнее об использовании директив Differential Pair см. на странице Defining Differential Pairs in Your Schematics.

Moving from Directives to the Constraint Manager

Изначальный подход к определению требований проекта заключался в их раздельной обработке в редакторах схем и PCB: директивы задавали их в редакторе схем, а Design Rules — в редакторе PCB. Это разделение было устранено с введением Constraint Manager, отдельного редактора для определения требований проекта, который позволяет настраивать и редактировать их на любом этапе процесса проектирования. Для конкретного проекта можно использовать только один подход; простой способ проверить это — посмотреть, есть ли пункт Constraint Manager в меню Design. Если его нет (а вместо него в меню Design редактора PCB есть пункт Rules), значит, в проекте используется более старый подход Design Rules.

Если используется Constraint Manager, классы цепей, дифференциальные пары, классы дифференциальных пар и правила, определенные с помощью директив parameter set и differential pair, not не будут обнаружены и переданы при обновлении PCB по схеме. Будут переданы только классы цепей, дифференциальные пары, классы дифференциальных пар и правила, определенные в Constraint Manager.

Обратите внимание, что вы можете импортировать правила, классы цепей, дифференциальные пары и классы дифференциальных пар из директив, размещенных на схемах, с помощью команды Import from Directives из контекстного меню представления Physical или Electrical в Constraint Manager, если доступ к нему осуществляется из схем — подробнее. Обратите внимание, что после импорта данных из директив в Constraint Manager и сохранения этих изменений импортированные директивы будут выделяться в рабочей области схемы синим цветом (с немного отличающимся символом). Это указывает на то, что произошел односторонний перенос из директив в Constraint Manager, и синие директивы становятся объектами только для чтения (дальнейшее редактирование невозможно).

Размещение директив Parameter Set

Разместите директиву этого типа, выбрав команду Place » Directives » Parameter Set в главном меню или через щелчок правой кнопкой мыши в рабочей области. При размещении директивы набора параметров по умолчанию существующих параметров не будет. Parameter Set — это директива проекта, которая позволяет связывать проектные спецификации с объектом типа цепи в схеме. Например, используйте набор параметров, чтобы объявить две цепи участниками дифференциальной пары. Именно наличие в наборе параметров параметров с определенными именами используется программой для определения того, какую директиву проекта вы размещаете.

Помимо пользовательских директив параметров, директива параметров на основе правил определяется из диалогового окна Choose Design Rule Type, доступного из связанного с параметром режима панели Properties. Доступ выполняется следующим образом:

 
 
 
 
 
  1. Нажмите Tab перед размещением Parameter Set или дважды щелкните уже размещенную директиву Parameter Set, чтобы отобразить режим Parameter Set mode of the Properties panel.

  2. Затем нажмите кнопку Add в разделе Parameters режима Parameter Set панели Properties и выберите Rule из раскрывающегося списка, чтобы выбрать правило в диалоговом окне Choose Design Rule Type.

Редактирование значения правила.
Редактирование значения правила.

Используйте диалоговое окно Choose Design Rule Type, чтобы выбрать правило, которое вы хотите добавить в директиву как параметр правила. Двойной щелчок по типу правила откроет соответствующее диалоговое окно Edit PCB Rule (From Schematic), в котором можно определить ограничения для правила.

Конкретные свойства, присутствующие в диалоговом окне Edit PCB Rule (From Schematic), зависят от выбранного правила проектирования и будут такими же, как свойства, определенные для этого правила в редакторе PCB.

Например, на изображении ниже показано диалоговое окно Edit PCB Rule (From Schematic) для Max-Min Width Rule, где можно: настроить параметры Min/Preferred/Max для всех слоев, вручную определить каждое значение ширины для каждого слоя или выбрать использование профиля импеданса. Если вы выбираете профиль импеданса и фактическая физическая структура платы уже определена в редакторе PCB, вы также можете выбрать файл платы для Load the PCB Layer Stack and calculate the track width values.

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

Показанное выше правило было применено к классу цепей. Это было достигнуто размещением Blanket Directive с присоединенной PCB Routing Directive для объединения цепей в класс, после чего к этому классу было применено правило Max-Min Width Rule (show image).

Подробную информацию о каждом из правил проектирования PCB и ограничениях см. here.

Используйте раскрывающийся список Measurement Units, чтобы выбрать единицы измерения Metric или Imperial.

Задание ограничений для выбранного правила.
Задание ограничений для выбранного правила.

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

Несколько ограничений правил, определенных для конкретной цепи, благодаря директиве Parameter Set.
Несколько ограничений правил, определенных для конкретной цепи, благодаря директиве Parameter Set.

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

Сгенерированные правила проектирования на стороне PCB.
Сгенерированные правила проектирования на стороне PCB.

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

Размещение директив Net Class

Директива Net Class позволяет создавать пользовательские классы цепей в схеме. Директиву Net Class можно разместить, выбрав команду Place » Directives » Parameter Set в главном меню, а затем определив набор параметров как директиву класса цепей, как указано в совете №2 на странице команды. Когда PCB создается из схемы, информация в директиве Net Class используется для создания соответствующего класса цепей на PCB. Чтобы сделать цепь членом класса цепей, присоедините директиву Net Class к соответствующему проводу, шине или сигнальному жгуту, затем задайте параметру ClassName директивы имя требуемого класса. Для использования этой функции должна быть включена опция Generate Net Classes (для User-Defined Classes) на вкладке the Class Generation tab of the Project Options dialog.

Если для цепи определена директива Net Class, то любые правила проектирования PCB, которые также создаются этим объектом набора параметров, будут иметь область действия Net Class при передаче проекта в редактор PCB. Директиву Net Class можно создать из уже размещенной директивы Parameter Set, добавив класс, значение которого должно быть установлено в требуемый PCB Net Class.

Хотя Net Classes можно создавать непосредственно в редакторе PCB, логическая функция или группировка цепей обычно гораздо яснее видна в схеме, поэтому разумнее управлять этим процессом именно оттуда.

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

Присоедините директиву Net Class к объекту Blanket object, чтобы создать класс цепей, членами которого будут отдельные цепи, охватываемые этим blanket. Если к этому blanket также присоединена директива PCB Layout, параметры правил директивы PCB Layout будут нацелены на этот класс цепей, а не на каждую отдельную цепь. При импорте изменений в документ PCB это приводит к созданию одного правила проектирования (на каждый параметр) с областью действия, настроенной на данный класс цепей.

Размещение Blanket Directive

Директивы Parameter Set могут быть нацелены только на конкретную цепь, к которой они присоединены, но в сочетании с Blanket directive их область действия можно расширить так, чтобы она охватывала все цепи внутри blanket.

Разместите директиву этого типа, выбрав команду Place » Directives » Blanket в главном меню. При размещении blanket можно определить либо простую прямоугольную форму, либо многоугольную. Последняя обеспечивает более точный контроль над охватом требуемых объектов цепей на листе.

Blanket определяет интересующие цепи — разместите директиву Parameter Set в любом месте по краю blanket, чтобы применить требования проектирования к этим цепям. Чтобы применить периферийную директиву к цепи под Blanket directive, объект, связанный с этой цепью, — вывод, порт, метка цепи, порт питания, сегмент провода/шины/жгута (включая оба конца) — должен находиться в пределах blanket. Обратите внимание, что для идентификаторов цепей, таких как метки цепей, hotspot должен находиться внутри blanket. Если входящие в состав цепи не передаются в PCB Parameter Set ожидаемым образом, попробуйте соответствующим образом скорректировать область blanket.

Чтобы проверить, к каким цепям будет применяться blanket directive, используйте функцию Net Colors для их подсветки. Выберите нужный цвет в меню View » Set Net Colors, затем щелкните по периметру нужной Blanket directive. Чтобы снять подсветку с конкретной цепи, используйте команду View » Set Net Colors » Clear Net Color, затем щелкните по цепи, с которой нужно убрать цвет. Чтобы очистить раскраску цепей на всех листах схемы, используйте команду View » Set Net Colors » Clear All Net Colors.

Пример использования Blanket directive для применения директивы Parameter Set к цепям внутри blanket.
Пример использования Blanket directive для применения директивы Parameter Set к цепям внутри blanket.

Примеры использования blanket directive:

  • Присоединение директивы Parameter Set к объекту blanket, чтобы параметры ее правил применялись к каждой отдельной цепи, охватываемой этим blanket.
  • Присоединение директивы Parameter Set к объекту blanket для создания Parameter Set, членами которого являются отдельные цепи, охватываемые этим blanket.
  • Присоединение директивы Differential Pair к объекту blanket для создания объектов дифференциальных пар на основе дифференциальных цепей в пределах этого blanket.
Прикрепите директиву Parameter Set к объекту Blanket object , чтобы параметры ее правил применялись к каждой отдельной цепи, охватываемой этим blanket. Если к этому blanket также прикреплена директива Parameter Set и этот Parameter Set также содержит параметр Net Class, то параметры правил директивы Parameter Set будут нацелены на этот класс цепей, а не на каждую отдельную цепь. При импорте изменений в документ PCB это приводит к созданию одного правила проектирования (на каждый параметр) с областью действия, настроенной на данный класс цепей.
Вы также можете скопировать директиву Parameter Set, прикрепленную к периметру, и присоединить ее к другой директиве Blanket или даже к отдельным проводам, шинам или harness — в результате все дополнительные цепи, связанные с той же директивой Parameter Set, будут добавлены в тот же сгенерированный PCB Net Class.

Blanket в сочетании с директивой Parameter Set также можно использовать для применения классов компонентов и параметров к компонентам, которые полностью находятся внутри области, заданной Blanket. Для этого используйте параметры Component Class и Parameter из раскрывающегося списка кнопки Add в свойствах директивы Parameter Set, прикрепленной к Blanket. Информация о классе компонентов и параметре будет передана в проектный документ PCB в процессе ECO при обновлении PCB.

Косвенные (на основе параметров) директивы

Директивы Parameter Set необходимы при выборе объектов проекта на схеме, которые не могут содержать параметры, но для тех объектов, которые могут, директивы проекта можно применять косвенно, добавляя (и определяя) их как параметры соответствующего объекта схемы. По сути, это parameter-based directives.

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

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

Добавьте параметр (как правило) к... Из... Для области действия правила PCB...
Pin вкладки Parameters панели Properties в режиме Pin mode. Pad
Port вкладки Parameters панели Properties в режиме Port mode. Net
Component области Parameters панели Properties в режиме Components mode. Component
Sheet Symbol вкладки Parameters панели Properties в режиме Sheet Symbol mode, когда в области Source выбран Local. Component Class
Device Sheet Symbol вкладки Parameters панели Properties в режиме Sheet Symbol mode, когда в области Source выбран Device. Component Class
Managed Sheet Symbol области Parameters панели Properties в режиме Sheet Symbol mode, когда в области Source выбран Managed. Component Class
Sheet вкладки Parameters панели Properties в режиме Document Options mode. All Objects

Во всех случаях метод добавления параметра на основе правила одинаков. На соответствующей вкладке или в диалоге выполните следующие действия:

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

Указание классов компонентов

Аналогичным образом классы компонентов можно определить на схеме, добавив параметр ClassName к целевым компонентам и задав его значением нужное имя класса. Когда проект передается на PCB, определенные классы компонентов будут созданы.

Чтобы классы компонентов, определенные на схеме, передавались на PCB, в диалоге Project Options должны быть установлены следующие параметры:

  • Включите параметр Generate Component Classes, расположенный в области User-Defined Classes на вкладке диалога Class Generation tab.
  • На вкладке диалога Comparator tab установите параметр Differences Associated with Components » Extra Component Classes Mode в значение Find Differences.

Указанный выше параметр вкладки Class Generation показан на изображении ниже. Наведите указатель на изображение, чтобы увидеть настройку параметра вкладки Comparator .

Чтобы передать Component Classes на PCB, включите параметр Generate Component Classes на вкладке Class Generation. Наведите указатель на изображение, чтобы показать вкладку Comparator, где необходимо установить параметр Extra Component Classes Mode в значение Find Differences.
Чтобы передать Component Classes на PCB, включите параметр Generate Component Classes на вкладке Class Generation. Наведите указатель на изображение, чтобы показать вкладку Comparator, где необходимо установить параметр Extra Component Classes Mode в значение Find Differences.

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

В редакторе PCB компонент может принадлежать нескольким Component Classes. Чтобы определить это на схеме, разделяйте каждое имя PCB Component Class запятой в значении параметра компонента схемы (show image).

Управление печатью директив

По умолчанию все директивы проекта включаются в печать листов схемы. Однако это можно изменить:

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

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

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

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

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

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

Content