FPGA 最典型的应用是一大类问题:高速数据流 + 大量并行计算 + 确定性低延迟 + 接口时序复杂。
图像处理恰好非常符合这四个特征,所以 FPGA 在机器视觉、医疗成像、工业检测、相机、雷达等领域特别常见。

FPGA 到底擅长什么?
CPU、GPU 和 FPGA 可以先做一个直观比较。
CPU 更像一个非常聪明的“通用工人”,擅长:
复杂逻辑
操作系统
业务程序
协议栈
数据库
文件系统
GUI
GPU 更像几千个同时工作的“计算工人”,擅长:
矩阵运算
深度学习
3D渲染
科学计算
复杂图像算法
FPGA 则更像:
可以自己设计生产流水线的数字工厂。
例如:
ADC
↓
校正
↓
滤波
↓
检测
↓
压缩
↓
高速接口
一旦流水线建立起来,可以让这些环节同时工作:
Pixel 1 → Stage 4
Pixel 2 → Stage 3
Pixel 3 → Stage 2
Pixel 4 → Stage 1
流水线填满以后甚至可以做到:
每一个时钟周期
处理一个或多个数据
因此 FPGA 的优势不是简单的“主频高”,而是:
空间并行 + 流水线 + 硬件级确定性。
FPGA 最典型的应用领域
大体可以归纳为以下几类:
| 应用领域 | FPGA典型工作 | 适合程度 |
|---|---|---|
| 图像/视频处理 | ISP、滤波、校正、拼接、缩放、编码 | ★★★★★ |
| 高速数据采集 | ADC、DAC、传感器阵列 | ★★★★★ |
| 通信 | 5G、基带、调制解调、信道编码 | ★★★★★ |
| 雷达/声纳 | FFT、波束形成、脉冲压缩 | ★★★★★ |
| 工业控制 | 多轴运动控制、高速I/O | ★★★★☆ |
| 网络设备 | 数据包处理、交换、时间戳 | ★★★★★ |
| 测试测量 | 示波器、频谱仪、逻辑分析仪 | ★★★★★ |
| 医疗设备 | CT、X光、超声、MRI数据链 | ★★★★★ |
| 航空航天 | 信号处理、接口、控制 | ★★★★★ |
| AI推理 | CNN/Transformer等专用加速 | ★★★★☆ |
| 汽车电子 | ADAS、摄像头、雷达接口 | ★★★★☆ |
| 高频交易 | 超低延迟网络处理 | ★★★★★ |
其中真正可以称得上 FPGA “传统三大主战场”的,通常是:
高速通信、高速数据采集和数字信号/图像处理。
1. 图像和视频处理
这是最容易让人理解 FPGA 优势的领域。
例如一台工业相机:
CMOS Sensor
↓
MIPI / LVDS
↓
FPGA
↓
黑电平校正
↓
坏点校正
↓
Demosaic
↓
白平衡
↓
滤波
↓
缩放
↓
Camera Link / GigE / PCIe
假设一幅图像有:
4096 × 4096
约 1678 万像素。
60 fps 时,每秒就接近:
10亿 pixel/s
这种连续数据流非常适合 FPGA。
2. 高速数据采集
实际上,这甚至比图像处理更“FPGA 原生”。
典型系统:
Sensor
↓
Analog Front End
↓
ADC
↓
FPGA
FPGA负责:
采样时序
数据对齐
多通道同步
数字滤波
缓存
数据打包
高速传输
例如:
16通道ADC
每通道 100 MSPS
14 bit
原始数据率达到:
16 × 100M × 14
≈ 22.4 Gbit/s
普通 MCU 基本无法直接处理。
FPGA却可以在芯片内部:
16路同时工作
这正是FPGA的典型优势。
3. 无线通信
通信其实是 FPGA 非常传统、非常庞大的应用领域。
例如:
ADC
↓
DDC
↓
FIR
↓
FFT
↓
OFDM
↓
信道估计
↓
解调
↓
LDPC
↓
数据输出
这些算法都有很强的:
流水线
并行
固定数据流
特征。
所以:
- 4G/5G基站;
- 软件无线电;
- 卫星通信;
- 微波通信;
- 军用通信;
大量采用 FPGA。
4. 雷达
雷达甚至可以算 FPGA 的“经典教材级应用”。
例如:
ADC
↓
数字下变频
↓
滤波
↓
FFT
↓
脉冲压缩
↓
CFAR
↓
波束形成
↓
目标数据
FFT、FIR、矩阵乘加、并行通道处理都非常适合 FPGA。
现在很多雷达系统采用:
FPGA + DSP
或者:
FPGA + ARM
或者进一步采用:
FPGA + GPU
5. 网络设备
FPGA在高速网络中的优势非常明显。
比如:
100G Ethernet
↓
FPGA
↓
Packet Parser
↓
Filter
↓
Classification
↓
Forwarding
数据包经过 FPGA 时不需要:
操作系统
中断
线程调度
而是:
数据一进来 → 硬件马上处理
因此可以获得非常低而且稳定的延迟。
这也是 FPGA 在:
交换机
SmartNIC
网络安全
高速交易
中广泛应用的重要原因。
6. 超低延迟金融交易
这是一个很有意思的 FPGA 应用。
普通服务器:
网卡
↓
操作系统
↓
驱动
↓
网络协议栈
↓
应用程序
↓
交易算法
可能涉及微秒级甚至更高延迟。
FPGA则可以:
Ethernet
↓
FPGA解析行情
↓
硬件策略
↓
生成交易指令
↓
Ethernet
整个过程可能做到极低延迟。
所以在高频交易系统里,FPGA的意义不是:
算得比GPU快多少。
而是:
每次都能在极低且稳定的延迟内完成。
为什么图像处理尤其适合FPGA?
因为图像天然就是一种“流”。
摄像机不断产生:
Pixel 0
Pixel 1
Pixel 2
Pixel 3
...
很多算法又是:
每个Pixel执行差不多的运算
例如:
暗场校正
pixel - dark
增益校正
pixel × gain
3×3滤波
9个像素
↓
乘加
↓
1个像素
边缘检测
卷积
↓
阈值
这些都可以做成硬件流水线。
CPU可能是:
for y
for x
process(pixel)
FPGA的思维不是循环:
pixel
↓
减法器
↓
乘法器
↓
滤波器
↓
输出
只要数据不停:
100 MHz
理论上就可以做到:
每10 ns接受一个像素
所以图像处理确实与 FPGA 的硬件结构高度匹配。
但“复杂图像理解”反而不一定适合 FPGA
这里需要区分:
图像处理
和:
图像理解
前者例如:
滤波
校正
坏点处理
缩放
拼接
卷积
颜色变换
非常适合FPGA。
后者例如:
目标识别
SAM分割
视觉Transformer
大规模CNN
复杂AI模型
通常:
GPU / NPU
更合适。
所以现代视觉系统经常采用:
Camera
↓
FPGA
↓
图像预处理
↓
GPU / NPU
↓
AI识别
↓
CPU
↓
业务逻辑
这是非常典型的异构计算架构。
一个非常实用的判断标准
以后遇到某个任务,可以问四个问题:
数据是不是连续高速流入?
有没有大量相同计算可以并行执行?
是否要求非常确定的微秒/纳秒级响应?
是否需要直接控制高速硬件接口?
如果四个问题里有三个回答“是”,那么:
FPGA通常就值得认真考虑。
反过来,如果任务主要是:
数据库
GUI
Web
复杂业务逻辑
动态算法
大语言模型
文件处理
FPGA通常就不是首选。
因此,FPGA 的定位其实是“高速、并行、确定性的数据流处理平台”。