当前位置: 首页 > 专利查询>东南大学专利>正文

一种基于蚁群算法的容错自适应路由方法技术

技术编号:20926026 阅读:28 留言:0更新日期:2019-04-20 11:47
本发明专利技术公开了一种基于蚁群算法的容错自适应路由方法,包括:标记二维网络中每个节点的位置并对路由表进行设置;检测故障节点,若有故障节点,计算故障节点邻近的节点的故障值和有效缓冲区长度;若没有故障节点,使用自适应路由算法查找并得到待选择的一条或多条路由路径;按照评估尺度从待选择路由路径中选择一条最优的路由路径,根据蚁群路由算法更新信息素路由表;检测是否达到目的节点,若到达,则结束路由;反之,判断路由路径是否发生死锁,若发生死锁则结束;反之,重新检测故障节点。基于蚁群算法优化容错自适应路由算法中的路径选择机制和更新信息素路由表,在存在故障节点的情况下,降低整个片上网络的数据传输延迟,实现网络负载均衡。

A Fault-Tolerant Adaptive Routing Method Based on Ant Colony Algorithm

The invention discloses a fault-tolerant adaptive routing method based on ant colony algorithm, which includes: marking the location of each node in a two-dimensional network and setting the routing table; detecting the fault node, calculating the fault value and effective buffer length of the node adjacent to the fault node if there is a fault node; and using the adaptive routing algorithm to find and select the fault node if there is no fault node. One or more routing paths; select an optimal routing path from the routing path to be selected according to the evaluation scale, update the pheromone routing table according to the ant colony routing algorithm; detect whether the destination node is reached, if it arrives, end the routing; on the contrary, judge whether the routing path is deadlocked, if deadlock occurs, end; on the contrary, re-detect the fault node. The path selection mechanism and pheromone routing table in the Fault-tolerant Adaptive Routing Algorithm Based on ant colony algorithm are optimized to reduce the data transmission delay of the whole network on chip and achieve network load balancing in the presence of fault nodes.

