CN105187313A - 一种片上网络拓扑结构及其自适应路由方法 - Google Patents
一种片上网络拓扑结构及其自适应路由方法 Download PDFInfo
- Publication number
- CN105187313A CN105187313A CN201510622183.5A CN201510622183A CN105187313A CN 105187313 A CN105187313 A CN 105187313A CN 201510622183 A CN201510622183 A CN 201510622183A CN 105187313 A CN105187313 A CN 105187313A
- Authority
- CN
- China
- Prior art keywords
- port
- node
- sent
- present node
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明一种片上网络拓扑结构及其自适应路由方法,属于片上网络领域,本发明路由平均跳数和网络直径都更小,H-annular?Mes具结构采用折半的连线,避免长连线在网络结构较大时带来的延迟问题,并没有为了提升访问速度来消耗更多的资源和空间;本发明采用基于局部阻塞判断的自适应路由方法,不再被动的执行路由策略,而是通过对路由环境中阻塞信息的监控,结合“最短路径策略”,动态的调整下一跳的路由节点,尽可能规避阻塞严重或出现故障的路由节点,使数据通道的选择能够根据阻塞情况自主调整,减小路由延迟提高数据的传输效率;路由方法具有的较高自适应性可以让数据尽可能节省时间地传输到目的地址。
Description
技术领域
本发明属于片上网络领域,具体涉及一种片上网络拓扑结构及其自适应路由方法。
背景技术
随着集成电路技术的飞速发展,系统规模越来越大,时钟频率越来越高,传统总线时钟和功耗方面的问题越来越难以解决;片上网络(NetworkonChip,NoC)可以很好的解决这些问题,已逐渐成为片上多核的标准通信架构;
目前,大多数片上网络采用最典型的2D-Mesh(二维网格)结构或者2D-Torus(二维环状)结构;2D-Mesh拓扑结构,其节点之间的连线方式比较简单,路由方法和物理实现难度相对较低,占用的片上资源比较少;但是随着网络直径的增加,节点间的距离会增大,导致路由延迟大大增加,数据传输效率大大降低;2D-Torus拓扑结构的每一个路由节点都与四个方向的路由节点相连接,每个节点的结构相同,使得其具有很好的可扩展性,且其路由路径的多样性有效降低了阻塞的发生,提高了网络的传输效率;但是,基于2D-Torus拓扑结构的片上网络,由于增加了首尾节点的长连线,会增加传输延迟,带来路由死锁的问题;若采用虚拟通道的方法来解决这个问题,会占据大量的片上资源,并不利于硬件实现,从而无法体现出片上网络的优越性;
此外,片上网络路由方法的设计对于片上网络的性能也是至关重要的;路由方法的设计目标在于是否能够有效地避免阻塞的发生,充分利用片上网络的空闲资源,以此来改善片上网络的延迟和吞吐率;同时路由方法的设计还要尽可能少的占用片上资源,减小片上网络的功耗;现在,大多数片上网络采用确定性路由方法,当源节点和目的节点确定后,其传输的路径也就确定了,当该路径上某一节点发生阻塞时,数据包会停止路由进行等待;因此,这种路由方法增加了网络传输的延迟,导致整个网络负载的不平衡。
发明内容
针对现有技术的不足,本发明提出一种片上网络拓扑结构及其自适应路由方法,以达到减小路由平均跳数和网络直径,实现根据阻塞情况自主调整,减小路由延迟,提高数据的传输效率的目的。
一种片上网络拓扑结构,该片上网络拓扑结构为一个N×N的H-annularMesh(半环形网格)片上网络拓扑结构。
所述的N为偶数时,将片上网络中每一行中间的两个节点与该行的首尾节点相连接,将片上网络中每一列中间的两个节点与该列的首尾节点相连接。
所述的N为奇数时,将每一行中间节点左右两侧的节点与首尾节点相连接,将每一列中间节点上下两侧的节点与首尾节点相连接。
该片上网络拓扑结构x方向上新增连接线的方向为Tx方向,y方向上新增连接线的方向为Ty方向。
所述的节点即为路由器,其中,既有Tx方向连线又有Ty方向连线的路由器有7个端口,包括:本地端口、东向端口、西向端口、南向端口、北向端口、Tx端口和Ty端口;只有Tx方向或Ty方向连线的路由器有6个端口,包括:本地端口、东向端口、西向端口、南向端口、北向端口、Tx端口或Ty端口;其余的路由器有5个端口,包括:本地端口、东向端口、西向端口、南向端口和北向端口。
采用所述的片上网络拓扑结构进行的自适应路由方法,包括以下步骤:
步骤1、在片上网络拓扑结构中,根据用户发送请求信息确定源节点和目的节点;
步骤2、判断当前节点本身是否为目的节点,若是,则将要求发送的数据发送至当前节点的本地端口,否则,执行步骤3;
步骤3、判断当前节点与目的节点之间的方向为东西方向之一、或南北方向之一、或东南方向、或西南方向、或东北方向、或西北方向,若为东西方向之一,则执行步骤4;若为南北方向之一,则执行步骤6;若为东南方向,则执行步骤8;若为西南方向,则执行步骤10;若为东北方向,则执行步骤12;若为西北方向,则执行步骤14;
步骤4、判断当前节点是否有Tx端口,若有,则执行步骤5;否则,将要求发送的数据发送至东向端口或西向端口;
步骤5、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,若有,则将要求发送的数据发送至Tx端口,否则,将要求发送的数据发送至东向端口或西向端口;
步骤6、判断当前节点是否有Ty端口,若有,则执行步骤7;否则,将要求发送的数据发送至南向端口或北向端口;
步骤7、判断当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Ty端口,否则,将要求发送的数据发送至南向端口或北向端口;
步骤8、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤9;
步骤9、判断当前节点的东向端口和南向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至东向端口或南向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至东向端口或南向端口;
步骤10、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤11;
步骤11、判断当前节点的西向端口和南向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至西向端口或南向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至西向端口或南向端口;
步骤12、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤13;
步骤13、判断当前节点的东向端口和北向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至东向端口或北向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至东向端口或北向端口;
步骤14、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤15;
步骤15、判断当前节点的西向端口和北向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至西向端口或北向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至西向端口或北向端口;
步骤16、返回执行步骤2,直至当前节点为目的节点。
步骤2所述的当前节点,初始时为源节点。
步骤8所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤9,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤10所述的将要求发送的数据发送至Tx端口或Ty端口,需要首先判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤11,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤12所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤13,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤14所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤15,若否,则将要发送的数据发送至相应的Tx端口或Ty端口。
步骤4所述的判断当前节点是否有Tx端口,具体为:
当x=0、x=N-1、和时,当前节点具有Tx端口,当不满足上述条件时,当前节点不具有Tx端口;其中,x表示网络节点的横坐标,x=0,1,...,N-1;N表示网络每行或每列的节点个数;当N为偶数时,则T=N,Q=0;当N为奇数时,则T=N-1,Q=1;
步骤6所述的判断当前节点是否有Ty端口,具体为:
当y=0、y=N-1、和时,当前节点具有Ty端口,当不满足上述条件时,当前节点不具有Ty端口;其中,y表示网络节点的纵坐标,y=0,1,...,N-1。
步骤5所述的判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,具体如下:
当x=0时,则目的节点在当前节点的东向,则进一步判断x_dst是否等于x+i,若是,则当前节点将数据发送到东向端口进行输出;否则,当前节点将数据发送到Tx端口进行输出;其中,x_dst表示目的节点的横坐标;x表示网络节点的横坐标,x=0,1,...,N-1;N表示网络每行或每列的节点个数;当N为偶数时,则T=N,Q=0;当N为奇数时,则T=N-1,Q=1;i=1,2,…,t,t为整数,且
当x=N-1时,则目的节点在当前节点的西向,则进一步判断x_dst是否等于x-i,若是,则当前节点将数据发送到西向端口进行输出;否则,当前节点将数据发送到Tx端口进行输出;
当时,若x_dst=x-i,即目的节点在当前节点的西向,则当前节点将数据发送到西向端口进行输出;
当时,若即目的节点在当前节点的西向,且目的节点与当前节点之间有Tx方向的连线,则当前节点将数据发送到Tx方向端口输出;
当时,若x_dst=x+i,即目的节点在当前节点的东向,则当前节点将数据发送到东向端口进行输出;
当时,若x_dst=x-i,即目的节点在当前节点的西向,则当前节点将数据发送到西向端口进行输出;
当时,若即目的节点在当前节点的东向,且目的节点与当前节点之间有Tx方向的连线,则当前节点将数据发送到Tx端口输出;
当时,若x_dst=x+i,即目的节点在当前节点的东向,则当前节点将数据发送到东向端口进行输出;
当不满足上述条件时,则进一步判断x_dst是否等于x-i,其中i=1,2,…,t,t为整数,且此时t≤x,若是,则目的节点在当前节点的西向,当前节点将数据发送到西向端口进行输出;否则,目的节点在当前节点的东向,当前节点将数据发送到东向端口进行输出;
步骤7所述的判断当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,具体如下:
当y=0时,则目的节点在当前节点的北向,则进一步判断y_dst是否等于y+i,其中i=1,2,…,t,t为整数,且是,则当前节点将数据发送到北向端口进行输出;否则,当前节点将数据发送到Ty端口进行输出;其中,y_dst表示目的节点的纵坐标;y表示网络节点的纵坐标,y=0,1,...,N-1;
当y=N-1时,则目的节点在当前节点的南向,则进一步判断y_dst是否等于y-i,若是,则当前节点将数据发送到南向端口进行输出;否则,当前节点将数据发送到Ty端口进行输出。
当时,则若y_dst=y-i,即目的节点在当前节点的南向,则当前节点将数据发送到南向端口进行输出;
当时,若即目的节点在当前节点的南向,且目的节点与当前节点之间有Ty方向的连线,则当前节点将数据发送到Ty端口输出;
当时,若y_dst=y+i,即目的节点在当前节点的北向,则当前节点将数据发送到北向端口进行输出;
当时,若y_dst=y-i,即目的节点在当前节点的南向,则当前节点将数据发送到南向端口进行输出;
当时,若即目的节点在当前节点的北向,且目的节点与当前节点之间有Ty方向的连线,则当前节点将数据发送到Ty端口输出;
当时,若y_dst=y+i,即目的节点在当前节点的北向,则当前节点将数据发送到北向端口进行输出;
当不满足上述条件时,则进一步判断y_dst是否等于y-i,其中i=1,2,…,t,t为整数,且此时t≤y,若是,则目的节点在当前节点的南向,当前节点将数据发送到南向端口进行输出;否则,目的节点在当前节点的北向,当前节点将数据发送到北向端口进行输出。
本发明优点:
本发明提出的一种片上网络拓扑结构及其自适应路由方法,本发明在路由平均跳数和网络直径方面,与2D-Mesh型拓扑结构相比,其路由平均跳数和网络直径都更小,具有和2D-Torus拓扑结构相同的优势;而且,H-annularMesh(半环形网格)结构采用折半的连线,避免了2D-Torus拓扑结构的长连线在网络结构较大时带来的延迟问题,而且其访问路由节点的速度不亚于2D-Torus结构的片上网络,并没有为了提升访问速度来消耗更多的资源和空间,其硬件实现的复杂度低于2D-Torus结构的片上网络;本发明采用基于局部阻塞判断的自适应路由方法,不再被动的执行路由策略,而是通过对路由环境中阻塞信息的监控,结合“最短路径策略”,动态的调整下一跳的路由节点,尽可能规避阻塞严重或出现故障的路由节点,使数据通道的选择能够根据阻塞情况自主调整,从而减小路由延迟,提高数据的传输效率;路由方法具有的较高自适应性可以让数据尽可能节省时间地传输到目的地址。
附图说明
图1为本发明一种实施例的6×6个节点的H-AnnularMesh片上网络结构图;
图2为本发明一种实施例的7×7个节点的H-AnnularMesh片上网络结构图。
具体实施方式
下面结合附图对本发明一种实施例做进一步说明。
本发明实施例中,片上网络拓扑结构为一个N×N的H-annularMesh片上网络拓扑结构;所述的N为偶数时,将网络中每一行中间的两个节点与该行的首尾节点相连接,将网络中每一列中间的两个节点与该列的首尾节点相连接;所述的N为奇数时,将每一行中间节点左右两侧的节点与首尾节点相连接,将每一列中间节点上下两侧的节点与首尾节点相连接;
本发明实施例中,如图1所示,以6×6个节点的片上网络为例,即在每一行上共有6个路由节点,每一列上也共有六个路由节点;其中左下角为(0,0)节点,右上角为(5,5)节点,x和y坐标沿着右侧和上侧方向依次递增;x方向上新增连接线的方向称之为Tx方向,而y方向上新增连接线的方向则称之为Ty方向,例如:在第一行中,(0,0)节点与(2,0)节点和(0,2)节点相连接,那么当(0,0)节点访问在水平方向上距离大于或等于2的节点时,或者在竖直方向上访问节点距离大于或等于2的节点时,则不必再像之前的2D-Mesh结构依次对节点进行路由,而直接可以访问其中间节点,再继续路由过程。这样就缩减了路由路径的长度,降低了整个网络的网络延迟;当N为奇数时,7×7个节点的片上网络拓扑结构示意图如图2所示。
本发明实施例中,节点即为路由器,其中,既有Tx方向连线又有Ty方向连线的路由器有7个端口,包括:本地端口、东向端口、西向端口、南向端口、北向端口、Tx端口和Ty端口;只有Tx方向或Ty方向连线的路由器有6个端口,包括:本地端口、东向端口、西向端口、南向端口、北向端口、Tx端口或Ty端口;其余的路由器有5个端口,包括:本地端口、东向端口、西向端口、南向端口和北向端口;
对于N×N的H-annularMesh片上网络,采用基于局部阻塞判断的自适应路由方法,所述基于局部阻塞判断的自适应路由算法的原理为:不再执行确定性的路由策略,而是在路由过程中对路由环境中的阻塞信息进行监控,同时结合“最短路径策略”,动态的调整下一跳的路由节点,尽可能规避阻塞严重或出现故障的路由节点,从而减小路由延迟,提高片上网络的吞吐率,即在当前路由节点进行路由计算前,首先检测路由方向上的局部阻塞信号,优先选择状态为空闲的路由节点;
本发明实施例以6×6的H-AnnularMesh片上网络为例,阐述自适应路由方法:
步骤1、在网络拓扑结构中,根据用户发送请求信息确定源节点和目的节点;
本发明实施例中,设定源节点为S(x_s,y_s),目的节点为D(x_dst,y_dst),当前节点为C(x,y)。路由开始时,当前节点即为源节点,即C(x,y)=S(x_s,y_s);同时每个路由节点具有8个方位,分别为东、南、西、北、东北、东南、西北和西南;节点即为路由器,其中,既有Tx方向连线又有Ty方向连线的路由器有7个端口,包括:本地端口、东向端口、西向端口、南向端口、北向端口、Tx端口和Ty端口;只有Tx方向或Ty方向连线的路由器有6个端口,包括:本地端口、东向端口、西向端口、南向端口、北向端口、Tx端口或Ty端口;其余的路由器有5个端口,包括:本地端口、东向端口、西向端口、南向端口和北向端口;同时设定该H-annularMesh片上网络的(0,0)节点位于该片上网络的左下角;
步骤2、判断当前节点本身是否为目的节点,若是,则将要求发送的数据发送至当前节点的本地端口,否则,执行步骤3;
步骤3、判断当前节点与目的节点之间的方向为东西方向之一、或南北方向之一、或东南方向、或西南方向、或东北方向、或西北方向,若为东西方向之一,则执行步骤4;若为南北方向之一,则执行步骤6;若为东南方向,则执行步骤8;若为西南方向,则执行步骤10;若为东北方向,则执行步骤12;若为西北方向,则执行步骤14;
步骤4、判断当前节点是否有Tx端口,若有,则执行步骤5;否则,将要求发送的数据发送至东向端口或西向端口;
步骤5、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,若有,则将要求发送的数据发送至Tx端口,否则,将要求发送的数据发送至东向端口或西向端口;
本发明实施例中,若x=0,说明当前节点具有Tx方向的连线,目的节点在当前节点的东向,则进一步判断x_dst是否等于x+1,若是,则当前节点将数据发送到东向端口进行输出;否则,当前节点将数据发送到Tx端口进行输出;
本发明实施例中,若x=5,说明当前节点具有Tx方向的连线,目的节点在当前节点的西向,则进一步判断x_dst是否等于x-1,若是,则当前节点将数据发送到西向端口进行输出;否则,当前节点将数据发送到Tx方向端口进行输出;
本发明实施例中,若x=2,说明当前节点具有Tx方向的连线,则
●若x_dst=x-1,即目的节点在当前节点的西向,则当前节点将数据发送到西向端口进行输出;
●若x_dst=x-2,即目的节点在当前节点的西向,且目的节点与当前节点之间有Tx的连线,则当前节点将数据发送到Tx方向端口输出;
●若x_dst=x+i,其中i=1,2,3,即目的节点在当前节点的东向,则当前节点将数据发送到东向端口进行输出;
本发明实施例中,若x=3,说明当前节点具有Tx方向的连线,则
●若x_dst=x-i,其中i=1,2,3,即目的节点在当前节点的西向,则当前节点将数据发送到西向端口进行输出;
●若x_dst=x+2,即目的节点在当前节点的东向,且目的节点与当前节点之间有Tx的连线,则当前节点将数据发送到Tx方向端口输出;
●若x_dst=x+1,即目的节点在当前节点的东向,则当前节点将数据发送到东向端口进行输出;
若不满足上述条件,说明当前节点不具有Tx方向的连线,则进一步判断x_dst是否等于x-i,其中i=1,2,…,t,t为整数,且t≤x,若是,即目的节点在当前节点的西向,则当前节点将数据发送到西向端口进行输出;否则,即目的节点在当前节点的东向,则当前节点将数据发送到东向端口进行输出;
步骤6、判断当前节点是否有Ty端口,若有,则执行步骤7;否则,将要求发送的数据发送至南向端口或北向端口;
步骤7、判断当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Ty端口,否则,将要求发送的数据发送至南向端口或北向端口;
本发明实施例中,若y=0,说明当前节点具有Ty方向的连线,目的节点在当前节点的北向,则进一步判断y_dst是否等于y+1,若是,则当前节点将数据发送到北向端口进行输出;否则,当前节点将数据发送到Ty方向端口进行输出。
本发明实施例中,若y=5,说明当前节点具有Ty方向的连线,目的节点在当前节点的南向,则进一步判断y_dst是否等于y-1,若是,则当前节点将数据发送到南向端口进行输出;否则,当前节点将数据发送到Ty方向端口进行输出。
本发明实施例中,若y=2,说明当前节点具有Ty方向的连线,则
●若y_dst=y-1,即目的节点在当前节点的南向,则当前节点将数据发送到南向端口进行输出;
●若y_dst=y-2,即目的节点在当前节点的南向,且目的节点与当前节点之间有Ty的连线,则当前节点将数据发送到Ty方向端口输出;
●若y_dst=y+i,其中i=1,2,3,即目的节点在当前节点的北向,则当前节点将数据发送到北向端口进行输出;
本发明实施例中,若y=3,说明当前节点具有Ty方向的连线,则
●若y_dst=y-i,其中i=1,2,3,即目的节点在当前节点的南向,则当前节点将数据发送到南向端口进行输出;
●若y_dst=y+2,即目的节点在当前节点的北向,且目的节点与当前节点之间有Ty的连线,则当前节点将数据发送到Ty方向端口输出;
●若y_dst=y+1,即目的节点在当前节点的北向,则当前节点将数据发送到北向端口进行输出;
本发明实施例中,若不满足上述条件,说明当前节点不具有Ty方向的连线,则进一步判断y_dst是否等于y-i,其中i=1,2,…,t,t为整数,且t≤y,若是,即目的节点在当前节点的南向,则当前节点将数据发送到南向端口进行输出;否则,即目的节点在当前节点的北向,则当前节点将数据发送到北向端口进行输出;
步骤8、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤9;
所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤9,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤9、判断当前节点的东向端口和南向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至东向端口或南向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至东向端口或南向端口;
本发明实施例中,采用pend信号作为传输方向上的局部阻塞信号,该信号为0时代表路由节点某一路由方向不阻塞,为1时代表路由节点的某一路由方向阻塞;所述pend信号,包括:pend_e信号、pend_w信号、pend_s信号、pend_n信号、pend_Tx信号和pend_Ty信号;所述pend_e信号代表东向输出路径的阻塞状态,所述pend_w信号代表西向输出路径的阻塞状态,所述pend_s信号代表南向输出路径的阻塞状态,所述pend_n信号代表北向输出路径的阻塞状态,所述pend_Tx信号代表Tx方向输出路径的阻塞状态,所述pend_Ty信号代表Ty方向输出路径的阻塞状态;
本发明实施例中,东向阻塞即pend_e=1而南向不阻塞即pend_s=0,则当前节点将数据发送到南向端口进行输出;否则,当前节点将数据发送到东向端口进行输出
步骤10、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤11;
所述的将要求发送的数据发送至Tx端口或Ty端口,需要首先判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤11,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤11、判断当前节点的西向端口和南向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至西向端口或南向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至西向端口或南向端口;
本发明实施例中,若西向阻塞即pend_w=1,而南向不阻塞即pend_s=0,则当前节点将数据发送到南向端口进行输出;否则,当前节点将数据发送到西向端口进行输出;
步骤12、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤13;
所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤13,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤13、判断当前节点的东向端口和北向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至东向端口或北向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至东向端口或北向端口;
本发明实施例中,若东向阻塞即pend_e=1而北向不阻塞即pend_n=0,则当前节点将数据发送到北向端口进行输出;否则,当前节点将数据发送到东向端口进行输出;
步骤14、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤15;
所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤15,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤15、判断当前节点的西向端口和北向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至西向端口或北向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至西向端口或北向端口;
本发明实施例中,若西向阻塞即pend_w=1而北向不阻塞即pend_n=0,则当前节点将数据发送到北向端口进行输出;否则,当前节点将数据发送到西向端口进行输出
步骤16、返回执行步骤2,直至当前节点为目的节点。
在片上网络中,任意两个路由节点间的坐标距离的最大值被称为网络直径;所以如果能够减小网络直径则能够改变网络传输的速度;对于6×6的2D-Mesh结构网络,其网络直径为10,而对于6×6的2D-Torus结构网络,其网络直径则为6;对于6×6的H-annularMesh网络,其网络直径则为从(0,0)节点到(5,5)节点的距离,也即为6;则三类拓扑结构的网络直径比较如表1所示。
表1三类拓扑结构的网络直径
可以看出,H-annularMesh在网络直径方面与2D-Torus结构没有区别,而优于2D-Mesh型片上网络。
当对网络中数据包到达目的节点的跳数取平均值时,就得到了网络路由平均跳数;一个片上网络的路由平均跳数直接决定了网络的吞度量与网络延迟;经过计算,得到三种不同类型拓扑结构的路由平均跳数如表2所示:
表2不同拓扑的网络直径和路由平均跳数
可以看出,H-annularMesh片上网络的路由平均跳数优于2D-Mesh型的片上网络;而且,2D-Torus网络中的首尾长连线导致链路形成了闭环,因此在传输数据包的过程中,容易发生死锁的问题,若采用虚拟通道的方法来解决这个问题,会占据大量的片上资源,并不利于硬件实现,从而无法体现出片上网络的优越性;而H-annularMesh结构采用折半的连线,避免了长连线在网络结构较大时带来的延迟问题,而且其访问路由节点的速度不亚于2D-Torus网络,并没有为了提升访问速度来消耗更多的资源和空间,其硬件实现的复杂度低于2D-Torus结构的片上网络;
通过以上分析可知,采用H-annularMesh拓扑结构的片上网络的通信性能从整体上优于采用2D-Mesh或2D-Torus拓扑结构的片上网络。
Claims (10)
1.一种片上网络拓扑结构,其特征在于,该片上网络拓扑结构为一个N×N的半环形Mesh网络拓扑结构。
2.根据权利要求1所述的片上网络拓扑结构,其特征在于,所述的N为偶数时,将片上网络中每一行中间的两个节点与该行的首尾节点相连接,将片上网络中每一列中间的两个节点与该列的首尾节点相连接。
3.根据权利要求1所述的片上网络拓扑结构,其特征在于,所述的N为奇数时,将每一行中间节点左右两侧的节点与首尾节点相连接,将每一列中间节点上下两侧的节点与首尾节点相连接。
4.根据权利要求1所述的片上网络拓扑结构,其特征在于,该片上网络拓扑结构x方向上新增连接线的方向为Tx方向,y方向上新增连接线的方向为Ty方向。
5.根据权利要求2或3所述的片上网络拓扑结构,其特征在于,所述的节点即为路由器,其中,既有Tx方向连线又有Ty方向连线的路由器有7个端口,包括:本地端口、东向端口、西向端口、南向端口、北向端口、Tx端口和Ty端口;只有Tx方向或Ty方向连线的路由器有6个端口,包括:本地端口、东向端口、西向端口、南向端口、北向端口、Tx端口或Ty端口;其余的路由器有5个端口,包括:本地端口、东向端口、西向端口、南向端口和北向端口。
6.采用权利要求1所述的片上网络拓扑结构进行的自适应路由方法,其特征在于,包括以下步骤:
步骤1、在片上网络拓扑结构中,根据用户发送请求信息确定源节点和目的节点;
步骤2、判断当前节点本身是否为目的节点,若是,则将要求发送的数据发送至当前节点的本地端口,否则,执行步骤3;
步骤3、判断当前节点与目的节点之间的方向为东西方向之一、或南北方向之一、或东南方向、或西南方向、或东北方向、或西北方向,若为东西方向之一,则执行步骤4;若为南北方向之一,则执行步骤6;若为东南方向,则执行步骤8;若为西南方向,则执行步骤10;若为东北方向,则执行步骤12;若为西北方向,则执行步骤14;
步骤4、判断当前节点是否有Tx端口,若有,则执行步骤5;否则,将要求发送的数据发送至东向端口或西向端口;
步骤5、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,若有,则将要求发送的数据发送至Tx端口,否则,将要求发送的数据发送至东向端口或西向端口;
步骤6、判断当前节点是否有Ty端口,若有,则执行步骤7;否则,将要求发送的数据发送至南向端口或北向端口;
步骤7、判断当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Ty端口,否则,将要求发送的数据发送至南向端口或北向端口;
步骤8、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤9;
步骤9、判断当前节点的东向端口和南向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至东向端口或南向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至东向端口或南向端口;
步骤10、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤11;
步骤11、判断当前节点的西向端口和南向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至西向端口或南向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至西向端口或南向端口;
步骤12、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤13;
步骤13、判断当前节点的东向端口和北向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至东向端口或北向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至东向端口或北向端口;
步骤14、判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,或当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,若有,则将要求发送的数据发送至Tx端口或Ty端口,否则,执行步骤15;
步骤15、判断当前节点的西向端口和北向端口是否有阻塞情况,若上述两个端口均阻塞,则等待阻塞情况消失后将要求发送的数据发送至西向端口或北向端口,若上述两个端口其中之一阻塞,则将要求发送的数据发送至未阻塞的端口,若上述两个端口均未阻塞,则通过轮转的方式将要求发送的数据发送至西向端口或北向端口;
步骤16、返回执行步骤2,直至当前节点为目的节点。
7.根据权利要求6所述的自适应路由方法,其特征在于,步骤2所述的当前节点,初始时为源节点。
8.根据权利要求6所述的自适应路由方法,其特征在于,
步骤8所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤9,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤10所述的将要求发送的数据发送至Tx端口或Ty端口,需要首先判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤11,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤12所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤13,若否,则将要发送的数据发送至相应的Tx端口或Ty端口;
步骤14所述的将要求发送的数据发送至Tx端口或Ty端口,需要判断对应的Tx端口或Ty端口是否有阻塞情况,若是,则执行步骤15,若否,则将要发送的数据发送至相应的Tx端口或Ty端口。
9.根据权利要求6所述的自适应路由方法,其特征在于,
步骤4所述的判断当前节点是否有Tx端口,具体为:
当x=0、x=N-1、和时,当前节点具有Tx端口,当不满足上述条件时,当前节点不具有Tx端口;其中,x表示网络节点的横坐标,x=0,1,...,N-1;N表示网络每行或每列的节点个数;当N为偶数时,则T=N,Q=0;当N为奇数时,则T=N-1,Q=1;
步骤6所述的判断当前节点是否有Ty端口,具体为:
当y=0、y=N-1、和时,当前节点具有Ty端口,当不满足上述条件时,当前节点不具有Ty端口;其中,y表示网络节点的纵坐标,y=0,1,...,N-1。
10.根据权利要求6所述的自适应路由方法,其特征在于,
步骤5所述的判断当前节点与目的节点之间的路径上是否有Tx方向连线且该连线属于当前节点的Tx端口,具体如下:
当x=0时,则目的节点在当前节点的东向,则进一步判断x_dst是否等于x+i,若是,则当前节点将数据发送到东向端口进行输出;否则,当前节点将数据发送到Tx端口进行输出;其中,x_dst表示目的节点的横坐标;x表示网络节点的横坐标,x=0,1,...,N-1;N表示网络每行或每列的节点个数;当N为偶数时,则T=N,Q=0;当N为奇数时,则T=N-1,Q=1;i=1,2,…,t,t为整数,且
当x=N-1时,则目的节点在当前节点的西向,则进一步判断x_dst是否等于x-i,若是,则当前节点将数据发送到西向端口进行输出;否则,当前节点将数据发送到Tx端口进行输出;
当时,若x_dst=x-i,即目的节点在当前节点的西向,则当前节点将数据发送到西向端口进行输出;
当时,若即目的节点在当前节点的西向,且目的节点与当前节点之间有Tx方向的连线,则当前节点将数据发送到Tx方向端口输出;
当时,若x_dst=x+i,即目的节点在当前节点的东向,则当前节点将数据发送到东向端口进行输出;
当时,若x_dst=x-i,即目的节点在当前节点的西向,则当前节点将数据发送到西向端口进行输出;
当时,若即目的节点在当前节点的东向,且目的节点与当前节点之间有Tx方向的连线,则当前节点将数据发送到Tx端口输出;
当时,若x_dst=x+i,即目的节点在当前节点的东向,则当前节点将数据发送到东向端口进行输出;
当不满足上述条件时,则进一步判断x_dst是否等于x-i,其中i=1,2,…,t,t为整数,且此时t≤x,若是,则目的节点在当前节点的西向,当前节点将数据发送到西向端口进行输出;否则,目的节点在当前节点的东向,当前节点将数据发送到东向端口进行输出;
步骤7所述的判断当前节点与目的节点之间的路径上是否有Ty方向连线且该连线属于当前节点的Ty端口,具体如下:
当y=0时,则目的节点在当前节点的北向,则进一步判断y_dst是否等于y+i,其中i=1,2,…,t,t为整数,且是,则当前节点将数据发送到北向端口进行输出;否则,当前节点将数据发送到Ty端口进行输出;其中,y_dst表示目的节点的纵坐标;y表示网络节点的纵坐标,y=0,1,...,N-1;
当y=N-1时,则目的节点在当前节点的南向,则进一步判断y_dst是否等于y-i,若是,则当前节点将数据发送到南向端口进行输出;否则,当前节点将数据发送到Ty端口进行输出;
当时,则若y_dst=y-i,即目的节点在当前节点的南向,则当前节点将数据发送到南向端口进行输出;
当时,若即目的节点在当前节点的南向,且目的节点与当前节点之间有Ty方向的连线,则当前节点将数据发送到Ty端口输出;
当时,若y_dst=y+i,即目的节点在当前节点的北向,则当前节点将数据发送到北向端口进行输出;
当时,若y_dst=y-i,即目的节点在当前节点的南向,则当前节点将数据发送到南向端口进行输出;
当时,若即目的节点在当前节点的北向,且目的节点与当前节点之间有Ty方向的连线,则当前节点将数据发送到Ty端口输出;
当时,若y_dst=y+i,即目的节点在当前节点的北向,则当前节点将数据发送到北向端口进行输出;
当不满足上述条件时,则进一步判断y_dst是否等于y-i,其中i=1,2,…,t,t为整数,且此时t≤y,若是,则目的节点在当前节点的南向,当前节点将数据发送到南向端口进行输出;否则,目的节点在当前节点的北向,当前节点将数据发送到北向端口进行输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510622183.5A CN105187313B (zh) | 2015-09-25 | 2015-09-25 | 一种片上网络拓扑结构及其自适应路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510622183.5A CN105187313B (zh) | 2015-09-25 | 2015-09-25 | 一种片上网络拓扑结构及其自适应路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105187313A true CN105187313A (zh) | 2015-12-23 |
CN105187313B CN105187313B (zh) | 2018-05-01 |
Family
ID=54909164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510622183.5A Active CN105187313B (zh) | 2015-09-25 | 2015-09-25 | 一种片上网络拓扑结构及其自适应路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105187313B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106953800A (zh) * | 2017-04-21 | 2017-07-14 | 中国人民解放军国防科学技术大学 | 一种基于片上网络的自适应垂直路由方法及路由单元 |
CN107306194A (zh) * | 2016-04-19 | 2017-10-31 | 华为技术有限公司 | 网络系统和网络系统的构建方法 |
CN109391547A (zh) * | 2017-08-11 | 2019-02-26 | 黄吉川 | 网络拓扑系统及其拓扑建立方法 |
CN112613266A (zh) * | 2020-12-02 | 2021-04-06 | 海光信息技术股份有限公司 | 一种片上网络拓扑结构、路由路径确定方法、装置及电子设备 |
US20220188490A1 (en) * | 2019-12-27 | 2022-06-16 | Arteris, Inc. | SYSTEM AND METHOD TO GENERATE A NETWORK-ON-CHIP (NoC) DESCRIPTION USING INCREMENTAL TOPOLOGY SYNTHESIS |
US11657203B2 (en) | 2019-12-27 | 2023-05-23 | Arteris, Inc. | Multi-phase topology synthesis of a network-on-chip (NoC) |
US11675942B2 (en) | 2020-12-26 | 2023-06-13 | Arteris, Inc. | Optimization of parameters for synthesis of a topology using a discriminant function module |
US11956127B2 (en) | 2021-03-10 | 2024-04-09 | Arteris, Inc. | Incremental topology modification of a network-on-chip |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11418448B2 (en) | 2020-04-09 | 2022-08-16 | Arteris, Inc. | System and method for synthesis of a network-on-chip to determine optimal path with load balancing |
US11601357B2 (en) | 2020-12-22 | 2023-03-07 | Arteris, Inc. | System and method for generation of quality metrics for optimization tasks in topology synthesis of a network |
US11449655B2 (en) | 2020-12-30 | 2022-09-20 | Arteris, Inc. | Synthesis of a network-on-chip (NoC) using performance constraints and objectives |
US12067335B2 (en) | 2022-04-11 | 2024-08-20 | Arteris, Inc. | Automatic configuration of pipeline modules in an electronics system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267315A (zh) * | 2008-04-18 | 2008-09-17 | 清华大学 | 用于片上网络的一种不规则拓扑结构生成方法 |
CN101505271A (zh) * | 2009-02-26 | 2009-08-12 | 浙江大学 | 面向层次形全连通的片上网络的核映射方法 |
CN102724115A (zh) * | 2012-06-04 | 2012-10-10 | 复旦大学 | 一种适用于片上网络系统的链路层容错电路设计 |
US20130054811A1 (en) * | 2011-08-23 | 2013-02-28 | Kalray | Extensible network-on-chip |
CN103761212A (zh) * | 2014-01-21 | 2014-04-30 | 电子科技大学 | 片上网络中任务与节点间映射方案与拓扑结构的设计方法 |
CN103986664A (zh) * | 2014-05-15 | 2014-08-13 | 厦门大学 | 一种用于片上网络的混合互连Mesh拓扑结构及其路由算法 |
US20140328172A1 (en) * | 2013-05-03 | 2014-11-06 | Netspeed Systems | Congestion control and qos in noc by regulating the injection traffic |
-
2015
- 2015-09-25 CN CN201510622183.5A patent/CN105187313B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267315A (zh) * | 2008-04-18 | 2008-09-17 | 清华大学 | 用于片上网络的一种不规则拓扑结构生成方法 |
CN101505271A (zh) * | 2009-02-26 | 2009-08-12 | 浙江大学 | 面向层次形全连通的片上网络的核映射方法 |
US20130054811A1 (en) * | 2011-08-23 | 2013-02-28 | Kalray | Extensible network-on-chip |
CN102724115A (zh) * | 2012-06-04 | 2012-10-10 | 复旦大学 | 一种适用于片上网络系统的链路层容错电路设计 |
US20140328172A1 (en) * | 2013-05-03 | 2014-11-06 | Netspeed Systems | Congestion control and qos in noc by regulating the injection traffic |
CN103761212A (zh) * | 2014-01-21 | 2014-04-30 | 电子科技大学 | 片上网络中任务与节点间映射方案与拓扑结构的设计方法 |
CN103986664A (zh) * | 2014-05-15 | 2014-08-13 | 厦门大学 | 一种用于片上网络的混合互连Mesh拓扑结构及其路由算法 |
Non-Patent Citations (3)
Title |
---|
HANGSHENG WANG, LI-SHIUAN PEH, S. MALIK: "A technology-aware and energy-oriented topology exploration for on-chip networks", 《DESIGN, AUTOMATION AND TEST IN EUROPE, 2005. PROCEEDINGS》 * |
QUANSHENG YANG , ZHEKAI WU: "An Improved Mesh Topology and Its Routing Algorithm for NoC", 《COMPUTATIONAL INTELLIGENCE AND SOFTWARE ENGINEERING (CISE), 2010 INTERNATIONAL CONFERENCE ON》 * |
杜加琴: "片上网络的拓扑结构设计和路由算法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107306194A (zh) * | 2016-04-19 | 2017-10-31 | 华为技术有限公司 | 网络系统和网络系统的构建方法 |
CN107306194B (zh) * | 2016-04-19 | 2019-12-06 | 华为技术有限公司 | 网络系统和网络系统的构建方法 |
CN106953800A (zh) * | 2017-04-21 | 2017-07-14 | 中国人民解放军国防科学技术大学 | 一种基于片上网络的自适应垂直路由方法及路由单元 |
CN106953800B (zh) * | 2017-04-21 | 2019-12-17 | 中国人民解放军国防科学技术大学 | 一种基于片上网络的自适应垂直路由方法及路由单元 |
CN109391547A (zh) * | 2017-08-11 | 2019-02-26 | 黄吉川 | 网络拓扑系统及其拓扑建立方法 |
CN109391547B (zh) * | 2017-08-11 | 2021-08-31 | 黄吉川 | 一种网络拓扑系统及其拓扑建立与路由表建立方法 |
US20220188490A1 (en) * | 2019-12-27 | 2022-06-16 | Arteris, Inc. | SYSTEM AND METHOD TO GENERATE A NETWORK-ON-CHIP (NoC) DESCRIPTION USING INCREMENTAL TOPOLOGY SYNTHESIS |
US11657203B2 (en) | 2019-12-27 | 2023-05-23 | Arteris, Inc. | Multi-phase topology synthesis of a network-on-chip (NoC) |
US11748535B2 (en) * | 2019-12-27 | 2023-09-05 | Arteris, Inc. | System and method to generate a network-on-chip (NoC) description using incremental topology synthesis |
CN112613266A (zh) * | 2020-12-02 | 2021-04-06 | 海光信息技术股份有限公司 | 一种片上网络拓扑结构、路由路径确定方法、装置及电子设备 |
US11675942B2 (en) | 2020-12-26 | 2023-06-13 | Arteris, Inc. | Optimization of parameters for synthesis of a topology using a discriminant function module |
US11956127B2 (en) | 2021-03-10 | 2024-04-09 | Arteris, Inc. | Incremental topology modification of a network-on-chip |
Also Published As
Publication number | Publication date |
---|---|
CN105187313B (zh) | 2018-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105187313A (zh) | 一种片上网络拓扑结构及其自适应路由方法 | |
JP5276220B2 (ja) | バス制御装置およびバス制御装置に指示を出力する制御装置 | |
CN101834789B (zh) | 面向包-电路交换片上路由器的回退转向路由算法及所用路由器 | |
JP2015165716A (ja) | Dragonflyプロセッサ相互接続ネットワークにおける革新的な適応型ルーティング | |
CN102387077B (zh) | 具有容错功能的热量均衡片上网络路径选择方法 | |
CN106254254B (zh) | 一种基于Mesh拓扑结构的片上网络通信方法 | |
CN104683242B (zh) | 一种二维片上网络的拓扑结构以及路由方法 | |
CN104022950B (zh) | 一种可共享和自配置缓存的路由器结构 | |
Uma et al. | Network-on-chip (noc)-routing techniques: A study and analysis | |
CN106209518B (zh) | 一种基于“包-电路”交换技术的动态转向路由算法 | |
Jeong et al. | Deadlock-free XY-YX router for on-chip interconnection network | |
Hu et al. | A symmetric odd-even routing model in network-on-chip | |
Karali et al. | Hybrid mocs for long-distance on-chip communications | |
CN106804048B (zh) | 一种基于二维网格的无线片上网络的通信机制 | |
Ren et al. | An improved security OLSR protocol against black hole attack based on FANET | |
Somisetty et al. | Congestion aware negative first routing with fair arbitration for network on chip | |
Adamu et al. | Review of deterministic routing algorithm for network-on-chip | |
Wang et al. | A routing-table-based adaptive and minimal routing scheme on network-on-chip architectures | |
Somisetty et al. | Regional Congestion Aware Odd Even Routing with Fair Arbitration for Network on Chip | |
Dadheech et al. | Fault-tolerant adaptive XY routing for multiprocessors in HPC network | |
Huang et al. | An adaptive congestion-aware routing algorithm for mesh network-on-chip platform | |
Zhang et al. | A cellular NoC architecture based on butterfly network coding (CBNoC) | |
Lan et al. | Fluidity concept for NoC: A congestion avoidance and relief routing scheme | |
Wang et al. | Flow control mechanism for wireless network-on-chip | |
Salemi et al. | Power-aware selection policy for networks on chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |