从 Falcon Mesa 到 Agile

英特尔的 10 纳米 FPGA 终于来了。在四月刚刚结束的英特尔“以数据为中心创新日”中,曾经代号为 Falcon Mesa 的英特尔最新一代 10 纳米 FPGA 正式亮相,并正式命名为 Agilex™。

 


(图片来自英特尔)

 

在本文中,老石将对 Agilex 的六大核心技术做全面的深入解读。

 

灵活+敏捷=Agilex™ FPGA

Agilex 是 Agile(敏捷)和 Flexible(灵活)的合二为一,而这两个特点正是现代 FPGA 技术最为核心的两大要点。

 

具体来说,“灵活性”就是指可编程性,它基于 FPGA 的核心技术——可编程逻辑阵列,可以灵活的针对不同应用场景进行编程,并改变 FPGA 的逻辑结构和功能。

 

“敏捷性”指的是异构,它既可以是不同逻辑单元之间的异构,也可以是不同工艺的异构,或者两者兼而有之。如下图所示,不同类型的 IP 所对应的成熟工艺与迭代时间都不尽相同。只有采用异构架构,才能充分发挥不同 IP 和不同工艺节点的优势,取长补短,在性能和成本上取得良好的平衡。因此异构 FPGA 也是目前和未来业界发展和研究的主要方向。

 


(图片来自英特尔)

 

在这个大背景下,Agilex™ FPGA 应运而生。它既包含了传统 FPGA 灵活的可编程性,又结合了现代 FPGA 基于异构架构的敏捷性,因此能够同时适用于众多应用领域,并针对性的进行配置和快速迭代,如下图所示。

 


(图片来自英特尔)

 

与进化多年的 Stratix®、Arria®、Cyclone®、Max® 等 FPGA 产品系列相比,Agilex™ 是原 FPGA 巨头 Altera 在 2015 年底被英特尔收购、并成为其可编程方案事业部(PSG)后正式推出的一个全新的 FPGA 系列。正因如此,Agilex™ 无疑被英特尔寄予了更多的期待。

 

在这些期待背后,离不开来自英特尔的核心技术的加持。而这也将是区分 Agilex™ 与它的前代产品、以及其他竞争对手的最主要的优势。具体来说,Agilex™ 遗传自英特尔的核心竞争优势有以下六点。

 

1、英特尔 10 纳米工艺

英特尔在半导体领域称雄几十年,靠的就是两个独门绝技:第一是众所周知的 x86 架构,第二则是曾经遥遥领先竞争对手的半导体制造工艺。这也促成了英特尔著名的“Tick-Tock”战略,即架构和工艺的更新逐年交错进行,同时还能保持处理器性能的稳步增长。

 

不过,这家芯片巨头在 10 纳米工艺上遇到了阻碍。事实上,英特尔也曾预测 10 纳米的研发会比之前耗时更久,如下图所示,但可能没有人想到会是这么久。

 


(图片来自英特尔)

 

结果是,就在过去的一两年中,曾经被远远甩在身后的竞争者纷纷在十纳米这个工艺节点完成了超车,台积电和三星都逐渐将自家的十纳米工艺投入量产。

 

终于,2019 年初痛定思痛的英特尔一口气发布了四款基于 10 纳米工艺的芯片产品,涵盖了个人计算平台、数据中心、5G 网络等多个应用领域,并将最快于年底正式出货量产。而这次发布的 Agilex™ FPGA,也正是基于英特尔 10 纳米工艺的旗舰级 FPGA 产品。

 

对于芯片制程而言,在相同的工艺节点下,英特尔的工艺往往具有更优异的性能,这也是业界公认的事实。一旦英特尔的十纳米工艺达到稳定并量产,预计将会比竞争对手带来 20%-30%的性能和功耗优势,如下图所示。

 


(图片来自英特尔)

 

2、系统级 3D 芯片

系统级 3D 芯片的异构集成和封装,也是英特尔的独门秘籍之一。这其中主要有两个主要技术,一个是 EMIB(嵌入式多管芯互联桥接),用于提供多个异构晶片的高速互连;另一个则是 2019 年最新公布的 Foveros 3D 封装技术。

 

在 Agilex™ FPGA 中,使用了第二代 EMIB 技术,用以连接可编程逻辑阵列以及周围的各类子芯片集(Chiplets)。由于 EMIB 不需要引入额外的硅中介层,因此不需要大量的硅通孔,这样显著降低了系统的制造复杂度。同时不需要在中介层中使用长导线,因此降低了不同晶片间的传输延时,减少了信号的传输干扰。另外,在替换不同的子芯片集时更加容易,而无需重做整个芯片系统。

 


(图片来自英特尔)

 

3、CXL:CPU 与 FPGA 互连的终极方案

当前,FPGA 的一个主要应用场景是在数据中心里作为 CPU 的硬件加速器,用来加速各类应用,如深度学习的模型训练、金融计算、网络功能卸载等等。

 

