FPGA器件组成与分类 📅 发布时间:2026/8/30 15:55:12 👁 浏览次数: 一、FPGA器件组成1. 总述FPGAField Programmable Gate Array现场可编程门阵列的本质是大规模可配置逻辑资源 可编程布线网络 专用硬核电路的组合。宏观上Xilinx 7 系列 / Intel 系列器件的内部由以下资源构成组成部分英文功能定位可编程逻辑块CLBConfigurable Logic Block核心逻辑实现LUT 触发器 多路选择器 进位链可编程 I/O 单元IOB管脚电平标准适配LVCMOS/LVDS/HSTL…块状存储BRAM大容量片上存储36Kb / 块DSP 运算单元DSP48E1乘加运算加速MAC布线资源Interconnect/Switch Matrix可编程开关矩阵 走线网络时钟资源CMTMMCM/PLL时钟产生、倍频分频、相位对齐、去偏斜硬核GTX/GTH、PCIe、ARM硅片固化的高速 / 专用电路配置电路Configuration Logic加载比特流决定器件全部配置状态最核心的认知框架FPGA 之所以 可编程靠的是配置存储器逐位控制每个 LUT 的真值表、每个开关矩阵的连接、每个 I/O 的标准。软核与硬核的区别在于是否占用可编程逻辑资源—— 软核用LUTFF在阵列上 搭 出来硬核是流片时固化的专用电路。图1展示了一个典型的岛型FPGA架构从图中可以看出FPGA器件由实现逻辑电路的逻辑块、进行信号传输的输入/输出块I/O Block和负责逻辑块与输入/输出块连接、开关的布线通道即可编程互连Programmable InterconnectPI三个主要部分组成。图1 典型的岛型FPGA架构2. 软核Soft Core定义以 RTL 源码 / IP 形式提供、需经过综合布局布线落到可编程逻辑中的处理器核或功能 IP。它不占专用硅片面积只消耗 CLB必要时占用 BRAM/DSP。典型代表MicroBlazeXilinx32 位 RISC 软核支持 AXI4/AXI4-Lite 总线可选 MMU、指令 / 数据 Cache、浮点单元FPU、AXI 中断控制器Nios IIAltera/Intel分三种内核 ——/e经济型面积最小、/s标准型带流水线、/f快速型5 级流水 动态分支预测RISC-V 软核PicoRV32、VexRiscv、Ibex 等开源、指令集可裁剪近年嵌入式 AI 加速如 YOLO 目标跟踪系统里的控制核常用核心特点高度灵活指令集、Cache 大小、外设UART/SPI/DMA/ 以太网 MAC均可按需裁剪可在一个器件内例化多个性能受限受逻辑布线延迟制约主频通常 100~300 MHz远低于硬核占用资源一颗完整 MicroBlaze 约消耗 1.5k~2.5k LUT 级别资源代价增加布局布线压力与功耗使用场景需要 处理器 可编程逻辑 配合SoPC但器件不带硬核处理器或需要多核 / 定制外设时。3. 硬核Hard Core定义厂家在流片阶段用固定数字电路实现、固化在硅片上的专用模块不消耗任何可编程逻辑资源时序 / 功耗 / 性能确定性高但不可修改、型号固定。按功能分类硬核类别典型实现说明处理器硬核Zynq-7000 的ARM Cortex-A9 双核NEONFPUMMUUltraScale 的 Cortex-A53/R5老 Virtex-5 FXT 的 PowerPC 440构成 PS 部分运行 Linux/RTOS独立于 PL高速收发器GTP低端/GTX7 系列主流/ GTH / GTY支持 PCIe、SATA、万兆以太网、CPRI、光纤等协议线速率可达数 Gbps~ 几十 GbpsPCIe 硬核集成在收发器旁的 PCIe Blockx1/x4/x8Gen1/2/3无需软逻辑实现链路层物理层以太网 MAC 硬核Zynq PS 内的 GEMGigabit Ethernet MAC与软核 MAC 相比零逻辑开销DSP 单元DSP48E125×18 乘法器 累加器 预加器严格说属 专用硬算单元是实现卷积 / 滤波如 YOLO 加速的关键时钟管理MMCM/PLL 硬核时钟合成与去偏斜其他XADC7 系列内置 12bit 模数转换器、DDR 控制器Zynq PS 内集成模拟 / 存储接口硬核优势性能高处理器可达 1GHz 级、功耗低、时序可预测、省去大量逻辑资源劣势固定不可改、成本高、灵活性差4. 存储StorageFPGA 片上存储是分层体系按容量 / 速度 / 资源占用取舍1分布式 RAMDistributed RAM由SLICEM的 LUT 配置而成每个 LUT 可作 64×1 / 32×2 RAM或移位寄存器 SRL32容量小Kb 级、速度快、不占用额外块资源适合浅深度 FIFO、寄存器阵列、移位寄存如滤波器的延迟线2块状 RAMBRAM7 系列每个 BRAM 36Kb可拆成 2 个独立的 18Kb支持真双口双端口独立时钟读写、伪双口、单口三种模式位宽可配 x1~x72内置FIFO 模式硬件读写指针与可选ECCSECDED 单纠双检适合宇航 / 可靠性场景可按列分布排列多个 BRAM 可拼接成大存储常与 DSP48、CLB 交错排布以缩短布线适合帧缓存、权重 / 特征图缓存YOLO 中间张量、大 FIFO3UltraRAM仅 UltraScale 系列单块288Kb面向超大容量片上缓存减少对外部 DDR 的依赖4外部存储接口通过硬核 MCB 或软核MIG IP连接DDR3/DDR4解决片上存储不够用的带宽 / 容量瓶颈典型Zynq PS 自带 DDR 控制器PL 侧经 AXI HP 口访问设计建议优先用 BRAM 做大容量规则存储连续读写用分布式 RAM 做小量高速存储片内带宽高、延迟低但容量有限7 系列最大也仅数 Mb 级大缓存必须走 DDR。5. 配置Configuration配置的实质是把比特流bitstream加载进配置存储器逐位决定 LUT 真值表、开关矩阵连接、IO 标准等从而 固化 设计。配置存储器工艺决定掉电行为类型代表特点SRAM-basedXilinx/Intel 绝大多数掉电丢失、上电重配、可无限重配易受 SEU 单粒子翻转影响Flash-basedMicrochip PolarFire/IGLOO掉电保持、上电即用、抗辐射好Antifuse老式航天器件一次性编程配置模式以 7 系列为例由外部管脚M[2:0]决定主串模式Master Serial—— 最常用FPGA 主动从SPI/QSPI Flash读取比特流从串模式Slave Serial—— 外部主机如 ARM / 微控制器逐 bit 送入主并 / BPI 模式—— 从并行 NOR Flash / PROM 加载速度快从并模式SelectMAP—— 并行快速加载常用于需要快速重配的场景JTAG 模式—— 调试下载Vivado 默认即 JTAG→QSPI 烧写流程菊花链Daisy-chain—— 多片 FPGA 级联同一比特流源依次配置上电配置流程上电 → 释放INIT_B→ 采样M[2:0]模式管脚 → 加载比特流 → CRC 校验 →DONE拉高 → Startup 时序启动用户逻辑高级配置特性部分重配置PR通过ICAP内部配置访问端口动态重配器件局部区域实现 运行时切换算法模块安全配置比特流AES-256 加密 HMAC 认证防止逆向与篡改MultiBootFlash 中存放多个镜像支持远程升级与看门狗回滚。6. 小结软核 vs 硬核对比维度软核MicroBlaze/Nios II硬核Zynq ARM / GTX / PCIe实现方式逻辑阵列综合硅片固化资源占用消耗 CLB/BRAM零逻辑开销主频 / 性能100~300 MHz较低GHz 级ARM极高灵活性可裁剪、可多实例固定不可改时序确定性受布线影响时序可预测典型用途SoPC 控制、定制外设操作系统、高速接口、算法重负载FPGA 可编程逻辑阵列CLBBRAMDSPIO 布线作为 身躯配置电路作为 灵魂决定身姿硬核作为 固定器官软核作为 临时拼装的器官。设计时按 高频高速 / 重负载 → 硬核灵活控制 / 定制 → 软核大缓存 → BRAM/DDR一切功能的最终形态 → 配置比特流 来取舍即可。二、FPGA器件分类1. 按可编程逻辑模块大小分类粒度这里的 模块大小 指基本可编程逻辑单元可重构的最小颗粒的规模决定了器件在 灵活性 与 面积 / 速度 / 功耗 之间的取舍。1细粒度 FPGAFine-grained—— 主流商用架构基本单元4/6 输入查找表LUT 触发器FF 多路选择器 进位链组成 SLICE/CLB/ALM。代表产品Xilinx 7 系列CLB、Intel Cyclone/StratixALM、国产紫光同创、高云、安路。优点颗粒最小、灵活性最高能实现任意位级随机逻辑布尔函数、状态机、控制逻辑逻辑利用率高。缺点布线资源占比巨大约 70% 芯片面积为开关矩阵和走线导致面积大、功耗高、速度受布线延迟限制。适用通用逻辑、协议解析、控制通路 —— 你的 YOLOv8 加速中的控制 / 时序逻辑都落在这里。2中粒度 FPGAMedium-grained基本单元介于 LUT 与 ALU 之间以算术逻辑块 / 小型 ALU 为颗粒。典型部分嵌入式 FPGAeFPGAIP 核、混合粒度的可重构阵列。定位在 位级灵活 与 密度效率 之间取折中常见于面向特定域的加速。3粗粒度 FPGA / CGRACoarse-grained基本单元ALU、乘法器、DSP、PE处理单元、可重构数据通路RCA。代表PACT XPP、IMEC 的 ADRES、Recore MontiumXilinx Versal 的 AI Engine 阵列本质上就是粗粒度可重构阵列也是这个思路的产业级体现。优点面积小、速度快、功耗低配置数据量小 → 重配置开销极小适合运行时频繁切换计算模式比如算法流水线的时分复用。缺点只能做字级 / 块级运算无法实现位级随机逻辑灵活性差。适用数据流计算、矩阵 / 卷积加速、DSP 密集型任务 —— 恰好是 YOLO 特征提取这类负载。4补充CPLD属于 模块偏大 的一类用乘积项And-Or 阵列 宏单元macrocell组成宏单元粒度明显大于 LUT结构上更接近 中 / 偏粗粒度。速度快、时序确定、非易失但容量小、寄存器少适合胶合逻辑、译码、总线控制不适合大规模状态机。一句话细粒度 用 LUT 搭一切最灵活粗粒度 用大算子阵列做计算最高效。主流商用 FPGA 是细粒度CGRA 是粗粒度在 特定计算域 的专用化形态。2. 按可编程单元工艺分类这一维度看的是用什么器件物理地存储配置、控制开关—— 直接决定易失性、重编程能力、抗辐射与上电行为。1SRAM 工艺静态随机存储器—— 当前绝对主流原理用 6 管 SRAM 单元存储配置位SRAM 输出控制传输门 / 多路选择器是否导通从而决定 LUT 真值表、布线连接、IO 标准。特性易失掉电即失上电必须从外部SPI Flash / 主机 / JTAG重新加载比特流可无限次重编程支持部分重配置ICAP 动态更新标准 CMOS 工艺密度高、成本低、易测试缺点上电需要配置时间几十几百 ms抗单粒子翻转SEU弱太空 / 高辐射环境需三模冗余。代表Xilinx 全系列Spartan/Artix/Kintex/Virtex/Zynq/Versal、Intel Cyclone/Stratix/Agilex、Lattice ECP5、国产紫光同创 / 高云 / 安路。2Flash 工艺闪存—— 非易失、即时上电原理用浮栅Floating Gate闪存单元直接存储配置掉电保持。特性非易失上电即用instant-on无需外部配置芯片和加载时间静态功耗低适合电池 / 低功耗场景擦写寿命有限几千几十万次重编程速度慢于 SRAM抗辐射能力整体优于 SRAM不易因单粒子翻转丢配置。代表MicrochipMicrosemi/ActelIGLOO2、SmartFusion2、PolarFireLattice MachXO 系列部分国产非易失 FPGA亦采用此工艺。3反熔丝Antifuse工艺 —— 一次性编程、最高可靠原理未编程时开关断开编程时通过高电压使介质层击穿形成永久性导通与熔丝相反熔丝是烧断反熔丝是烧通。特性OTP一次性编程编程后物理不可逆 → 防篡改、防克隆抗辐射TID/SEU最强、可靠性最高是航天、军工、核环境的首选缺点不可重配、无法现场升级、价格高。代表Microsemi RTSX/AX老牌宇航级、部分国产宇航级反熔丝 FPGA。4EEPROM 工艺 ——CPLD 的常客原理电可擦除只读存储器非易失、可反复在系统编程。代表Altera MAX 7000 系列 CPLD、Lattice GALXilinx XC9500 系列 CPLD 则用 FlashFastFLASH工艺。本质上与 Flash 同属 非易失可擦写 族但容量和速度上限低主要用于中小规模逻辑。3. 四条工艺横向对比维度SRAMFlash反熔丝EEPROM易失性易失非易失非易失非易失重编程无限次有限次快擦慢写一次性OTP有限次上电行为需加载比特流上电即用上电即用上电即用抗辐射弱需 TMR中最强中密度 / 成本高密度 / 低成本中等低密度 / 高成本低部分重配置支持ICAP有限支持不支持不支持典型产品Xilinx/Intel 主流、紫光同创 / 高云Microchip PolarFire、MachXOMicrosemi RTSX、宇航级MAX 7000、GAL典型场景通用开发 / 量产工控、低功耗、抗辐射航天军工胶合逻辑按模块大小细粒度LUT 级主流→ 中粒度ALU 级→ 粗粒度CGRA计算密集域粒度越粗、越面向计算、灵活性越低。按工艺SRAM灵活可重配主流→ Flash非易失即时用→ 反熔丝OTP 最高可靠航天→ EEPROMCPLD越往右越 固化、越可靠但越不可改。