人工智能(néng)、数据中心等技术热点对CPU的计算性能(néng)提出了更高的挑战,而传统CPU处理(lǐ)器面对此挑战明显已经无法满足其性能(néng)要求。CPU性能(néng)的缺口使政府部门、互联网企业不断斥重金来新(xīn)建以及扩建数据中心,但仍无法满足迅速增長(cháng)的数据处理(lǐ)需求。因此众多(duō)企业开始寻求新(xīn)的技术来对其某一应用(yòng)进行加速。
随着FPGA工艺以及技术的不断更新(xīn)FPGA从最初的逻辑器件发展成為(wèi)现在的包含SOC、DSP以及高速串口信号等技术的全方位的处理(lǐ)平台,从而越来越被广泛的应用(yòng)于電(diàn)力、高新(xīn)能(néng)计算、工业、航天等领域。2013年微软采用(yòng)FPGA来加速Bing搜索引擎,使服務(wù)器总體(tǐ)成本下降40%;Facebook采用(yòng)FPGA主控PCIE解决大数据的存储需求。
一、解决方案
1.1算法加速
本方案是基于FAST的软硬件架构实现,如图1所示,软件用(yòng)户程序可(kě)以通过简单的程序接口即读写命令实现与FPGA加速算法的数据通信。基于FPGA硬件并行的处理(lǐ)特点,在算法实现时可(kě)以同时并行运行多(duō)种不同的实现算法,已达到多(duō)应用(yòng)并行处理(lǐ)的需求。另外,在硬件实现单算法时,根据算法的功能(néng)特点可(kě)以将算法进行流水化或并行化处理(lǐ),从而加速数据处理(lǐ)效率。

图1 FAST软硬件架构
1.2网络功能(néng)卸载加速
在提供算法加速的方案同时,本公司还提供对网络功能(néng)的卸载加速,如TCP协议栈的卸载,1588时间同步算法的卸载等加速。其中TCP协议栈卸载加速方案参见本公司TOE解决方案;1588时间同步算法卸载参考OpenTSN的解决方案。
另外,本公司还提供特定软件功能(néng)硬件加速定制功能(néng),其中特定功能(néng)是指具有(yǒu)特殊规则并且功能(néng)独立的网络功能(néng),例如:
1. 网络报文(wén)规则深度解析/过滤;
2. 硬件高速查表匹配;
3. 高效的报文(wén)决策处理(lǐ);
4. 精准的输出调度及转发策略执行等。
这些功能(néng)可(kě)以通过将一些确定处理(lǐ)规则通过硬件实现,来缓解软件处理(lǐ)以及软件与硬件数据通路的压力,使得部分(fēn)通用(yòng)功能(néng)基于硬件处理(lǐ)控制,而复杂的任務(wù)在交由软件处理(lǐ),从而缓解系统的处理(lǐ)负载以及提高系统的处理(lǐ)效率,实现结构如图2所示。

图2 网络功能(néng)卸载架构