Открыть сервис

SoC FPGA

SoC FPGA (System-on-a-Chip Field-Programmable Gate Array) — это класс интегральных микросхем, объединяющих на одном кристалле программируемую логическую матрицу (FPGA) и аппаратный процессор (одно- или многоядерный), а также набор периферийных интерфейсов и блоков памяти. Такое сочетание позволяет реализовать в одном устройстве как программно-управляемые вычислительные процессы (на процессорной части), так и аппаратно-ускоренные алгоритмы (на программируемой логике), что обеспечивает высокую производительность, гибкость и энергоэффективность.

История

Концепция объединения процессора и программируемой логики на одном кристалле возникла в начале 2000-х годов, когда производители FPGA начали интегрировать в свои микросхемы процессорные ядра. Первым массовым решением стала серия Virtex-II Pro компании Xilinx (2002 год), в которой использовались процессорные ядра PowerPC 405. Однако эти ядра были реализованы в виде «жёстких» блоков, то есть физически встроенных в кристалл, что требовало значительных усилий по проектированию.

В 2010 году компания Altera (ныне часть Intel) выпустила семейство Cyclone V SoC, в котором впервые были объединены ARM-процессор и FPGA на одном кристалле с использованием стандартной шины AMBA AXI. Это позволило упростить разработку и снизить стоимость. В 2011 году Xilinx представила архитектуру Zynq-7000, также на базе ARM Cortex-A9, которая стала одной из самых популярных платформ для SoC FPGA.

В 2015 году компания Microsemi (ныне Microchip) выпустила семейство SmartFusion2, ориентированное на встраиваемые системы с низким энергопотреблением. В 2018 году Intel представила серию Stratix 10 с процессорными ядрами ARM Cortex-A53, а Xilinx — семейство Zynq UltraScale+ с четырёхъядерным ARM Cortex-A53 и графическим процессором Mali-400.

В 2020-х годах развитие SoC FPGA пошло по пути интеграции более мощных процессоров (например, ARM Cortex-A72 в Xilinx Versal) и специализированных блоков для машинного обучения, таких как AI-ускорители. В 2023 году компания AMD (после поглощения Xilinx) анонсировала семейство Versal AI Edge, ориентированное на промышленный интернет вещей и автономные системы.

Архитектура

SoC FPGA состоит из двух основных частей: программируемой логики (PL, Programmable Logic) и процессорной системы (PS, Processing System), соединённых высокоскоростными шинами.

Программируемая логика (PL)

PL — это массив логических блоков (LUT, Look-Up Table), триггеров, блоков памяти (BRAM), цифровых сигнальных процессоров (DSP) и программируемых соединений. Эта часть может быть переконфигурирована для реализации любых цифровых схем, включая специализированные вычислители, интерфейсы, контроллеры и акселераторы. Параметры PL (количество логических элементов, объём памяти, число DSP) варьируются в зависимости от модели.

Процессорная система (PS)

PS обычно включает:

  • Процессорное ядро: чаще всего ARM Cortex-A (A9, A53, A72) или RISC-V (в некоторых моделях). Ядра могут быть одно-, двух- или четырёхъядерными.
  • Кэш-память: L1 и L2 кэш, обычно разделяемый между ядрами.
  • Память: контроллеры DDR (DDR3, DDR4, LPDDR4) с поддержкой ECC.
  • Периферия: интерфейсы Ethernet, USB, CAN, SPI, I2C, UART, GPIO, а также контроллеры PCIe, SATA, HDMI.
  • Система управления памятью (MMU) и контроллер прерываний.

Взаимодействие PL и PS

Связь между PL и PS осуществляется через шины AMBA AXI (Advanced eXtensible Interface), которые обеспечивают высокую пропускную способность (до нескольких десятков гигабайт в секунду). Типичные топологии включают:

  • AXI4-Stream: для потоковой передачи данных без адресации.
  • AXI4-Memory-Mapped: для доступа к памяти и регистрам.
  • AXI4-Lite: для управления периферией.

Кроме того, PL может иметь прямой доступ к памяти PS через порты AXI HP (High Performance) или AXI ACP (Accelerator Coherency Port), что обеспечивает когерентность кэша.

Классификация

SoC FPGA классифицируются по нескольким признакам:

По типу процессорного ядра

  • ARM-архитектура: наиболее распространённая (Xilinx Zynq, Intel Cyclone V, Altera SoC). Используются ядра Cortex-A (для производительности) и Cortex-R (для реального времени).
  • RISC-V: открытая архитектура, применяется в новых моделях (например, Microchip PolarFire SoC).
  • Собственные ядра: редко встречаются (например, PowerPC в старых Xilinx Virtex-II Pro).

По производительности

  • Низкопроизводительные: для встраиваемых систем с низким энергопотреблением (Microsemi SmartFusion2, Intel Cyclone V).
  • Среднепроизводительные: для промышленной автоматизации и телекоммуникаций (Xilinx Zynq-7000, Intel Arria 10).
  • Высокопроизводительные: для обработки сигналов, радиолокации и научных вычислений (Xilinx Versal, Intel Stratix 10).

