微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 多核系统中NoC通讯架构的关键技术

多核系统中NoC通讯架构的关键技术

时间:02-24 来源:电子设计工程 点击:

占此路径中各段链路的整个带宽,无需做路由选择。

  (2)存储交换(Store and Forward Switching)是先将数据完全存储,然后进行路南决策,最后再转发到下一节点的一种交换机制。NoC中的存储交换主要以分组为流控单元,每个分组有一个分组头,含有源、目的节点地址以及其它控制信息。路由节点接收到一个分组后,先将整个分组存储在缓存器中,从分组头中获取路由信息由路由器的路南决策单元选择一条输出通道后,置位交叉矩阵中的内部连接,如果下一路由节点中有足够的空间存放此分组,就将此分组转发到下一路由节点。存储交换的优点是通道只在一个数据包需要传输的时候才被占用。

  (3)虚切通交换(Virtual Cut-throuth Switching)将分组进一步划分为更小的片,并按顺序排好,将所需的路由信息放入第一个片中,在无阻塞的情况下,路由节点收到头片后,从中读取路由信息,然后由路由决策单元负责选路,如果输出通道空闲,则将头片转发出去,后续片紧随头片向前路由,从而在较大程度上缩小了存储交换的时延。由于在任何一个节点上都可能有多条消息被阻塞,每一个节点都要提供能存储所要通过他的数据的存储空间。所以每一个节点都需要较大的存储空间。

  (4)虫孔交换(Wormhole Switching)是目前NoC中的主流交换机制。它和虚切通交换的思想基本相同,只是二者在发生阻塞时所表现出的行为不同。在虫孔交换中,数据包也被细分成片,以流水的方式在网络上传输,并且允许一个分组由一个片组成。头片中包含路由信息,其他数据片都跟随头片在他确定的路径上流动,就像虫子一样。当头片发生阻塞时,分组中的所有片都将停止前进,头片缓存在当前节点,数据片就地缓存在其后的若干个中间节点中。每个路由节点只需提供一个片大小的缓存资源。虫孔交换对数据包大小和路径长度不敏感,资源占用少,实现代价小,且效率高,适合NoC使用。虫孔交换的示意图如图10所示。

  虫孔交换结构的处理过程如下:数据包的片段到达虫孔交换结构,存储在输入通道缓存单元中,并进行路由计算。得到路由信息后,数据包提出传输请求,仲裁器根据请求进行带宽资源分配,一旦该数据片被允许传输,它将被交换到目的端口并投递出去,直到数据包的最后一个片段离开交换节点。根据此处理过程,虫孔交换电路的结构如图11所示,由缓存单元、路由计算单元、仲裁请求管理单元、交换分配和交换阵列5部分组成。

  

  在VLSI实现中,NoC交换节点多采用流水结构设计,一般流水处理结构分为路由计算、通道分配、交换分配、数据交换和传输等5级。在NoC设计中,总是希望得到良好的网络性能,从交换节点设计角度考虑,减少交换结构的流水处理级数是缩短网络延时的有效方法,流水处理级数越少,数据包通过交换节点的时间就越短。

  不同的NoC交换技术,对应着不同的网络性能和实现代价,要根据实际要求进行选择。

  6  片上网络面临的挑战

  为提高片上网络的资源单元处理速度,降低通信通路间以及资源单元互连问的通信延迟,片上网络的设计面临以下几方面挑战:

  (1)任务分配与调度,片上网络将通信任务分配到合适的处理单元,并且尽量以最佳方式为这些任务进行排序,此步骤是典型的多处理器系统的关键设计步骤。

  (2)网络分配,包括处理单元映射与路径分配。处理单元映射对系统功耗起着决定性的影响,路径分配则是对执行性能产生直接影响。

  (3)动态网络最佳化路径分配,对静态通信路径分配时,由于对即时性的要求较低,因此只要对现有的最短路径进行确认即可。但对于片上网络的动态通信而言,需要将计算机网络中的动态网络调度算法进行调整,应用到片上网络应用中。

  7 结束语

  NoC通讯方式是目前多核系统通讯结构中研究最为广泛的结构,也使得NoC成为当前研究热点,部分大学、研究所以及工业界的研究单位正积极从事NoC研究工作,但是NoC依然面临着许多技术挑战。在实际应用中,应根据系统的实际要求,选择合适的拓扑结构和交换技术,避免一味追求最新的技术而带来其他的问题。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top