近几年友晶科技出了很多带有FMC 接口的FPGA主板和子卡,细看会发现有的标HPC, 有的标LPC ,还有标FMC+的,对不熟悉硬件的软件开发人员来说, FMC引脚超级多, 一下子真分不出这些接口的具体区别,所以也搞不清楚什么FMC主板可以配什么FMC子卡。

1. 什么是FMC接口

FMC是英文FPGA Mezzanine Card(FPGA 夹层卡)的缩写,用于FPGA IO和通讯部件之间的连接。实现FPGA具有重配置IO能力的引脚与其他的FMC子卡IO连接。其信号完整性可以保证高达几G/bps的信号通信。其遵循的是ANSI/VITA 57 的标准。

2. VITA 57.1 和 VITA57.4

VITA57.4是Samtec推出的基于VITA57.1进行扩展后的标准,新标准:

  • 将千兆接口的数量从10个增加到32个
  • 将千兆接口的数据传输速度从10Gbps提高到28Gbps
  • 保持与VITA57.1 FMC模块的向后兼容

FMC HPC 和 FMC LPC 支持VITA57.1标准, FMC+支持VITA57.4标准。

3. HPC和LPC及FMC+

HPC缩写: High pin connector,LPC缩写:Low Pin connector

  • FMC HPC 引脚10x40=400
  • FMC LPC 引脚4x40=160
  • FMC+ 引脚14x40=560

The 10x40 rows of an FMC HPC connector provides pins for up to:
•160 single-ended or 80 differential user-defined signals
•10 GTX transceivers
• 2 GTX clocks
• 4 differential clocks
•159 ground and 15 power connections

4. 兼容性

HPC的主板可以兼容LPC的子卡。
如果主板是LPC 接口,而子卡是HPC接口,那可以直接判断不兼容。
FMC+接口 比 FMC 接口多 4x40个引脚,但FMC+接口是向下 兼容 FMC接口的, 可以直接用。Apollo S10 SOM: http://www.terasic.com.cn/cgi-bin/page/archive.pl?Language=China&CategoryNo=250&No=1245&PartNo=3#contents

FMC HPC和 FMC LPC 接口的外形尺寸(物理尺寸)是一样的,比如友晶科技TR5的FPGA主板有2个HPC接口和2个LPC接口,区别是FMC LPC的接口的金属引脚比FMC HPC少一些,但其物理尺寸是一样的:
http://www.terasic.com.cn/cgi-bin/page/archive.pl?Language=China&CategoryNo=160&No=1065&PartNo=1#contents

友晶科技的 D8M-FMC子卡 是FMC LPC接口的:http://www.terasic.com.cn/attachment/archive/1072/image/D8M-FMC_layout_B.jpg
友晶科技的XTS-FMC子卡是FMC HPC接口的:http://www.terasic.com.cn/attachment/archive/1132/image/XTS_layout_bot_web.jpg
其实可以看到:两个子卡的接口外形是一样大小,只是LPC接口的FMC最外面两侧是无金属引脚的:

LPC(=160pin) + HPC(=240pin) = 400pin( full pin ) ,可参考原文:
The VITA 57.1 FMC standard calls for two connector densities: a high pin count (HPC) and a low pin count (LPC) implementation. A 400 pin 10x40 position connector form factor is used for both versions. The HPC version is fully populated with all 400 pins present. The LPC version is partially populated with 160 pins.

5. 附友晶科技各个板子与子卡接口情况

下面罗列友晶科技的各个主板和子卡的FMC接口的具体情况。

主板:

TR5
2个HPC 2个LPC。
1.2V/1.5V/1.8V/2.5V/3.0V
A口: 10个收发器
B口: 1个收发器
C口: 1个收发器
D口: 10个收发器

HAN:
1个HPC。
10个收发器
VADJ 1.2V/1.5V/1.8V

A10SOC
1个标准HPC 提供10个收发器
1个FMC提供16个收发器。
电压1.8v

A5SOC:
HPC 但只提供8个收发器

C10GFP:
A10GFP: LPC+ 提供2个FMC接口, 每个接口提供16个收发器

子卡:

ADC-FMC
HPC,无需收发器通道
VADJ = 1.8V
支持的主板:TR5, HAN,A10GFP 引脚配不上。A5SOC引脚配不上。

HDMI-FMC
HPC,无需收发器通道.
可支持的主板:A10SOC(要修改电路),HAN, TR5,A5GT(停产) A5SOC 引脚对应不上。

SDI-FMC
HPC, 2个12G 收发器通道 2个3G收发器通道,
可支持的主板: HAN,A10GFP,A10SOC(有工程:A10SoC_12G_SDI)TR5没有实际测试过,而且目前Intel提供的12G IP (https://www.altera.com/en_US/pdfs/literature/ug/ug_sdi_ii.pdf)也不支持Stratix V 等器件。A5GT 速度达不到12G ,C10GFP 收发器引脚对不上。

NET-FMC
HPC,无需收发器通道,
2.5v电压
可支持的主板:TR5, ,不能搭配A10SOC 和 HAN(电平不匹配 1.8v)

XTS-FMC
HPC, 需要4个收发器通道
可支持的主板:TR5, HAN, A10SOC,A10GFP

D8M-FMC:
LPC, 无需收发器通道
可支持的主板:TR5, HAN, A10SOC, A10GFP A5SOC (TMD接口支持不了)

FMC loopback测试卡

友晶科技还提供了FMC loopback测试卡,https://ic-item.jd.com/10041921791464.html#crumb-wrap,其中
FMC+ loopback 配Apollo_S10 SOM主板、Intel® Stratix® 10 TX Signal Integrity Development Kit等;
FMC loopback可以配任何FMC HPC和 FMC LPC的主板。

6. FMC相关参考资料

http://vita.mil-embedded.com/articles/fmc-steps-up/
http://www.hitechglobal.com/FMCModules/FMC-Cards-SelectionGuide.htm
https://www.mistralsolutions.com/newsletter/Dec15/FMC-to-FMC-Keeping-up-with-New-FPGAs-and-Analog-IO-white-paper.pdf
http://vita.mil-embedded.com/articles/fmc-embedded-design-new-heights/
https://max.book118.com/html/2017/0410/99689088.shtm