Компиляция и верификация проекта

Вы просматриваете версию 20. Для самой новой информации, перейдите на страницу Компиляция и верификация проекта для версии 25
 

Главная страница: Подробнее о схемах

Компиляция проекта

Что означает компиляция проекта?

Система управляет связанными данными на схеме и на плате.
Система управляет связанными данными на схеме и на плате.

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

Когда проект, по вашему мнению, готов, вы можете осуществить его валидацию.

Валидация схем

Динамическая компиляция

Модель связности проекта инкрементально обновляется после каждого действия пользователя. Не нужно вручную запускать валидацию проекта для того, чтобы увидеть содержимое панели Navigator, для запуска BOM, для выполнения ECO и т.д. Ручная компиляция не нужна для следующего:

  • Панель Navigator и Projects
  • ActiveBOM
  • Перекрестный переход
  • Выделение цепей цветом
  • Эквивалентная замена выводов
  • Перекрестные ссылки на компоненты
Для автоматического обновления панелей Projects и Navigator после динамической компиляции включите опцию Schematic.DynamicCompiler.Navigator.Autorefresh в диалоговом окне Advanced Settings (чтобы открыть его, нажмите Advanced на странице System - General диалогового окна Preferences).

Валидация проекта

Чтобы провести валидацию проекта, выберите команду Validate PCB Project <название проекта> из меню Project.

Система проверит модель данных проекта на логические, электрические и графические ошибки в соответствии с настройками компилятора.

Благодаря этому подходу, редактор схем становится интеллектуальным средством черчения, а не просто инструментом для определения связей. Когда вы соединяете два вывода с помощью провода, вы, по сути, фиксируете свой инженерный замысел, а не создаете цепь. Цепь не будет создана до момента компиляции проекта, и этот процесс управляется алгоритмами за пределами редактора схем. Как упоминалось ранее, существует ряд преимуществ этого подхода, самым большим из которых является то, что скомпилированная модель проекта находится вне редактора схем и редактора плат. Скомпилированная модель называется унифицированной моделью данных (Unified Data Model – UDM). Эта модель включает в себя подробное описание каждого компонента в проекте и его связь с другими компонентами.

Чтобы узнать подробнее о создании связности, перейдите на страницу Создание связности.

Унифицированная модель данных

В основе системы лежит унифицированная модель данных (Unified Data Model – UDM). При валидации проекта происходит создание единой связанной модели, которая занимает центральное место в процессе проектирования. Данные этой модели можно открывать и изменять с помощью различных редакторов и служб системы. Вместо того, чтобы хранить данные каждого аспекта проектирования по отдельности, модель UDM структурирована для хранения всей информации о проекте, в том числе о компонентах и связи между ними.

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

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

Изучение связности в панели Navigator

Справочная страница: Панель Navigator

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

Чтобы использовать панель:

  • Задайте поведение просмотра, нажав кнопку  в верхней части панели – будет открыта страница System - Navigation диалогового окна Preferences, где вы сможете задать предпочитаемый метод подсветки (настройки области Highlight Methods). Либо щелкните ПКМ по интересующему объекту в панели и используйте команды контекстного меню для настройки поведения навигации.
  • Задайте область просмотра в первой области панели. Для просмотра всего проекта выберите Flattened Hierarchy.
  • Щелкните ЛКМ по компоненту в области Instance панели, чтобы перейти к этому компоненту, или разверните компонент, чтобы найти вывод и перейти к нему.
  • Щелкните ЛКМ по цепи или шине в области Net / Bus, чтобы перейти к этой цепи или шине, или разверните цепь или шину, чтобы найти вывод и перейти к нему.

    Щелкните по компоненту или цепи в панели Navigator, чтобы найти этот компонент или цепь и отследить связность в проекте. Щелкните ПКМ, чтобы показать варианты отображения.
    Щелкните по компоненту или цепи в панели Navigator, чтобы найти этот компонент или цепь и отследить связность в проекте. Щелкните ПКМ, чтобы показать варианты отображения.

Верификация компонентов

Главная страница: Подробнее о компонентах и библиотеках

