利用FPGA夹层卡实现I/O设计灵活性
面对似乎层出不穷的新 I/O 标准,目前嵌入式系统设计人员继续依靠 FPGA 来部署系统日益重要的外部 I/O 接口,这点丝毫不足为奇。FPGA 可提供大量可配置的 I/O,能在适当 IP 基础上支持几乎无限多种高度复杂的 I/O 标准。设计人员还能用 FPGA 执行流内 (in-stream) 数据处理,甚至以数千兆位级信号传输速率和带宽运行的协议。
FPGA 能够灵活适应 I/O 要求变化。FPGA 经重配置(除了替换物理 I/O 组件和连接器外基本无需其它更改)后,便可部署新的协议。如果 I/O 不是实施在夹层模块上的话,那么这就意味着需要修改板的设计。为了避免设计更改造成成本和工作量的增加,设计人员以前一直采用 PCI 夹层卡 (PMC) 和交换夹层卡 (XMC) 标准。不过,上述标准是十多年前针对单板计算机 (SBC) 等通用解决方案而并非 FPGA 开发的。2008 年 7 月,情况发生了变化,美国国家标准学会 (ANSI) 批准发布了 VITA 57 FPGA 夹层卡 (FMC) 标准。
FMC 标准由包括 FPGA 厂商和最终用户在内的公司联盟开发,旨在为基础板(载卡)上的 FPGA 提供标准的夹层卡尺寸、连接器和模块接口。通过这种方式将 I/O 接口与 FPGA 分离,不仅简化了 I/O 接口模块设计,同时还最大化了载卡的重复利用率。与使用 PCI、PCI-X、PCIe 或 Serial RapidIO 等复杂接口连接到载卡的 PMC 和 XMC 标准不同,FMC 标准只要求核心 I/O收发器电路直接连接至载卡上的 FPGA 即可。
这样做能够提高效率,进而带来诸多显著优势:
• 数据吞吐量:支持高达 10 Gb/s 的信号传输速率,夹层卡和载卡之间潜在总带宽达 40 Gb/s。
• 时延:消除了协议开销,避免了时延问题,确保确定性数据交付。
• 简化设计:无需了解 PCI、PCI Express 或 Serial RapidIO 等协议标准的专业技术。
• 系统开销:通过简化系统设计降低了功耗,缩短了工程设计时间,并缩减了IP 核及材料成本。
• 设计重复使用:不管是采用定制的内部板设计还是商用成品 (COTS) 夹层卡或载卡,FMC 标准有助于将现有的 FPGA / 载卡设计重新用到新的 I/O 上,而这只需更换 FMC 模块并对 FPGA 设计略作调整即可。
FMC 标准的亮点
FMC标准定义了单宽度(69 毫米 x 76.5 毫米) 和双宽度(139 毫米 x 76.5 毫米)两种尺寸。单宽度模块支持到载卡的单个连接器。双宽度模块主要面向需要更高带宽、更大前面板空间或较大PCB 面积的应用,支持多达两个连接器。FMC 标准提供两种尺寸,能够更加灵活地根据空间、I/O 要求或者这两者的要求对板进行精心优化。图 1 给出了 FMC 载卡及多种 FMC 夹层卡示意图。
图 1:FMC 载卡和多种 FMC 夹层卡
选定尺寸之后,板设计人员就要在两种不同连接器间做出选择,以用作 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 处时还能提供诸多派生功能。
图 2 显示的是赛灵思的一个实例板,该板采用了 Virtex'-6 FPGA和两种 FMC连接器(一个 LPC 和一个 HPC)。
图 2:ML605 评估板
FMC 标准支持众多现有的业界标准载卡尺寸,包括 VME、CompactPCI、VXS、VPX、VPX-REDI、CompactPCI Express、AdvancedTCA 以及 AMC 等。FMC标准还定义了一系列环境配置,包括低成本商用级尺寸乃至强化的传导式散热选项。
FMC的市场机会
将 FMC 标准和 FPGA 的多样性结合在一起,可带来一系列有趣的市场和应用商机。航空与国防、医疗、工业、电信、视频及其它等市场通常高度依靠 FPGA来实现其数字信号处理 (DSP) 性价比优势,并满足各种不同的 I/O 要求。不过,过去每个市场及给定市场中的每个应用都需要不同的板设计。
FMC 标准的出现将板设计进行了模块化,分为处理引擎(载卡)和 I/O 引擎(FMC 模块)两大部分。设计人员现在能重复利用单个载卡(包括一个或多个FPGA 以及适当数量和类型的 FMC 连接器和板)作为多种不同市场和应用的基础。此外,借助性能更高、功能更强的新型 FPGA 产品,设计人员能在确保与现有 FMC 模块全面兼容的同时轻松升级到新载卡。
粗略看看上述部分市场的尺寸、I/O 及处理要求,我们能看出问题的所在。举例来说,广播视频应用通常需要接入 4 个或更多 SDI 连接器、10 Gb 以太网及其它收发器连接器;就无线基站应用而言,基带处理通常采用处理速度达 3.12510 Gb/s、尺寸为 ATCA/AMC 的板,这就需要将 FPGA 和传统 DSP 进行组合,并在无线电前端上采用高速 I/O(100500 MHz、1216 位分辨率);航空与国防市场倾向于采用 VME 和 cPCI 尺寸的板,但处理要求大不相同。举例来说,雷达处理的采样率类似于无线电应用,但通常分辨率更高。而军事卫星基站应用通常使用更高的采样率,但分辨率较低(814 位)。
显然,单就我们所说的少数一些应用而言,处理和 I/O 要求就已经千差万别了,因此我们可以想象,采用 FPGA 的各种不同应用会有多大不同的需求。尽管我们比较清楚地了解了这些应用的不同处理要求,且得到了成熟板行业提供的丰富的硬件解决方案的支持,但此前工程师们不得不花费大量宝贵的设计时间来创建定制硬件或处理复杂(经常也是不必要的)总线协议问题。
FMC 标准将 FPGA 与 I/O 引擎相分离,从而解决了上述问题。它使设计人员能从专门支持其终端应用的大量 COTS 产品中选择适当尺寸的适当处理引擎和适当的 I/O 引擎。此外,FMC 标准还使厂商能为评估和开发创建统一的系统,随后还能量产部署,从而大幅降低成本,并显著缩短了产品上市时间。
总结
FMC 标准是 FPGA 开发人员设计开发选择中的一大转变。从事微处理器和传统 DSP 设计工作的设计人员几十年来一直受益于可扩展开发解决方案的灵活性优势,而现在,FMC 标准则为 FPGA 领域的开发人员带来了模块化设计的强大实力。
COTS 板厂商通过重复使用硬件设计,可加速并简化产品设计工作,进而大幅降低产品开销。这种高效性不仅有助于我们为更多应用推出更好的产品,使客户专注于实现其产品独特的差异化,而且还能加速解决方案的市场部署。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码