FPGA作为加速云领域的重要部件,在数据领域已经得到了广泛的运用。除了一些大型国内外的云服务供应商例如阿里云、腾讯云、微软、亚马逊之外,FPGA也逐渐在大数据处理、人工智能(AI)等领域扮演着越来越重要的角色。在这样的行业背景下,为了让更多人使用自己的FPGA产品,越来越多的FPGA厂商开始探索、发现以及尝试新的FPGA推广办法。在这样的主流趋势下,绝大多数的FPGA厂商逐渐从单纯的出售FPGA芯片转变为开始提供相应的系统级解决方案。
传统的FPGA销售模式往往是向客户提供自己研发的FPGA产品芯片以及其相应的开发工具。这两样东西一经厂商售出之后,虽然厂商会提供相应的后续技术支持,但是客户如何开发以及开发出何种应用都与厂商无任何关联,并完全交由客户自行完成。
然而,现今的FPGA厂商不仅仅局限于向客户提供自己研发的FPGA产品芯片以及其相应的开发工具,还开始倾向于为客户提供相应的系统级解决方案。目前,FPGA原厂商英特尔(Intel)推出的各类FPGA加速卡就是典型的代表。
在硬件层面,FPGA厂商推出的FPGA加速卡是针对特定情况和应用的专业板卡,通常以PCIe扩展卡的方式进行部署,其优势在于不仅仅拥有丰富的高速I/O接口以及存储资源,还提供了丰富的组合板卡级产品。
在软件层面,FPGA厂商还会提供FPGA加速卡配套的驱动、软件库、编程接口(API)、软件开发栈以及相应的软硬件黄金参考设计。
基于这两个层面所提供的完整的开发环境,其目的是大大的降低了FPGA的开发难度,使得软件开发人员也能在短时间内使用FPGA完成相应算法的实现工作。此外,还能不断的吸收第三方的IP以及应用,从而构建一个完整的FPGA生态系统。
其实不仅限于英特尔(Intel)这种相应的FPGA原厂商,很多的第三方厂商例如华为和浪潮等在FPGA加速卡产品方面也有不错的成果。接下来,将着重介绍几个英特尔(Intel)的FPGA加速卡产品。
英特尔(Intel)的首款FPGA加速卡产品是在2017年发布的PAC,全称“Programmable Acceleration Card”。
在硬件方面,这款FPGA加速卡使用了英特尔®Arria®10 GX FPGA芯片,采用20纳米工艺制造,其中包含了115万个CLB(可编程逻辑单元),其性能和容量相当的强大。它还集成了8GB的DDR4内存和128MB闪存,有一个QSFP+接口,能满足可高达40Gbps的网络连接带宽,同时还拥有PCIe Gen3x8接口可以与主机CPU进行互联。此外,它的板级功耗大约是45W-60W,采取了被动散热的设计,这样使得自身的尺寸更小(半高半长),以便于在各类服务器中部署。
在软件方面,其配套的软硬件开发框架与加速栈系统也与之一同发布。PAC当时的主要应用领域是加速数据类的各项应用,作为英特尔(Intel)原厂商生产的产品,它可以直接用于英特尔®Xeon®处理器的硬件加速单元,以卸载和加速原本在CPU上实现的各类应用,以此构成了英特尔(Intel)CPU和FPGA结合的高性能数据处理组合。
英特尔(Intel)之后在2018年推出了一款基于Stratix® 10 SX FPGA芯片的加速卡。
相比于PAC,这款FPGA加速卡在性能上更是有了质的提升。在硬件方面,它采用了14纳米工艺制造和3D系统级封装技术,拥有更高的集成度。其中更是包含了280万CLB(可编程逻辑单元)、244MB片上存储、可高达26Gbps的串行收发器、32GB DDR4内存、两个最高支持100Gbps网络带宽的QSFP28接口以及PCle Gen3x16接口。该加速卡可用于更高性能的数据处理类应用,但其功耗略微增加,约为225W。相应的尺寸也略有增加(全高四分之三长)。
在2019年,英特尔(Intel)更是推出了针对当前最热门的话题5G应用的FPGA加速卡PAC N3000。
这款加速卡的核心是Arria® 10 GT1150的FPGA芯片,其中包含了115万个CLB(可编程逻辑单元),可以实现高达100Gbps的网络流量加速处理,并同时支持9GB DDR4板载内存并采用了三级DRAM内存子系统,包括8GB@64-bit DDR4、1GB@16-bit DDR4以及144MB QDR IV存储器,不同的内存层次结构,服务于板卡执行不用的工作负载。不同的任务也具备各自的优化内存层,以充分利用各种带宽和延迟特性。
同年,英特尔(Intel)再次宣布推出了增强型可编程服务器加速卡PAC D5005,可使得数据中心服务器可以更快速地运行分析和人工智能(AI)软件等工作负载。
该加速卡的核心为Stratix® 10SX FPGA芯片,能够帮助处理更多的通用任务。其相对于上一代可编程加速卡有重大的改进,它的内存容量是上一代的4倍,总共32GB,工作负载定制的可编程电路数量增加了2倍,此外还有2个100Gbps以太网接口,速度从40Gbps到100Gbps,使得加速卡可以更快地接受数据。
作者简介
彭诗翰,FPGA工程师。本科毕业于美国佛蒙特大学并获得电子电气工程主修学士学位以及数学辅修学士学位,研究生获得美国东北大学电子电气与电脑工程硕士学位。拥有出色的项目管理能力,能够熟练运用Arduino、Matlab。