Ключевым аспектом верификации проекта является проверка корректности компонентов. Как правило, это осуществляется при добавлении компонентов в библиотеки предприятия. Типовые ошибки в компонентах, которые вызывают ошибки на плате, включают в себя:

  • Некорректная ссылка на посадочное место – компонент ссылается на недоступное посадочное место. В процессе передачи проекта из редактора схем в редактор плат система ищет посадочное место в панели Components, в соответствии с настройками библиотеки, заданных для каждого посадочного места в диалоговом окне PCB Model.
  • Выводы не соответствуют контактным площадкам – номера выводов символа компонента не соответствуют номерам контактных площадок. Система предполагает однозначное отображение: например, вывод 4 схемного символа соответствует контактной площадке 4 посадочного места. Это не обязательно – если номера не соответствуют друг другу, соответствие выводов и посадочных мест должно быть задано в процессе создания компонента в диалоговом окне PCB Model.

Прочие нарушения в компонентах, которые могут вызвать ошибки в проектах, включают в себя:

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

Настройка верификации

Главная страница: Диалоговое окно Project Options

Существует обширный ряд графических и электрических проверок, которые можно осуществить для валидируемого проекта. Эти проверки настраиваются в опциях проекта. Выберите команду Project » Project Options, чтобы открыть диалоговое окно Project Options (последовательность клавиш: C, O). Настройки по умолчанию не подойдут для всех проектов, поэтому важно ознакомиться с ними и понять, как их задавать в соответствии с вашим проектом.

Графические проверки

В ходе валидации, общие ошибки графики и редактирования проверяются в соответствии с настройками на вкладке Error Reporting диалогового окна Project Options.

Настройка требуемых проверок.
Настройка требуемых проверок.

Проверки сгруппированы по категориям, например Violations Associated with Nets (Нарушения, связанные с цепями), Violations Associated with Documents (Нарушения, связанные с документами), Violations Associated with Components (Нарушения, связанные с компонентами) и т.д. Группы представлены в списке в алфавитном порядке.

Режим отчета для каждого нарушения задан в столбце Report Mode, и для него можно выбрать одно из четырех значений, щелкнув по нему и выбрав нужный вариант из выпадающего списка: Fatal Error (Критическая ошибка), Error (Ошибка), Warning (Предупреждение) или No Report (Без отчета).

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

Одной из важных настроек является Nets with only one pin (Цепи только с одним выводом). Ее можно использовать для поиска цепей только с одним узлом, где вывод соединен с портом или меткой цепи, но не соединен с другим выводом. По умолчанию для этого нарушения задано No Report, но его можно изменить на Warning для обнаружения таких цепей.

Проверки связности

Проверка электрической связности осуществляется в соответствии с настройками на вкладке Connection Matrix диалогового окна Project Options.

Матрица соединений определяет допустимые и недопустимые электрические состояния.
Матрица соединений определяет допустимые и недопустимые электрические состояния.

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

Щелкайте по маленькому квадрату в матрице для изменения определенного правила. Каждое правило определяет уровень отчета для данного сочетания выводов/идентификаторов цепей. Для каждого правила существует четыре возможных значения: Fatal Error (Критическая ошибка), Error (Ошибка), Warning (Предупреждение), No Report (Без отчета).

Настройки на вкладках Error Reporting и Connection Matrix должны быть заданы в соответствии с требованиями текущего проекта.

Осмысление сообщений и поиск ошибок

Главная страница: Панель Messages

После валидации проекта все предупреждения и ошибки приводятся в панели Messages. Обратите внимание, что панель Messages открывается автоматически, только если существует по крайней мере одна ошибка (Error) или критическая ошибка (Fatal Error). Чтобы проверить предупреждения (Warning), необходимо открыть панель вручную, нажав кнопку Panels в нижней правой части приложения и выбрав Messages. После того, как проект валидирован, в панели будут перечислены все найденные ошибки и предупреждения.

Панель Messages отображает найденные в проекте предупреждения и ошибки.
Панель Messages отображает найденные в проекте предупреждения и ошибки.

