Interested Article - Список соединений

Выражение список соединений (или список цепей ) — калька с термина англ. netlist имеет несколько значений.

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

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

В списках соединений обычно приводится информация о внутрисхемных соединениях и, как правило, не содержится ничего другого, кроме перечня приборов (модулей, узлов, компонентов, «экземпляров»), «соединений» между ними и нескольких атрибутов (параметров). Если требуется описать нечто более сложное, используют специализированные языки описания аппаратуры ( Verilog , VHDL и др.).

Классификация списков соединений:

  • физические или логические;
  • по способу построения:
    • построенные на основе экземпляров приборов ( англ. instance-based );
    • построенные на основе соединений ( англ. net-based );
  • по наличию/отсутствую вложенных компонентов:

Состав и структура списка

Электронное устройство состоит из компонентов (узлов, модулей), соединённых проводниками.

В списке соединений компоненты электронного устройства называются « экземплярами », а проводники — « соединениями ».

«Экземпляры» бывают двух видов:

  • « определения » — «экземпляры», в состав которых входят другие «экземпляры»;
  • « оригиналы » — «экземпляры», не содержащие в своём составе вложенных «экземпляров».

В состав «определения» входят:

  • перечень вложенных «экземпляров» (компонентов);
  • перечень «соединений», связывающих «экземпляры» (компоненты) между собой.

«Экземпляром» может быть всё что угодно: от полевых или биполярных транзисторов , резисторов и конденсаторов до интегральных микросхем .

«Экземпляры» имеют «порты» ( англ. ports ) (или «выводы» ( англ. pins )). Например, «портами» пылесоса можно назвать три металлических вывода вилки шнура питания.

Каждый «порт» имеет «имя». Например, «порты» пылесоса могут называться «ноль», «фаза» и «земля».

«Экземпляры» могут иметь «имена». Например, два одинаковых пылесоса могут называться «vac1» и «vac2». С помощью (уникальных) имён одинаковые «экземпляры» можно отличить друг от друга.

«Соединения» описывают проводники, связывающие компоненты схемы между собой.

«Экземпляры» и «соединения» могут иметь, а могут и не иметь особые атрибуты; это зависит от возможностей выбранного языка.

Существует два подхода к построению списков соединений:

  • на основе экземпляров ( англ. instance-based ) (например, SPICE );
  • на основе соединений ( англ. net-based ) (например, (англ.) ).

В состав списка, построенного на основе экземпляров ( англ. instance-based ), входит перечень «экземпляров». Для каждого «экземпляра» приводится:

  • либо упорядоченный список имён «соединений»;
  • либо список пар, включающий:
    • имя «порта» «экземпляра»;
    • имя «соединения», подключаемого к «порту».

Перечень «соединений» строится автоматически после анализа получаемых взаимосвязей. Невозможно указать атрибуты для «соединений».

Наиболее известным знаменитым списком соединений, простроенным на основе экземпляров ( англ. instance-based ), является, возможно, SPICE .

В состав списка, построенного на основе соединений ( англ. net-based ), входят:

  • перечень всех «экземпляров» и их атрибутов;
  • описание всех «соединений» (указание имён соединяемых «портов» «экземпляров»).

В таком списке возможно указание атрибутов для «соединений».

Наиболее известным списком соединений, построенным на основе соединений ( англ. net-based ), является, возможно, (англ.) .

Иерархия

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

Для удобства большие списки соединений делят на части, одинаковые компоненты описывают с помощью «определений». Например, разработчик может создать «определение» пылесоса с портами, но теперь это определение будет включать полное описание внутренних компонентов пылесоса и соединений между ними ( моторов , переключателей и т. д.).

« Примитив » — «определение», не включающее в себя никаких «экземпляров» (не содержащее вложений). Также может называться «листом» или как-то иначе.

« Иерархическое » ( англ. hierarchical ) «определение» — «определение», включающее в себя «экземпляры» (вложения).

Список называется « свёрнутым » ( англ. folded ), если внутри него одно и то же «определение» используется несколько раз.

Список называется « развёрнутым » ( англ. unfolded ), если внутри него нет «определений», используемых более одного раза.

Свёрнутый список может быть чрезвычайно компактным (маленьким). Маленький список соединений из небольшого числа «экземпляров» может описывать устройства с огромным количеством вложенных «экземпляров».

Например, дадим пять «определений»:

  • A является ячейкой памяти;
  • B содержит 32 «экземпляра» A;
  • C содержит 32 «экземпляра» B;
  • D содержит 32 «экземпляра» C;
  • E содержит 32 «экземпляра» D.

Устройство, состоящее всего из одного «экземпляра» E, будет включать ячеек памяти («экземпляров» A).

Развёртывание иерархии

Любой свёрнутый список может быть развёрнут — преобразован в плоский список.

« Плоский » ( англ. flat ) список соединений — список соединений, в котором в качестве «экземпляров» используются только примитивы (нет «экземпляров», содержащих вложенные «экземпляры»).

Свёрнутые (иерархические) списки преобразуются к плоским спискам (рекурсивно развёртываются) путём рекурсивной замены каждого не примитивного «определения» на содержащиеся в нём «экземпляры» (с новым именем).

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

Обратное аннотирование

Обратное аннотирование ( англ. back annotation ) — добавление в список соединений каких‑либо «данных» (дополнительной информации).

Обычно, «данные» хранятся отдельно от списка и поэтому могут использоваться в нескольких списках одновременно. «Данные» могут определяться по результатам исследований физического устройства, могут использоваться для более точного моделирования.

В состав «данных» входят:

  • путь к примитиву (в иерархии);
  • сами данные, например, время задержки для RC-цепей , обусловленное наличием паразитных ёмкостей между соединениями внутри устройства.

Наследование

Понятие «наследование» опишем на примере.

Пусть:

  • дано «определение» конденсатора ;
  • в «определении» указан атрибут под названием « Ёмкость », соответствующий одноимённому физическому свойству;
  • для атрибута указано значение по умолчанию — «100 p F » (100 пико фарад ).

Тогда можно создать «экземпляры»:

  • не содержащие атрибут «Ёмкость». Такие «экземпляры» «унаследуют» значение по умолчанию («100 pF») из своего «определения»;
  • содержащие атрибут «Ёмкость» с произвольным значением. Указанное значение «переопределит» значение, заданное в «определении».

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

Литература

Источник —

Same as Список соединений