Определение логической структуры устройства из нескольких электронных модулей

Вы просматриваете версию 2.0. Для самой новой информации, перейдите на страницу Определение логической структуры устройства из нескольких электронных модулей для версии 5
Applies to NEXUS Client versions: 2.0 and 2.1

This documentation page references Altium NEXUS/NEXUS Client (part of the deployed NEXUS solution), which has been discontinued. All your PCB design, data management and collaboration needs can now be delivered by Altium Designer and a connected Altium 365 Workspace. Check out the FAQs page for more information.

 

Главная страница: Проектирование устройств из нескольких электронных модулей

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

В связи с этим, необходима система проектирования высокого уровня, которая позволяет моделировать электрические и физические соединения множества плат. В Altium NEXUS для поддержки проектирования таких систем и моделирования логических (схема) и физических (плата) соединений используется среда Multi-board Design.

Пользователь определяет модель устройства из нескольких электронных модулей в Altium NEXUS в проекте Multi-board (*.PrjMbd) и во входящих в него документов схемы (*.MbsDoc) и сборки (*.MbaDoc). Эти типы документов позволяют добавить существующие проекты плат Altium NEXUS в среду проектирования устройств из нескольких электронных модулей и связать их в единую систему.

Основные шаги по созданию схемы многомодульного устройства из дочерних проектов плат:

  1. В Altium NEXUS создайте проект Multi-board и добавьте документ схемы Multi-board в проект.
  2. Разместите графические блоки (модули) в схеме для логического представления дочерних проектов.
  3. Добавьте связи каждого модуля с соответствующим дочерним проектом.
  4. Импортируйте данные о соединении дочерних проектов.
  5. Добавьте соединения между модулями, чтобы создать логическое представление проекта.
Физическим отображением логического представления, заданного в схеме Multi-board, является сборка Multi-board, которая включает в себя информацию по импортированным платам. Проект платы каждого модуля представляется физической платой в документе сборки Multi-board.

– Чтобы подробнее узнать о создании и работе со сборками Multi-board, перейдите в раздел Определение конструкции устройства из нескольких электронных модулей.

Включение проектов плат в Multi-board

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

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

Для каждого соединителя в проекте платы, который будет использоваться для соединения плат, выберите элемент-соединитель, затем добавьте специальный параметр элемента на вкладке Parameters панели Properties.

Проект Multi-board

Проектирование многомодульной конструкции в Altium NEXUS осуществляется в проекте Multi-board, который, как и проекты других типов, создается с помощью меню File » New » Project. Будет открыто диалоговое окно Create Project. Выберите здесь опцию под заголовком Multiboard в области Project Type.

Базовым элементом проекта Multi-board является логическое представление конструкции, определение которое осуществляется в документе схемы Multi-board (*.MbsDoc). Добавьте файл этого типа в проект Multi-board из панели Projects, щелкнув правой кнопкой мыши по проекту и выбрав Add New to Project » Multi-board Schematic в контекстном меню.

Чтобы переименовать проект Multi-board и его (открытые) документы схемы, щелкните правой кнопкой мыши по ним в панели Projects и выберите команду File » Save As.

Схема Multi-board

Связь между проектами плат, которые составляют систему Multi-board, задается размещением соответствующих им модулей (объектов Module) на схеме и соединением их входов (объектов Module Entry) с помощью виртуальных соединений и/или проводников.

Модули, представляющие дочерние платы, размещаются в рабочей области из меню Place » Module или выбором кнопки в панели инструментов Active Bar – см. ниже.

Altium NEXUS включает в себя панель инструментов Active Bar, расположенную в верхней части рабочего пространства каждого редактора. Здесь собраны команды для быстрого размещения объектов.

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

После использования объекта с панели Active Bar его кнопка становится активной/видимой.

Дважды щелкните мышью по размещенному объекту Module и в панели Properties задайте его свойства Designator (Обозначение) и Title (Заголовок), а также исходный проект платы, с которым связан модуль. Используйте кнопку  в поле Source (Источник), чтобы задать локальный или управляемый проект и нужную плату в указанном проекте (Assembly/Board).

Добавьте другие модули и ссылки с их дочерними проектами в схему проекта.

Чтобы открыть схему или плату исходного проекта, выберите модуль в рабочей области и используйте команды Design » Crossprobe to Schematic/PCB. Эти команды также доступны в контекстном меню модуля.

Информация о проекте связанной с модулем платы импортируется с помощью команды Design » Import From Child Projects или Design » Import From Selected Child Projects. Наиболее важным в этом процессе является то, что обрабатываются данные о контактах и цепях каждого соединителя, которому присвоен специальный параметр System:Connector.

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

Выберите Module Entry в графическом окне, чтобы увидеть более подробную информацию по нему в панели Properties, такую как выводы/цепи его соединителя. Пока вход не соединен со входом другой платы, соединитель и контакты этого входа будут отображены в панели как не соединенные.

