FMC 简介
FPGA 在处理 I/O 需求变化时展现出很强的灵活性。重新配置 FPGA 以实现新协议后,通常只需更换物理 I/O 组件和连接器即可。除非 I/O 组件位于扩展卡模块中,否则往往需要改变板级设计。为了避免与设计变更相关的成本和工作量,设计人员一直依赖于 PMC 和 XMC 标准。然而,这些标准是为单板计算机等通用解决方案开发的,并非专为 FPGA 优化。
2008 年 7 月,随着 ANSI 批准发布 VITA 57 FPGA Mezzanine Card (FMC) 标准,情况发生了变化。FMC 标准由从 FPGA 供应商到最终用户的公司联盟开发,旨在为基板上的 FPGA 提供标准的扩展卡外形、连接器和模块化接口。这种方式将 I/O 接口与 FPGA 解耦,简化了 I/O 接口模块设计,同时最大限度地提高了载卡的可重复使用能力。
与使用 PCI、PCI-X、PCle 或 Serial RapidIO 等复杂接口的 PMC 和 XMC 标准不同,FMC 标准只需要直接连接到载卡上的 FPGA 的核心 I/O 和收发器电路。复杂接口标准在 FMC 扩展卡上实现。FMC 扩展卡可以支持以下接口标准:
- 模拟 I/O:ADC 和 DAC
- 数字并行 I/O:例如 Camera Link、LVDS、FPDP
- 数字高速串行 I/O:例如光纤、串行 FPDP、Gb/10Gb 以太网

FMC 标准为电路板开发人员提供了稳定、直接且兼容的标准。其优点包括减少对扩展卡上复杂协议逻辑的需求,从而最大限度提高数据吞吐量、降低延迟并减少系统开销。此外,相比 PMC 和 XMC,FMC 具有更好的散热性能。
FMC 标准定义了单宽度(69mm x 76.5mm)和双宽度(139mm x 76.5mm)的外形标准。单宽度模块支持单个连接器连接到载卡。双宽度模块专为需要额外带宽、更多前面板空间或更大 PCB 面积的应用而设计,最多支持两个连接器。一旦选定了外形尺寸,电路板开发人员可以从两种不同的连接器中选择:具有 160 引脚的高引脚数(HPC)连接器和具有 400 引脚的低引脚数(LPC)连接器。
两者都支持高达 2 Gb/s 的单端和差分信号,以及高达 10 Gb/s 的 FPGA 串行收发器信号。LPC 连接器提供 68 个用户定义的单端信号(或 34 个用户定义的差分信号),还包含 1 对串行收发器信号、时钟、JTAG 接口和 I2C 接口。HPC 连接器则提供 160 个用户定义的单端信号(或 80 个用户定义的差分信号),10 对串行收发器信号和额外的时钟。

HPC 和 LPC 连接器使用相同的机械结构。唯一的区别是哪些信号被实际使用。因此,具有 LPC 连接器的扩展卡可以插入到 HPC 端子,反之亦然,但功能可能会受限。
FMC 引脚输出定义
High-pin count (HPC) connector, HPC pinout
HPC 连接器有 10 排(A、B、C、D、E、F、G、H、J、K),每排 40Pin。下表总结了 HPC 连接器的引脚分配:
| General pin function | Pin count |
|---|---|
| Gigabit data | 40 |
| Gigabit clocks | 4 |
| User data | 160 |
| User clocks | 8 |
| I2C | 2 |
| JTAG | 5 |
| State flags | 5 |
| Power supply | 15 |
| Ground | 159 |
| Reserved | 2 |

Footprints 可以在 Lib_Altium 仓库中查看。
Low-pin count (LPC) connector, LPC pinout
LPC 连接器有 4 排(C、D、G、H),每排 40Pin。下表总结了 LPC 连接器的引脚分配:
| General pin function | Pin count |
|---|---|
| Gigabit data | 4 |
| Gigabit clocks | 2 |
| User data | 68 |
| User clocks | 4 |
| I2C | 2 |
| JTAG | 5 |
| State flags | 4 |
| Power supply | 10 |
| Ground | 61 |

Pin and signal description

FMC+ 简介
FMC+ 是 FMC 的增强版本。它将 FPGA 串行收发器信号从 10 对增加到 32 对,数据速率高达 28Gbps。FMC+ 载卡允许向后兼容 FMC 扩展卡。FMC 要求由 ANSI/VITA 57.1 标准定义,FMC+ 要求由 ANSI/VITA57.4 标准定义。


FMC+ 引脚输出定义



Altera 开发板的 FMC 引脚定义
英特尔® Arria® 10 GX FPGA 开发套件
订购代号:DK-DEV-10AX115S-A

主板原理图参考:Intel Arria 10 开发套件详情
Xilinx 开发板的 FMC 引脚定义
AMD Kintex 7 FPGA KC705 评估套件

主板原理图参考:AMD KC705 官方链接
AMD Virtex 7 FPGA VC709 连接功能套件

主板原理图参考:AMD VC709 官方链接
ALINX 开发板
Xilinx Kintex UltraScale FMC HPC PCIE 光纤 FPGA 开发板 XCKU040 AXKU041

主板原理图参考:AXKU041 用户指南
参考资料
- VITA 57.1-2008 Standard
- VITA 57.4-2018 Standard
- FMCHUB - FPGA MEZZANINE CARDs
- Lib_Altium - Altium Designer libraries for FMC Standard


