Список з’єднань

Виразсписок з'єднань(абосписок ланцюгів) - калька з терміна англ. netlist має кілька значень.

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

Список з'єднань(при проектуванні інтегральних схем) - текстове уявлення інформації (формат файлу) про з'єднання модулів (логічних елементів, блоків пам'яті та ін) інтегральної схеми.

У списках з'єднань зазвичай наводиться інформація про внутрішньосхемні з'єднання і, як правило, не міститься нічого іншого, крім переліку приладів (модулів, вузлів, компонентів, «екземплярів»), «з'єднань» між ними та кількох атрибутів (параметрів). Якщо потрібно описати щось складніше, використовують спеціалізовані мови опису апаратури (Verilog, VHDL та ін.).

Класифікація списків з'єднань:

  • фізичні чи логічні;
  • за способом побудови:
  • побудовані на основі екземплярів приладів (англ. instance-based);
  • побудовані на основі з'єднань (англ. net-based);
  • за наявністю/відсутністю вкладених компонентів:
  • «плоскі» (англ. flat) або «розгорнуті» (англ. unfolded);
  • «ієрархічні» (англ. hierarchical) або «згорнуті» (англ. folded).
  • Зміст

    Електронний пристрій складається із компонентів (вузлів, модулів), з'єднаних провідниками.

    У списку з'єднань компоненти електронного пристрою називаються «примірниками», а провідники — «з'єднаннями».

    «Примірники» бувають двох видів:

    • «визначення» - «примірники», до складу яких входять інші «примірники»;
    • «оригінали» — «екземпляри», що не містять у своєму складі вкладених «примірників».

    До складу «визначення» входять:

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

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

    Кожен порт має «ім'я». Наприклад, "порти" пилососа можуть називатися "нуль", "фаза" та "земля".

    "Примірники" можуть мати "імена". Наприклад, два однакові пилососи можуть називатися «vac1» і «vac2». За допомогою (унікальних) імен однакові «примірники» можна відрізнити один від одного.

    "З'єднання" описують провідники, що зв'язують компоненти схеми між собою.

    «Примірники» та «з'єднання» можуть мати, а можуть і не мати особливих атрибутів; це залежить від можливостей вибраної мови.

    Існує два підходи до побудови списків з'єднань:

    • на основі екземплярів (англ. instance-based) (наприклад, SPICE);
    • на основі з'єднань (англ. net-based) (наприклад, EDIF (англ.)).

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

    • або впорядкований перелік імен «з'єднань»;
    • або список пар, що включає:
    • ім'я "порту" "екземпляра";
    • ім'я "з'єднання", що підключається до "порту".

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

    Найбільш відомим знаменитим списком з'єднань, побудованим на основі екземплярів (англ.instance-based), є, можливо, SPICE.

    До складу списку, побудованогона основі з'єднань(англ. net-based ), входять:

    • перелік усіх «примірників» та їх атрибутів;
    • опис усіх «з'єднань» (вказівка ​​імен «портів» «екземплярів», що з'єднуються).

    У такому списку можлива атрибути для «з'єднань».

    Найбільш відомим списком з'єднань, побудованим на основі з'єднань (англ. net-based), є, можливо, EDIF (англ.).

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

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

    «Примітив» — «визначення», що не включає ніяких «екземплярів» (що не містить вкладень). Також може називатися «листом» чи якось інакше.

    «Ієрархічне» (англ. hierarchical) «визначення» - «визначення», що включає в себе «примірники» (вкладення).

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

    Список називається «розгорнутим» (англ. unfolded ), якщо всередині нього немає «визначень», що використовуються більше одного разу.

    Згорнутий список може бути надзвичайно компактним (маленьким). Невеликий список з'єднань з невеликої кількості «примірників» може описувати пристрої з великою кількістю вкладених «примірників».

    Наприклад, дамо п'ять«визначень»:

    • A є осередком пам'яті;
    • B містить 32 «примірники» A;
    • C містить 32 «примірники» B;
    • D містить 32 «примірники» C;
    • E містить 32 «примірники» D.

    Пристрій, що складається всього з одного «екземпляра» E, включатиме 32 4 > осередків пам'яті («примірників» A).

    Розгортання ієрархії

    Будь-який згорнутий список може бути розгорнутий - перетворений на плоский список.

    «Плоский» (англ. flat ) список з'єднань — список з'єднань, в якому як «примірники» використовуються лише примітиви (немає «примірників», що містять вкладені «примірники»).

    Згорнуті (ієрархічні) списки перетворюються до плоских списків (рекурсивно розгортаються) шляхом рекурсивної заміни кожного не примітивного «визначення» на «екземпляри», що містяться в ньому (з новим ім'ям).

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

    Зворотне анотування

    Зворотне анотування (англ. back annotation) — додавання до списку з'єднань будь-яких даних (додаткової інформації).

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

    До складу «даних» входять:

    • шлях до примітиву (в ієрархії);
    • самі дані, наприклад, час затримки для RC-ланцюгів, обумовлений наявністю паразитних ємностей між з'єднаннями всередині пристрою.

    успадкування

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

    • дано"Визначення" конденсатора;
    • у «визначенні» вказаний атрибут під назвою «Ємність», що відповідає однойменній фізичній властивості;
    • для атрибуту вказано значення за замовчуванням - "100 pF" (100 пикофарад).

    Тоді можна створити «примірники»:

    • що не містять атрибут «Ємність». Такі «примірники» «успадкують» значення за умовчанням («100 pF») зі свого «визначення»;
    • що містять атрибут «Ємність» з довільним значенням. Вказане значення "перевизначить" значення, задане в "визначенні".

    Зазвичай як значення за замовчуванням використовують значення, характерне більшості компонентів, й у цих компонентів значення атрибута не вказується (використовується успадкування). Це дозволяє зменшити кількість інформації, що повторюється, а в результаті — зменшити розмір списку.