Что означает выражение «field programmable array»?

Полное название — Field Programmable Gate Array, FPGA, или программируемая логическая интегральная схема. FPGA реализует настраиваемую цифровую логику, а NPU ускоряет поддерживаемые операции нейронных сетей. Выбор зависит от реального тракта сигнала. Обработка на FPGA полезна для параллельных интерфейсов и сбора данных с жёсткими временными требованиями; NPU может упростить совместимую задачу инференса.

От отладочной платы FPGA к заказному изделию

Плата FPGA подтверждает только часть возможностей системы. Заказному проекту также нужны последовательность включения питания, тактирование, интерфейсы памяти, тепловой расчёт и воспроизводимые испытания. Сравните трудозатраты на проектирование и верификацию FPGA с архитектурой на MPU или SoC FPGA. Стоимость включает инженерию, инструменты, сложность платы и производственный контроль, а не только микросхему.

Что такое AI MPU?

Платформа MPU с поддержкой искусственного интеллекта сочетает в себе прикладной микропроцессор с программным обеспечением и ресурсами ускорения, необходимыми для рабочих нагрузок машинного обучения. Начните с определения того, какие задачи выполняются процессором, а какие выигрывают от поддерживаемого ускорителя.

MPU, или прикладной микропроцессор, обычно является программным центром встроенной системы Linux. «AI MPU» — это не отдельная категория процессоров, а платформа MPU, которая включает в себя или тесно взаимодействует с такими ресурсами ускорения, как NPU, графический процессор, DSP или FPGA. На MPU размещается Linux, сетевые службы, хранилища, службы безопасности, логика приложений и среда выполнения, которая координирует рабочие нагрузки ИИ.

Для машинного обучения MPU практический вопрос заключается не только в скорости процессора. Пропускная способность памяти, поддержка ускорителей, камера и высокоскоростное качество I/O, Linux BSP, долгосрочная доступность, тепловая конструкция и зрелость набора инструментов модели часто имеют большее значение, чем заголовковая ценность TOPS.

Что делает MPU хорошей платформой искусственного интеллекта?

Лучший MPU для искусственного интеллекта зависит от рабочей нагрузки. Шлюз машинного зрения может отдавать приоритет MIPI CSI, аппаратным видеоконвейерам и NPU. Защищенному компьютеру миссии может потребоваться PCIe, несколько портов Ethernet, детерминированные сопутствующие ядра и более надежные функции безопасности. Промышленная платформа может ценить длительный срок службы продукта, TSN, CAN-FD и стабильную экосистему Linux.

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

NPU: эффективный нейронный вывод локально на устройстве

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

Производительность NPU зависит от компиляции и покрытия оператора. Неподдерживаемые уровни могут вернуться к процессору или другому ускорителю. Требования к квантованию, расположение тензоров, входное разрешение и движение памяти также могут существенно изменить реальную производительность. Всегда сравнивайте производственный график, а не полагайтесь только на теоретический TOPS.

FPGA: детерминированные конвейеры и ИИ-выводы, где важна гибкость

FPGA превосходно справляется с детерминированным перемещением данных, пользовательскими интерфейсами и массово-параллельными конвейерами. В системах локальной обработки он может десериализовать датчики, выравнивать временные метки, фильтровать данные, генерировать интересующие области, выполнять предварительную обработку изображений и подавать на ускоритель предсказуемую задержку. FPGA Вывод искусственного интеллекта также возможен, если модель хорошо соответствует доступному DSP, памяти и стеку ускорения поставщика.

Компромисс — инженерные усилия. Необходимо спланировать проектирование RTL или HLS, моделирование, закрытие сроков, стратегию проверки и обновления. FPGA следует выбрать потому, что детерминированное поведение или индивидуальный параллелизм создают ценность системы, а не просто потому, что он может выполнять арифметические действия.

NPU против FPGA для Edge AI

Решение NPU против FPGA часто является ложным двоичным файлом. NPU, как правило, является более простым выбором для поддерживаемых нейронных сетей и высокой производительности на ватт. FPGA более эффективен, когда системе необходимы специальные интерфейсы датчиков, детерминированная предварительная обработка, необычные форматы данных или жестко контролируемый конвейер до и после вывода.

В общей архитектуре используются оба: FPGA для приема данных от датчиков и предварительной обработки, NPU для нейронной сети и MPU для оркестрации Linux. Это уменьшает объем нерегулярной работы, выполняемой каждым процессором.

РесурсОптимальные рабочие нагрузкиОсновные ограничения
FPGAДетерминированные конвейеры, специальный I/O, временные метки, предварительная обработка, специализированное ускорение.Усилия RTL/HLS, проверка, ресурсы устройства
NPUПоддерживается нейронный вывод с хорошей производительностью на ватт.Поддержка операторов, компилятор/время выполнения, квантование и перемещение памяти
MPULinux приложения, сети, хранилище, кибербезопасность, оркестровкаМенее детерминированное исполнение; накладные расходы общего назначения
Ядро MCU/RTКонтуры управления, контроль безопасности, последовательность питания, детерминированный I/OОграниченная память и высокоуровневые вычисления
FPGAI/O
NPUAI
MPULinux · I/O

Периферийные вычисления

  1. Начнём со сроков: определить, какие сигналы имеют жесткие требования к синхронизации и максимальную задержку срабатывания датчика.
  2. Скорость передачи картографических данных: рассчитать пропускную способность датчика, промежуточные размеры тензоров и трафик памяти в худшем случае.
  3. Держите детерминированный прием ближе к интерфейсу: FPGA, механизмы DMA или ядра реального времени часто подходят.
  4. Разместите поддерживаемые нейронные модели на NPU: проверить покрытие оператора и фактическую скомпилированную производительность.
  5. Используйте MPU для системы: сеть, хранилище, обновления, ведение журналов, API и политика приложений естественно принадлежат Linux.
  6. Резервный контроль в режиме реального времени: MCU или детерминированное ядро должно контролировать критичные ко времени срабатывания и работоспособность платформы, где это необходимо.

Пропускная способность памяти часто является скрытым узким местом

Многие проекты Edge AI ориентированы на пиковые вычислительные нагрузки, но позже обнаруживается, что копирование, преобразование цвета, переформатирование тензора или общий DDR доминируют над задержкой. Пути с нулевым или малым копированием, топология DMA, поведение кэша и доступ к памяти ускорителя должны быть оценены заранее. Тепловое регулирование также может превратить высокие показатели в низкую устойчивую производительность.

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

Примеры эталонной архитектуры

Конвейер видео/датчиков событий

Датчик → Загрузка и отметка времени FPGA → Вывод NPU → Службы принятия решений MPU → Выход CAN-FD или Ethernet. Это сильная модель восприятия с малой задержкой, которая напрямую связана с нашим восприятием. .

Встроенный компьютер с искусственным интеллектом

Высокоскоростной I/O → путь DMA/ускорителя → NPU или вывод графического процессора → сервисы приложений Linux → API-интерфейсы хранилища и сети. Наш встроенный вычислительный модуль и защищенный компьютер для локальной обработки Классы продуктов построены на основе этого типа разделения.

Промышленный детерминированный шлюз

Интерфейсы CAN-FD/последовательный/Ethernet → Временные метки FPGA или MCU и обработка протоколов → Сервисы MPU → дополнительная аналитика NPU. Здесь детерминированный I/O и долгосрочная ремонтопригодность программного обеспечения могут быть более важными, чем максимальная пропускная способность ИИ.

Как выбрать между FPGA, NPU и MPU

Выбирайте полную рабочую нагрузку, а не метку процессора. Если доминирующей проблемой является нейронный вывод, начните с совместимости NPU. Если преобладают пользовательский I/O и детерминированная предварительная обработка, оцените ресурсы FPGA. Если доминируют службы Linux, сетевое и прикладное программное обеспечение, начните с возможностей MPU. Большинство высокопроизводительных платформ для локальной обработки объединяют как минимум два таких ресурса.

Прежде чем приступить к использованию оборудования, пропустите репрезентативные потоки через предполагаемый программный стек и измерьте сквозную задержку, мощность, пропускную способность памяти и температуру. Эти доказательства более ценны, чем общие рейтинги акселераторов.

Рабочий пример: четыре камеры и общий бюджет памяти.

Рассмотрим пример планирования с четырьмя потоками 1280 × 720 со скоростью 30 кадров в секунду, представленными как RGB с одним байтом на канал после преобразования изображения. Их комбинированная полезная нагрузка логического изображения 4 × 1280 × 720 × 30 × 3 = 331,776,000 байт в секунду, примерно 332 MB/с в десятичных единицах. Это не битрейт канала связи или измеренная производительность продукта ALVEXIS.

Одна дополнительная полнокадровая копия считывает и записывает эту полезную нагрузку, добавляя примерно 664 MB/с трафика памяти, прежде чем учитывать поведение кэша или другие операции. Тензоры моделей, преобразование цветов, журналирование и параллельные сервисы добавляют собственный трафик. Это объясняет, почему дизайн может быть ограничен перемещением данных, даже если его рейтинг ускорения кажется достаточным.

