广告

片上网络(NoC)技术的发展及其给高端FPGA带来的优势

2020-04-30 15:10:31 黄仑,Achronix资深现场应用工程师 阅读:
Speedster 7t FPGA上的二维片上网络(2D NoC)支持高带宽数据加速应用

在摩尔定律的推动下,集成电路工艺取得了高速发展,单位面积上的晶体管数量不断增加。片上系统(System-on-Chip,SoC)具有集成度高、功耗低、成本低等优势,已经成为大规模集成电路系统设计的主流方向,解决了通信、图像、计算、消费电子等领域的众多挑战性的难题。 随着片上系统SoC的应用需求越来越丰富,SoC需要集成越来越多的不同应用的IP(Intellectual Property)。另外,片上多核系统MPSoC(MultiProcessor-System-on-Chip)也已经成为必然的发展趋势。KlCednc

随着SoC的高度集成以及MPSoC的高速发展,对片上通信提出了更高的要求。片上网络技术(Network-on-Chip,NoC)在这个时候也得到了极大的应用,它本质上就是提供一种解决芯片内不同IP或者不同核心之间数据传输的片上通信方案。KlCednc

片上网络技术从发明至今已有20多年的历史,在SoC中已经有了广泛的应用。针对片上网络高带宽、低延迟的特性,主流FPGA公司也开始考虑将NoC用于高端FPGA中来解决数据传输的高带宽需求。Achronix的新一代7nm工艺的Speedster 7t便是最早集成了NoC的高端FPGA之一。如图1所示。KlCednc

KlCednc

图1  Speedster 7t FPGA结构图KlCednc

片上互连架构的发展

片上互联架构的发展主要经历了三个阶段:共享总线(Bus)、Crossbar以及片上网络(NoC)[1]KlCednc

1、传统的SoC片上通信结构一般采用共享总线的方式。在共享总线结构中,所有的处理器和IP模块共享一条或多条总线。当有多个处理器同时访问一条总线时候需要有仲裁机制来决定总线的所有权。共享总线片上通信系统结构一般比较简单,且硬件代价也小。但是带宽有限,而且带宽也没法随着IP的增多而进行扩展。1996年,ARM公司提出的AMBA总线广泛应用于嵌入式微处理器的片上总线,现在已经成为事实上的工业标准。KlCednc

KlCednc

图2  典型的AMBA总线系统[2]KlCednc

2、对于传统的共享总线,当多个处理器同时去访问不同的IP的时候,因为需要仲裁机制去决定总线的所有权,所以传统的总线方式在这种情况下就会造成一定的瓶颈,最大的问题就是访问的延时。在这种情况下,为了满足多处理同时访问的需求同时提高整个系统的带宽,一种新的解决方案Crossbar孕育而生,如图3所示一个典型的Crossbar结构。KlCednc

Crossbar保证了多路通信同时进行的实时性,只要不是访问同一个目标设备,就不需要用到仲裁,大大减少了因为仲裁带来的瓶颈问题。但是随着设备数的增加,Crossbar的规模会以几何级数增长。所以通常我们通过桥接设备去级联多个Crossbar来支持设备的扩展。但是桥接设备可能会成为系统的瓶颈,增加传输的延迟。KlCednc

KlCednc

图3  典型的单向8x8 CrossbarKlCednc

实际应用中,我们通常也会采用Crossbar和共享总线相结合的方式,用桥接器将Crossbar网络和共享总线网络连接起来,如图4所示一个典型的混合型拓扑结构。KlCednc

KlCednc

图4 典型的混合拓扑网络KlCednc

 KlCednc