Панель Messages является центром управления, где отображаются нарушения компиляции. Следует иметь в виду следующее:

  • Nets with no driving source (Цепи без источника возбуждения, категория Violations associated with Nets) – если цепь не содержит вывод с электрическим типом Output или I/O, возникает эта ошибка. Это может произойти и в корректных состояниях, например, если цепь соединяет вывод соединителя со входным выводом.
  • Nets with multiple names (Цепи со множеством имен, категория Violations associated with Nets) – эта ошибка возникает, если вы изменяете имя цепи. Например, вы подключаете проименованную цепь ко входу в лист с другим именем (что допустимо), поскольку это имя входа в лист лучше отражает функцию цепи на листе более низкого уровня иерархии. Это также происходит в многоканальных проектах, где система должна назначить уникальное имя каждой повторяемой цепи.
  • Component Revision has Inapplicable State (Ревизия компонента в неприменимом состоянии, категория Violations associated with Components) – при этой проверке появляется сообщение Can't perform revision state validation (Невозможно провести валидацию состояния ревизии). Это нарушение возникает, когда ревизия компонента, размещенного с сервера управляемых данных, находится в неприменимом состоянии.
  • Панель Messages разделена на две области – в верхней части представлена таблица всех предупреждений/ошибок, в нижней – описание выбранного в данный момент предупреждения/ошибки.
  • Дважды щелкните по сообщению, чтобы перейти к этому предупреждению/ошибке. Дважды щелкните ЛКМ по описанию, чтобы отобразить конкретный объект.
  • Вы можете щелкнуть по заголовку столбца в панели Messages (например, Class, Document, Message), чтобы отсортировать ошибки и предупреждения.
  • Щелкните ПКМ в панели Messages и выберите команду Clear, чтобы очистить сообщения, или Export, чтобы экспортировать их в отчет.
  • Панель включает в себя предупреждения и ошибки, обнаруженные в соответствии с настройками на вкладках Error Reporting и Connection Matrix.
  • При щелчке ПКМ по предупреждению/ошибке в панели Messages и выборе команды Place Specific No ERC for this violation вы автоматически перейдете к месту ошибки, и под курсором появится директива No ERC, готовая к размещению в месте ошибки. Нажмите клавишу Tab, чтобы отредактировать свойства директивы перед ее размещением, если необходимо.
    • Общая директива подавит все проверки ошибок в точке своего размещения.
    • Специфичная директива подавит только заданные проверки в точке своего размещения.

Исправление предупреждений и ошибок

Важно обращать внимание на все обнаруженные предупреждения и ошибки. Не все отчеты, заданные в настройках по умолчанию, могут быть проблемой на самом деле, но вы можете самостоятельно смягчить условия проверок. Например, в проекте может понадобиться, чтобы выводы входа-выхода были подключены ко входным портам, и для этого нужно настроить соответствующую ячейку на вкладке Connection Matrix. Другой проверкой, которую, как правило, нужно изменить, является Nets with no driving source (Цепи без источника возбуждения), которую следует отключить на вкладке Error Reporting.

Могут быть ситуации, когда вам необходимо проверить весь проект на определенное условие, но вы хотите проигнорировать предупреждение/ошибку в определенном месте схемы. Например, вы хотите, чтобы цепь была переименована в определенном месте, но только в этом месте. Это можно сделать, разместив в этом месте директиву No ERC.

Использование директивы No ERC

Главная страница: Объект No ERC

Если необходимо, чтобы определенная точка схемы не формировала ошибку, разместите директиву No ERC (Electrical Rules Check – Проверка электрических правил) на этой точке (Place » Directives » Generic No ERC), что будет означать не помечать это место как предупреждение/ошибку. Настройте стиль и цвет символа No ERC в соответствии с его предназначением на схеме в режиме No ERC панели Properties.

Разместите директиву No ERC, чтобы подавить предупреждения или ошибки в этом определенном месте.Разместите директиву No ERC, чтобы подавить предупреждения или ошибки в этом определенном месте.

Обратите внимание, что директивы No ERC можно исключить из распечаток, если необходимо, включив соответствующие опции в диалоговом окне Schematic Print Properties.

Вы можете разместить директиву Specific No ERC непосредственно в месте ошибки из панели Messages (щелкните ПКМ и выберите команду Place Specific No ERC for this violation, как показано на изображении ниже) или на нарушении.

Команда контекстного меню позволяет легко разместить специфическую директиву No ERC непосредственно в месте ошибки либо из панели Messages, либо из нарушения.
Команда контекстного меню позволяет легко разместить специфическую директиву No ERC непосредственно в месте ошибки либо из панели Messages, либо из нарушения.

Обратите внимание, что директивы No ERC нельзя использовать для подавления всех типов проверок. Когда диалоговое окно No ERC находится в состоянии Violation Types, в нем отображен список типов нарушений, которые можно подавить. Используйте его для изучения того, какие проверки можно подавить.

Подробнее об ошибках компилятора

Система может проверять большое количество состояний потенциальных ошибок. Информация о каждой проверке доступна в Справочнике по нарушениям компиляции проекта.

If you find an issue, select the text/image and pressCtrl + Enterto send us your feedback.
Примечание

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

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

Content