在数据中心的 CPU 领域,英特尔的 Xeon® CPU 一直是绝对的最强王者。作为数据中心加速器的 FPGA,首先需要考虑的就是与 Xeon® CPU 的兼容性问题。很明显,作为具有“纯正血统”的 Agilex™ FPGA,从出生伊始就相比竞争对手占据了天时和地利。

 

缓存一致性问题一直是硬件加速器领域亟需解决的核心问题之一。而解决这个问题的主要方法,就是明确和普及 CPU 与硬件加速器之间的内存互联协议,就好比大家熟知的用于 CPU 和加速器通信的 PCIe 协议等等。

 

在今年 3 月,英特尔宣布联合微软、阿里、思科、戴尔 EMC、Facebook、谷歌、惠普企业 HPE 和华为等公司,共同组件一个全新的互联标准,名为 Compute Express Link – CXL,如下图所示。

 


有趣的是,CXL 的发起者中有四个互联网巨头、两个服务器设备制造商、两个网络设备制造商。这种多元性立体的呈现了 CXL 的目标应用领域:互联网数据中心、通信基础设施、云计算与云服务等等。而这些领域也正是 FPGA 大显身手的重要平台。

 

对于 Agilex™ FPGA,它将原生支持 CXL 协议,并将成为业界首款面向 Xeon® 可扩展处理器的内存一致性硬件加速器。值得注意的是,CXL 协议基于 PCIe 设计和扩展,如下图所示,这样可以完全复用 PCIe PHY 和通道,与其他类似的协议相比有着明显的易用性。

 


因此,Agilex™ 对 CXL 的原生支持,势必会在“天时”和“地利”的基础上,为它在数据中心的广泛使用带来巨大的“人和”优势。

 


(图片来自英特尔)

4、可变精度 DSP

FPGA 在人工智能应用中的最大优点之一就是可以采用可变精度的字长表示和数学运算,从而带来巨大的性能提升。在现有的英特尔 FPGA 中,已经可以支持固化的定点数以及 FP32 的 DSP 运算。

 

在 Agilex™ FPGA 中,又扩展支持了 FP8、FP16 和 BFLOAT16 的 DSP 运算,同时也增加了 9x9 乘法器的数量,以及乘法器的配置方式等等,一些常用的 DSP 配置结构如下图所示。这些针对 AI 应用的革新,也会极大提升未来 FPGA 在 AI 领域的使用范围。

 


5、增强版 HyperFlex 架构

HyperFlex 的主要思想就是在 FPGA 的布线网络上,加入很多名为 hyper-register 的小型寄存器,这样可以把原本比较长的时序路径分割成多个较短的路径,从而达到频率提升的作用,如下图所示。

 


(图片来自英特尔)

 

但在很多情况下,不是所有的 hyper-register 都会被使用。为了减小额外延时,对 FPGA 设计工具中的 retiming 和自动流水线算法提出了更多的要求。

 

在英特尔的 Agilex™ FPGA 中,这个问题得到了针对性的补强,方法其实非常简单粗暴,就是尽量缩小 hyper-register 的旁路路径的延时(高达 40%),如下图。这样当某些 hyper-register 不使用时,其对应的系统延时可以达到导线级的标准。

 


(图片来自英特尔)

 

6、OneAPI:英特尔的雄心

在 2018 年末的英特尔架构日上,英特尔的芯片首席架构师 Raja Koduri 对外公布了公司正在着力研发的一件“大事”:一个名为 OneAPI 的软件编程框架。

 


(图片来自英特尔)

 

顾名思义,OneAPI 将会为英特尔的 CPU、GPU、FPGA、以及各种 AI 和其他应用的硬件加速器提供一个统一的编程接口,使得开发者可以随意在底层硬件之间进行切换和优化。OneAPI 的口号是“晶体管一个也不能少”,这也很好的总结了 OneAPI 的终极目标。

 

除了编程接口外,OneAPI 想必还会包含一个完整的开发环境、库、驱动等必要的要素,它代表了英特尔最大的野心,就是将旗下所有的芯片和硬件产品通过这个软件系统连接起来,并实现无缝切换。同时,可以预见英特尔还将围绕这个软件系统逐步构建生态环境。因此这个系统一旦实现,将成为其他任何竞争对手无法匹敌的优势。

 


(图片来自英特尔)

 

对于新发布的 Agilex™ FPGA,它也将成为首款支持 OneAPI 的英特尔 FPGA 产品,见下图。

 


(图片来自英特尔)

 

结语

英特尔在发布会上宣布,Agilex™ FPGA 将有 F、I、M 三个产品系列,见下图,并最早将于今年第三季度交付到客户手中进行前期评估。

 


(图片来自英特尔)

 

老石相信,这款全副武装了英特尔各种黑科技的最高段位 FPGA,必将对当前的 FPGA 市场带来一波最强的冲击。