片上网络NoC带来了一种全新的片上通信方法,显著优于传统的总线式和Crossbar的性能。NoC是一种可扩展性更好的设计。在NoC架构中,每一个模块都连接到片上路由器,模块传输的数据则是形成了一个个数据包,通过路由器去送达数据包的目标模块。如图5所示是一个典型的NoC结构,图中的R表示Router, 所有的Router可以是同步,但每个Router所连接的PE(Processing Element)与Router异步,自成一个时钟域(Clock Domain)。所以基于NoC的系统能更好地适应在复杂多核SoC设计中使用的全局异步局部同步时钟机制。另外,NoC可以支持各种扩展功能,比如流量控制(flow control)、服务质量(QoS)等等。 因此,NoC是多核系统的最佳互联机制。KlCednc

KlCednc

图5 典型的片上网络NoC结构KlCednc

NoC在高端FPGA的应用

FPGA在日益增长的数据加速需求上正在发挥越来越重要的作用。为了满足云计算和边缘计算中各种高性能应用的需求,FPGA作为一种可编程可定制化的高性能的器件逐步成为一条部署高吞吐量数据加速的快捷途径。但同时这些高性能的加速应用也对高端FPGA提出了更高的要求,高算力、高带宽的数据传输以及高带宽的存储器。KlCednc

片上网络技术已经比较广泛的用于SoC中,并取得了比较好的效果。近年来才慢慢用于FPGA中,Achronix创建了一种可最大限度地提高系统吞吐量的Speedster 7t FPGA芯片,创新地将二维片上网络(2D NoC)运用到了FPGA中,可以在逻辑阵列内的处理单元与各种片上高速接口和存储器接口之间高速地传输数据,真正实现了数据密集型应用吞吐量的最大化。有了片上网络的FPGA如虎添翼,带来了传统FPGA所不及的很多优势,势必在各种数据加速应用中发挥巨大的作用。KlCednc

NoCSpeedster 7t FPGA带来的优势

Achronix Speedster 7t FPGA拥有支持单通道速率112Gbps的SerDes、400G以太网MAC、PCIe GEN5控制器以及带宽高达4Tbps带宽的GDDR6控制器,为各种数据加速应用提供了高带宽的I/O接口和高带宽的存储器。在这类应用中,会有大量的数据进入FPGA进行处理,处理后的数据会通过FPGA输出,所以除了FPGA算力以外,数据移动速度直接决定了器件的性能以及用户的体验。为了提高数据传输速率,Achronix在Speedster 7t FPGA中专门设计了不同于传统FPGA数据移动通道的片上网络。如图6所示。这是一个可横跨和垂直跨越FPGA逻辑阵列的创新性的、高带宽的二维片上网络(2D NoC),它不仅可以连接到所有FPGA高速接口、高带宽存储器接口,还可以作为内部逻辑之间的互连。KlCednc

KlCednc

图6 Speedster 7t片上网络(NoC)结构KlCednc

Speedster 7t FPGA上的二维片上网络(2D NoC)不是由可编程逻辑搭建,而是固化的ASIC逻辑实现,固定运行频率为2GHz,每一行或者每一列的NoC都可以作为两个单向256位实现双向的通路,所以每个方向可提供512Gbps的带宽,整个网络总带宽则能达到27Tbps。KlCednc

下面的表格列出了Speedster 7t FPGA中NoC的特性。KlCednc

KlCednc

NoC为FPGA提供了以下几项重要优势:KlCednc

后面我们会继续深入了解Speedster 7t FPGA上的二维片上网络(2D NoC),并且会用一些具体的设计来讲解如何在Speedster 7t FPGA上使用NoC以及NoC给FPGA设计带来的好处,敬请期待。KlCednc

参考文献:KlCednc

  1. The SoC Interconnect Fabric: A Brief History by Kurt Shuler 2013
  2. AMBA specification 2.0
  3. A comparison of Network-on-Chip and Busses by Arteris
  4. 片上通信结构-共享总线和NoC的分析与比较 周文彪,张岩,毛志刚 2007
  5. Achronix website www.achronix.com
  • 微信扫一扫
    一键转发
  • 最前沿的电子设计资讯
    请关注“电子技术设计微信公众号”
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了