Bundling Multiple Nets into Buses & Signal Harnesses

Распространённая проблема в больших проектах — поддерживать управляемость цепей (nets) не только с точки зрения разработчика, создающего соединения но и с точки зрения читателя, которому нужно интерпретировать и понимать схему. Это особенно важно при соединении между листами — именно в этот момент и разработчик, и читатель легче всего могут запутаться.

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

Работа с шинами

Шины используются для объединения серии последовательных цепей, например адресной или шины данных. Их ключевое требование — каждая цепь в шине должна иметь имя с общей базовой частью, за которой следует числовой идентификатор, как показано на изображениях ниже. Например, цепи Control1, Control2 и Control3 можно объединить в шину Control[1..3]. Шины нельзя использовать для объединения несвязанных цепей, таких как Enable, Read и Status; для этого используются жгуты сигналов, как объясняется ниже.

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

  • Метка цепи на каждой отдельной цепи

  • Метка цепи на линии шины

  • Порт с тем же именем, что и у шины, если она выходит за пределы листа

Все элементы, показанные на изображении выше, должны присутствовать, чтобы создать корректную шину. Вводы шины (bus entries) нужно использовать только если вы хотите «снимать» разные элементы шины с обеих сторон шины. 
Все элементы, показанные на изображении выше, должны присутствовать, чтобы создать корректную шину. Вводы шины (bus entries) нужно использовать только если вы хотите «снимать» разные элементы шины с обеих сторон шины.

Шины не передаются на PCB; вместо этого можно создать класс цепей (net class) для каждой шины на схеме или, при необходимости, для каждого участка шины. Участок шины создаётся указанием шины, которая фактически является частью более крупной шины, например из шины D[15..0]. Если эта опция включена, на PCB будет создан класс цепей для всей шины, а также для каждого определённого участка. Включите нужные параметры на вкладке Class Generation в диалоговом окне Project Options.

Работа с Signal Harnesses

Signal harnesses обладают высокой гибкостью, поскольку их можно использовать для объединения любого количества цепей (nets), шин (buses) и harnesses более низкого уровня. Как следует из названия, они аналогичны жгуту проводов, где любые наборы проводников можно объединять в пучок и прокладывать внутри электронного или электротехнического изделия. Их создание и управление более сложны, но взамен они могут значительно упростить представление схемы и повысить ее читаемость.

Signal harnesses используются для объединения любых комбинаций nets, buses и signal harnesses более низкого уровня.
Signal harnesses используются для объединения любых комбинаций nets, buses и signal harnesses более низкого уровня.

Элементы, из которых состоит полноценный signal harness, включают:

  • Harness Connector - Рассматривайте Harness Connector как воронку: он собирает все сигналы, подключающиеся к этому harness через входящие Harness Entries. Ключевое свойство Harness Connector — Harness Type; оно идентифицирует harness и используется для связывания различных элементов, из которых состоит signal harness, включая подключенные Ports / Sheet Entries.

  • Harness Entries - Каждый сигнал (цепь/net, шина/bus или сигнальный жгут/signal harness), который должен входить в этот сигнальный жгут, входит в Harness Connector через Harness Entry. Harness Entry включает свойство Harness Type; оно используется только при вложении сигнальных жгутов и означает, что к данному Harness Entry подключён сигнальный жгут более низкого уровня.

  • Signal Harness line - Шиноподобная линия, размещаемая для проведения сигнального жгута по листу.

  • Harness Type - Тип жгута (Harness Type) — это набор Harness Entries. Каждый обнаруженный Harness Type определяется в файле определения жгута (Harness Definition File), как описано ниже. Harness Type и связанные с ним Harness Entries — это, по сути, имена контейнеров, которые несут цепи (nets), а не имена самих цепей. Чтобы проверить значение Harness Type, наведите курсор на объект, например на Port, Sheet Entry или Harness Connector.

  • Harness Definition File — Программа управляет жгутами сигналов, записывая Harness Entries, входящие в каждый жгут сигналов (Harness Type), в ASCII-файл Harness Definition File. На изображении ниже показан синтаксис Harness Definition File: в файле есть строка для каждого Harness Type, в которой перечислены Harness Entries, входящие в этот жгут. Для каждого листа схемы, на котором присутствуют Harness Connectors, автоматически создается (и поддерживается) Harness Definition File; найти их можно в папке \Settings в дереве проекта, как показано на изображении ниже. Если в проекте были изменения, влияющие на жгуты сигналов, файлы Harness Definition автоматически обновляются. Если Harness Definition File отсутствует в папке проекта, он автоматически создается заново при открытии листа схемы (их можно удалять — при необходимости они будут автоматически пересозданы).
  • Port + Sheet Entry — Подобно Net или Bus, Signal Harness может выходить с листа через Port и затем подключаться к листу более высокого уровня через соответствующий Sheet Entry. Обратите внимание: программа автоматически меняет цвет объектов Port и Sheet Entry, показывая, что они несут Signal Harness, если параметр Sheet Entries and Ports use Harness Color включен на странице Schematic - Graphical Editing диалога Preferences. Также обратите внимание, что объекты Port и Sheet Entry содержат свойство Harness Type; это значение устанавливается автоматически, когда при размещении Port вы касаетесь линией Signal Harness. Для Port на листе схемы, где определен жгут (присутствует Harness Connector), Harness Type задается автоматически и не редактируется. Для Port или Sheet Entry, размещенных на листе схемы более высокого уровня, оно будет пустым и редактируемым; обычно нет необходимости задавать его вручную. Назначенный Harness Type можно в любой момент проверить, наведя курсор на Port/Sheet Entry.

Определения жгутов хранятся в файлах Harness Definition; на изображении выше определены два жгута сигналов: 1WB_Write_Read и JTAG.
Определения жгутов хранятся в файлах Harness Definition; на изображении выше определены два жгута сигналов: 1WB_Write_Read и JTAG.

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

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

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

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

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

Content