FMC、FMC+ 详解
FMC、FMC+ 详解
FPGA Mezzanine Card(FMC)是一种专为FPGA设计的扩展卡标准,由ANSI/VITA 57标准定义。它通过提供标准化的接口和连接器,简化了FPGA系统的I/O设计,并提高了系统的灵活性和可扩展性。本文将详细介绍FMC的技术规范、引脚定义以及其增强版本FMC+的特点。
FMC 简介
FPGA对I/O需求的变化适应性很强。在重新配置FPGA以实现新协议之后,只需更换物理I/O组件和连接器即可。除非I/O组件在扩展卡模块,否则需要改变板级设计。为了避免与设计变更相关的成本和工作量,设计人员一直依赖于PCI Mezzanine Card (PMC)和Switched Mezzanine Card (XMC)标准。然而,这些标准是多年前为单板计算机(SBCs)等通用解决方案开发的,而不是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标准为电路板开发人员提供稳定、直接和兼容的标准。FMC标准的优点如下:
- 减少对扩展卡上复杂协议逻辑的需求
- 最大限度地提高数据吞吐量
- 最大限度地降低延迟
- 降低FPGA设计复杂性
- 最大限度地减少系统开销
- 比PMCI、XMC扩展卡具有更好的散热性能
FMC标准定义了单宽度(69mm x 76.5mm)和双宽度(139mm x 76.5mm)的外形标准。单宽度模块支持单个连接器连接到载卡。双宽度模块专为需要额外带宽、更多前面板空间或更大PCB面积的应用而设计,最多支持两个连接器。FMC标准的两个外观标准提供了额外的灵活性,可以根据空间、I/O需求优化电路板。
一旦选定了外形尺寸,电路板开发人员就可以从两种不同的连接器中进行选择,作为从FMC标准到载卡上FPGA的接口:具有160引脚的低引脚数(LPC)连接器和具有400引脚的高引脚数(HPC)连接器。两者都支持高达2 Gb/s的单端和差分信号,以及高达10 Gb/s的FPGA串行收发器信号。LPC连接器提供68个用户定义的单端信号(或34个用户定义的差分信号)。它还提供了1对串行收发器信号、时钟、一个JTAG接口和一个I2C接口,作为对基本智能平台管理接口(IPMI)命令的可选支持。HPC连接器提供160个用户定义的单端信号(或80个用户定义的差分信号),10对串行收发器信号和额外的时钟。
HPC和LPC连接器使用相同的机械结构。唯一的区别是哪些信号是实际上被使用的。因此,具有LPC连接器的扩展卡可以插入到HPC端子,并且如果设计得当,当插入到LPC端子时,具有HPC连接器的扩展卡可以提供功能的子集。下图显示了Xilinx的一个开发板,它具有Virtex®-6 FPGA和两个FMC连接器(一个LPC和一个HPC)。
FMC 引脚输出定义
High-pin count (HPC) connector, HPC pinout
HPC连接器有10排(A、B、C、D、E、F、G、H、J、K),每排40Pin。下表总结了HPC连接器的引脚。
HPC connector pin summary
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 can be viewed inLib_Altiumrepository.
Low-pin count (LPC) connector, LPC pinout
LPC连接器有4排(C,D,G,H),每排40Pin。下表总结了LPC连接器的引脚。
LPC connector pin summary
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 |
Footprints can be viewed inLib_Altiumrepository.
Pin and signal description
FMC+ 简介
FMC+是FMC的增强功能。它将FPGA串行收发器信号从10对增加到32对,数据速率高达28Gbps。FMC+载卡允许向后兼容FMC扩展卡。FMC要求由ANSI/VITA 57.1标准定义。FMC+要求由ANSI/VITA57.4标准定义。
VITA57 标准更新历史
VITA57.4 标准推出的原因
FMC+ 引脚输出定义
Altera 开发板的 FMC 引脚定义
英特尔® Arria® 10 GX FPGA 开发套件
订购代号:DK-DEV-10AX115S-A
https://www.intel.cn/content/www/cn/zh/products/details/fpga/development-kits/arria/10-gx.html
主板原理图:
Xilinx 开发板的 FMC 引脚定义
AMD Kintex 7 FPGA KC705 评估套件
https://china.xilinx.com/content/xilinx/zh/products/boards-and-kits/ek-k7-kc705-g.html
主板原理图(需注册AMD账号才可下载):
AMD Virtex 7 FPGA VC709 连接功能套件
https://china.xilinx.com/products/boards-and-kits/dk-v7-vc709-g.html
主板原理图(需注册AMD账号才可下载):
ALINX 开发板
Xilinx Kintex UltraScale FMC HPC PCIE光纤FPGA开发板XCKU040 AXKU041
主板原理图:
https://www.alinx.com/public/upload/file/AXKU041_UG.pdf
参考资料:
- https://fmchub.github.io/appendix/VITA57_FMC_HPC_LPC_SIGNALS_AND_PINOUT.html
- ANSI/VITA 57.1-2008
- Overview of VITA57 – FMC, Curtiss Wright,www.vita.com/Resources/Learn/FMC%20Overview.pptx
- I/O Design Flexibility with the FPGA Mezzanine Card (FMC), Xilinx WP315
- FMCHUB - FPGA MEZZANINE CARDs
- Lib_Altium, Altium Designer libraries for ANSI/VITA 57 FPGA Mezzanine Card (FMC) Standard
- FMC LPC Breakout board, Datasheet of Open-source hardware FMC module