FPGA具有哪些特点?

FPGA具有哪些特点?

最佳答案 匿名用户编辑于2022/11/24 15:44

我知道FPGAFPGA 具有以下四大特点。

1. 灵活性高,适合小批量、高价值的专业应用

可编程灵活性高,适用于需求多元的专业应用领域。与 ASIC 全定制化 电路不同,FPGA 属于半定制电路。理论上,如果 FPGA 提供的逻辑单 元数足够高、逻辑容量规模足够大,通过编程可以实现任意 ASIC 的逻 辑功能。一方面,FPGA 编程可以后续反复修改,以适应不同应用场景 持续迭代的性能需求,而 ASIC 一旦流片完成后则固化无法更改。另一 方面,开发人员可以通过软件升级包在片上运行程序来修改芯片,甚至 可以实现远程升级,而无需替换芯片。因此,FPGA 的灵活性更高。

尽管 FPGA 灵活性更高,但相应的其单位成本也较高,在小批量应用中 更具性价比。实现相同逻辑的 ASIC 芯片,在流片量足够大的情况下,成本远低于 FPGA 芯片,而在小批量、高价值、专用的领域,采用 FPGA 将拥有更高的性价比。

2. 开发周期短,导入市场快

首先,FPGA 在芯片开发流程上更加简化。ASIC 制造流程包括逻辑实 现、布线处理、流片等多个步骤,而基于 FPGA 可以大大简化开发流程。

其次,FPGA 的研发周期更短,导入市场速度更快。从设计周期维度看, 传统的 ASIC 或 SoC 等芯片设计周期往往会比较长,达 14-24 个月。而 根据 AI 电堂报道,FPGA 的开发时间平均能降低 50%以上,极大程度地 节省了设计时间成本,适用于应对下游新需求、新应用。对于产品开发 而言,快速导入市场往往有望帮助客户抢占先发优势,因而在诸多领域 FPGA 是非常重要的选择。

3. 指令和内存的结构特点决定并行计算效率更高

FPGA 主频较低,但并行计算效率高。FPGA 属于并行计算,一次可执 行多个指令算法,而传统的 CPU 都是属于串行计算,每次只能处理一个 指令集。通常情况下,CPU 往往采用增加频率的方式来提升处理速度, 因此其主频普遍比 FPGA 高。FPGA 虽然主频较低,但并行处理的方式 使其对诸多应用领域、场景的处理速度更快。目前 FPGA 作为 CPU 的 协处理器已经广泛应用在 Intel、AMD 等公司的产品上。

具体来讲,FPGA 高能效的优势本质是和 CPU体系结构存在区别。CPU、 GPU 均属于冯·诺依曼结构,指令译码执行、共享内存;而 FPGA 本质上是无指令、无需共享内存的体系结构,因而相比 GPU 和 CPU 更加高 效。

就指令结构而言,FPGA 逻辑单元功能在重编程时就已经确定,不需要 指令再进行译码执行。而对于冯氏结构,一方面,CPU 等执行单元可能 执行任意指令,因此需要指令存储器、译码器、运算器、分支跳转处理 等。另一方面,由于指令流的控制逻辑相对复杂,也不太可能拥有多条 独立的指令流。因此,指令流较长、数量有限,就造成了 CPU 等计算速 率提升存在困难。

就内存结构而言,FPGA 无需仲裁与共享内存。对于冯氏架构,内存的 作用有二,即保存状态和执行单元间通信。对于 CPU 而言,其内存是共 享的,故在访问时需要执行仲裁;同时,为了充分利用访问局部性,各 执行单元存在私有缓存,故需维持执行部件间缓存一致性。但对于 FPGA, 保存状态的需求角度,FPGA 的寄存器和片上内存是属于各自逻辑单元 的,无需不必要的仲裁和缓存,极大提升效率。而对于通信需求,FPGA 每个逻辑单元与周围单元的连接在重编程时就已经确定,不需要再通过 共享内存实现。FPGA 内部架构包含可编程的 I/O、DSP、memory、PCIE 等,因为大量存储单元的存在,FPGA 在做计算的时候可以直接从内部 存储单元读取数据。

