FPGA不仅适用于特殊的嵌入式应用,而且现在已经应用于从NIC到SSD的所有应用中。
当FPGA是需要自定义编程的专用设备时,只能由向导生成。它们通常隐藏在雷达系统或其他高性能平台中。
低成本,基于闪存的FPGA用于各种嵌入式设备,而高性能FPGA正在将网络接口卡(NIC)和固态驱动器(SSD)转变为可编程计算平台。曾经的ASIC的领域,大批量生产使ASIC在加密磁盘驱动器等应用中变得切实可行。标准软件接口已被充分采用以使解决方案切实可行。
如今,FPGA已成为主流。FPGA板与GPGPU板和机器学习/人工智能(ML / AI)加速器一起在“云”中找到。FPGA可以提供这种支持,但是定制芯片通常更适合于优化的ML / AI支持。FPGA提供了一种更灵活的方法,不仅可以将ML / AI加速集成到硬件中。标准化API和驱动程序接口已经改变了人们在云中查看FPGA,GPU和ML / AI的方式。
在外围设备级别也发生了同样的情况。带有捆绑的FPGA的SmartNIC可以加速和减轻主机的网络处理工作。这也有助于最小化系统带宽要求。它还可以帮助保持数据以线速移动,否则主机可能会不堪重负。
赛灵思的SmartSSD计算存储设备(CSD)是FPGA在存储中发挥作用的一个实例(见图)。它不是市场上的第一款FPGA / SSD器件,但是推动与基于PCI Express(PCIe)NVMe等标准一起使用使其成为一个非常有效的平台。
Xilinx的SmartSSD计算存储设备(CSD)在今年的闪存峰会上得到了展示。它看起来像是标准的U.2 SSD,但实际上显示为两个逻辑设备:SSD和计算系统。
与SmartNIC一样,SmartSSD可以利用FPGA来实现原本可能需要由主机处理器处理的各种功能。例如,可以对SmartSSD进行编程以处理数据压缩和加密。它还可以将基本的SSD变成内容可寻址的内存,甚至是ML / AI引擎。诸如实时多媒体转码之类的应用程序适用于SmartNIC和SmartSSD领域。
将计算过程移动到更靠近外围的设备中是有意义的,尤其是随着数据中心的分解。在嵌入式应用程序中也很有意义,在嵌入式应用程序中可以分配功能以促进开发并使其模块化。
密切关注其他外围设备,从摄像机到电机控制,以提供比过去更多的智能控制。