Работать по местуНачальная точкаДоказательства перед совершением
Захват и синхронизация с камерыПоддерживаемые интерфейсы SoC с FPGA или сопутствующим устройством, где это необходимо.Одновременный захват потока, поведение временных меток и потери под нагрузкой
Нейронный выводNPU, если выбранный график и точность поддерживаются.Точность преобразования и постоянные измерения приложений на устройстве
Linux услуги и записьРесурсы MPU и четко запланированный путь хранения.Поведение ЦП, памяти и I/O при активном выводе
Критичное по времени внешнее управлениеПодходящий контроллер реального времени или проверенная детерминированная реализация.Данные о времени отклика при соответствующей рабочей нагрузке в наихудшем случае

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

План проверки выбора процессорной смеси

  1. Заморозить входной контракт: датчики, форматы данных, модель, разрешение и условия эксплуатации.
  2. Прежде чем сравнивать производительность ускорителя, проверьте поддержку модели и качество вывода.
  3. Измеряйте сбор, предварительную обработку, вывод и доставку отдельно, а затем измеряйте весь путь.
  4. Повторите процедуру при постоянной тепловой нагрузке с записью, сетью и всеми активными датчиками.
  5. Записывайте возраст очереди, потерянные входные данные и задержку хвоста, чтобы высокая средняя скорость не скрывала периодические задержки.

Сохраните версию платы, образ программного обеспечения, версии набора инструментов и входные данные тестирования вместе с результатами. Для реализации Rockchip Руководство по развертыванию модели RK3588 развивает этот рабочий процесс. Для данных камеры событий используйте руководство по интеграции программного обеспечения определить временные метки и представления перед выбором пути вывода.

После того, как рабочая нагрузка охарактеризована, сравните Варианты интеграции SoM и SBC. Это решение связывает вычислительную архитектуру с разъемами, питанием, корпусом и производственными работами.

От выбора процессора до готового продукта

Список процессоров полезен только в том случае, если он соответствует всему продукту. Прежде чем заказывать нестандартную плату, опишите рабочую задачу в кратком инженерном описании:

  • Входы: количество датчиков, интерфейсы, частота дискретизации и требования к синхронизации.
  • Рабочая нагрузка ИИ: реальная модель, поддерживаемая точность и приемлемое качество вывода.
  • Физические ограничения: размеры, источник питания, охлаждение и условия эксплуатации.
  • Доставка: количество прототипов, объем производства, владение программным обеспечением и приемочные испытания.

Для станции контроля подключите конвейер камеры к триггеру линии, идентификатору детали и интерфейсу результатов. Наш решение для промышленного машинного зрения и контроля качества объясняет, как эти требования становятся пилотными.

MPU, NPU и FPGA Edge AI Часто задаваемые вопросы

Что такое MPU AI?

MPU AI описывает рабочие нагрузки искусственного интеллекта, развернутые на встроенной микропроцессорной платформе, обычно с Linux и часто со встроенным или сопутствующим ускорением, таким как NPU, GPU или FPGA. MPU обычно управляет приложениями, сетями, хранилищем, безопасностью и оркестровкой вокруг конвейера вывода.

Может ли MPU запускать машинное обучение?

Да. Рабочие нагрузки машинного обучения MPU могут выполняться на ядрах ЦП или использовать встроенные ускорители. Для производственных систем поддержка моделей, пропускная способность памяти, устойчивая температура и сквозная задержка имеют большее значение, чем просто заголовок TOPS.

NPU против FPGA: что лучше для Edge AI?

NPU обычно является более простым выбором для поддерживаемого вывода нейронной сети с высокой производительностью на ватт. FPGA предпочтительнее, когда в конструкции важны специальные интерфейсы датчиков, детерминированная предварительная обработка, необычные форматы данных или специализированные конвейеры. Многие системы используют оба.

Можете ли вы запустить рабочую нагрузку NPU на FPGA?

FPGA может реализовывать ускорители нейронных сетей или конвейеры вывода, но он не эквивалентен автоматически выделенному NPU. Сделка включает в себя ресурсы программируемой логики, память, зрелость инструментальной цепочки, поддержку моделей, усилия по проверке и мощность.

Когда выводы FPGA AI имеют смысл?

FPGA Вывод ИИ привлекателен, когда вывод должен быть тесно связан с детерминированной предварительной обработкой, пользовательскими интерфейсами или специализированным перемещением данных. Это особенно полезно, когда стандартная среда выполнения NPU не соответствует ограничениям пути датчика или задержки.

Технические ссылки

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

Разделите реальную рабочую нагрузку Edge AI.

Отправьте интерфейсы датчиков, тип модели, скорость передачи данных, диапазон мощности и ограничения развертывания. Мы можем сопоставить их с архитектурой MPU/NPU/FPGA и подходящим классом вычислительного модуля.