1、FPGA概述:什么是FPGA、FPGA与ASIC的区别、FPGA的应用领域、主流FPGA厂商介绍

1.1 什么是FPGA?

FPGA,全称是Field-Programmable Gate Array,中文叫现场可编程门阵列。说白了,它就是一种你可以反复配置的芯片。

我经常跟刚入行的朋友打个比方:ASIC就像一本印好的书,内容固定了就不能改;而FPGA就像一本活页笔记本,你可以随时撕掉重写。

FPGA内部由三大部分组成:

  • 可编程逻辑块(Logic Block)—— 用来实现各种逻辑功能,比如与门、或门、加法器
  • 可编程互连资源(Interconnect)—— 把各个逻辑块连起来,就像电路板上的走线
  • 可编程I/O模块(I/O Block)—— 负责芯片跟外界通信

你想想看,这三样东西组合在一起,你就能在芯片上"画"出任意数字电路。我在项目中遇到过最夸张的一次,同一个FPGA板子,上午还在跑以太网协议,下午就被我改成了一个视频处理引擎。这种灵活性,ASIC根本做不到。

核心要点:FPGA的本质是"硬件可编程"。它不是软件,而是实实在在的硬件电路,只不过你可以反复修改它的配置。

1.2 FPGA与ASIC的区别

这个问题我几乎每次面试新人都会问。很多人以为FPGA就是"低配版ASIC",其实完全不是这么回事。

对比项 FPGA ASIC
开发周期 几小时到几天 几个月到一年以上
成本 单芯片几百到几千元 掩膜成本百万起步
性能 中等,受限于可编程结构 极高,全定制优化
功耗 较高(多出30%-50%) 极低,可精细优化
灵活性 可反复编程 流片后无法修改
适合场景 原型验证、小批量、快速迭代 大批量、高性能、低功耗

我个人习惯这样判断:如果产品量在1000片以下,用FPGA;10万片以上,考虑ASIC;中间那段,得算总账。

我曾经在一个通信项目里,老板非要直接流片ASIC。结果算法还没调完,掩膜已经花出去200万。后来改成FPGA原型验证,三个月改了五版,最后才敢投片。嗯,那之后公司就定了个规矩:所有新设计必须先跑FPGA原型

我的建议:别把FPGA当成"过渡方案"。很多产品用FPGA量产完全没问题,尤其是通信基站、医疗设备这类更新快的领域。

1.3 FPGA的应用领域

FPGA的应用范围比你想象的要广得多。我这些年接触过的项目,几乎覆盖了所有主流领域:

通信领域

这是FPGA的老本行。5G基站里的信道编解码、波束成形,基本都是FPGA在干。为什么?因为通信协议更新太快,ASIC跟不上节奏。

视频与图像处理

4K/8K视频的实时处理,CPU根本扛不住。FPGA可以做到流水线处理,一帧画面还没处理完,下一帧已经进来了。我做过一个视频拼接项目,四路4K输入,FPGA零延迟输出,换成GPU延迟至少多两帧。

工业控制

PLC、伺服驱动器、数控机床,这些对实时性要求极高的场景,FPGA是首选。你想想看,一个电机控制周期是10微秒,CPU跑个中断都来不及。

汽车电子

现在的新能源车,激光雷达、毫米波雷达、摄像头数据融合,很多都是用FPGA做预处理。我去年帮一家车企做过ADAS原型,FPGA做目标检测加速,比GPU省电一半。

金融科技

这个可能很多人不知道。高频交易里,FPGA用来做网络协议解析和交易决策,延迟能压到纳秒级。我有个朋友在华尔街做这个,他说:"每慢一纳秒,一年少赚一千万。"

科研与国防

粒子加速器、射电望远镜、卫星通信,这些地方FPGA随处可见。因为量小、要求高、改得快。

注意:FPGA不是万能的。如果你要做的是海量数据训练(AI训练),GPU更合适;如果是简单控制逻辑,MCU更便宜。选型要因项目而异。

1.4 主流FPGA厂商介绍

说到FPGA厂商,目前全球格局基本是"两超多强"。

Xilinx(赛灵思)—— 现属AMD

行业老大,市场份额超过50%。我最早接触FPGA就是用的Xilinx Spartan系列。他们的Vivado工具链虽然吃内存,但功能确实强大。高端有Virtex系列,中端有Kintex系列,低端有Artix和Spartan。

我个人最喜欢的是他们的Zynq系列,ARM+FPGA异构架构,做嵌入式系统太方便了。

Intel(Altera)—— 现属Intel

老二,被Intel收购后资源更足了。他们的Quartus工具我用过,比Vivado轻量一些。主流产品有Stratix(高端)、Arria(中端)、Cyclone(低端)。

我记得有个项目,客户指定要用Altera的Cyclone V,因为功耗控制确实比同级别Xilinx好一点。

Lattice(莱迪思)

专注低功耗、小封装。他们的iCE40系列,小到可以放进TWS耳机里。做消费电子、IoT的朋友可以多关注。

Microchip(原Microsemi)

主打军工、航天级FPGA。抗辐射、耐高温,价格也感人。我有个做卫星的朋友说,他们一颗芯片能买一辆车。

国产厂商

这几年国产FPGA进步很快。紫光同创、安路科技、高云半导体,中低端市场已经能跟国外产品掰手腕了。我去年帮客户做过一个国产化替代项目,用安路的器件替换Xilinx Spartan-6,功能完全兼容,价格还便宜30%。

选型建议:新手入门建议从Xilinx开始,资料多、社区活跃。做产品的话,根据功耗、性能、价格综合评估,别盲目追高端。

好了,这一章就讲到这里。下一章我们会深入FPGA的内部架构,看看那些逻辑块到底是怎么工作的。到时候我会分享一些我在实际项目中踩过的坑,保证让你少走弯路。