FMC简介
FMC ( FPGA Mezzanine Card ) 简而言之,是具有特定功能的子卡模块。
Developed by a consortium of companies ranging from FPGA vendors to end users, the FPGA Mezzanine Card is an ANSI standard that provides a standard mezzanine card form factor, connectors, and modular interface to an FPGA located on a base board. Decoupling the I/O interfaces from the FPGA simplifies I/O interface module design while maximizing carrier card reuse.
FPGA 夹层卡 (FMC) 标准由包括 FPGA 厂商和最终用户在内的公司联盟开发,属于 ANSI 标准,旨在为基础板(载卡)上的 FPGA 提供标准的夹层卡尺寸、连接器和模块接口。I/O 接口与 FPGA 分离,不仅简化了 I/O 接口模块设计,同时还能最大化载卡的重复使用率。
支持高达 10 Gb/s 的信号传输速率,夹层卡和载卡之间潜在总带宽达 40 Gb/s。不管是采用定制的内部板设计还是商用成品 (COTS) 夹层卡或载卡,FMC 标准有助于将现有的 FPGA / 载卡设计重新用到新的 I/O 上,而这只需更换 FMC 模块并对 FPGA 设计略作调整即可。
FMC 标准的出现将板设计进行了模块化,分为处理引擎(载卡)和 I/O 引擎(FMC 模块)两大部分。设计人员现在能重复利用单个载卡(包括一个或多个FPGA 以及适当数量和类型的 FMC 连接器和板)作为多种不同市场和应用的基础。此外,借助性能更高、功能更强的新型 FPGA 产品,设计人员能在确保与现有 FMC 模块全面兼容的同时轻松升级到新载卡。
FMC标准定义了单宽度(69 毫米 x 76.5 毫米) 和双宽度(139 毫米 x 76.5 毫米)两种尺寸。单宽度模块支持到载卡的单个连接器。双宽度模块主要面向需要更高带宽、更大前面板空间或较大PCB 面积的应用,支持多达两个连接器。FMC 标准提供两种尺寸,能够更加灵活地根据空间、I/O 要求或者这两者的要求对板进行精心优化。
选定尺寸之后,板设计人员就要在两种不同连接器间做出选择,以用作 FMC 标准到载卡上 FPGA 的接口:一种是具有 160 个引脚的低引脚数 (LPC) 连接器,另一种则是具有 400 个引脚的高引脚数 (HPC) 连接器。这两种连接器均支持高达 2 Gb/s 的单端和差分信号传输速率,且到 FPGA 串行连接器的信号传输速率高达 10 Gb/s。
除了 68 个用户定义的单端信号或者 34 个用户定义的差分对外,LPC 连接器还提供了 1 个串行收发器对、时钟、JTAG 接口和 1 个作为基础智能平台管理接口 (IPMI) 命令可选支持的 I2C 接口。而 HPC 连接器则提供了 160 个用户定义的单端信号(或者 80 个用户定义的差分对)、10 个串行收发器对以及更多时钟。
HPC 和 LPC 连接器都使用相同的机械式连接器,唯一的差别在于实际上移植哪些信号,因此采用 LPC 连接器的卡也能插入 HPC 处,而且只要适当设计,HPC 卡在插入 LPC 处时还能提供诸多派生功能。
下图显示的是赛灵思的一个实例板,该板采用了 Virtex'-6 FPGA和两种 FMC连接器(一个 LPC 和一个 HPC)。