【技术实现步骤摘要】
一种基于蚁群算法的容错自适应路由方法
本专利技术涉及片上网络的路由
,具体地涉及一种基于蚁群算法的容错自适应路由方法。
技术介绍
随着半导体工艺的发展,芯片也逐渐从单核向多核以至于众核发展,这就要求在芯片架构设计时越来越注重系统的互连方式。然而现在主流的基于总线的互连方式已经不能满足日益增长的芯片规模的需求,针对这一现状,研究人员提出了片上网络的芯片互连方式。在片上网络中,如果网络规模较小,一般采用确定性路由,因为实现时简单且能满足性能需求;随着网络规模的增大,使用自适应路由算法,因为这时确定性路由有很大可能造成网络拥塞大大影响网络性能。但是随着网络规模的增大,节点故障就不可避免的会出现。于是如何实现即使网络中出现少量故障节点也能正常进行路由这一想法成为了重要的研究方向。容错自适应路由算法就是从路由算法的层面来解决这一问题,传统的容错自适应算法一般使用单一的值来进行故障提醒,同时路由表存储开销太大,且在路由路径选择时也花费大量时间开销。虽然在一定程度上达到降低延迟的效果,但是也存在一定的局限性。
技术实现思路
为了解决上述存在的技术问题,本专利技术的目的是提出一种基于蚁群算法的容错自适应路由方法,基于蚁群算法来优化现有容错自适应路由算法中的路径选择机制和更新信息素路由表,这样可以在存在故障节点的情况下,降低整个片上网络的数据传输延迟,实现网络负载均衡。本专利技术的技术方案是:一种基于蚁群算法的容错自适应路由方法,包括以下步骤:S01:使用二维坐标系标记二维网络中每个节点的位置并对路由表进行设置;S02:检测故障节点,若有故障节点进入步骤S03,若没有故障节点进入步骤S04;S03:计算故障节点邻近的节点的故障值FV和有效缓冲区长度EBL;S04:使用自适应路由算法查找并得到待选择的一条或多条路由路径;S05:按照评估尺度从待选择路由路径中选择一条最优的路由路径,根据蚁群路由算法更新信息素路由表;S06:检测是否达到目的节点,若到达,则结束路由;反之,转至步骤S07;S07:判断路由路径是否发生死锁,若发生死锁则结束;反之,则转至步骤S02。优选的技术方案中,所述步骤S01中路由表设置包括,存储入口和出口节点,加入信息素、FPD和FV。优选的技术方案中,所述步骤S03中使用故障值FV表示节点与故障节点的远近,故障值FV的计算公式为:其中,dx和dy表示在水平和竖直方向上距故障节点的距离值,FV值为0表示保持蚁群信息素不改变;1表示轻微的减少蚁群信息素;2表示极大的减少蚁群信息素;3表示把蚁群的信息素设为0。优选的技术方案中,所述步骤S03中使用EBL值从多个候选通道中筛选出输出通道;当存在正东E和正南S两个待选输出通道时,EBL的值计算如下:其中,freeslot(o)是通道o中剩余的缓存区个数,COC是路由函数提供的一系列备选输出通道,FPD指故障路径复杂度。优选的技术方案中,当源目节点与故障节点相关时,公式如下:其中,FPD的上标表示路由节点的位置,下标表示路由的方向,若路由节点是故障节点,则FPD的值复位为0,且当源目节点与故障节点不相关时,公式如下:其中优选的技术方案中,所述步骤S05中,当存在多条待选路由路径时,首先使用FV值进行选择,优先选择FV值大的路由路径;若存在多条待选路由路径的FV最高值相同时,选择EBL值大的路由路径。与现有技术相比,本专利技术的优点是:基于蚁群算法来优化现有容错自适应路由算法中的路径选择机制和更新信息素路由表,使用多个值作为故障提醒的依据,这样可以在存在故障节点的情况下,降低整个片上网络的数据传输延迟,实现网络负载均衡。附图说明下面结合附图及实施例对本专利技术作进一步描述:图1是本专利技术基于蚁群算法的容错自适应路由方法的流程图;图2是本专利技术EBL计算示意图;图3是本专利技术故障节点位于源目节点之间的示意图;图4是本专利技术故障节点不在源目节点之间的示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本专利技术进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本专利技术的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本专利技术的概念。实施例:如图1所示,一种基于蚁群算法的容错自适应路由方法,包含以下步骤:步骤一初始化路由表:在二维网络中使用二维坐标系来标记每个节点的位置,路由表除了常规的存储入口和出口节点外还需要加入信息素、FPD和FV。其中,信息素用于蚁群算法;FPD用于计算EBL;FV用于记录节点与故障节点的远近是否对信息素有影响。步骤二检查故障节点:启动芯片中的自检电路,一般芯片中都包含自检电路,使用自检电路来检查是否有故障节点。若有,则标记这些故障节点,并进入步骤三;若没有,则进入步骤四。步骤三启动故障提醒机制:启动故障提醒机制,即计算故障节点邻近的节点故障值(FaultValue,FV)和有效缓冲区长度(EffectiveBufferLength,EBL);使用FV与EBL相结合的形式来表示故障节点对网络中其他节点的影响,具体的计算结合图2如下所示:计算FV值,计算公式如下:其中,dx和dy表示的是在水平和竖直方向上距故障节点的距离值。FV值分别有0、1、2、3这四种情况,分别为0表示保持蚁群信息素不改变;1表示轻微的减少蚁群信息素;2表示极大的减少蚁群信息素;3表示把蚁群的信息素设为0。计算EBL值,使用EBL的值来从多个候选通道中筛选出更好的输出通道,这样可以更好的避免拥塞。当存在正东E和正南S两个待选输出通道时,EBL的值计算如下:其中,freeslot(o)是指通道o中剩余的缓存区个数,COC是指路由函数提供的一系列备选输出通道(CandidateOutputChannels,COC),FPD是指故障路径复杂度(Fault-Location-BasePD,FPD);具体的计算又分源目节点与故障节点相关和源目节点与故障节点不相关这两种情况,不同情况计算如下:1、当源目节点与故障节点相关时,使用公式如下:其中,FPD的上标表示路由节点的位置,下标表示路由的方向。若路由节点是故障节点,则FPD的值复位为0,且2、当源目节点与故障节点不相关时,使用公式如下:其中步骤四路由路径查找:使用自适应路由算法来查找路径,会查找到一条或多条路由路径。这里也有两种情况:一种是当故障节点挡住最短路径路由时,如图3所示,采用非最短路径路由,也就是绕行的方式;另一种是当故障节点没挡住最短路径路由时,如图4所示,采用最短路径路由。步骤五路由路径选择:当经过步骤四后,会得到一条或多条待选路由路径。使用FV和EBL相结合的形式来从中选择最优的一条路径,具体的规则如下:(1)当只有一条待选路由路径时,选择这一条路由路路径;(2)当存在多条待选路由路径时,首先使用FV值来选择,FV值越大,越优先选择;若存在多条待选路由路径的FV最高值相同时,使用EBL值来从待选路由路径中选择,也是值越大越优先选择。在作出路由路径的选择后,使用蚁群路由算法来更新信息素路由表。步骤六路由迭代完成:检查数据是否到达目的节点,若到达则,则完成本次路由;若没有达到则进行从步骤二开始迭代。应当理解的是,本专利技术的上述具体实施方式仅仅用于示例性说明或解释本发本文档来自技高网...

