« Создание простых списков соединений | Руководство пользователя gEDA gnetlist | Секции компонентов и их использование » |
В gnetlist есть поддержка иерархических схем. Иерархическими называются электрические схемы, куда в качестве подсхем включаются другие схемы. Это может быть весьма удобно для проектов, где одна и та же схема используется многократно, или для работы с какой-то схемой в нескольких разных проектах. В подсхемы в свою очередь могут входить другие подсхемы!
Для каждой подсхемы нужен отдельный символ, к которому она будет привязана и
который будет её представлением в схеме. Атрибут «device=
» для символа
подсхемы игнорируется. Для указания имени файла электрической схемы самой
подсхемы должен использоваться атрибут «source=
».
Символы подсхем загружаются обычным способом из библиотеки символов. Электрические же схемы подсхем берутся из библиотек исходных данных.
Порты представляют собой выводы символа, через которые можно
подключиться к электрической схеме связанной с ним подсхемы из той схемы
проекта, где этот символ используется. Каждому порту следует задать имя с
помощью атрибута «pinlabel=
». Точкой подключения порта к соединениям
внутри подсхемы gnetlist будет считать первый вывод компонента подсхемы,
атрибут «refdes=
» которого совпадает с именем порта. Обычно для этих
целей используют символы «in-1.sym» и «out-1.sym» из раздела «Input/Output»
библиотеки символов.
К каждому из символов подсхем, находящихся в схеме, должен быть прикреплён
атрибут «refdes=
». Он будет определять имя экземпляра подсхемы. При
обработке иерархической схемы уникальная идентификация компонентов и
соединений внутри каждого экземпляра подсхемы достигается в gnetlist путём
их переименования таким образом, что их новые имена содержат в качестве
префикса имя того экземпляра, к которому они относятся.
Для примера рассмотрим подсхему, содержащую компонент с атрибутом
«refdes=U1
» и соединение с атрибутом «netname=FEEDBACK
».
Предположим теперь, что символ подсхемы вставлен в схему и к нему прикреплён
атрибут «refdes=A1
». При обработке схемы gnetlist переименует компонент
в «A1/U1», а соединение — в «A1/FEEDBACK».