Связь с дочерними проектами

Чтобы соединить объекты Module дочерних проектов между собой, поместите логические соединения (объекты Connection) между входами модулей (объектами Module Entry).

В меню Place и в панели инструментов Active Bar (в верхней части редактора) доступны несколько типов соединителей, в том числе Direct Connection (Прямое подключение) и Wire (Проводник). Нажмите и протяните линию соединения между точками входов модулей, чтобы создать логическое соединение. Обратите внимание, что все элементы в редакторе схемы системы можно перетащить в новое расположение.

Выделите объект Connection в рабочей области, чтобы увидеть более подробную информацию по нему, такую как цепи и контакты соединения, в панели Properties.

Структура проекта

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

Разверните структуру проекта в панели Projects, чтобы показать файлы проекта Multi-board и его дочерних проектов. Скомпилируйте дочерний проект, чтобы в панели появились базовые элементы этого проекта, такие как Components (Элементы) и Nets (Цепи). Чтобы скомпилировать проект, нажмите правой кнопкой мыши по его названию в дереве панели Projects и выберите команду Compile PCB Project [<имя>] (Скомпилировать проект платы).

Работа с соединениями

Соединения между модулями в схеме Multi-Board представляют связь между соединителями дочерних проектов, а также контакты и цепи этих соединителей. Среда редактирования схемы Multi-board предлагает дополнительные возможности, которые позволяют изменять, проверять и обновлять соединения в процессе разработки проекта.

Разделить соединение

В тех случаях, когда соединитель дочернего проекта служит для связи более чем с одним проекта, то контакты/цепи этого соединителя можно логически разделить с помощью функции Split (Разделить) в редакторе Multi-board – на практике это означает, что один модуль соединен с двумя другими.

Например, это может быть проект с гнездом соединителя на плате, куда будут подключены два разъема других плат – разделенные сигналы от одного (например, 20-контактного) соединителя будут распределены на два разъема (например, 10-контактных) других плат.

Чтобы разделить соединение, выберите модуль, а затем вход в панели Properties. Нажмите кнопку и в открывшемся диалоговом окне Split Entry выберите контакты/цепи, которые вы хотите отделить в другой вход. Нажмите кнопку , чтобы подтвердить выбор.

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

В показанном примере вход HDR6 модуля M1 необходимо соединить со входами модулей M2 (LCD-дисплей) и модулем M3 (плата источника питания). Вход HDR6 был логически разделен, чтобы соединить три цепи питания со входом HDR3 модуля питания M3. Будет создан дополнительный вход HDR6 модуля M1 (HDR6 [1-2,15]), три цепи которого необходимо соединить с модулем M3, а изначальному входу HDR6 будут автоматически переназначены оставшиеся 17 соединений, которые необходимо соединить со входом HDR1 модуля M2.

Выделите объект Connection в рабочей области, чтобы увидеть входящие в него цепи в панели Properties. В примере часть цепей соединителя HDR6 соединена с HDR3 через проводное соединение W-PS, которое представляет три линии питания между платой Main Board (M1) и источником питания Power Supply (M3). Как показано выше, каждый виртуальный провод из списка в области Connections панели Properties также включает в себя название входа, контакт и цепь на каждом из концов в столбцах From (От) и To (До).

Обратите внимание, что для удобства можно отредактировать обозначение (Designator) соединения, а также название провода (#) и локальное название цепи (Net) для каждого пункта в списке Connections. Эти названия локальны для проекта Multi-board и не влияют на дочерние проекты.

Редактирование соединений

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

Чтобы изменить соответствие между контактами/цепями соединения модулей, выделите объект Connection в рабочей области и измените назначения в разделе Connections панели Properties.

Используйте выпадающие списки From (От) и To (До), чтобы задать новое назначение цепи для этого отдельного соединения или провода между модулями.

Connection Manager (Диспетчер соединений)

Вся информация о соединениях в проекте Multi-board собрана в диалоговом окне Connection Manager (Design » Connection Manager).

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

В нижней области Conflict Resolution (Разрешение конфликтов) диалогового окна будут отображены обнаруженные в ходе изменений проекта противоречия между текущим проектом Multi-board и исходными (дочерними) проектами.

Изменения проекта Multi-board

При проектировании системы Multi-board его дочерние проекты могут изменяться в процессе разработки, и эти изменения необходимо синхронизировать с Multi-board. Процесс обновления осуществляется путем повторного импорта дочерних проектов в проект Multi-board с помощью Engineering Change Order (ECO).

Импортируйте изменения всех дочерних проектов в Multi-board с помощью команды Design » Import From Child Projects, либо используйте Design » Import From Selected Child Projects для повторного импорта данных о соединениях модулей, выделенных в рабочей области. Эти команды также доступны в контекстном меню Design графического обозначения модуля.

Исполнение ECO обнаружит все различия между текущими данными о соединениях и данными, которые были импортированы из дочерних проектов. Эта информация содержится в диалоговом окне Connection Manager (Design » Connection Manager), который также используется, чтобы принять или отклонить обновленные данные из дочерних проектов.

Разрешение конфликтов

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

Информация о цепях, показанная в подсвеченных полях в списке Connection Manager, представляет предлагаемое изменение. В показанном примере цепи на контактах 4 и 5 HDR1 в дочернем проекте LCD Module находятся в другом порядке – по сути, они поменяны местами.

Диспетчер соединений Connection Manager обработает это изменение и предложит подходящие исправления в Conflict Resolution. Варианты разрешения конфликта включают в себя:

  • Confirm (Подтвердить) – цепи контактов 4 и 5 для соединителя HDR1 в модуле M2 будут изменены в проекте Multi-board для соответствия обновленным назначениям.
  • Revert (Обратить) – Текущее соответствие цепей и контактов для HDR1 в модуле M2 будет сохранено. Изменение будет проигнорировано проектом Multi-board. Обратите внимание, что проект Multi-board не будет сопоставлять назначения цепей в дочерних проектах.
  • Swap Pins (Поменять местами контакты) – Назначения контактов/цепей на другом конце соединения (в HDR6 модуля M1, главной платы) будет изменено для соответствия между модулями M1 и M2.
  • Swap Wires (Поменять местами провода) – Виртуальные провода, соединяющие HDR1 модуля M2 и HDR6 модуля M1, будут изменены (в данном случае – переставлены местами), чтобы исправить конфликт соединения цепей, а на назначения контактов/цепей соединителей не будут изменены. В примере провод W2 будет соединять контакт 4 в HDR6 и контакт 5 в HDR1, а W3 – контакты HDR6-5 и HDR1-4.
Доступные варианты разрешения конфликта зависят от типа выбранного соединения. Например, вариант Swap Wires не будет предложен для прямого соединения модулей.

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

Исправленные назначения цепей будут выделены зеленым, и они будут отражены в нижней графической части диалогового окна. Нажмите кнопку , чтобы применить все обновленные назначения в проекте Multi-board.

Обратите внимание, что значения Net Name, показанные в диалоговом окне, не будут изменены после разрешения конфликта, поскольку они отображают локальные для проекта Multi-board названия цепей. Эти названия создаются автоматически при первом размещении соединения между входами модулей, и их можно в любой момент изменить в панели Properties.

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

В примере, показанном ниже, конфликт для соединения W-LCD был разрешен вариантом Swap Wires, где были заменены провода W2 и W3, и цепи Reset и Read/Write теперь соответствуют соединению между модулями (LCD_RW# RSW и LCD_RS# RS соответственно).

Изменение дочерних проектов

Чтобы поддерживать синхронизацию между схемой Multi-board и дочерним проектом, проект многомодульной конструкции позволяет проводить двунаправленный обмен данными о контактах/цепях. Данные о соединениях импортируются в проект Multi-board из дочерних проектов, как описано выше, и данные о соединениях из проекта Multi-board могут быть переданы обратно в исходные дочерние проекты с помощью функции обновления – Design » Update Child Projects. Чтобы обновить отдельный дочерний проект, выберите соответствующий модуль и выберите команду Design » Update Selected Child Projects. Обе команды доступны в контекстном меню Design модуля.

После запуска команды редактор сравнит данные о соединении проекта Multi-board и дочерних проектов. Все обнаруженные различия будут выведены в список диалогового окна Engineering Change Order (ECO), либо появится диалоговое окно с сообщением, что различий не было обнаружено, т.е. для синхронизации проектов не нужно проводить никаких изменений.

В примере ниже было обнаружено различие, что цепи RS и RSW были заменены в соединителе HDR1 в дочернем проекте платы LCD (M2 в проекте Multi-board), и ECO предлагает замену контактов в исходном проекте для синхронизации цепей.

При выполнении ECO (после их опциональной валидации) контакты соединителя HDR1 в модуле LCD поменяются местами.

Обратите внимание, что процесс обновления дочерних проектов обычно выполняется после разрешения всех конфликтов в диалоговом окне Connection Manager, чтобы синхронизировать дочерние проекты в соответствие с проектом Multi-board.

В примере выше связь контактов/цепей дочернего проекта была восстановлена в состояние, предшествующее ее изменениям. Это эквивалентно тому, что измененные данные дочернего проекта были импортированы в проект Multi-board, и конфликт соединения был решен вариантом Revert. Если для разрешения конфликта был использован вариант Swap Pins, в проекте главной платы были бы заменены контакты 4 и 5 соединителя HDR6.

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

Content