Network-on-Chip Programmable Platform in VersalTM ACAP Architecture

1 INTRO

在 FPGA上设计的电路日渐复杂,存储器带宽日渐增加和设计者更加关注面向需求的专用电路设计这三个因素共同推动着 FPGA 架构的演进。

随着制程提升,金属的线电阻不断增加,造成互连延迟增加,FPGA 布线时关键路径上的时延增加。

传统的 FPGA 互连面临两个问题,一是逻辑资源,二是设计的最高频率和关键路径时延无法被事先得知。
2 NoC


  • 支持 QoS

Quality of service is the ability to provide different priorities to different applications, users, or data flows, or to guarantee a certain level of performance to a data flow.

  • 包含虚拟通道

3 Versal NoC

Versal 架构

NoC 在芯片中扮演两个角色:

  1. 为芯片中所有资源提供永久的可统一寻址的互连
  2. 可以代替可编程逻辑提供开关和路由功能

Versal NoC 数据包传输结构:AXI/AXI-S

loading-ag-351

Versal NoC 拓扑:

Versal NoC 可以分为两部分:HNoC 和 VNoC

HNoC 水平分布,上下连接芯片中的硬核,VNoC 垂直分布,连接可编程结构。 VNoC 不是独立的互连结构,其像 DSP 一样作为一个硬核集成在可编程结构中。

Versal NoC 的一个重要作用是高效管理各模块对 DDR 的访问,VNoC 的频率和带宽与 DDR 相匹配:

<mark>For example, a device with 64 bit DDR4 3200 has 25.6GBps bandwidth. A VNoC running at 1GHz has two physical channels supporting upto 16GBps each per direction.</mark>

NoC 支持可编程交织式的使用内存,将所有内存看做一个存储池,交织式的在每一个 DDR 上操作 128B 到 4KB 的空间。

 Versal NoC 的路由表是可编程的(不同的设计用到的资源和连接不同),NoC 在多个 DIE 上是逻辑统一的。

4 基于 Versal NoC 的设计


与 SoC 中的 NoC 相比,Versal NoC 是可编程的,其拓扑,带宽和 QoS 都可以自定义,其允许所有可能的点对点通信。

5 结论


使用可编程逻辑实现 NoC 时,NoC 能够提供的带宽与计算节点的放置位置相关,而 NoC 硬核能够提供的带宽则不受位置影响。NoC 的编程和优化远快于可编程逻辑布局布线。