CN104202241A - 2D-Mesh拓补结构下的片上网络偏转容错路由算法 - Google Patents
2D-Mesh拓补结构下的片上网络偏转容错路由算法 Download PDFInfo
- Publication number
- CN104202241A CN104202241A CN201410384174.2A CN201410384174A CN104202241A CN 104202241 A CN104202241 A CN 104202241A CN 201410384174 A CN201410384174 A CN 201410384174A CN 104202241 A CN104202241 A CN 104202241A
- Authority
- CN
- China
- Prior art keywords
- node
- current
- routing
- routing 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.)
- Pending
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
2D-Mesh拓补结构下的片上网络偏转容错路由算法属于片上网络容错路由方法领域,包括定义变量、全局路由器、基础的X-Y传输规则、边缘路由表和容错偏转决策模型,片上网络的初始化等步骤。本算法提出将片上网络中的节点根据其在2D-Mesh拓补结构下的片上网络中所处的位置,将各个节点划分为边缘节点和内部节点两大类,并分别针对这两大类的节点的各自特征有针对性地提出相对快捷的路径决策模型或转弯模型,从而帮助路由节点更为快捷地确定符合自身特征的当前任务最佳传送路径,大幅缩减了重复运算时间,并减少了数据计算量,有助于缓解和限制片上网络拥塞的产生,提高了整个片上网络的数据处理效率。本算法还具有成本低廉的优点。
Description
技术领域
本发明属于片上网络容错路由方法领域,具体涉及一种2D-Mesh拓补结构下的片上网络偏转容错路由算法。
背景技术
片上网络(network-on-chip,Noc)是在原有的片上系统(system-on-chip,Soc)通信方式上发展而来,是一种全新的片上通信机制。原有的片上系统是基于总线传输的方式,难以满足现在的网络传输需求,因此借鉴于计算机网络,产生了片上网络。基于片上网络(NoC)的系统能更好地适应在未来复杂多核片上系统(SoC)设计中使用的全局异步局部同步的时钟机制,在性能上显著优于原总线方式的片上系统。2D-mesh拓扑片上网络是由m行×n列的路由节点共同构成的二维路由矩阵,是具有普遍代表性的片上网络基本形式之一。片上网络中每一个节点包含一个交换机和IP核。在2D-Mesh网络中,一个节点不仅能传送和接收信息,还能充当路由器对其附近节点转发信息,随着更多节点的相互连接和可能的路径数量的增加,片上网络的总带宽会大大增加。并且如果某个路由器发生故障,信息由其他路由器通过备用路径传送,所以这种mesh片上网络结构稳定性强。
然而,一个路由器出现故障,失效的路由器是不能用的,因此这时候,片上网络已经被修改并形成不规律的新拓扑结构。如果路由算法按原有公知的X-Y初始路由方式而仅向失效的路由器继续发送数据包,片上网络将被阻塞,数据无法继续传递。因此,必须修改或重新配置路由算法以便适应新形成的片上网络拓补结构。设计一种适用于2D-Mesh拓补结构下的片上网络偏转容错路由算法成为亟待解决的研发课题。
目前,有人提出了使用虚拟信道来保证容错路由的无死锁特性,可以在一个有故障的路由或者有缺陷的区域之间使用虚拟信道按照某种路径发送数据包。但是此方法必须保证片上网络的硬件路由器成本非常低,需要额外的系统开销,片上网络日益增强的高复杂性和大面积的花费对于此方式效果不十分理想。
发明内容
为了解决现有使用虚拟信道来保证无死锁特性的容错路由算法成本高昂,无法满足片上网络日益增强的高复杂性和拓展需求,目前缺少适用于2D-Mesh拓补结构下的片上网络偏转容错路由算法以避免路由节点继续向已经拥塞或故障的邻近节点继续传递数据,进而造成片上网络长期被阻塞的技术问题,本发明提供一种2D-Mesh拓补结构下的片上网络偏转容错路由算法。
本发明解决技术问题所采取的技术方案如下:
2D-Mesh拓补结构下的片上网络偏转容错路由算法,其特征在于:该方法包括如下步骤:
步骤一:给m×n的2D-mesh拓扑片上网络定义变量、全局路由器、基础的X-Y传输规则、边缘路由表和容错偏转决策模型,其具体包括如下子步骤:
步骤1.1:分别定义变量,包括:内部路由节点、边缘路由节点和ping命令的测试超时时间;
内部路由节点:在m×n的2D-mesh拓扑片上网络上的一个当前路由节点,若与该当前路由节点直接相连的其它路由节点共有四个,则将这类有四个邻近路由节点的当前路由节点称为内部路由节点;
边缘路由节点:在m×n的2D-mesh拓扑片上网络上的一个当前路由节点,若与该当前路由节点直接相连的其它路由节点的总数不大于三个,则将这类至多有三个邻近路由节点的当前路由节点称为边缘路由节点;
ping命令的测试超时时间:定义一个确定的时间常数T,当前路由节点对其它邻近路由节点进行ping测试命令时,若被测试的路由节点在时长为T的时间段内一直没有反馈,则将该被测试路由节点所在的路径判定为非通路;
步骤1.2:定义基础的X-Y传输规则为:
2Dmesh拓扑的片上网络上,由m×n个路由节点组成的矩形阵列上的每一个路由节点都具有自己的唯一坐标,设任意一个路由节点A的坐标值(x,y),另外一个任意路由节点B的坐标值(p,q),则从路由节点A(x,y)始发并去往路由节点B(p,q)时,其遵循如下的基础规则:
当路由节点A(x,y)与B(p,q)的横坐标和纵坐标均不相同时,A(x,y)总是忽略纵坐标上的差值,并优先选择能使横坐标差值的绝对值缩小的那一个横轴上的邻近路由节点作为下一跳时的交付地址;
当路由节点A(x,y)与B(p,q)的横坐标相同但纵坐标不相同时,A(x,y)总是优先选择能使纵坐标差值的绝对值缩小的那一个纵轴上的邻近路由节点作为下一跳时的交付地址;
从路由节点A(x,y)始发并去往路由节点B(p,q)时,按上述基础X-Y传输规则所确定的总跳步数初始值T初的表达式为:
T初=|x-p|+|y-q|……(1)
步骤1.3:定义全局路由器:随机指定一个路由节点作为m×n的2D-mesh拓扑片上网络的全局路由器,并将该全局路由器在片上网络中的坐标分配给所有其他路由节点;
步骤1.4:定义任意确定路由节点与其他全部路由节点相对坐标位置关系的全局相对坐标关系路由表;该全局相对坐标关系路由表由步骤1.3所述的全局路由器按照步骤1.2所述基础的X-Y传输规则求解生成并存储;
所述全局相对坐标关系路由表中的每一行条目均与由步骤1.2所述的基础X-Y传输规则所确定的一条基础X-Y路径对应,该行条目顺次记载了以任意一个路由节点A为起点并以另外一个任意路由节点B为终点所形成的一条基础X-Y路径上的全部路由节点的坐标信息,并且也记载了沿该条基础X-Y路径的总跳步数初始值T初;
在当前传送任务中,当前的路由节点A禁止向刚刚给路由节点A传送数据的邻近节点反向回传数据,该限制一直持续到当前源节点顺利将信息传送到目的节点之后才予以解除;
步骤1.5:定义容错偏转决策模型,其具体包括如下子步骤:
步骤1.5.1:分别定义任意一个当前路由节点A向其自身的上、下、左、右四个临近路由节点:路由节点U、路由节点D、路由节点L或路由节点R交付任务数据包时的优先级顺序为:
从当前路由节点A出发,选择向路由节点U传送的优先级为最低;
从当前路由节点A出发,选择向路由节点D传送的优先级为最高;
从当前路由节点A出发,选择向路由节点R传送优先级为较高,而选择向路由节点L传送的优先级为较低;
步骤1.5.2:由当前路由节点A分别向与其如步骤1.5.1所述的四个临近路由节点分别发送如步骤1.1所述的ping命令测试以判断当前路径是否通路;
步骤1.5.3:由当前路由节点A将ping命令测试结果为非通路的各个临近路由节点的优先级在当前传送任务完成之前均暂时被降低为限制级;
步骤1.5.4:由当前路由节点A将当前优先级相对最高的临近路由节点作为下一跳的交付路由节点,并向该下一跳的交付路由节点传送全部任务数据;
步骤二:2D-mesh拓扑片上网络的初始化
步骤2.1:为2D-mesh拓扑片上网络指定一个具体的路由节点作为全局路由器;
步骤2.2:对全部路由节点进行初始化,为每一个路由节点都设定统一的如步骤1.1所述的时间常数T;
步骤2.3:将步骤2.1所述的全局路由器在片上网络中的坐标地址分配给其余全部路由节点;
步骤2.4:由全局路由器按照步骤1.4所述方法分别求得任意确定路由节点与其他全部路由节点相对坐标位置关系的全局相对坐标关系路由表;
步骤2.5:除全局路由器以外的每一个路由节点分别从步骤2.4所述全局相对坐标关系路由表中调取包含自身坐标的全部条目片段,并将这些片段合并成为本节点自身与其它节点的相对位置关系路由表,保存在该节点自身的缓存中;
步骤2.6:除全局路由器以外每一个路由节点对其自身所存储的本节点自身与其它节点的相对位置关系路由表进行运算,根据式(1)分别求解出本节点自身与其它节点的相对位置关系路由表中每一行条目对应下的由基于基础X-Y传输规则所确定的总跳步数的初始值T初;
步骤三:当m×n的2D-mesh拓扑片上网络开始一个以任意一个路由节点A为起点并以另外一个任意路由节点B为终点的数据传送任务时,将路由节点A称为数据源节点,并将目标路由节点B称为目标节点;
由当前的数据源节点根据其自身在片上网络内的坐标值进行判断,若其自身属于步骤1.1所述内部路由节点则将路由节点A重新计作由当前的内部数据源节点M并继续执行步骤四,若其自身属于步骤1.1所述边缘路由节点则将路由节点A重新计作当前的边缘数据源节点N并继续执行步骤五;
步骤四:内部路由节点的数据传输过程,其具体包括如下子步骤:
步骤4.1:由当前的内部数据源节点M从如步骤2.5所述的本节点自身与其它节点的相对位置关系路由表中查找包含有当前目标节点B的一行条目,从而获得由步骤1.2所述基于基础X-Y传输规则所确定的一条由当前的内部数据源节点M始发去往目标节点B的基础X-Y传输路径;
步骤4.2:由当前的内部数据源节点M向沿着步骤4.1所述基础X-Y传输路径上的下一个临近节点C发送ping命令测试包,以判断内部数据源节点M到下一个临近节点C的邻近路径是否通路;若该邻近路径为通路则执行步骤4.3,若该邻近路径为非通路则执行步骤4.4;
步骤4.3:由当前的内部数据源节点M将待传送的数据全部传送给步骤4.2所述的临近节点C,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.4:由步骤4.2所述的临近节点C判断,其自身是否已经收到携带有如步骤4.3所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤4.5,否则,重新执行步骤4.3;
步骤4.5:由步骤4.2所述的当前临近节点C判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则当前临近节点C将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述的临近节点C将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤4.6:由当前的内部数据源节点M判断,其自身的横坐标值与目标节点B的横坐标值是否相同,若其二者的横坐标值不同则执行步骤4.7,否则执行步骤4.8;
步骤4.7:按照步骤1.5所述容错偏转决策模型将全部数据传送至当前的数据源节点的下一邻近节点D,然后,该邻近节点D将其自身视作步骤4.3所述的临近节点C,并继续执行步骤4.4至步骤4.5所述过程;
步骤4.8:由当前的内部数据源节点M优先向沿着步骤4.1所述基础X-Y传输路径的X轴方向上的下一个临近节点E发送ping命令测试包,以判断内部数据源节点M到其在X轴方向上的下一个临近节点E的邻近路径是否通路;若该邻近路径为通路则执行步骤4.9,若该邻近路径为非通路则执行步骤4.7;
步骤4.9:由当前的内部数据源节点M将待传送的数据全部传送给步骤4.8所述的其在X轴方向上的下一个临近节点E,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.10:步骤4.9所述的当前节点E在收到由内部数据源节点M传来的全部数据后,当前节点E判断其自身的纵坐标值与目标节点B的纵坐标值是否相同,若其二者的纵坐标值相同,则执行步骤4.11,否则执行步骤4.12;
步骤4.11:步骤4.9所述的当前节点E判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则当前临近节点E将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述的临近节点E将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤4.12:由步骤4.9所述的当前节点E将数据包沿着能使当前节点E与目标节点B之间的纵坐标差值的绝对值进一步缩小的方向,将待传输的数据包全部传给该方向上的下一个临近节点F,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.13:由步骤4.12所述的当前临近节点F判断,其自身是否已经收到携带有如步骤4.12所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤4.14,否则,重新执行步骤4.12;
步骤4.14:由步骤4.12所述的当前临近节点F判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则由步骤4.12所述的当前临近节点F将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则由步骤4.12所述的当前临近节点F将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤五:内部路由节点的数据传输过程,其具体包括如下子步骤:
步骤5.1:由当前的边缘数据源节点N向其自身的各个邻近节点分别发送ping命令测试包,以判断当前的边缘数据源节点N到其下一个临近节点S(n)(n≤3,n取自然数)的邻近路径是否通路;若该邻近路径为通路则执行步骤5.2,若该邻近路径为非通路则在当前的传送任务全部完成之前,暂时禁止向该非通路的下一个临近节点S(n)传送数据;
步骤5.2:由当前的边缘数据源节点N分别从其如步骤5.1所述剩余的临近节点S(n剩)的路由表中调取如步骤2.5所述的该临近节点S(n剩)与其它节点的相对位置关系路由表,并分别获得以该临近节点S(n剩)为起点并去往目标节点B时,如步骤2.6所述的总跳步数的初始值T初S(n剩)(n≤3,n取自然数);
步骤5.3:由当前的边缘数据源节点N对步骤5.2所述的多个总跳步数的初始值T初S(n剩)(n≤3,n取自然数)进行比较和排序,并从中随机选择一个总跳步数初始值T初S(n剩)最小的临近节点S(n剩)作为边缘数据源节点N的数据交付节点K;
步骤5.4:由当前的边缘数据源节点N将待传输的数据包全部传给由步骤5.3所确定的数据交付节点K,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤5.5:由步骤5.4所述的当前数据交付节点K,其自身是否已经收到携带有如步骤5.3所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤5.6,否则,重新执行步骤5.4;
步骤5.6:由步骤5.4所述的当前数据交付节点K判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则所述当前数据交付节点K将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述当前数据交付节点K将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三。
本发明的有益效果是:本发明的偏转容错路由算法提出将片上网络中的节点根据其在2D-Mesh拓补结构下的片上网络中所处的位置,将各个节点划分为边缘节点和内部节点两大类,并分别针对这两大类的节点的各自特征有针对性地提出相对快捷的路径决策模型或转弯模型,从而帮助路由节点更为快捷地确定符合自身特征的当前任务最佳传送路径,大幅缩减了重复运算时间,并减少了数据计算量,有助于缓解和限制片上网络拥塞的产生,提高了整个片上网络的数据处理效率。此外,本路由算法还具有便于实施,成本低廉,适于推广应用的优点。
附图说明
图1是本发明当前的内部数据源节点M至目标节点B的绕行原理示意图。
具体实施方式
下面结合附图对本发明做进一步详细说明。
在如图1所示的2D-Mesh拓补网格结构中,同时与自身周围的四个邻近节点均有连接的节点称之为普通节点,而自身周围的邻近节点数少于四个,则称之为边缘节点。
一种2D-Mesh拓补结构下的片上网络偏转容错路由算法,该方法包括如下步骤:
步骤一:给m×n的2D-mesh拓扑片上网络定义变量、全局路由器、基础的X-Y传输规则、边缘路由表和容错偏转决策模型,其具体包括如下子步骤:
步骤1.1:分别定义变量,包括:内部路由节点、边缘路由节点和ping命令的测试超时时间;
内部路由节点:在m×n的2D-mesh拓扑片上网络上的一个当前路由节点,若与该当前路由节点直接相连的其它路由节点共有四个,则将这类有四个邻近路由节点的当前路由节点称为内部路由节点;
边缘路由节点:在m×n的2D-mesh拓扑片上网络上的一个当前路由节点,若与该当前路由节点直接相连的其它路由节点的总数不大于三个,则将这类至多有三个邻近路由节点的当前路由节点称为边缘路由节点;
ping命令的测试超时时间:定义一个确定的时间常数T,当前路由节点对其它邻近路由节点进行ping测试命令时,若被测试的路由节点在时长为T的时间段内一直没有反馈,则将该被测试路由节点所在的路径判定为非通路;
步骤1.2:定义基础的X-Y传输规则为:
在如图1所示的2Dmesh拓扑的片上网络上,由m×n个路由节点组成的矩形阵列上的每一个路由节点都具有自己的唯一坐标,设任意一个路由节点A的坐标值(x,y),另外一个任意路由节点B的坐标值(p,q),则从路由节点A(x,y)始发并去往路由节点B(p,q)时,其遵循如下的基础规则:
当路由节点A(x,y)与B(p,q)的横坐标和纵坐标均不相同时,A(x,y)总是忽略纵坐标上的差值,并优先选择能使横坐标差值的绝对值缩小的那一个横轴上的邻近路由节点作为下一跳时的交付地址;
当路由节点A(x,y)与B(p,q)的横坐标相同但纵坐标不相同时,A(x,y)总是优先选择能使纵坐标差值的绝对值缩小的那一个纵轴上的邻近路由节点作为下一跳时的交付地址。即:由前述基础X-Y传输规则所确定数据传送路径由图1中的实线的折线箭头示意。
从路由节点A(x,y)始发并去往路由节点B(p,q)时,按前述基础X-Y传输规则所确定的总跳步数初始值T初的表达式为:
T初=|x-p|+|y-q|……(1)
步骤1.3:定义全局路由器:随机指定一个路由节点作为m×n的2D-mesh拓扑片上网络的全局路由器,并将该全局路由器在片上网络中的坐标分配给所有其他路由节点;
步骤1.4:定义任意确定路由节点与其他全部路由节点相对坐标位置关系的全局相对坐标关系路由表;该全局相对坐标关系路由表由步骤1.3所述的全局路由器按照步骤1.2所述基础的X-Y传输规则求解生成并存储;
所述全局相对坐标关系路由表中的每一行条目均与由步骤1.2所述的基础X-Y传输规则所确定的一条基础X-Y路径对应,该行条目顺次记载了以任意一个路由节点A为起点并以另外一个任意路由节点B为终点所形成的一条基础X-Y路径上的全部路由节点的坐标信息,并且也记载了沿该条基础X-Y路径的总跳步数初始值T初;
在当前传送任务中,当前的路由节点A禁止向刚刚给路由节点A传送数据的邻近节点反向回传数据,该限制一直持续到当前源节点顺利将信息传送到目的节点之后才予以解除;
步骤1.5:定义容错偏转决策模型,其具体包括如下子步骤:
步骤1.5.1:分别定义任意一个当前路由节点A向其自身的上、下、左、右四个临近路由节点:路由节点U、路由节点D、路由节点L或路由节点R交付任务数据包时的优先级顺序为:
从当前路由节点A出发,选择向路由节点U传送的优先级为最低;
从当前路由节点A出发,选择向路由节点D传送的优先级为最高;
从当前路由节点A出发,选择向路由节点R传送优先级为较高,而选择向路由节点L传送的优先级为较低;
步骤1.5.2:由当前路由节点A分别向与其如步骤1.5.1所述的四个临近路由节点分别发送如步骤1.1所述的ping命令测试以判断当前路径是否通路;
步骤1.5.3:由当前路由节点A将ping命令测试结果为非通路的各个临近路由节点的优先级在当前传送任务完成之前均暂时被降低为限制级;
步骤1.5.4:由当前路由节点A将当前优先级相对最高的临近路由节点作为下一跳的交付路由节点,并向该下一跳的交付路由节点传送全部任务数据;
步骤二:2D-mesh拓扑片上网络的初始化
步骤2.1:为2D-mesh拓扑片上网络指定一个具体的路由节点作为全局路由器;
步骤2.2:对全部路由节点进行初始化,为每一个路由节点都设定统一的如步骤1.1所述的时间常数T;
步骤2.3:将步骤2.1所述的全局路由器在片上网络中的坐标地址分配给其余全部路由节点;
步骤2.4:由全局路由器按照步骤1.4所述方法分别求得任意确定路由节点与其他全部路由节点相对坐标位置关系的全局相对坐标关系路由表;
步骤2.5:除全局路由器以外的每一个路由节点分别从步骤2.4所述全局相对坐标关系路由表中调取包含自身坐标的全部条目片段,并将这些片段合并成为本节点自身与其它节点的相对位置关系路由表,保存在该节点自身的缓存中;
步骤2.6:除全局路由器以外每一个路由节点对其自身所存储的本节点自身与其它节点的相对位置关系路由表进行运算,根据式(1)分别求解出本节点自身与其它节点的相对位置关系路由表中每一行条目对应下的由基于基础X-Y传输规则所确定的总跳步数的初始值T初;
步骤三:当m×n的2D-mesh拓扑片上网络开始一个以任意一个路由节点A为起点并以另外一个任意路由节点B为终点的数据传送任务时,将路由节点A称为数据源节点,并将目标路由节点B称为目标节点;
由当前的数据源节点根据其自身在片上网络内的坐标值进行判断,若其自身属于步骤1.1所述内部路由节点则将路由节点A重新计作由当前的内部数据源节点M并继续执行步骤四,若其自身属于步骤1.1所述边缘路由节点则将路由节点A重新计作当前的边缘数据源节点N并继续执行步骤五;
步骤四:内部路由节点的数据传输过程,其具体包括如下子步骤:
步骤4.1:由当前的内部数据源节点M从如步骤2.5所述的本节点自身与其它节点的相对位置关系路由表中查找包含有当前目标节点B的一行条目,从而获得由步骤1.2所述基于基础X-Y传输规则所确定的一条由当前的内部数据源节点M始发去往目标节点B的基础X-Y传输路径;
步骤4.2:由当前的内部数据源节点M向沿着步骤4.1所述基础X-Y传输路径上的下一个临近节点C发送ping命令测试包,以判断内部数据源节点M到下一个临近节点C的邻近路径是否通路;若该邻近路径为通路则执行步骤4.3,若该邻近路径为非通路则执行步骤4.4;
步骤4.3:由当前的内部数据源节点M将待传送的数据全部传送给步骤4.2所述的临近节点C,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.4:由步骤4.2所述的临近节点C判断,其自身是否已经收到携带有如步骤4.3所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤4.5,否则,重新执行步骤4.3;
步骤4.5:由步骤4.2所述的当前临近节点C判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则当前临近节点C将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述的临近节点C将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤4.6:由当前的内部数据源节点M判断,其自身的横坐标值与目标节点B的横坐标值是否相同,若其二者的横坐标值不同则执行步骤4.7,否则执行步骤4.8;
步骤4.7:按照步骤1.5所述容错偏转决策模型将全部数据传送至当前的数据源节点的下一邻近节点D,然后,该邻近节点D将其自身视作步骤4.3所述的临近节点C,并继续执行步骤4.4至步骤4.5所述过程;
步骤4.8:由当前的内部数据源节点M优先向沿着步骤4.1所述基础X-Y传输路径的X轴方向上的下一个临近节点E发送ping命令测试包,以判断内部数据源节点M到其在X轴方向上的下一个临近节点E的邻近路径是否通路;若该邻近路径为通路则执行步骤4.9,若该邻近路径为非通路则执行步骤4.7;
步骤4.9:由当前的内部数据源节点M将待传送的数据全部传送给步骤4.8所述的其在X轴方向上的下一个临近节点E,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.10:步骤4.9所述的当前节点E在收到由内部数据源节点M传来的全部数据后,当前节点E判断其自身的纵坐标值与目标节点B的纵坐标值是否相同,若其二者的纵坐标值相同,则执行步骤4.11,否则执行步骤4.12;
步骤4.11:步骤4.9所述的当前节点E判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则当前临近节点E将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述的临近节点E将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤4.12:由步骤4.9所述的当前节点E将数据包沿着能使当前节点E与目标节点B之间的纵坐标差值的绝对值进一步缩小的方向,将待传输的数据包全部传给该方向上的下一个临近节点F,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.13:由步骤4.12所述的当前临近节点F判断,其自身是否已经收到携带有如步骤4.12所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤4.14,否则,重新执行步骤4.12;
步骤4.14:由步骤4.12所述的当前临近节点F判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则由步骤4.12所述的当前临近节点F将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则由步骤4.12所述的当前临近节点F将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤五:内部路由节点的数据传输过程,其具体包括如下子步骤:
步骤5.1:由当前的边缘数据源节点N向其自身的各个邻近节点分别发送ping命令测试包,以判断当前的边缘数据源节点N到其下一个临近节点S(n)(n≤3,n取自然数)的邻近路径是否通路;若该邻近路径为通路则执行步骤5.2,若该邻近路径为非通路则在当前的传送任务全部完成之前,暂时禁止向该非通路的下一个临近节点S(n)传送数据;
步骤5.2:由当前的边缘数据源节点N分别从其如步骤5.1所述剩余的临近节点S(n剩)的路由表中调取如步骤2.5所述的该临近节点S(n剩)与其它节点的相对位置关系路由表,并分别获得以该临近节点S(n剩)为起点并去往目标节点B时,如步骤2.6所述的总跳步数的初始值T初S(n剩)(n≤3,n取自然数);
步骤5.3:由当前的边缘数据源节点N对步骤5.2所述的多个总跳步数的初始值T初S(n剩)(n≤3,n取自然数)进行比较和排序,并从中随机选择一个总跳步数初始值T初S(n剩)最小的临近节点S(n剩)作为边缘数据源节点N的数据交付节点K;
步骤5.4:由当前的边缘数据源节点N将待传输的数据包全部传给由步骤5.3所确定的数据交付节点K,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤5.5:由步骤5.4所述的当前数据交付节点K,其自身是否已经收到携带有如步骤5.3所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤5.6,否则,重新执行步骤5.4;
步骤5.6:由步骤5.4所述的当前数据交付节点K判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则所述当前数据交付节点K将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述当前数据交付节点K将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三。
具体应用本发明的2D-Mesh拓补结构下的片上网络偏转容错路由算法时,若路由节点X未故障或拥塞,那么,以内部数据源节点M为起点数据传送任务将顺次经过路由节点C、路由节点D和路由节点X,并最终经路由节点X完成至目标节点B的整个传送任务过程,其传送路径遵循基础X-Y传输规则,在图中以实线的折线箭头示意。
若节点X为非通节点,则由本发明所述算法确定的从内部数据源节点M至目标路由节点B的数据传送绕行路径由图1中的虚线的折线箭头示意。当数据从路由节点M送至路由节点C以后,路由节点C首先判断其自身的纵坐标与目标节点B的横坐标是否重合,若不重合,则继续优先将数据传给横轴上能使二者横坐标之差的绝对值缩小的下一邻近节点D传送数据。
当数据全部传送至路由节点D以后,路由节点D首先做与节点C同样的判断,当路由节点D认定其自身横坐标与目标节点B的横坐标相同时,则路由节点D会继续判断,能使自身纵坐标与目标节点B的纵坐标之差的绝对值缩小的下一邻近路由节点X是否是通路,若下一路由邻近节点X是通路,则直接将数据传送给路由节点X,但若路由节点X是非通节点,则路由节点D会强制将数据优先传递给横轴上的下一邻近路由节点E。由于数据禁止沿原路回传,因此路由节点E依旧优先考虑将数据向能使自身纵坐标与目标节点B的纵坐标之差的绝对值缩小的下一邻近路由节点F是否是通路,若路由节点F仍是非通节点,则继续沿横轴向右,将数据交付下一邻近节点,绕行原理以此类推。
Claims (1)
1.2D-Mesh拓补结构下的片上网络偏转容错路由算法,其特征在于:该方法包括如下步骤:
步骤一:给m×n的2D-mesh拓扑片上网络定义变量、全局路由器、基础的X-Y传输规则、边缘路由表和容错偏转决策模型,其具体包括如下子步骤:
步骤1.1:分别定义变量,包括:内部路由节点、边缘路由节点和ping命令的测试超时时间;
内部路由节点:在m×n的2D-mesh拓扑片上网络上的一个当前路由节点,若与该当前路由节点直接相连的其它路由节点共有四个,则将这类有四个邻近路由节点的当前路由节点称为内部路由节点;
边缘路由节点:在m×n的2D-mesh拓扑片上网络上的一个当前路由节点,若与该当前路由节点直接相连的其它路由节点的总数不大于三个,则将这类至多有三个邻近路由节点的当前路由节点称为边缘路由节点;
ping命令的测试超时时间:定义一个确定的时间常数T,当前路由节点对其它邻近路由节点进行ping测试命令时,若被测试的路由节点在时长为T的时间段内一直没有反馈,则将该被测试路由节点所在的路径判定为非通路;
步骤1.2:定义基础的X-Y传输规则为:
2Dmesh拓扑的片上网络上,由m×n个路由节点组成的矩形阵列上的每一个路由节点都具有自己的唯一坐标,设任意一个路由节点A的坐标值(x,y),另外一个任意路由节点B的坐标值(p,q),则从路由节点A(x,y)始发并去往路由节点B(p,q)时,其遵循如下的基础规则:
当路由节点A(x,y)与B(p,q)的横坐标和纵坐标均不相同时,A(x,y)总是忽略纵坐标上的差值,并优先选择能使横坐标差值的绝对值缩小的那一个横轴上的邻近路由节点作为下一跳时的交付地址;
当路由节点A(x,y)与B(p,q)的横坐标相同但纵坐标不相同时,A(x,y)总是优先选择能使纵坐标差值的绝对值缩小的那一个纵轴上的邻近路由节点作为下一跳时的交付地址;
从路由节点A(x,y)始发并去往路由节点B(p,q)时,按上述基础X-Y传输规则所确定的总跳步数初始值T初的表达式为:
T初=|x-p|+|y-q|……(1)
步骤1.3:定义全局路由器:随机指定一个路由节点作为m×n的2D-mesh拓扑片上网络的全局路由器,并将该全局路由器在片上网络中的坐标分配给所有其他路由节点;
步骤1.4:定义任意确定路由节点与其他全部路由节点相对坐标位置关系的全局相对坐标关系路由表;该全局相对坐标关系路由表由步骤1.3所述的全局路由器按照步骤1.2所述基础的X-Y传输规则求解生成并存储;
所述全局相对坐标关系路由表中的每一行条目均与由步骤1.2所述的基础X-Y传输规则所确定的一条基础X-Y路径对应,该行条目顺次记载了以任意一个路由节点A为起点并以另外一个任意路由节点B为终点所形成的一条基础X-Y路径上的全部路由节点的坐标信息,并且也记载了沿该条基础X-Y路径的总跳步数初始值T初;
在当前传送任务中,当前的路由节点A禁止向刚刚给路由节点A传送数据的邻近节点反向回传数据,该限制一直持续到当前源节点顺利将信息传送到目的节点之后才予以解除;
步骤1.5:定义容错偏转决策模型,其具体包括如下子步骤:
步骤1.5.1:分别定义任意一个当前路由节点A向其自身的上、下、左、右四个临近路由节点:路由节点U、路由节点D、路由节点L或路由节点R交付任务数据包时的优先级顺序为:
从当前路由节点A出发,选择向路由节点U传送的优先级为最低;
从当前路由节点A出发,选择向路由节点D传送的优先级为最高;
从当前路由节点A出发,选择向路由节点R传送优先级为较高,而选择向路由节点L传送的优先级为较低;
步骤1.5.2:由当前路由节点A分别向与其如步骤1.5.1所述的四个临近路由节点分别发送如步骤1.1所述的ping命令测试以判断当前路径是否通路;
步骤1.5.3:由当前路由节点A将ping命令测试结果为非通路的各个临近路由节点的优先级在当前传送任务完成之前均暂时被降低为限制级;
步骤1.5.4:由当前路由节点A将当前优先级相对最高的临近路由节点作为下一跳的交付路由节点,并向该下一跳的交付路由节点传送全部任务数据;
步骤二:2D-mesh拓扑片上网络的初始化
步骤2.1:为2D-mesh拓扑片上网络指定一个具体的路由节点作为全局路由器;
步骤2.2:对全部路由节点进行初始化,为每一个路由节点都设定统一的如步骤1.1所述的时间常数T;
步骤2.3:将步骤2.1所述的全局路由器在片上网络中的坐标地址分配给其余全部路由节点;
步骤2.4:由全局路由器按照步骤1.4所述方法分别求得任意确定路由节点与其他全部路由节点相对坐标位置关系的全局相对坐标关系路由表;
步骤2.5:除全局路由器以外的每一个路由节点分别从步骤2.4所述全局相对坐标关系路由表中调取包含自身坐标的全部条目片段,并将这些片段合并成为本节点自身与其它节点的相对位置关系路由表,保存在该节点自身的缓存中;
步骤2.6:除全局路由器以外每一个路由节点对其自身所存储的本节点自身与其它节点的相对位置关系路由表进行运算,根据式(1)分别求解出本节点自身与其它节点的相对位置关系路由表中每一行条目对应下的由基于基础X-Y传输规则所确定的总跳步数的初始值T初;
步骤三:当m×n的2D-mesh拓扑片上网络开始一个以任意一个路由节点A为起点并以另外一个任意路由节点B为终点的数据传送任务时,将路由节点A称为数据源节点,并将目标路由节点B称为目标节点;
由当前的数据源节点根据其自身在片上网络内的坐标值进行判断,若其自身属于步骤1.1所述内部路由节点则将路由节点A重新计作由当前的内部数据源节点M并继续执行步骤四,若其自身属于步骤1.1所述边缘路由节点则将路由节点A重新计作当前的边缘数据源节点N并继续执行步骤五;
步骤四:内部路由节点的数据传输过程,其具体包括如下子步骤:
步骤4.1:由当前的内部数据源节点M从如步骤2.5所述的本节点自身与其它节点的相对位置关系路由表中查找包含有当前目标节点B的一行条目,从而获得由步骤1.2所述基于基础X-Y传输规则所确定的一条由当前的内部数据源节点M始发去往目标节点B的基础X-Y传输路径;
步骤4.2:由当前的内部数据源节点M向沿着步骤4.1所述基础X-Y传输路径上的下一个临近节点C发送ping命令测试包,以判断内部数据源节点M到下一个临近节点C的邻近路径是否通路;若该邻近路径为通路则执行步骤4.3,若该邻近路径为非通路则执行步骤4.4;
步骤4.3:由当前的内部数据源节点M将待传送的数据全部传送给步骤4.2所述的临近节点C,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.4:由步骤4.2所述的临近节点C判断,其自身是否已经收到携带有如步骤4.3所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤4.5,否则,重新执行步骤4.3;
步骤4.5:由步骤4.2所述的当前临近节点C判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则当前临近节点C将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述的临近节点C将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤4.6:由当前的内部数据源节点M判断,其自身的横坐标值与目标节点B的横坐标值是否相同,若其二者的横坐标值不同则执行步骤4.7,否则执行步骤4.8;
步骤4.7:按照步骤1.5所述容错偏转决策模型将全部数据传送至当前的数据源节点的下一邻近节点D,然后,该邻近节点D将其自身视作步骤4.3所述的临近节点C,并继续执行步骤4.4至步骤4.5所述过程;
步骤4.8:由当前的内部数据源节点M优先向沿着步骤4.1所述基础X-Y传输路径的X轴方向上的下一个临近节点E发送ping命令测试包,以判断内部数据源节点M到其在X轴方向上的下一个临近节点E的邻近路径是否通路;若该邻近路径为通路则执行步骤4.9,若该邻近路径为非通路则执行步骤4.7;
步骤4.9:由当前的内部数据源节点M将待传送的数据全部传送给步骤4.8所述的其在X轴方向上的下一个临近节点E,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.10:步骤4.9所述的当前节点E在收到由内部数据源节点M传来的全部数据后,当前节点E判断其自身的纵坐标值与目标节点B的纵坐标值是否相同,若其二者的纵坐标值相同,则执行步骤4.11,否则执行步骤4.12;
步骤4.11:步骤4.9所述的当前节点E判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则当前临近节点E将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述的临近节点E将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤4.12:由步骤4.9所述的当前节点E将数据包沿着能使当前节点E与目标节点B之间的纵坐标差值的绝对值进一步缩小的方向,将待传输的数据包全部传给该方向上的下一个临近节点F,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤4.13:由步骤4.12所述的当前临近节点F判断,其自身是否已经收到携带有如步骤4.12所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤4.14,否则,重新执行步骤4.12;
步骤4.14:由步骤4.12所述的当前临近节点F判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则由步骤4.12所述的当前临近节点F将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则由步骤4.12所述的当前临近节点F将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三;
步骤五:内部路由节点的数据传输过程,其具体包括如下子步骤:
步骤5.1:由当前的边缘数据源节点N向其自身的各个邻近节点分别发送ping命令测试包,以判断当前的边缘数据源节点N到其下一个临近节点S(n)(n≤3,n取自然数)的邻近路径是否通路;若该邻近路径为通路则执行步骤5.2,若该邻近路径为非通路则在当前的传送任务全部完成之前,暂时禁止向该非通路的下一个临近节点S(n)传送数据;
步骤5.2:由当前的边缘数据源节点N分别从其如步骤5.1所述剩余的临近节点S(n剩)的路由表中调取如步骤2.5所述的该临近节点S(n剩)与其它节点的相对位置关系路由表,并分别获得以该临近节点S(n剩)为起点并去往目标节点B时,如步骤2.6所述的总跳步数的初始值T初S(n剩)(n≤3,n取自然数);
步骤5.3:由当前的边缘数据源节点N对步骤5.2所述的多个总跳步数的初始值T初S(n剩)(n≤3,n取自然数)进行比较和排序,并从中随机选择一个总跳步数初始值T初S(n剩)最小的临近节点S(n剩)作为边缘数据源节点N的数据交付节点K;
步骤5.4:由当前的边缘数据源节点N将待传输的数据包全部传给由步骤5.3所确定的数据交付节点K,并在当前传送的最后一个数据包内做出当前数据全部传送完成的标志;
步骤5.5:由步骤5.4所述的当前数据交付节点K,其自身是否已经收到携带有如步骤5.3所述当前数据全部传送完成的标志的数据包,若已收到则执行步骤5.6,否则,重新执行步骤5.4;
步骤5.6:由步骤5.4所述的当前数据交付节点K判断,其自身如步骤2.6所述到目标节点B的总跳步数的初始值T初是否等于1,若T初等于1则所述当前数据交付节点K将自身待传送数据全部传给目标节点B并在完成全部数据的传送后终止当前的传送任务;若前述T初不等于1则所述当前数据交付节点K将其自身视作如步骤三所述的一个全新的数据源节点,并重新执行步骤三。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410384174.2A CN104202241A (zh) | 2014-08-06 | 2014-08-06 | 2D-Mesh拓补结构下的片上网络偏转容错路由算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410384174.2A CN104202241A (zh) | 2014-08-06 | 2014-08-06 | 2D-Mesh拓补结构下的片上网络偏转容错路由算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104202241A true CN104202241A (zh) | 2014-12-10 |
Family
ID=52087471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410384174.2A Pending CN104202241A (zh) | 2014-08-06 | 2014-08-06 | 2D-Mesh拓补结构下的片上网络偏转容错路由算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104202241A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486221A (zh) * | 2014-12-12 | 2015-04-01 | 合肥工业大学 | 一种基于二维网格片上网络的双接入结构 |
CN104683242A (zh) * | 2015-03-15 | 2015-06-03 | 西安电子科技大学 | 一种二维片上网络的拓扑结构以及路由方法 |
CN104869029A (zh) * | 2015-04-03 | 2015-08-26 | 深圳市前海安测信息技术有限公司 | 节点网络及基于边沿检测的数据传输方法 |
CN105846949A (zh) * | 2015-01-14 | 2016-08-10 | 华为技术有限公司 | 确定信息的传输路径的方法和节点 |
CN107395503A (zh) * | 2017-08-25 | 2017-11-24 | 东南大学 | 一种基于线性规划的片上网络路由方法 |
CN110958177A (zh) * | 2019-11-07 | 2020-04-03 | 浪潮电子信息产业股份有限公司 | 一种片上网络路由优化方法、装置、设备及可读存储介质 |
CN111817952A (zh) * | 2019-10-11 | 2020-10-23 | 西安电子科技大学 | 基于mesh结构的高容错低时延路由算法 |
CN114338410A (zh) * | 2021-12-09 | 2022-04-12 | 海光信息技术股份有限公司 | 路由路径文件生成方法、装置、系统及相关设备 |
CN115955429A (zh) * | 2023-02-15 | 2023-04-11 | 北京象帝先计算技术有限公司 | 片上网络的路由方法、装置、系统及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102868604A (zh) * | 2012-09-28 | 2013-01-09 | 中国航空无线电电子研究所 | 一种应用于片上网络的二维Mesh双缓冲容错路由单元 |
WO2013044469A1 (en) * | 2011-09-28 | 2013-04-04 | Dong Xiang | Deadlock-free adaptive routing algorithm |
CN103248566A (zh) * | 2013-04-24 | 2013-08-14 | 复旦大学 | 一种应用于片上网络的基于错误阻挡模型的容错方法和结构 |
-
2014
- 2014-08-06 CN CN201410384174.2A patent/CN104202241A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013044469A1 (en) * | 2011-09-28 | 2013-04-04 | Dong Xiang | Deadlock-free adaptive routing algorithm |
CN102868604A (zh) * | 2012-09-28 | 2013-01-09 | 中国航空无线电电子研究所 | 一种应用于片上网络的二维Mesh双缓冲容错路由单元 |
CN103248566A (zh) * | 2013-04-24 | 2013-08-14 | 复旦大学 | 一种应用于片上网络的基于错误阻挡模型的容错方法和结构 |
Non-Patent Citations (2)
Title |
---|
刘家俊,顾华玺,王长山: ""mesh优先级容错路由"", 《计算机工程与应用》 * |
王芳莉,杜慧敏: ""片上网络路由算法综述"", 《西安邮电学院学报》 * |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104486221B (zh) * | 2014-12-12 | 2017-06-06 | 合肥工业大学 | 一种基于二维网格片上网络的双接入结构 |
CN104486221A (zh) * | 2014-12-12 | 2015-04-01 | 合肥工业大学 | 一种基于二维网格片上网络的双接入结构 |
CN105846949B (zh) * | 2015-01-14 | 2019-03-26 | 华为技术有限公司 | 确定信息的传输路径的方法和节点 |
CN105846949A (zh) * | 2015-01-14 | 2016-08-10 | 华为技术有限公司 | 确定信息的传输路径的方法和节点 |
CN104683242A (zh) * | 2015-03-15 | 2015-06-03 | 西安电子科技大学 | 一种二维片上网络的拓扑结构以及路由方法 |
CN104869029A (zh) * | 2015-04-03 | 2015-08-26 | 深圳市前海安测信息技术有限公司 | 节点网络及基于边沿检测的数据传输方法 |
CN107395503A (zh) * | 2017-08-25 | 2017-11-24 | 东南大学 | 一种基于线性规划的片上网络路由方法 |
CN111817952A (zh) * | 2019-10-11 | 2020-10-23 | 西安电子科技大学 | 基于mesh结构的高容错低时延路由算法 |
CN111817952B (zh) * | 2019-10-11 | 2021-10-08 | 西安电子科技大学 | 基于mesh结构的高容错低时延路由算法 |
CN110958177A (zh) * | 2019-11-07 | 2020-04-03 | 浪潮电子信息产业股份有限公司 | 一种片上网络路由优化方法、装置、设备及可读存储介质 |
CN114338410A (zh) * | 2021-12-09 | 2022-04-12 | 海光信息技术股份有限公司 | 路由路径文件生成方法、装置、系统及相关设备 |
CN115955429A (zh) * | 2023-02-15 | 2023-04-11 | 北京象帝先计算技术有限公司 | 片上网络的路由方法、装置、系统及电子设备 |
CN115955429B (zh) * | 2023-02-15 | 2023-07-21 | 北京象帝先计算技术有限公司 | 片上网络的路由方法、装置、系统及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104202241A (zh) | 2D-Mesh拓补结构下的片上网络偏转容错路由算法 | |
CN103354522B (zh) | 一种多级流表查找方法和装置 | |
US8042087B2 (en) | Method to design network-on-chip (NOC)-based communication systems | |
CN105745885B (zh) | 用于高性能结构内的灵活信用交换的方法和系统 | |
KR102374572B1 (ko) | 네트워크 온 칩 설계를 위한 트랜잭션 트래픽 스펙 | |
CN104798062B (zh) | 包含具有多层互连的散布的处理器的处理系统 | |
WO2018120990A1 (zh) | 业务部署的方法与装置 | |
US20150032437A1 (en) | System level simulation in network on chip architecture | |
Zaman et al. | Formal verification of circuit-switched Network on chip (NoC) architectures using SPIN | |
US11283729B2 (en) | Network-on-chip element placement | |
CN106709119A (zh) | 一种fpga芯片布线方法 | |
US20180198687A1 (en) | Infrastructure to Apply Machine Learning for NoC Construction | |
Kim et al. | Networked architecture for hybrid electrical energy storage systems | |
Miura et al. | An adaptive routing of the 2-D torus network based on turn model | |
Wu et al. | A methodology for cognitive NoC design | |
Alagarsamy et al. | SAT: a new application mapping method for power optimization in 2D—NoC | |
KR101800320B1 (ko) | 버스 프로토콜 기반의 네트워크 온 칩 시스템, 그 설계 방법 및 그 설계 방법에 관한 프로그램이 기록된 컴퓨터 판독가능 기록매체 | |
Göhringer et al. | Heterogeneous and runtime parameterizable star-wheels network-on-chip | |
CN105450481B (zh) | 片上网络的布局优化方法及装置 | |
US10084725B2 (en) | Extracting features from a NoC for machine learning construction | |
Gangwar et al. | Traffic driven automated synthesis of network-on-chip from physically aware behavioral specification | |
Wang et al. | A fault-tolerant routing algorithm for NoC using farthest reachable routers | |
Palaniveloo et al. | Formal estimation of worst-case communication latency in a network-on-chip | |
CN109639447A (zh) | 环形组网下的网络功能虚拟化业务链映射的方法及装置 | |
Stuart et al. | Custom topology generation for network-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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20141210 |
|
WD01 | Invention patent application deemed withdrawn after publication |