FPGA全称(Field Programmable Gate Array)现场可编程逻辑门阵列
一、芯片(IC,集成电路)
1、芯片是什么
芯片其实就是半导体+集成电路也就是我们常说的IC(Integrated Circuit);例如大家熟悉的CPU、GPU、 DSP、Modem,还有一些存储芯片。其实蓝牙、WiFi、4G、5G通信等设 备中都包含有相关芯片。芯片常 在电子设备中扮演者大脑的角色。
CPU 中央处理器 (Central Processing Unit)
GPU 图形处理器 (Graphics Processing Unit)
DSP 数字信号处理器 (Digital Signal Processor)
Modem 调制解调器 (Modulator-Demodulator)
2、芯片分类
a. 模拟芯片
模拟集成电路主要是指由电容、电阻、晶体管等组成的模拟电路集成 在一起用来处理模拟信号的集成电路。有许多的模拟集成电路,如运算 放大器、模拟乘法器、锁相环、电源管理芯片等。模拟集成电路的主要 构成电路有:放大器、滤波器、反馈电路、基准源电路、开关电容电路 等。模拟芯片主要包括电源管理芯片和信号链芯片。
b. 数字芯片
数字集成电路,也就是我们常说的数字芯片,是一种将元器件和连线 集成于同一半导体芯片上,而制成的数字逻辑电路或系统。数字集成电 路是基于数字逻辑(布尔代数)设计和运行的,用于处理数字信号。我们 重点学习的就是数字芯片。
二、FPGA与ASIC的区别
FPGA 现场可编程门阵列 (Field Programmable Gate Array)
ASIC 专用集成电路 (Application Specific Integrated Circuit)
ASIC : 是一种在设计时就考虑了设计用途的 IC。
FPGA: 是一种可以进行重新编程设计的IC。
1. ASIC是从一开始就确定好了它的功能和实现。
ASIC就是像是用模具来做玩具。事先要进行开模,比较费事。而且, 一旦开模之后,就没办法修改了。如果要做新玩具,就必须重新开模。
ASIC芯片也是这样,做一款ASIC芯片,首先要经过代码设计、综合、 后端等复杂的设计流程,再经过几个月的生产加工以及封装测试,才能 拿到芯片。在大规模生产ASIC芯片之前还需要进行试生产。就是像流水 线一样生产几片晶圆,验证一下芯片能否满足需求。而流片是很烧钱的, 像是28nm工艺流片一次需要200万美元;14nm工艺流片一次需要500万 美元;7nm工艺流片一次需要1500万美元;5nm工艺流片一次4725万美 元;3nm工艺流片可能要上亿美元;其中主要成本都花在了“模具”上, 芯片只有测试通过后才会开始量产。
2. FPGA生产出来时,并没有确定实现某个固定的功能,用户可以 通过重新编程来修改芯片内部的连接逻辑和配置,从而让这个芯片实现 你自己想要的功能。
就好像是用乐高积木来搭玩具。上手就能搭,花一点时间,就可以 搭好。如果不满意,或者想搭新玩具,可以拆开,重新搭。
总的来说,ASIC就是一个功能已经固定的设备,我们只能根据自己的需要调用它的功能;而FPGA的功能是可以重新设计、编辑的,我们可以根据自己的需要设计功能。
由于上述特点,FPGA非常适合在量产某款芯片之前,验证该款芯片 的功能,降低芯片的生产成本,因此被广泛应用于芯片开发领域。
三、FPGA的优势
1. 可编程灵活性高。与ASIC的全定制电路不同,FPGA属于半定制电路。 理论上,如果FPGA提供的门电路规模足够大,通过编程可以实现任意 ASIC和DSP的逻辑功能。另外,编程可以反复,不像ASIC设计后固化不 能修改。所以,FPGA的灵活性也较高。
2. 开发周期短。ASIC制造流程包括逻辑实现、布线处理和流片等多个 步骤,而FPGA无需布线、掩模和定制流片等,芯片开发流程简化。传 统的ASIC设计周期平均是14个月到24个月,用FPGA进行开发时间可以 平均降低55%。全球FPGA第一大厂商Xilinx认为,更快比更便宜重要, 产品晚上市六个月5年内将少33%的利润,每晚四周等于损失14%的市 场份额。
3. 并行计算效率高。FPGA属于电路直连结构,如同并联电路一样,信 号或指令在FPGA内能够在不同功能部件中被并行处理,拥有极高的处理 效率,而传统的ASIC是冯·诺依曼结构,数据和指令分开存储,串行计 算,一次只能处理一个指令集。
四、FPGA生产厂商
1. Xilinx(赛灵思):是全球领先的可编程逻辑完整解决方案的供应商, 也是全球FPGA市场份额最大的公司,目前被AMD收购。市场占比最 高。提供的主要开发平台:Vivado
2. Altera(阿尔特拉),业界与Xilinx齐名的FPGA供应商,2015年被Intel收购。市场占比排第二。 提供的主要开发平台:QuartusII。
3. Lattice(莱迪思),以其低功耗产品著称,Lattice公司是目前唯一一家在中国有研发部的外国FPGA厂商,也为国产FPGA厂商培养了 很多业内优秀的管理人员和技术人员,当年国内企业欲收购Lattice, 而被美国以违反国家安全的名义否决了收购计划,使国产FPGA商业化还要走更长的路。
上面三个是全球著名的生产厂商,国内的FPGA生产厂商如下
4、京微齐力、国微电子、711所、复旦微电子、华微电子、紫光同创等。
2021年中国FPGA芯片市场份额
国内FPGA芯片市场份额也在逐年递增
五、FPGA应用领域
1. 通信领域:通信领域是FPGA应用的传统领域,发展至今依然是FPGA 应用和研究热点。通信领域需要高速的通信协议处理方式,另一方面通 信协议随时都在修改,不适合做成专门的芯片,所以能够灵活改变的功 能的FPGA就成了首选。
2. 视频图像处理:FPGA能进行实时流水线运算,能达到最高的实时性。 因此在一些对实时性要求非常高的应用领域,做图像处理基本只能用 FPGA。
3. 人工智能:深度学习、算法
4. ADAS:先进驾驶辅助系统,综合传感器,可以实现车辆、行人、车 道、交通标志以及可行驶区域检测
5. 医疗设备:可以进行医疗图像的分析,帮助医生判断是不是可能有 癌症或异常。
6. 数字信号处理:无线通信、软件无线电、高清影像编辑和处理等领域, 对信号处理所需要的计算量提出了极高的要求。传统的解决方案一般是 采用多片DSP并联构成多处理器系统来满足需求。
7. IC原型验证: FPGA在数字IC领域中是必不可少的,已经被用于验证相对成熟的RTL, 因为相比用仿真器,或者加速器等来跑仿真,FPGA的运行速度,更接近 真实芯片,可以配合软件开发者来进行底层软件的开发。在纯硬件方面, 由于FPGA供应商尽快转向最先进的制造工艺节点,FPGA原型设计变得 更加简单和强大。
六、初学建议选择Altera
1. Intel(Altera)FPGA芯片相对于Xilinx同量级的芯片价格更便宜, 性价比更高;
2. Intel(Altera)早年大学计划做的很好,入门资料相对较多;
3. Intel(Altera)的开发工具Quartus综合速度较快,软件也容易上手操作。 综上所述,建议初学者选择Intel(Altera)公司的FPGA芯片开始FPGA的入门学习。
与Intel(Altera)公司相比,AMD(Xilinx)公司在中高端领域芯片的开发和相关资料更加完善。也就是说,对于入门学习来讲,推荐使用Intel (Altera)公司的FPGA芯片;进阶提高的话,推荐使用Xilinx公司的 FPGA芯片,而在实际的项目开发中,还需综合考虑成本、性能、开发周 期等诸多因素。
七、数字芯片描述语言
FPGA开发采用的是硬件描述语言。
1. VHDL:比较古老,语法严格,学习起来比较难上手。国外或者军 工一些领域还在使用。
2. VerilogHDL:语法简单灵活,容易上手,目前企业中常用。
推荐先学习VerilogHDL,VHDL最好也能看懂。