“field programmable array”指的是什么?
完整名称为 Field Programmable Gate Array(FPGA,现场可编程门阵列)。FPGA 实现可配置数字逻辑,NPU 则加速其支持的神经网络运算。选择取决于实际信号路径。FPGA 信号处理可用于并行接口或时序敏感的采集,而 NPU 可能简化其支持的推理负载。
从 FPGA 开发板到定制产品
FPGA 开发板只能验证系统的一部分。定制设计还需要考虑上电时序、时钟、内存接口、散热设计和可重复的测试方法。应将 FPGA 的设计与验证工作量同 MPU 或 SoC FPGA 架构进行比较。FPGA 成本不仅是芯片价格,还包括工程、工具、板卡复杂度和生产测试。
什么是AI MPU?
支持 AI 的 MPU 平台将应用微处理器与机器学习工作负载所需的软件和加速资源相结合。首先确定哪些任务属于 CPU 以及哪些任务受益于支持的加速器。
MPU(或应用微处理器)通常是嵌入式 Linux 系统的软件中心。 “AI MPU”与其说是一个单独的处理器类别,不如说是一个 MPU 平台,其中包括或与 NPU、GPU、DSP 或 FPGA 等加速资源紧密配合。 MPU 托管 Linux、网络、存储、安全服务、应用程序逻辑和协调 AI 工作负载的运行时。
对于MPU机器学习来说,实际问题不仅仅是CPU速度。内存带宽、加速器支持、摄像头和高速 I/O、Linux BSP 质量、长期可用性、热设计和模型工具链成熟度通常比 TOPS 的标题值更重要。
是什么让 MPU 成为一个优秀的人工智能平台?
人工智能的最佳 MPU 是特定于工作负载的。视觉网关可以优先考虑 MIPI、CSI、硬件视频管道和 NPU。坚固耐用的任务计算机可能需要 PCIe、多个 Ethernet 端口、确定性配套内核和更强的安全功能。工业平台可能看重较长的产品寿命、TSN、CAN-FD 和稳定的 Linux 生态系统。
对实际模型和完整的预处理链进行基准测试。如果避免内存复制、支持所需的运算符并保持传感器到结果路径的效率,那么具有较低广告加速器数字的平台就可以获胜。
NPU:边缘高效神经推理
边缘 NPU 可加速神经网络运算符,例如卷积、矩阵运算和常见激活函数。当功率和持续推理吞吐量很重要时,它通常是支持的检测、分类、分割和特征提取模型最有效的地方。
NPU 性能取决于编译和运算符覆盖范围。不受支持的层可能会回退到 CPU 或其他加速器。量化要求、张量布局、输入分辨率和内存移动也可以极大地改变现实世界的性能。始终对生产图进行基准测试,而不是仅仅依赖理论上的 TOPS。
FPGA:灵活性很重要的确定性管道和人工智能推理
FPGA 擅长确定性数据移动、自定义接口和大规模并行管道。在边缘系统中,它可以反序列化传感器、对齐时间戳、过滤数据、生成感兴趣区域、执行图像预处理并为加速器提供可预测的延迟。当模型很好地映射到可用的 DSP、内存和供应商加速堆栈时,FPGA AI 推理也是可能的。
权衡是工程工作量。必须规划 RTL 或 HLS 设计、仿真、时序收敛、验证和更新策略。应选择 FPGA,因为确定性行为或自定义并行性会创造系统价值,而不仅仅是因为它可以运行算术。
边缘 AI 的 NPU 与 FPGA
NPU 与 FPGA 的决策通常是错误的二元结果。对于支持的神经网络和强大的每瓦性能,NPU 通常是更容易的选择。当系统需要自定义传感器接口、确定性预处理、异常数据格式或推理前后严格控制的管道时,FPGA 会更强大。
常见的架构同时使用:FPGA 用于传感器摄取和预处理,NPU 用于神经网络,MPU 用于 Linux 编排。这减少了任何一台处理器被迫执行的不规则工作量。
| 资源 | 最适合的工作负载 | 主要限制因素 |
|---|---|---|
| FPGA | 确定性管道、自定义 I/O、时间戳、预处理、专门加速 | RTL/HLS 工作、验证、设备资源 |
| NPU | 支持神经推理,具有良好的每瓦性能 | 运算符支持、编译器/运行时、量化和内存移动 |
| MPU | Linux 应用程序、网络、存储、网络安全、编排 | 执行的确定性较低;通用开销 |
| MCU/RT核心 | 控制回路、安全监控、电源排序、确定性 I/O | 有限的内存和高级计算 |
划分边缘人工智能架构的实用方法
- 从截止日期开始: 确定哪些信号具有硬时序要求和最大传感器到动作延迟。
- 地图数据速率: 计算传感器吞吐量、中间张量大小和最坏情况内存流量。
- 保持确定性摄取靠近接口: FPGA、DMA 引擎或实时内核通常是合适的。
- 将支持的神经模型放置在 NPU 上: 验证运算符覆盖率和实际编译性能。
- 系统使用MPU: 网络、存储、更新、日志记录、API 和应用程序策略自然属于 Linux。
- 预留实时控制: MCU 或确定性核心应在需要时监督时间关键的驱动和平台运行状况。
内存带宽往往是隐藏的瓶颈
许多边缘人工智能设计专注于计算峰值,后来发现复制、颜色转换、张量重新格式化或共享 DDR 主导延迟。应尽早评估零拷贝或低拷贝路径、DMA 拓扑、缓存行为和加速器内存访问。热节流还可以将强大的基准变成较弱的持续性能。
当多个摄像头、雷达、事件传感器或高速 Ethernet 流共享同一内存子系统时,这一点尤其重要。
参考架构示例
视觉/事件传感器管道
传感器 → FPGA 摄取和时间戳 → NPU 推理 → MPU 决策服务 → CAN-FD 或 Ethernet 输出。这是低延迟感知的强大模式,并直接连接到我们的 .
嵌入式人工智能计算机
高速I/O→DMA/加速器路径→NPU或GPU推理→Linux应用服务→存储和网络API。我们的 嵌入式计算模块 和 坚固耐用的边缘计算机 产品类别是围绕这种类型的划分构建的。
工业确定性网关
CAN-FD /串行/Ethernet接口→FPGA或MCU时间戳和协议处理→MPU服务→可选的NPU分析。在这里,确定性 I/O 和长期软件可维护性可能比最大人工智能吞吐量更重要。
如何选择FPGA、NPU和MPU
从完整的工作负载中进行选择,而不是从处理器标签中进行选择。如果主要问题是神经推理,则从 NPU 兼容性开始。如果自定义 I/O 和确定性预处理占主导地位,请评估 FPGA 资源。如果 Linux 服务、网络和应用软件占主导地位,则从 MPU 功能开始。大多数高性能边缘平台将至少结合其中两种资源。
在提交硬件之前,通过预期的软件堆栈运行代表性流并测量端到端延迟、功耗、内存带宽和热量。该证据比通用加速器排名更有价值。
工作示例:四个摄像头和共享内存预算
考虑一个具有每秒 30 帧的四个 1280 × 720 流的规划示例,在图像转换后表示为 RGB,每个通道一个字节。它们的组合逻辑图像有效负载是 4 × 1280 × 720 × 30 × 3 = 331,776,000 每秒字节数,大约为 332 MB/s(十进制单位)。这不是 ALVEXIS 产品的相机链接比特率或测量性能。
一个额外的全帧副本读取和写入该有效负载,在考虑缓存行为或其他操作之前增加大约 664 MB/s 的内存流量。模型张量、颜色转换、日志记录和并发服务会增加自己的流量。这就解释了为什么即使设计的总体加速器评级看起来足够高,它也会受到数据移动的限制。
| 工作到地方 | 起点 | 犯罪前的证据 |
|---|---|---|
| 相机摄取和同步 | 支持的 SoC 接口,可根据需要使用 FPGA 或配套设备 | 同步流捕获、时间戳行为和负载下的丢失 |
| 神经推理 | NPU 当支持所选图形和精度时 | 转换精度和持续的设备上应用测量 |
| Linux 服务和录音 | MPU 资源和明确预算的存储路径 | 推理活动时的 CPU、内存和 I/O 行为 |
| 时间关键的外部控制 | 合适的实时控制器或经过验证的确定性实现 | 相关最坏情况工作负载下的响应时间证据 |
分区的目的是使每个时序和资源需求明确。这并不意味着每种设计都需要四个不同的处理器。从满足要求的最简单的架构开始,然后在测量或接口约束证明合理的情况下添加资源。
选择处理器组合的验证计划
- 冻结输入合同:传感器、数据格式、模型、分辨率和操作条件。
- 在比较加速器吞吐量之前验证模型支持和输出质量。
- 分别测量采集、预处理、推理和交付,然后测量完整的路径。
- 在持续热负载下重复记录、网络和所有预期传感器的活动。
- 记录队列寿命、丢失输入和尾部延迟,因此高平均速率不会隐藏间歇性延迟。
保留电路板修订版、软件映像、工具链版本和测试输入以及结果。对于 Rockchip 实现, RK3588模型部署指南 开发此工作流程。对于事件摄像机数据,请使用 软件集成指南 在选择推理路径之前定义时间戳和表示。
确定工作负载特征后,比较 SoM 和 SBC 集成选项。该决定将计算架构与连接器、电源、机箱 和生产工作连接起来。
从处理器选择到可构建的产品
处理器候选列表仅在适合完整产品时才有用。在订购定制板之前,请将工作量转化为简短的工程简介:
- 输入: 传感器数量、接口、采样率和同步要求。
- 人工智能工作量: 实际模型、支持的精度和可接受的输出质量。
- 物理限制: 尺寸、电源、冷却和操作环境。
- 交货: 原型数量、生产量、软件所有权和验收测试。
对于检查站,将相机管道连接到线路触发器、零件标识符和结果接口。我们的 工业机器视觉及质量控制解决方案 解释了这些要求如何变成 试点项目。
MPU、NPU 和 FPGA 边缘 AI 常见问题解答
MPU AI 是什么?
MPU AI 描述了部署在嵌入式微处理器平台上的人工智能工作负载,通常带有 Linux,并且通常带有集成或配套加速器,例如 NPU、GPU 或 FPGA。 MPU 通常管理推理管道周围的应用程序、网络、存储、安全和编排。
MPU 可以运行机器学习吗?
是的。 MPU 机器学习工作负载可以在 CPU 内核上运行或使用集成加速器。对于生产系统,模型支持、内存带宽、持续热量和端到端延迟比标题 TOPS 更重要。
NPU vs FPGA:哪个更适合边缘 AI?
NPU 通常是支持神经网络推理的更简单选择,具有强大的每瓦性能。当定制传感器接口、确定性预处理、不寻常的数据格式或专用管道是设计的核心时,FPGA 是更好的选择。许多系统都使用两者。
您可以在 FPGA 上运行 NPU 工作负载吗?
FPGA 可以实现神经网络加速器或推理管道,但它不会自动等同于专用的 NPU。该交易涉及可编程逻辑资源、内存、工具链成熟度、模型支持、验证工作和功率。
FPGA AI推理什么时候有意义?
当推理必须与确定性预处理、自定义接口或专门的数据移动紧密耦合时,FPGA 人工智能推理很有吸引力。当标准 NPU 运行时不适合传感器路径或延迟限制时,它特别有用。
TinyML 在 边缘计算 中的适用范围
边缘计算描述了靠近数据源的处理;边缘人工智能在那里应用机器学习推理。 TinyML 解决了更受限的部署类别,通常在内存和功率有限的微控制器上。因此,小型振动分类器和多摄像头感知管道需要非常不同的硬件预算,尽管两者都可以是边缘人工智能。
对于微控制器目标,检查模型大小、运行时内存、支持的运算符和采集开销。对于基于 NPU 或 FPGA 的设计,还要评估内存移动以及加速和非加速工作之间的划分。选择满足所测量的任务和恢复要求的最小架构,而不是仅根据其缩写来选择技术。
技术参考
带宽示例是显式计算,而不是产品基准。在预期工作负载上验证所选架构。
