资讯

现场可编程门阵列 FPGA 是什么?买回来还能重新“改电路”的芯片

2026-11-053 分钟阅读百科
TL;DR现场可编程门阵列(FPGA)是一种出厂后可由用户反复编程、重新配置内部逻辑电路的半导体芯片,1985 年由赛灵思推出首款商用产品,兼具硬件的高速并行和软件的灵活性,广泛用于通信、芯片原型验证、高频交易和低延迟 AI 推理加速。

现场可编程门阵列(Field-Programmable Gate Array,FPGA)是一种在制造出厂之后,仍然可以由用户根据需要重新编程、改变其内部电路功能的芯片。“现场可编程”的意思就是在使用现场,而不是在芯片工厂里,就能对它进行编程。1985 年,赛灵思(Xilinx)公司推出了第一款商用的 FPGA。

它和普通芯片有什么不同

普通的处理器,比如电脑里的 CPU,电路是固定的,它通过依次执行软件指令来完成各种任务,非常灵活,但执行任务时要一条条地取指令、解码、执行,效率有限。专用集成电路(ASIC)是为某一个特定任务专门设计的芯片,电路被直接“刻”在硅片上,速度快、功耗低,但设计和制造的成本极高、周期很长,而且一旦制造出来就无法修改。

FPGA 介于两者之间:它的内部包含大量可以配置的逻辑单元、存储单元,以及连接它们的可编程连线。用户可以通过编程,决定这些单元实现什么样的逻辑功能、彼此之间如何连接,相当于在芯片里“搭建”出一个为特定任务定制的硬件电路。如果需求变了,还可以重新编程,把它变成另一个电路。打个比方,CPU 像一个什么都会做的通用工人,按照说明书一步步干活;ASIC 像一条为某一种产品专门建造的生产线,效率极高但只能做这一种产品;FPGA 像一套可以反复拆装重组的乐高积木生产线,可以根据需要搭成不同的形状。

怎么给 FPGA 编程

给 FPGA 编程和写普通的软件很不一样:开发者需要使用 Verilog 或 VHDL 等硬件描述语言来描述电路的结构和行为,再由开发工具把这些描述转换成 FPGA 的配置文件,写入芯片。这需要专门的数字电路设计知识,开发门槛比较高。近年来,也出现了可以用 C 语言等高级语言来进行开发的“高层次综合”工具,降低了开发的难度。

应用

芯片的原型验证:在设计昂贵的专用芯片之前,先用 FPGA 来实现和验证电路的设计是否正确。通信:5G 基站、网络设备中需要高速地处理信号和数据包,而且通信标准经常更新,FPGA 可以通过重新编程来适应新的标准。金融高频交易:需要以极低的延迟处理市场数据并做出交易决策,FPGA 能做到比软件快得多的响应。此外还用于工业控制、医疗影像设备、航空航天、雷达和视频处理等。

在 AI 中的角色

FPGA 也被用于 AI 推理的加速:它可以为特定的神经网络定制计算电路,延迟低、功耗相对较低,适合对实时性要求高的场景,比如数据中心中的部分推理任务、边缘设备上的视觉处理。微软就曾在其数据中心大规模部署 FPGA,用于加速搜索引擎和 AI 服务。不过,在大模型的训练和大规模推理方面,GPU 和专用的 AI 芯片凭借更高的算力和更成熟的软件生态占据了主导地位。如今,FPGA 的两大主要厂商赛灵思和 Altera 已经分别被 AMD 和英特尔收购,其中 Altera 后来又被英特尔分拆为独立运营的公司。