【技术保护点】
1.一种基于蚁群算法的容错自适应路由方法,其特征在于,包括以下步骤:S01:使用二维坐标系标记二维网络中每个节点的位置并对路由表进行设置;S02:检测故障节点,若有故障节点进入步骤S03,若没有故障节点进入步骤S04;S03:计算故障节点邻近的节点的故障值FV和有效缓冲区长度EBL;S04:使用自适应路由算法查找并得到待选择的一条或多条路由路径;S05:按照评估尺度从待选择路由路径中选择一条最优的路由路径,根据蚁群路由算法更新信息素路由表;S06:检测是否达到目的节点,若到达,则结束路由;反之,转至步骤S07;S07:判断路由路径是否发生死锁,若发生死锁则结束;反之,则转至步骤S02。

【技术特征摘要】
1.一种基于蚁群算法的容错自适应路由方法,其特征在于,包括以下步骤:S01:使用二维坐标系标记二维网络中每个节点的位置并对路由表进行设置;S02:检测故障节点,若有故障节点进入步骤S03,若没有故障节点进入步骤S04;S03:计算故障节点邻近的节点的故障值FV和有效缓冲区长度EBL;S04:使用自适应路由算法查找并得到待选择的一条或多条路由路径;S05:按照评估尺度从待选择路由路径中选择一条最优的路由路径,根据蚁群路由算法更新信息素路由表;S06:检测是否达到目的节点,若到达,则结束路由;反之,转至步骤S07;S07:判断路由路径是否发生死锁,若发生死锁则结束;反之,则转至步骤S02。2.根据权利要求1所述的基于蚁群算法的容错自适应路由方法,其特征在于,所述步骤S01中路由表设置包括,存储入口和出口节点,加入信息素、FPD和FV。3.根据权利要求1所述的基于蚁群算法的容错自适应路由方法,其特征在于,所述步骤S03中使用故障值FV表示节点与故障节点的远近,故障值FV的计算公式为:其中,dx和dy表示在水平和竖直方向上距故障...

【专利技术属性】
技术研发人员:王学香蔡磊李晨锋郑阳时龙兴
申请(专利权)人:东南大学
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1