GPU 拥有并行计算优势,FPGA 拥有流水线并行和数据并行,所以其速 率更快。GPU 从结构看,ALU 计算单元占了绝大部分,所以并行计算能 力很强。但 GPU 的弱点是 Cache 较小,需要大量的高速 DDR 保证数据 吞吐率,从而提升计算能力。此外,GPU 虽同为并行计算,但几乎只有 数据并行,也就是多个计算单元可以同时处理不同的数据包,但所有的 计算单元必须按照统一的步调、做相同的事,即单指令流多数据流模式 (SIMD,Single Instruction Multiple Data)。这就要求多个计算单元同时 输入、输出,故延迟随之增加。但 FPGA 不同,FPGA 同时拥有流水线 并行和数据并行两种模式,例如,处理一个数据包需要多个步骤,FPGA 可以搭建与之对应的多级流水线分别处理多个步骤,每个数据包流经多 级之后,处理即完成、能够立刻输出。

4. 需要软硬兼备的研发能力

FPGA 的使用必须和配套 EDA 软件相结合,意味着 FPGA 芯片设计公 司需要同时具备软硬件能力。软件工具研发水平甚至决定了硬件规模和 性能所能达到的高度。EDA 的主要功能包括设计输入(DesignEntry)、 综合(Synthesis)、仿真(Simulation)、实现(Implementation)和下载 (Download)等。

配套 EDA 软件设计复杂,壁垒较高。用户端在使用 FPGA 时,需将 RTL 代码通过逻辑综合工具、映射工具等生成下载到芯片里,结合时序、功 耗分析工具、在线调试工具等,实现功能。在整个软件工具设计流程中, 第三方厂商除往往仅能提供仿真工具,其他复杂的环节往往需要 FPGA 厂商所提供的软件工具来覆盖,故其存在着较大软件研发难度。

FPGA 厂商需要研发人员同时兼具软硬件思维。除了考虑 EDA 软件和 芯片架构的匹配和一致性,编程设计时还要考虑应用场景多样性、时序 模型的复杂性和用户使用体验及效率等。Xilinx 公司研发人员约为 1500 人,软硬件人员基本相同。

但 FPGA 设计的相关人才培养难度大、十分短缺。Intel 和 IDC 合作发 布的《FPGA 产业发展现状及人才培养研究报告》中提到,人才匮乏是 阻碍 FPGA 产业发展的首要因素,超过 70%的被访企业认为中级水平以 上的工程师严重不足。而 FPGA 人才的高校培养又存在缺乏培养体系、 与现实脱节、学习周期长等诸多问题,导致了相关研发人员的进一步短 缺。

参考报告

半导体自主可控行业深度研究报告:半导体自主可控加速,整线突破大势所趋.pdf

半导体自主可控行业深度研究报告:半导体自主可控加速,整线突破大势所趋。半导体自主可控的紧迫性、必要性和持久性强,举国体制将成为长久抓手。①紧迫性:外压升级,对中国本土的存储、先进制程、超算产业等带来经营的持续性冲击;②必要性:芯片产业若无法实现一定程度上的自主可控,将难以摆脱数字信息化发展中的底层技术安全问题;③持久性:技术壁垒高,目前与海外技术差距仍很大,所需追赶时间长。本土Fab、设备、材料、设计等环节突破发展可圈可点,国产替代进入新阶段,但任重道远。①Fab:SMIC、YMTC、CXMT等产线具备一定国际竞争力,打通先进工艺产线,部分产品进入国际供应链;②设备:除光刻机等外,包括薄膜沉积...

查看详情
相关报告
其他答案
匿名用户编辑于2022/11/24 15:41

相比于 ASIC 等不可编程的芯片而言,FPGA 具有四大特点:可编程灵 活性高、开发周期短、并行计算效率高,但对研发人员要求高。FPGA可 随意定制内部逻辑的阵列,并且可以在用户现场进行即时编程,以修改 内部的硬件逻辑,从而实现任意逻辑功能。形象地讲,ASIC 相当于出厂 时就写有数据且不可擦除的 CD,而 FPGA 是一张出厂时空白的 CD,需 要用户自己刻录数据,后续还可以擦除、反复刻录。

我来回答