你的位置:首页 > 市场 > 正文

三强争霸高端FPGA(二):内存,I/O和自定义

发布时间:2019-11-12 责任编辑:lina

【导读】在本系列的第1部分《三强争霸高端FPGA(1)》中,我们研究了Achronix,Intel和Xilinx的新型高端FPGA系列。我们比较了底层半导体工艺,可编程逻辑LUT架构的类型和数量,DSP /算术资源的类型和数量以及它们在AI推理加速任务中的适用性,供应商们公开宣布的TOPS / FLOPS性能能力以及片上互连(例如FPGA路由资源和片上网络(NOC)。
  
在本系列的第1部分《三强争霸高端FPGA(1)》中,我们研究了Achronix,Intel和Xilinx的新型高端FPGA系列。我们比较了底层半导体工艺,可编程逻辑LUT架构的类型和数量,DSP /算术资源的类型和数量以及它们在AI推理加速任务中的适用性,供应商们公开宣布的TOPS / FLOPS性能能力以及片上互连(例如FPGA路由资源和片上网络(NOC)。从这些比较中可以明显看出,这些供应商提供的每项产品都具有独特而有趣的功能,这些功能将使它们在特定的应用领域脱颖而出。我们也强调了对这种复杂的半导体器件进行有意义的分析有多么困难。
 
Xilinx,Intel和Achronix这三个供应商都与我们讨论了我们的假设和分析,并为该系列内容提供了宝贵的见解。

三强争霸高端FPGA(二):内存,I/O和自定义

本周,我们将讨论内存架构,封装内集成架构和高速串行I/O功能。在这里,我们将看到这一代FPGA的复杂性远远超过其直接的前代,并且我们将进一步证明它们可能是有史以来最复杂的芯片。在半导体发展史上,我们正处于一个令人着迷的时代,摩尔定律在经济上已经走向了终结,新一代的AI技术和应用要求一种全新的计算方法,巨大的竞争利害关系正在打开广阔的新市场,也为新设备带来了机遇。 
 
FPGA的实际性能取决于内存结构以及计算资源和内部带宽。在当今的计算环境中,高效地移动、处理和存储数据是计算流程中的关键。如今,全球数据基础架构的范围从小型、传感器负载的端点到网络边缘、本地存储和计算,回传到拥有大量计算和存储资源的云数据中心,然后经过整个过程再次返回到边缘。FPGA在这一数据传输往返过程中的作用是巨大的——FPGA在存储、网络、内存和计算方面都做出了巨大贡献。
 
我们应该指出的是,Xilinx坚持认为他们通用的ACAP系列器件是独立于FPGA的一个类别,他们称“ACAP”是“自适应计算加速平台”。据我们所知,这一主张的关键是Versal是面向与传统FPGA不同的受众群体-应用开发人员,这一受众群体可能不具备FPGA专业知识。但是他们需要一种交互模型,而不是从配置FPGA结构的开始。他们指出,实际上,Versal可以自行启动和运行,而无需配置FPGA架构。这与矢量处理引擎和片上网络(NoC)之类的功能相配合,是他们认为Versal器件是“ACAP”而不是“ FPGA”的依据。
 
但是,出于此处的目的,我们将继续以FPGA系列评估的方法Versal ACAP。我们相信这三种产品将经常争夺相同的插槽。此外,我们的读者中有一大批FPGA设计专家,追溯到2009年之前,当时我们被称为“ FPGA Journal”。我们理解Xilinx市场定位背后的动机。他们想要吸引一个新的市场——对这部分客户来说,"FPGA"可能是一个令人生畏或困惑的标签。Xilinx对其"Zynq"系列器件采取了类似的策略——将其称为"SoC"而非"FPGA"。但是,"ACAP"更难销售,因为SOC类别已经存在,并且有大量的竞争性产品。创建一个新的分类是一个艰巨的任务。我们将看看它是否会流行起来。我们正在等待第一个竞争对手制造一种他们称之为"ACAP"的器件。
 
这些竞争产品家族中的每一个在针对他们设想的目标应用程序优化内存体系结构方面都采取了不同而有趣的尝试。与传统的CPU或GPU架构不同,FPGA独特之处是允许重新配置存储器层次结构以匹配手头的任务。这可能对最终应用程序的吞吐量、延迟和功率效率产生巨大影响。FPGA存储器架构使我们能够划分应用程序,以便每次使用存储器时都可以在局部性/带宽和密度之间取得最佳平衡。
 
从密度最低但带宽最高的地方开始,是LUT本身的内存资源。在那里,逻辑可以直接通过硬连线访问少量存储的数据,从而为数据流创建最有效的路径。所有的FPGA架构都有基于LUT的存储器作为核心功能。LUT内存的数据量与LUT计数大致成正比,我们上周讨论过这个问题。虽然这种存储是超本地的,并为相关逻辑提供了的最佳带宽,但大多数应用程序的内存需求远远超过了稀少而宝贵的LUT内存资源。
 
如果在密度上提高一级而在带宽上降低一级,那么,我们就可用FPGA架构中的“block”存储器来构建存储体系。顾名思义,block结构是FPGA架构内专用的存储区,数据路径会跨越更多FPGA互连线。每个供应商都有自己的策略来划分这些片上存储器资源。他们已经对各种类型的应用程序及其内存需求进行了详尽的建模,权衡了分布和密度,并提出了一种分层的方法。这使他们感觉最能解决最广泛的问题,尤其是针对主要目标应用程序类型。
 
从Achronix开始盘点,Speedster7T提供高达385MB的嵌入式内存,分布成LRAM2K、BRAM72K和MLP模块。Intel Agilex用三种类型的Block嵌入式内存(MLAB,M20K块和eSRAM存储器块)提供了300 Mb的嵌入式RAM。Xilinx Versal在其最大的"AI核心"器件中提供了block RAM、"UltraRAM"和加速器RAM,总计约294MB。这些架构中的每一种都是供应商的最佳选择,它认为在各种目标应用程序中,采用多大的块以及与其他资源的匹配程度将决定其最佳性能。
 
将层次结构再上一层,FPGA包中就包含了存储器。这通常利用诸如HBM的高密度、高带宽、高成本的技术中实现。由于我们要通过芯片外(通过插入器或EMIB或其他封装链路)实现这一目标,因此延迟和带宽要低于嵌入式存储器,但要好于我们通过芯片外接口实现在PCB上访问常规存储器的延迟和带宽(稍后我们还将阐述)。此级别的目标是将高密度和高带宽结合在一起——数据远远超出片上存储器可以容纳的范围,并且带宽要比访问PCB上外部存储器要高得多。
 
但是,在讨论封装内存储器之前,我们应该先了解一下这三个供应商在封装级集成方法上的根本差异。在这里,我们认为英特尔Agilex有最大的灵活性,并以最小的最终用户费用。英特尔的Agilex专为封装内集成的灵活性而设计。英特尔使用称为EMIB(嵌入式多管芯互连桥)的专有技术来连接封装内的小芯片。FPGA架构本身是一个chiplet,SerDes收发器则接收另一个封装内存储器,例如HBM另一个,以及其他可选外围设备。这些外设中的每一个都可以采用不同的工艺实现,这意味着Intel可以随时更新或新增任何chiplet,而不必重新设计其整个FPGA(就像采用单片方法一样)。英特尔公司在此方面的另一个优势是,他们能够基于他们最近获得的eASIC技术来裁剪自定义chiplet。这意味着用户的自定义逻辑可以以最少的NRE和设计开销添加到其FPGA封装中。eASIC允许将最初以FPGA架构(例如)实施的设计加固为chiplet——从而提供类似于ASIC的性能,密度和功率效率。 
 
Achronix已宣布将Speedster 7T作为独立芯片系列,但同时也提供Speedcore嵌入式FPGA版本,该版本包含与Speedster7T相同的资源,但也可以包含自定义指令,以针对特定的应用类别进一步优化。这些可以是专用的分组处理,TCAM或信号处理功能。在这种情况下,集成策略取决于芯片和封装的内容,以及与FPGA架构在同一块硅片中包含的强化IP,这完全取决于客户的设计团队。这种方法为最终用户提供了最大的灵活性和控制力,但是在客户端需要更高的成本、风险和设计专业知识。
 
Achronix也从事chiplet业务,并参与开源计算项目(OCP)的开源专用架构(ODSA)计划。ODSA正在努力建立标准,以驱动开放的chiplet生态系统,这将有助于创建可混合和匹配来自多个供应商的chiplet的SiP。这将实现与英特尔类似的封装级定制,但不能使用英特尔专有的EMIB互连技术。Achronix的观点是,设计团队最初通常会使用独立的FPGA解决方案。一旦设计通过验证,便会进行降低成本的阶段,其中可能把将一些逻辑强化到包含可编程FPGA IP模块的标准单元ASIC设计中,或者使用chiplet构建自定义SiP。
 
Xilinx提供的设备定制灵活性是三者中最小的,但迄今为止却提供了最多的“开箱即用”产品。赛灵思(Xilinx)是FPGA多管芯集成的先驱,它使用插入器将多个chiplets拼接在一起,目前生产了三代产品。有趣的是,Xilinx在其他人推动该战略的同时却放弃了该战略。Xilinx现在将其器件的更多功能构建到一个单芯片中。这带来了速度、成本和可靠性方面的优势,但降低了混合匹配chiplets在自定义封装内的集成能力。为此,Xilinx正在计划提供大量的Versal系列产品,以期提供具有适当资源集以匹配各种类型应用程序的现成设备。
 
回到封装内存,据我们所知,赛灵思和英特尔都提供了类似的封装HBM堆栈。赛灵思表示,将会有Versal HBM系列,但尚未正式宣布其细节,但是我们可以根据他们在其他产品系列中的支持来推测。英特尔借助Agilex,可以将高达16GB的HBM2以及其他类型的内存资源放入其封装中。Achronix不提供封装内存选项,而是声称可使用多达8个GDDR6内存控制器,每个控制器可支持512 Gbps带宽,从而为其器件提供了总计4 Tbps的GDDR6带宽。这可与其他供应商提供的带有HBM选项的产品相媲美,而且价格较低。与封装内HBM相比,折衷方案有更大的功耗和更多的PCB设计复杂性。GDDR6的可用性可能会更快实现(考虑到图形子系统使用的目标大众市场),而HBM2则需要一些时间才能实现批量生产。
 
在对板载内存的支持,所有供应商都支持DDR4,并将支持DDR5。
 
英特尔Agilex继续他们的方法,即提供强化的DDRx内存控制器(HMC,但不提供“Hybrid Memory Cube”)。英特尔使用HMC已有多年历史,其历史可以追溯到28纳米的Altera Arria 5系列。英特尔表示,他们的FPGA集成式硬核储器控制器有助于在 Hard PHY中实现从内核到外围的紧密传输以及从外围到内核的时序传输,有效地保证了时序收敛并减少了编译时间,并减少了半速率模式下的读写存储器延迟。英特尔还支持其非易失性Optane持久性内存,该内存通过非易失性技术提供类似于RAM的性能。 
 
Xilinx Versal AI Core系列(也使用加固的内存控制器)可提供高达1.2 Tbps的DDR4带宽和高达1.6 Tbps的LPDDR4带宽,并支持CCIX。
 
有趣的是,英特尔还支持通过UPI/CXL协议对英特尔至强可扩展处理器进行低延迟/一致性内存分层访问。我们将在以后讨论集成到异构计算环境的部分中,与其他供应商进行对比,更多地讨论英特尔的这一方法。
 
如上所述,Achronix-还利用强化的内存控制器——额外支持GDDR6。在外部存储器中,端口数量是许多应用程序的关键考虑因素,因为在共享内存资源中同时执行多个读/写操作的能力可以消除与内存带宽相关的性能瓶颈。
 
当然,除非能够有效地将数据移入和移出,否则出色的芯片就无法完成出色的工作。在数据移动方面,FPGA是无可争议的王者——数十年来,他们凭借灵活的逻辑和高速I/O功能在不同的系统和协议之间桥接、移动和路由大量数据,从而生存了数十年。现在,所有这些供应商已将其最快的高速串行I/O收发器升级到了更高吞吐量的PAM4技术。PAM4为逻辑定义了四个电压电平,而不是通常的两个,在每个时钟周期中将数据传输率提升两倍。
 
Xilinx Versal ACAP支持多达44个GTY收发器(32.75Gb / s),以及多达52个GTM收发器(58Gb / s),总I/O带宽合计约为1.31 Tbps。英特尔的Agilex系列产品则提供了十分繁多的选择,其SerDes收发器包含在不同的“ Tile”芯片中,这些芯片可以随应用领域的不同而变化,如8x PAM4 112 Gbps,以及48x PAM458 Gpbs。Achronix Speedster 7T提供了惊人的72x PAM4 112 Gbps的收发器。所有这些都是令人印象深刻的数字,但请记住,SerDes收发器带来了一些最艰巨的设计挑战,包括板级和系统级信号完整性。它们也是芯片成本的巨大贡献者,因此选择带有一组能够满足您的应用需求的收发器的器件值得仔细考虑。
 
对于快速的以太网,Xilinx Versal ACAP首次推出了该公司内部开发的新型多速率MAC,该MAC可处理多种配置,可配置为4x10GE,1x40GE,4x25GE,2x50GE或1x100GE。Versal Prime ACAP设备最多包括这些多速率MAC中的四个。英特尔Agilex包括具有PCS的硬以太网MAC和支持16 x 10 / 25GE,8 x 50GE,4 x 100GE,2 x 200GE,1 x 400GE的FEC。这最多允许4 x 400Gb以太网网络接口连接。Achronix Speedster 7T在其7t1500中具有16个以太网通道,在7t6000中具有32个以太网通道。这分别提供了四个和八个400Gb以太网连接,并支持较低的速率。
 
对于PCIe,Xilinx Versal ACAP提供了1个用于加速器(CCIX)的Gen4 x16高速缓存一致性互连,可通过标准PCIe链路,最多4个Gen4 x8 PCIe和最多2个多速率以太网MAC进行操作。英特尔的Agilex提供PCIe Gen4 x16(每个通道高达16 Gbps)和Gen5 x16(每个通道高达32 Gbps)。Achronix Speedster最多支持2个PCIe Gen5 x16。
 
简而言之,所有这些系列都秉承了大规模,灵活的I/O的FPGA传统——这项讨论仅仅触及了表面。我们可以用几篇文章来讨论这些设备上高速接口的细微但关键的差别,因此花一些时间来了解打算针对应用程序需求使用的任何系列的详细信息。考虑一下整个解决方案中需要强化的内容以及需要在LUT结构中实现或支持的内容。只购买您实际需要的带宽,因为如果您的应用不需要它们,则没有理由购买昂贵的高性能收发器。
 
在本系列的下一部分中,我们将讨论处理子系统以及与外部处理器,硬件生态系统(例如使用这些设备的加速器卡)的集成,以及(也许是最重要)设计和应用开发工具支持,使我们从目标应用程序开发人员的世界中解脱出来——无论是C/C++代码、TensorFlow、OpenCL、SystemVerilog或者一些其他的语言——变成可以为这些设备提供惊人力量的东西。
 
 
推荐阅读:
三强争霸高端FPGA(一)
联发科5G芯片参数终曝光,能否与华为/三星/高通一战?
手机3D感测模组VCSEL元件将成主流
贴纸式的手表?一种新型可伸缩LED装置问世
国巨COO到位,可能将发起新一轮并购
特别推荐
技术文章更多>>
技术白皮书下载更多>>
热门搜索
 

关闭

 

关闭