По области применения

  • Промышленные: для управления станками, роботами, ПЛК.
  • Телекоммуникационные: для базовых станций, сетевых ускорителей.
  • Автомобильные: для ADAS, автономного вождения (соответствие стандарту ISO 26262).
  • Аэрокосмические и оборонные: с повышенной радиационной стойкостью (Microchip RTG4, Xilinx Kintex UltraScale).
  • Потребительские: для мультимедиа, игр (редко, из-за высокой стоимости).

Применение

SoC FPGA используются в областях, где требуется сочетание гибкости программируемой логики и производительности процессора:

Промышленная автоматизация

  • Управление двигателями: реализация ШИМ-контроллеров на PL и алгоритмов управления на PS.
  • Промышленные сети: поддержка протоколов EtherCAT, PROFINET, CANopen с аппаратной обработкой на PL.
  • Системы машинного зрения: обработка изображений с камер на PL (фильтрация, детекция) и принятие решений на PS.

Телекоммуникации

  • Базовые станции: реализация цифровой обработки сигналов (DSP) на PL для 4G/5G.
  • Сетевые ускорители: обработка пакетов на PL (фильтрация, шифрование) и управление на PS.

Обработка сигналов и изображений

  • Радиолокация: быстрая обработка сигналов на PL (БПФ, корреляция) и управление на PS.
  • Медицинская визуализация: реконструкция изображений на PL (МРТ, КТ) и интерфейс на PS.

Автомобильная электроника

  • ADAS: обработка данных с лидаров и камер на PL, принятие решений на PS.
  • Инфотейнмент: декодирование видео на PL и управление интерфейсом на PS.

Научные вычисления

  • Ускорители для HPC: реализация алгоритмов машинного обучения на PL (свёрточные нейросети) и управление на PS.
  • Криптография: аппаратное ускорение шифрования на PL.

Преимущества и недостатки

Преимущества

  • Гибкость: PL может быть переконфигурирована для разных задач, что снижает потребность в специализированных микросхемах.
  • Производительность: аппаратная реализация алгоритмов на PL быстрее программной на процессоре.
  • Энергоэффективность: для задач с фиксированной логикой PL потребляет меньше энергии, чем GPU или CPU.
  • Интеграция: снижение количества компонентов на плате, уменьшение размеров и стоимости.
  • Безопасность: возможность реализации аппаратных криптографических модулей.

Недостатки

  • Сложность разработки: требуется знание как программирования (C/C++), так и цифровой схемотехники (Verilog/VHDL).
  • Стоимость: SoC FPGA дороже микроконтроллеров и простых FPGA.
  • Энергопотребление: выше, чем у микроконтроллеров, из-за программируемой логики.
  • Ограниченная производительность PS: по сравнению с современными CPU, процессорные ядра в SoC FPGA уступают в тактовой частоте и производительности.

Производители и семейства

Основные производители SoC FPGA:

  • AMD (Xilinx):
  • Zynq-7000 (ARM Cortex-A9)
  • Zynq UltraScale+ (ARM Cortex-A53, Mali-400)
  • Versal (ARM Cortex-A72, AI-ускорители)
  • Intel (Altera):
  • Cyclone V SoC (ARM Cortex-A9)
  • Arria 10 SoC (ARM Cortex-A9)
  • Stratix 10 SoC (ARM Cortex-A53)
  • Microchip (Microsemi):
  • SmartFusion2 (ARM Cortex-M3)
  • PolarFire SoC (RISC-V)
  • Lattice Semiconductor:
  • CrossLink-NX (ARM Cortex-M3, для малых форм-факторов)

Интересные факты

  • Первый коммерческий SoC FPGA с ARM-ядром (Xilinx Zynq-7000) был выпущен в 2011 году и до сих пор активно используется в промышленности.
  • В 2022 году компания AMD завершила поглощение Xilinx за 49 млрд долларов, что сделало её крупнейшим производителем SoC FPGA.
  • Микросхемы семейства PolarFire SoC от Microchip поддерживают открытую архитектуру RISC-V, что позволяет разработчикам не зависеть от лицензионных ограничений ARM.
  • SoC FPGA используются в космических аппаратах: например, в марсоходе NASA Perseverance (2021 год) применяются микросхемы Xilinx с радиационной стойкостью.

Источники

  • Xilinx. «Zynq-7000 SoC Technical Reference Manual». UG585, 2018.
  • Altera (Intel). «Cyclone V Device Handbook». Volume 1, 2015.
  • Microchip. «PolarFire SoC FPGA Technical Reference Manual». DS50003143, 2023.
  • AMD. «Versal Architecture and Product Overview». PG202, 2022.
  • Справочник по программируемым логическим интегральным схемам (ПЛИС) / под ред. В.А. Шахнова. — М.: Радио и связь, 2020.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →