专利名称:一种应用于片上网络的动态路径分配方法及系统的制作方法
技术领域:
本发明涉及一种应 用于片上网络的动态路径分配方法及系统,应用于集成电路领 域,尤其涉及集成电路片上互连网络设计领域。
背景技术:
随着深亚微米超大规模集成电路工艺技术的成熟及进一步发展,SoC (System on Chip,片上系统)的设计面临着严峻的问题,主要表现在三个方面连线延迟与全局时钟的 同步问题,有限地址空间和无法支持多组设备并行通信等结构性问题,以及系统扩展问题。 为了解决SoC设计中遇到的问题,欧洲一些研究机构于2000年提出了 NoC (Network on Chip,片上网络)的概念,其核心思想就是将计算机网络技术移植到芯片设计中来,将片上 系统分割为执行通信的多个子系统,子系统之间通过网络互连,从体系结构上彻底解决总 线架构带来的缺陷。片上网络由RN (Resource Node,资源节点)和 CN(Communication Node,通信节 点)两个基本部分组成。资源节点执行计算功能,资源节点之间可以通过收发消息进行通 信。在片上网络研究的众多分支中,路由方法占据着重要的地位。路由方法负责为数据包 传输分配路径,方法的优劣直接影响片上网络的系统性能。目前片上网络路由方法主要是 通过优化和裁剪并行计算领域中的路由方法得到的,其时间开销、资源开销以及容错性能 等方面并不完全适应片上网络的需求,特别是在容错性方面,主要缺陷表现在现有的路由 方法主要根据监控相邻节点获得局部网络状态,而忽略了全局网络状态对数据包传输的影 响。应用该方法的路由方法存在如下几个问题
a)当网络负载较重时,容易产生局部链路拥堵,导致一些关键路径的通信请求不能得 到实时响应;
b)网络负载分布不均勻;在网络的某一区域内数据流量过大,数据包延时无法接受,而 同时网络的某些区域的通信节点处于空闲状态,网络链路利用率过低;
c)当网络中出现故障节点或某些节点被暂时禁用而导致发生拥堵的链路数增加时,通 信性能会大大降低。因此,从全局网络状态信息的角度,研究保证QoS性能约束并且适用于片上网络 的动态路径分配方法,使之能够根据网络状态的变化调整路由路径,以解决网络拥塞和链 路故障的问题,是优化和改善片上网络通信性能的一种重要手段。
发明内容
本发明所要解决的技术问题是针对背景技术的缺陷,提供一种应用于片上网络的 动态路径分配方法及应用该方法的动态路径分配系统,通过实时收集片上网络中各路由单 元的带宽占用情况和故障信息,并根据网络状态动态调整通信任务的路由路径,使之绕开 拥塞和故障的链路。本发明为解决上述技术问题采用以下技术方案一种用于片上网络的动态路径分配方法,包括如下步骤
a)根据源节点与目的节 点的ID判断两者的相对位置,针对具体的相对位置判断源节 点到目的节点是否有最短路径存在。b)如果不存在最短路径,则寻找中继源节点,中继源节点分别与原来的目的节点、 源节点分别组成子通信任务。根据源节点与目标节点的相对位置情况,记录当前节点及其 路径方向上的节点,以及链路带宽。C)分别整理以源节点为起点的正向路径和以目的节点为起点的逆向路径,寻找所 有可能的最短路径组合和使用的带宽,直至结果一致。d)将源节点的记录与目的节点的记录连接起来,分析各组记录的带宽,从中选择 带宽最小的点序列进行路径映射。如果通信任务被拆分,将各部分路径组合起来得到源节 点到目的节点的路径。进一步的,为了优化路由方法的延时性能,本发明首先以最短路径满足QoS的延 时约束,然后在满足延时约束的基础上计算满足带宽约束的路径。因此在得到通信任务中 的源节点与目的节点位置后,首先应判断两者之间是否存在最短路径,其步骤如下
al)如果源节点和目的节点的χ维坐标和y维坐标都不相同,在下列情况中存在最短路
径
①如果源节点的两条输出链路或者目的节点的两条输入链路只有一条发生故障,则存 在最短路径。②如果源节点的一条输出链路和目的节点的一条输入链路故障,源节点与目的节 点的最短路径的曼哈顿距离是2,并且故障链路分别位于X维和y维,则存在最短路径。③如果源节点的一条输出链路和目的节点的一条输入链路故障,源节点与目的节 点的最短路径的曼哈顿距离是3,故障链路分别位于χ维和y维,则存在最短路径。④如果源节点的一条输出链路和目的节点的一条输入链路故障,源节点与目的节 点的最短路径的曼哈顿距离是3,故障链路都位于χ维或y维,并且该维上的曼哈顿距离为 1,则存在最短路径。⑤源节点与目的节点的最短路径的曼哈顿距离不小于4。a2)如果源节点与目的节点的χ维坐标或y维坐标相同,只存在一条源节点到目的 节点的最短路径,一旦该路径中的任何一条链路发生故障,将不会有最短路径存在。进一步的,如果存在源节点到目的节点的最短路径,本发明从源节点到目的节点 的多条最短路径中选择符合带宽约束的路径作为最优路径。如果不存在源节点到目的节点 的最短路径,本发明将路由路径划分为多个子通信任务并寻找中继节点,然后分别为每个 子任务分配符合带宽约束和延时约束的路径,再将各部分路径组合起来。该过程具体步骤 如下
bl)如果不存在最短路径,将源节点周围与数据传输方向相反的相邻节点作为中继源 节点,将目的节点周围与数据传输方向相反的相邻节点作为中继目的节点,与原来的目的 节点、源节点分别组成子通信任务。b2)从源节点开始记录当前节点及其最短路径方向上的下一个节点,以及链路带 宽。同时,从目的节点开始回溯,开始记录在最短路径方向上可能到达目的节点的节点ID, 以及相应的链路带宽。记录节点时必须判断链路的状态,将故障链路的带宽设置为带宽上限。b3)整理源节点的序列记录和目的节点的序列记录。如果有节点序列重复,则需要 对其进行整理,保留使用带宽最小的相关节点序列。进一步的,本发明通过节点序列记录通信任务中数据包经过的路径。根据记录序 列顺序的不同,节点序列分为源节点序列记录、目的节点序列和相关节点序列。本发明通过 对节点序列的整理,寻找最优的路由路径。具体步骤如下
Cl)根据源节点与目标节点的相对位置情况,从源节点开始记录当前节点及其最短路 径方向上的下一个节点,以及链路带宽。同时,从目的节点开始回溯,开始记录在最短路径 方向上可能到达目的节点的节点ID,以及相应的链路带宽。记录节点时必须判断链路的状 态。c2)分别把上次记录中的各个后继节点nextID作为源节点,保持目的节点不变, 记录当前节点和最短路径方向上的后继结点以及使用的带宽。c3)保持源节点不变,把上次记录中的前继节点preID作为目的节点,依次记录最 短路径方向上可能到达目的节点的节点以及使用的带宽。c4)重复c2)和c3)中的操作,直至nextID节点的集合与preID节点的集合完全相等。与上述动态路径分配方法相对应,本发明还提供一种用于片上网络的动态路径分 配系统,包括接收控制器、故障管理模块、通信任务管理模块、节点序列记录模块、路径映射 模块、路径管理模块、发送控制器;其中,
接收控制器用于接收路由单元永久性故障或链路拥塞状态报告,并发送给故障管理模
块;
故障管理模块用于根据通信任务判断源节点与目的节点两者之间的相对位置,针对相 对位置判断源节点到目的节点是否有最短路径存在,并将判断结果发送至通信任务管理模 块;
通信任务管理模块用于根据源节点与目的节点两者之间的路径情况对通信任务的路 径进行划分和组合;
节点序列记录模块用于根据通信任务管理模块的处理结果,分别生成符合带宽和故障 避免约束的路由路径结果并发送至路径映射模块;
路径映射模块用于将节点序列记录模块生成的路由路径结果转换成路由单元可识别 的数据格式;
路径管理模块用于对路径映射模块生成的路由路径结果进行格式调整和数据包装,并 传输至发送控制器;
发送控制器用于将路径管理模块生成的数据发送至输出总线。本发明采用以上技术方案,与现有技术相比,具有以下技术效果
本发明可以实时收集片上网络中各路由单元的带宽占用情况和故障信息,并根据网络 状态动态调整通信任务的路由路径,使之绕开拥塞和故障的链路。该方法能在片上网络存 在链路拥塞和永久性故障的情况下优化通信任务的路由路径,平衡网络负载,降低数据包 阻塞率,有利于改善片上网络在链路拥塞和故障状态下的性能。
图1是动态路径分配系统的电路结构图; 图2是故障处理模块的工作流程图3是通信任务模块的电路结构图; 图4是节点序列记录模块的工作流程图; 图5是节点序列记录模块的电路结构图; 图6是路径映射模块的工作流程图; 图7是路径映射模块的电路 结构图; 图8是路径管理模块的电路结构图。
具体实施例方式下面结合附图对本发明的技术方案做进一步详细说明
如图1所示,动态路径分配系统按其实现的功能可划分为节点序列记录模块、路径映 射模块、故障管理模块、通信任务管理模块和路径管理模块。各部分实现功能分别如下
(1)故障管理模块针对不同相对位置根据全局网络状态信息判断是否存在源节点到目 的节点的最短路径,分为存在最短路径和不存在最短路径两种情况将通信任务发送到通信 任务管理模块进行处理。(2)通信任务管理模块将存在最短路径的通信任务直接发送到节点序列记录模 块,进行路径分配。对于不存在最短路径的通信任务,通信任务管理模块寻找合适的中继源 节点与目的节点组成通信节点对,或者中继目的节点与源节点组成通信节点对,将重新组 合的子通信任务发送到各个节点序列记录模块。(3)节点序列记录模块分析源节点与目的节点的相对位置,针对不同的相对位置 记录节点序列以及已占用的链路带宽,并对节点序列进行整理,把通信量最小的节点序列 发送到路径映射模块。(4)路径映射模块根据当前节点与其下一个节点的ID关系将点序列映射成路径, 然后将路径和跳数组成固定的数据格式,发送到路径管理模块。(5)路径管理模块对接收到的各部分路径进行组合,然后重新组包成路径格式,发 送到输出控制模块的路径存储器。根据故障处理模块的定义,故障处理函数分析源节点与目的节点的相对位置情 况,针对不同的相对位置根据链路状态信息判断通信节点对之间是否有最短路径存在,然 后根据是否存在最短路径进行下一步处理。故障处理模块的工作流程如图2所示。故障处理模块根据源节点与目的节点的相对位置情况调用函数FaultManageL NE > Faul tManager_WN> Faul tManager_ES > FaultManager_WS> FaultManager_Eff 禾口 FaultManager_SN完成通信任务的路径分配。函数首先针对不同的相对位置分析源节点 与目的节点组成的矩形通信域内的链路状态,根据故障链路的位置判断是否有最短路径存 在。如果存在最短路径,则直接调用节点序列记录函数和路径映射函数为通信任务分配路 径。如果不存在最短路径,在通信网络中寻找合适的中继源节点或者中继目的节点,与源节 点、目的节点组合成多个子通信任务,分别对各个子通信任务调用节点序列记录函数和路 径映射函数获得各个子通信任务的最优路径,再将这些路径按照顺序组合起来,获得源节点到目的节点的最优路径。当故障处理模块完成对最短路径判断,该模块必须通知通信任务管理模块是否需 要对通信任务进行重组,因此模块使用信号线Split_flag完成此功能。设置split_flag 为低电平时表示不需要重组,为高电平时,通信任务管理模块必须对通信任务进行重组。通信任务模块对不存在最短路径的通信任务进行重组,电路结构图如附图中图3 所示。控制器接收信号线Split_flag,根据它的状态控制发送模块和任务重组模块。如果 split_flag是低电平,控制器设置sencLtrigger为高电平,设置split_trigger为低电 平,控制发送模块发送通信任务,并将COmbine_flag设置为00状态。如果split_flag的 状态是高电平,控制器设置sencLtrigger为低电平,设置splitjrigger为高电平,启动任 务重组模块。任务重组模块重组通信任务,按照不同的组合方式发送通信任务,并且设置 combine_flag为相应状态的值。节点序列记录模块针对不同的相对位置记录节点序列以及已占用的链路带宽,并 对节点序列进行整理,以获得通信量最小的点序列。节点序列记录模块的工作流程如附图 中图4所示。首先,节点序列记录函数分析源节点与目的节点的相对位置,根据不同的相对 位置调用各自的节点记录程序记录节点序列,并且对重复的节点信息的进行处理。然后,对 节点序列进行整理,调用路径映射函数对整理结束的点序列进行映射。 记录源节点启始的节点序列的过程,首先从源节点开始,把源节点作为当前节点, 记录相对位置方向的下一个节点,以及该链路的带宽,记为pOintRecOrd_s
,源节点记录 次数counter_sW 1。然后分别把记录pointRecord_s
中每个节点point的低4位对应 的节点作为当前节点,重复上述过程,直到counters彡recordCount_s0记录目的节点启始的节点序列的过程,首先从目的节点开始,把目的节点作为 当前节点,回溯相对位置方向能到达目的节点的节点,记录该节点以及链路的带宽,记为 pointRecord_d
,目的节点记录次数counter_dW 1。然后分别把记录pointRecord_d
中每个节点point的高4位对应的节点作为当前节点,重复上述过程,直到COimter_d ^ recordCount—d0每个节点序列在记录时都必须判断该节点到下一个节点的链路状态,如果发生故 障或者拥塞将该序列的带宽设为最大值。在对节点序列进行处理的过程中,判断各序列的 带宽是否为最大值,如果是最大值,舍弃该节点序列,以保证所记录的节点序列中无故障或 者拥塞链路。在矩形通信域内无拥塞和故障的情况下,对于NE、WN、ES、WS四种相对位置,每一 个当前节点有两个节点序列;而对于相对位置EW和SN,每一个当前节点只有一个节点序 列。各个相对位置方向记录节点序列的流程大致相同,但是节点记录的方向不同。相对位置 体现了数据流的方向。在最短路径方向上记录的节点序列的方向与相对位置的方向相同。 对于相对位置NE,数据流向为NE方向。源节点记录的节点序列分别是源节点在N方向和E 方向的相邻节点及其链路带宽。目的节点记录的节点序列分别是从N方向和E方向能到该 节点的相邻节点及其链路带宽。而对于相对位置EW和SN,体现了数据流的方向是东西方向 或南北方向,但是没有体现出数据流的起点在哪个方向,因此必须判断数据流的准确流向, 即目的节点在源节点的E方向还是W方向、S方向还是N方向。如果目的节点在源节点的 E方向,则源节点记录的节点序列是源节点在E方向的相邻节点及其链路带宽,目的节点记录的节点序列是从E方向能到该节点的相邻节点及其链路带宽。在counter_s彡1时,pointRecord_s中将会有重复的节点序列。如果有节点序 列重复,则需要对其进行整理,保留带宽较小的链路。
在节点序列记录模块的电路结构如附图中图5所示,模块设计了节点序列记录结 束标志位finish_flagl、finish_flag2和finish_flag3。低电平表示节点序列记录未完 成,高电平表示节点序列记录结束。如果源节点到目的节点的最短路径的跳数不超过2,设 置finish_flagl为高电平;如果跳数是3或者4,设置finish_flag2为高电平,finish, flagl为低电平;如果跳数大于4,设置finish_flagl、finish_flag2为低电平,finish, flag3为高电平。网络中无故障和拥塞发生时,在源节点与目的节点的六种相对位置中,NE、WN、ES 和WS输入第二级节点记录子模块的源节点和目的节点的通信节点对有两个,而EW和SN输 入第二级节点记录子模块的源节点和目的节点的通信节点对只有一个。因此,模块设计了 src_flag2和desti_flag2分别记录输入第二级节点记录子模块的源节点和目的节点的通 信节点对的位置,src_flag3和deSti_flag3分别记录输入第三级节点记录子模块的源节 点和目的节点的通信节点对的位置,设置高电平表示有效的通信任务。src_flag2
,src_ flag2[l]分别对应通信任务 src_taskl、src_task2 是否有效,desti_flag2
、desti_ flag2[l]分别对应通信任务 desti_taskl、desti_task2 是否有效。src_flag3
、src_ flag3[l]、src_flag3[2]分另U 对应通信任务 src_task3、src_task4、src_task5 是否有 效,desti_flag3
、desti_flag3 [1]、desti_flag3 [2]分别对应通信任务 desti_task3、 desti_task4、desti_task5 是否有效。节点序列记录模块按照三级节点管理,第一级节点记录模块记录通信任务task 的源节点的点序列src_pointl、src_point2和目的节点的点序列desti_pointl、desti_ point2,然后,根据曼哈顿距离判断节点序列记录是否完成。第二级节点的序列记录方法 与第一级节点的方法不同。对于与目的节点组成的通信任务srC_taskl和src_task2,分 别将的nextpoint作为当前节点,记录节点序列src_point3、src_point4、src_point5, 不记录Desti_ID作为目的节点的节点序列。对于与源节点组成的通信任务desti_taskl 禾口 desti_task2,分别将pinpoint作为当前节点,记录节点序列desti_point3、desti_ point4、deSti_p0int5,不记录Src_ID作为源节点的节点序列。根据跳数判断节点序列记 录是否完成。第三级节点与第二级节点记录的方法相同。不同之处在于,在拓扑结构中,源 节点到目的节点的最短路径跳数不会超过6,第三级节点记录执行后节点序列记录必然完 成。因此,模块设置finish_flag3为高电平并进行节点整理。模块把节点序列按照数据传输的方向组成相关节点序列,对重复的节点序列进行 整理,最终形成四组点序列p0intl、p0int2、p0int3、p0int4,分别比较各个点序列已传输的 数据量BW_used,记录最大通信量为BW1、BW2、BW3、BW4,与各个点序列互相对应。输出仲裁 模块和多路选择器从四组点序列中选取通信量最小的一组节点序列point,然后发送到节 点拆分模块进行拆分,按照数据传输的方向保存到pointl、point2、…、point7,并记录节 点的个数pointcoimt,发送到路径映射模块。路径映射模块将点序列映射成路径的形式。根据路径映射模块的功能定义,路径 映射函数需要记录路径及其跳数。模块定义数据结构s_Path保存路径映射函数的执行结果,s_Path的数据格式定义如下
hopnum表示路径跳数,direction[i]表示从源节点开始的第i个转发方向。路径映射 模块的工作流程如附图中图6所示。图中,curID表示当前节点的ID,nextID表示下一个 节点的ID。路径映射函数执行一次循环,只能对两个节点进行映射,需要循环多次完成整 个点序列的映射。每次循环都在循环体中更新curID和nextID,然后根据curID和nextID 的差值判断下一跳的方向,并将其保存在路径s_Path中。在二维网格拓扑结构的片上网络系统中,通信节点的ID与其相邻节点ID的关系 与各个传输方向互相对应,路径映射模块根据节点ID之间的关系对接收的节点进行路径 映射。路径映射模块由方向选择模块,控制器和路径组合模块组成,电路结构如附图中图7 所示。控制器根据节点的个数使能各个方向选择模块。在4X4的二维网格拓扑结构中, 由于节点记录模块限制在最短路径方向记录节点序列,通信任务的源节点、目的节点和源 节点到目的节点的最短路径数据传输经历的中间节点总共不会超过7个。因此,点序列个 ^pointcount的取值范围为2彡pointcount彡7。方向选择模块的功能是一个多路选择器。多路选择器的输入是四个方向00、 01、10、11,输入节点pointi与pointi+Ι的关系作为仲裁选择相应的值赋给diri,其中
7。各个方向选择模块执行结束后,在路径组合模块将这些方向组合成路径的形式, 按照对应的位置排列。路径组合完成后把路径path发送到路径管理模块。路径管理模块将各个子任务的路径组合成源节点到目的节点的路径,并调整路径 的格式。路径管理模块由控制器、路径组合模块和格式调整模块三部分组成,如附图中图8 所示。控制器接收信号线COmbine_flag,判断是否需要对路径进行组合。如果combing flag为状态00,则不需要组合路径,控制器通过信号线adjustjrigger控制格式调整模块 对pathl进行格式调整后输出。否则,控制器通过信号线COmbine_trigger启动路径组合 模块,根据COmbine_flag的各个状态对相应的输入路径进行组合,然后将路径path_COmb 发送到格式调整模块进行格式调整后发送。应用上述方法可以构成动态路径分配系统,实现对网络全局拥塞和故障信息的响 应,以及对通信任务中数据传输路径的调整。
权利要求
1.一种用于片上网络的动态路径分配方法,其特征在于,包括如下步骤a)根据源节点与目的节点的ID判断两者的相对位置,根据相对位置判断源节点到目 的节点是否有最短路径存在;b)如果不存在最短路径,则寻找中继源节点,中继源节点与原来的目的节点、源节点分 别组成子通信任务;根据源节点与目标节点的相对位置情况,记录当前节点及其路径方向 上的节点,以及链路带宽;c)分别整理以源节点为起点的正向路径和以目的节点为起点的逆向路径,寻找所有可 能的最短路径组合和使用的带宽,直至结果一致;d)将源节点的记录与目的节点的记录连接起来,分析各组记录的带宽,从中选择带宽 最小的点序列进行路径映射;如果通信任务被拆分,将各部分路径组合起来得到源节点到 目的节点的路径。
2.根据权利要求1所述的用于片上网络的动态路径分配方法,其特征在于所述的步 骤a)具体包括以下步骤al)如果源节点和目的节点的χ维坐标和y维坐标都不相同,在下列情况中存在最短路径①如果源节点的两条输出链路或者目的节点的两条输入链路只有一条发生故障;②如果源节点的一条输出链路和目的节点的一条输入链路故障,源节点与目的节点的 最短路径的曼哈顿距离是2,并且故障链路分别位于χ维和y维;③如果源节点的一条输出链路和目的节点的一条输入链路故障,源节点与目的节点的 最短路径的曼哈顿距离是3,故障链路分别位于χ维和y维;④如果源节点的一条输出链路和目的节点的一条输入链路故障,源节点与目的节点的 最短路径的曼哈顿距离是3,故障链路都位于χ维或y维,并且该维上的曼哈顿距离为1 ;⑤源节点与目的节点的最短路径的曼哈顿距离不小于4;a2)如果源节点与目的节点的χ维坐标或y维坐标相同,只存在一条源节点到目的节点 的最短路径,一旦该路径中的任何一条链路发生故障,将不会有最短路径存在。
3.根据权利要求1所述的用于片上网络的动态路径分配方法,其特征在于所述的步 骤b)具体包括以下步骤bl)如果不存在最短路径,将源节点周围与数据传输方向相反的相邻节点作为中继源 节点,将目的节点周围与数据传输方向相反的相邻节点作为中继目的节点,与原来的目的 节点、源节点分别组成子通信任务;b2)从源节点开始记录当前节点及其最短路径方向上的下一个节点,以及链路带宽;同 时,从目的节点开始回溯,开始记录在最短路径方向上可能到达目的节点的节点ID、以及相 应的链路带宽;记录节点时必须判断链路的状态,将故障链路的带宽设置为带宽上限;b3)整理源节点的序列记录和目的节点的序列记录;如果有节点序列重复,则需要对其 进行整理,保留使用带宽最小的相关节点序列。
4.根据权利要求1所述的用于片上网络的动态路径分配方法,其特征在于所述的步 骤c)具体包括以下步骤cl)根据源节点与目标节点的相对位置情况,从源节点开始记录当前节点及其最短路 径方向上的下一个节点、以及链路带宽;同时,从目的节点开始回溯,开始记录在最短路径方向上可能到达目的节点的节点ID、以及相应的链路带宽;记录节点时必须判断链路的状 态;c2)分别把上次记录中的各个后继节点作为源节点,保持目的节点不变,记录当前节点 和最短路径方向上的后继结点以及使用的带宽;c3)保持源节点不变,把上次记录中的前继节点作为目的节点,依次记录最短路径方向 上可能到达目的节点的节点以及使用的带宽;c4)重复c2)和c3)中的操作,直至后继节点的集合与前继节点的集合完全相等。
5. 一种用于片上网络的动态路径分配系统,其特征在于包括接收控制器、故障管理 模块、通信任务管理模块、节点序列记录模块、路径映射模块、路径管理模块、发送控制器; 其中,接收控制器用于接收路由单元永久性故障或链路拥塞状态报告,并发送给故障管理模块;故障管理模块用于根据通信任务判断源节点与目的节点两者之间的相对位置,针对相 对位置判断源节点到目的节点是否有最短路径存在,并将判断结果发送至通信任务管理模 块;通信任务管理模块用于根据源节点与目的节点两者之间的路径情况对通信任务的路 径进行划分和组合;节点序列记录模块用于根据通信任务管理模块的处理结果,分别生成符合带宽和故障 避免约束的路由路径结果并发送至路径映射模块;路径映射模块用于将节点序列记录模块生成的路由路径结果转换成路由单元可识别 的数据格式;路径管理模块用于对路径映射模块生成的路由路径结果进行格式调整和数据包装,并 传输至发送控制器;发送控制器用于将路径管理模块生成的数据发送至输出总线。
全文摘要
本发明公开了一种应用于片上网络的动态路径分配方法及系统,该方法实时收集片上网络中各路由单元的带宽占用情况和故障信息,并根据网络状态动态调整通信任务的路由路径,使之绕开拥塞和故障的链路。分配系统包括接收控制器、故障管理模块、通信任务管理模块、节点序列记录模块、路径映射模块、路径管理模块、发送控制器;本发明能在片上网络存在链路拥塞和永久性故障的情况下优化通信任务的路由路径,平衡网络负载,降低数据包阻塞率,有利于改善片上网络在链路拥塞和故障状态下的性能。
文档编号H04L12/56GK102148763SQ20111010769
公开日2011年8月10日 申请日期2011年4月28日 优先权日2011年4月28日
发明者吴宁, 周磊, 周芳, 张颖, 葛芬 申请人:南京航空航天大学