拓扑结构

NoC里Router之间的link链路连接可以定义成不同的结构以改变通信测量和简化片上通信结构。
(a)Ring:环形,每个router都有2个相邻节点,虽然部署和故障排除相对容易,但主要缺点是其通信的距离也即环形的直径会增大,通信路径单一不能优化,扩展节点数量时会降低系统性能。另一个缺点是,当一个节点出现错误时会使得通信之间出错(容易受到攻击)。
(b)Octagon :八角形,除了8个节点连接到环路上以外,对角线上共4对节点两两相连,比环形的扩展性更强。
(c)Star:星形,在星形结构的中间有一个中心节点,它连接着周围所有的节点,这样的星形结构使得所有节点互相传递消息的距离为2(先传给中心节点,再传给星角上的另一个)。星角上的节点是分离的,所以星角上节点故障时可以改进不会影响其他节点。缺点是有着通信的瓶颈,且中心节点出错时会影响全局通信。
(d)Mesh:网状,是最广泛使用的互联拓扑结构,每个路由器都通过通信通道连接到一个计算资源和四个相邻路由器(分别是North,south,west,east),每个router都通过通信通道连接到一个PE和四个相邻routers。这种拓扑结构可以容忍某处的链路故障,而且可以根据传递消息的布线策略选择路径最短的路径传播消息。但它的直径随着节点数量的增加而显着增加。
(e)Torus:环面拓扑,解决了网状拓扑直径随网络规模增加的挑战。这是通过在同一列或行中的端节点之间添加直接连接来实现,从头到尾减少了一半的跳转数。然而,它的长环绕链接可能会导致不当延迟。
(f)Folded torus:折叠环面拓扑,相比环面,他的四个均匀分布在一个环上,并不是直接将首尾相连。从而提供更短的链路长度,从而减少互连链路之间数据包的实施面积和遍历时间。与环面相比,折叠环面提供了更多的路径多样性,使其更具容错性。
(g)Butterfly:蝴蝶拓扑,把所有节点分到两边,中间加一层过渡节点,负责通路上通信的开关,成本比较低。但有的节点可能只有唯一路径,故缺乏路径多样性,导致链路容错性低,带宽低。通常需要很长的电线,相关的复杂电线布局会导致更多的能源消耗
(h)Binary Tree Network:二叉树形,由顶部(根)节点和底部(叶)节点组成,随着树长度的增加,网络配置变得更加复杂。而且如果父节点出错会导致之后所有子节点都出错。
(i)胖树拓扑:基于使用中间路由器作为转发路由器并将离开路由器连接到子节点,虽然这种拓扑结构提供了出色的路径多样性和更好的带宽,但路由器与客户端的比率非常高,布线布局也很复杂。
特殊的结构:比如立体的四边形结构,降低关联节点度和/或最小化网络直径,同时保持尽可能小的直径。其他自定义的结构,基于聚类的概念并适用于特定应用程序进行优化集群通信的优化。