Подкаст WFP026 FPGA, Altium и Cadence: разводка плат, VHDL и embedded Linux в разработке

Введение
В этом выпуске подкаста World of FPGA мы погружаемся в мир проектирования электроники, обсуждая ключевые инструменты и технологии, такие как FPGA, Altium Designer, Cadence, VHDL и Embedded Linux. Если вы инженер-электронщик, разработчик ПЛИС или просто интересуетесь современными методами проектирования аппаратного обеспечения, этот выпуск — для вас.
Мы разберём:
- Как распределить время между разводкой плат, программированием FPGA и Embedded Linux
- Почему инженер FPGA — это мультидисциплинарный специалист
- Сравнение Altium и Cadence: плюсы и минусы
- Особенности работы с базами данных компонентов в CAD-системах
- Самые необычные проблемы в разработке FPGA и как их решать
Ссылка на выпуск на английском языке: world-of-fpga.com/wfp026
1. FPGA: мультидисциплинарный подход в разработке
FPGA (Field-Programmable Gate Array) — это не просто программируемые логические интегральные схемы, а целый мир, где пересекаются аппаратное и программное обеспечение. В подкасте обсуждается, почему современный инженер FPGA должен разбираться не только в VHDL/Verilog, но и в:
- Аналоговой и цифровой схемотехнике
- Разводке печатных плат (PCB Design)
- Embedded Linux и реальном времени (RTOS)
- Радиочастотной технике и ЭМС (электромагнитной совместимости)
Пример из практики
Один из спикеров рассказывает, как работа с лазерами потребовала знаний в оптике, радиочастотах и FPGA-программировании одновременно. Это подтверждает тезис: «Инженер FPGA — это дирижёр, который управляет всеми аспектами проекта».
2. Altium vs. Cadence: какой инструмент выбрать?
Altium Designer
- Происхождение: Австралийская компания (ранее Protel), сейчас принадлежит американским инвесторам.
- Плюсы:
- Удобный интерфейс
- Хорошая интеграция с базами данных компонентов
- Поддержка российских вузов (ранее активно использовался в обучении)
- Минусы:
- Высокая стоимость лицензии
- Ограниченные возможности для высокочастотного проектирования
Интересный факт: Блогер Дэйв Джонс (EEVblog) работал в Altium, когда компания базировалась в Сиднее.
Cadence
- Плюсы:
- Мощные средства для высокоскоростного проектирования
- Гибкая работа с базами данных компонентов (понимает единицы измерения: 1K = 1000 Ом)
- Подходит для сложных проектов (например, процессорные платы)
- Минусы:
- Сложный интерфейс
- Высокий порог входа
Pulsonix и другие альтернативы
Обсуждается новый немецкий веб-инструмент для проектирования печатных плат (название уточняется). Пока он уступает Cadence и Altium в функционале, но может быть полезен для быстрых прототипов.
3. Базы данных компонентов: как избежать ошибок?
Одна из самых полезных функций в Cadence и Altium — интеллектуальный поиск компонентов. Например:
- Ввод «1K» найдет не только «1000 Ом», но и «0.001M»
- Система понимает единицы измерения (кило, мега, микро)
В то же время, в некоторых CAD-системах (например, Pulsonix) поиск менее гибкий:
- «1000» не найдёт «1K»
- Нет поддержки синонимов
Совет: Если работаете с большими проектами, выбирайте инструменты с продвинутой базой данных (например, Cadence).
4. Embedded Linux + FPGA: как совмещать?
Современные проекты часто требуют сочетания FPGA и микропроцессоров. Например:
- FPGA обрабатывает высокоскоростные данные (например, сигналы АЦП)
- Процессор на Linux управляет интерфейсами (Ethernet, USB, GUI)
Распределение времени в работе инженера
Один из спикеров делится своим опытом:
- 40% — схемы и разводка плат
- 40% — программирование FPGA (VHDL/Verilog)
- 20% — Embedded Linux и системная интеграция
Вывод: FPGA-инженеру важно уметь работать на всех уровнях — от железа до софта.
5. Самые странные проблемы в FPGA-разработке
В конце выпуска обсуждаются неочевидные баги, с которыми сталкивались инженеры:
- Проблемы с кремнием (например, ошибки в конкретной партии FPGA)
- Электромагнитные наводки (EMI), приводящие к случайным сбоям
- Ошибки в заземлении, влияющие на работу высокоскоростных интерфейсов
Кейс: Один из разработчиков столкнулся с тем, что плата работала в лаборатории, но давала сбои в серийном производстве. Оказалось, проблема была в разных партиях компонентов.
Заключение: почему этот выпуск стоит послушать?
Этот подкаст будет полезен:
- Начинающим инженерам, которые хотят понять, как развиваться в FPGA-разработке
- Опытным специалистам, ищущим новые подходы к проектированию
- Руководителям отделов, которые хотят оптимизировать процесс разработки