Софт для EDA

Создание микроэлектроники невозможно без огромного пласта специализированного программного обеспечения. Это целая индустрия, часто называемая EDA (Electronic Design Automation).

Процесс создания чипа делится на несколько этапов, и для каждого есть свой набор ПО и фреймворков.

1. Проектирование и верификация (Front-End)

На этом этапе инженеры описывают архитектуру и логику чипа.

Языки описания аппаратуры (HDL):

1️⃣ VHDL и Verilog — классические, широко используемые языки.

2️⃣ SystemVerilog — расширение Verilog, ключевой язык для сложного проектирования и, особенно, верификации.

3️⃣ Chisel (на основе Scala) и PyRTL (на основе Python) — более современные HDL, набирающие популярность, особенно в исследовательских сообществах и компаниях вроде Google.

Статьи по микроэлектронике

Среды моделирования и верификации:

1️⃣ Симуляторы: Modelsim (Intel), VCS (Synopsys), Xcelium (Cadence), Questa (Siemens EDA). Они "проигрывают" написанный код, чтобы проверить его правильность.

2️⃣ Фреймворки для верификации: UVM (Universal Verification Methodology) — это де-факто стандартная методология, построенная на SystemVerilog. Для нее есть множество библиотек и фреймворков от вендоров.

3️⃣ Высокоуровневое синтезное моделирование (HLS): Catapult HLS (Siemens), Stratus HLS (Cadence), Vitis HLS (Xilinx/AMD). Позволяют писать алгоритмы на C++/SystemC и автоматически преобразовывать их в HDL.

Инструменты для проектирования процессоров:

1️⃣ IP-блоки и генераторы: Synopsys DesignWare, ARM Socrates для создания процессорных ядер и интерфейсов.

2️⃣ Язык описания ISA: nML, ArchC — для описания архитектуры набора команд.

2. Физическое проектирование (Back-End)

Здесь логическая схема превращается в геометрию фотошаблонов для производства.

Комплексы EDA-инструментов (полный цикл):

1️⃣ Synopsys Fusion Compiler, Cadence Innovus, Siemens EDA Aprisa — для синтеза, размещения и трассировки (Place & Route).

Специализированные инструменты:

1️⃣ Синтез: Design Compiler (Synopsys), Genus (Cadence).

2️⃣ Статический временной анализ (STA): PrimeTime (Synopsys), Tempus (Cadence) — критически важны для проверки временных характеристик.

3️⃣ Проверка соответствия правилам проектирования (DRC) и электрических правил (LVS): Calibre (Siemens EDA), Pegasus (Synopsys), PVS (Cadence). Сравнивают физическую реализацию с исходной схемой и проверяют техпроцессорные нормы.

4️⃣ Извлечение паразитных параметров: StarRC (Synopsys), Quantus (Cadence).

3. Анализ и моделирование на физическом уровне

1️⃣ Моделирование технологического процесса (TCAD): Sentaurus (Synopsys), Silvaco — для моделирования физических процессов при изготовлении транзисторов (диффузия, имплантация и т.д.).

2️⃣ Анализ электромагнитных эффектов, целостности сигналов и питания (SI/PI): HFSS (Ansys), Clarity (Cadence), RedHawk (Ansys).

4. Специализированное ПО и экосистемы

1️⃣ Языки программирования: Python, Tcl, Perl, Skill — "рабочие лошадки" для автоматизации задач, скриптинга, обработки данных во всех EDA-инструментах.

2️⃣ Системы управления версиями и данными: Помимо Git, используются специализированные системы ICManage, DesignSync, которые умеют работать с огромными бинарными файлами и сложными иерархиями проекта.

3️⃣ Открытые инструменты и инициативы (Open Source EDA):

  • OpenROAD — инициатива DARPA по созданию полного open-source стека для физического проектирования (синтез, размещение, трассировка).
  • Yosys — мощный open-source синтезный фреймворк.
  • GTKWave — визуализатор временных диаграмм.
  • Icarus Verilog, Verilator — симуляторы/компиляторы.
  • KLayout — редактор масок (фотошаблонов).
  • Fossy (FOSSi) — фонд для поддержки open-source кремния.

5. Производство (Fab)

1️⃣ MES (Manufacturing Execution System) — системы управления производством (например, Promis, FactoryTalk).

2️⃣ САПР для фотошаблонов: Инструменты для создания и коррекции масок (например, Mentor Graphics (ныне Siemens) для OPC — оптической коррекции).

Опубликовано: