一种面向非规则三维集成电路片上网络的路由方法及系统的制作方法_3

文档序号:9814099阅读:来源:国知局
存在多个生成树(即有多个根节点)且每个生成树都同时 用W指导网络的路由选择,则需要相应数量的虚通道支持,因此,本发明只设及单个生成树 的路由算法设计,根节点确定后,网络生成树的结构也随之确定。
[0063] 在上文中介绍的基于汉密尔顿路径的路由算法和生成树路由算法,都可W在不使 用虚通道机制的前提下避免网络死锁,同时将数据包路由至目的节点,运里,本发明给出假 设1,用于保证非规则网络中容错路由算法的可执行性和通信的可靠性。
[0064] 假设1:无论网络中任何位置发生永久性链接故障,都不会出现不可达的节点。
[0065] 基于汉密尔顿路径的路由算法和生成树路由算法两者本质不同,具有各自的特 点,相对而言,前者比后者对网络的结构要求更加严格,如前文所说,并不是每一个非规则 =维片上网络都存在汉密尔顿路径,此外,由于汉密尔顿路径可W按照节点编号直接进行 单调的升序或降序路由,因此其最大跳步数可W通过源节点和目的节点的编号相减得出, 设跳步数为N,源节点的编号为化,目的节点的编号为Nd,则INd-NsI,而生成树算法的路 由跳步数与生成树根节点的位置选择相关度很高,不同的根节点位置会极大影响运一网络 核屯、指标,因此,生成树路由算法相对于基于汉密尔顿路径的路由算法,将给系统性能带来 一定的不确定性,需要设计相应的技术方案尽可能使其性能稳定并得W提升。
[0066] 设非规则S维片上网络的节点数为K(网络中的节点编号即为0~K-1),网络中水 平器件层数目为J(网络中各层编号按照自底向上为0~J-I)。
[0067] 由于汉密尔顿路径一旦确定,节点按照路径顺序编号(本发明按自底向上的器件 层顺序对节点采用升序编号0~K-1),网络中的节点间相互可达路径也就确定下来,相对于 生成树路由算法具有更高的性能稳定性,在不规则=维网络中没有汉密尔顿路径的情况 下,则须执行生成树容错路由算法,节点的编号规则较为简单,即自第0层至第J-I层,只须 在每层按行序编号,仅作为节点标志即可(可参考图2中的网络节点编号)。
[0068] 生成树容错路由算法的核屯、在于其根节点位置的选取方法,运里介绍该位置的具 体量化选取思路,从公平性角度考虑,根节点与每个节点的跳步数需要尽可能小,运样能够 避免远端的节点经过较多跳步数到达目的节点,因此,设编号为Kr的节点为网络生成树的 根节点,本发明选择Kr需要满足W下两个约束条件:
[0069] I位于第L层上,其中Z= ([..//'2I-I);
[0070] 2)设非规则网络的第([//巧-O层上有I个节点,层内编号为p,0如U-U编号的 作用范围只限于本层,仅为方便说明,与网络节点编号无关)。设A Pi为当前节点P与本层其 他节点(除节点pW外一共I-I个节点中的第i个)的最短跳步数,则Kr距离层内其他节点的 平均最短跳步数为Nr为:
(1)
[0072] 若满足公式(1)的第([//巧-1)层内节点不唯一,则在其中任意选择一个即可。
[0073] 应注意到,生成树根节点周边的数据流量通常较大,易导致该区域溫度升高,并影 响物理部件的正常功能执行。本发明假设忍片散热装置在忍片的底层之下(即第0层下方), 因此当S维忍片的器件层数是偶数时,本发明在第([.//21-1)层中,而非第[..//21层中选择 生成树根节点,W利于忍片整体热量的及时消散。
[0074] 另一方面,动态规划(dynamic programming,DP)选择机制(Mak T,Qieung P Y K, Lam K P, et al. ''Adaptive routing in network-on-chips using a dynamicprogramming network,"IEEE Transactions on Industrial Electronics,2011,58(8), PP. 3701-3716.),是一个面向传统二维网络的低开销、高效率的端口选择机制,DP机制没有 根据当前节点临近区域的流量情况,而是根据实时的由源节点至目的节点的路径规划更新 情况,在备选方案中选择最优的传输路径。由于DP机制在二维网络中已经获得了较好的实 验效果,本发明将该机制拓展至S维空间中,记为DP-3D端口选择机制,W获得较高的通信 性能,DP-3时几制与容错路由算法结合在一起,就组成了本发明提出的完整自适应可靠路由 方法。
[0075] 本发明的具体步骤为:
[0076] 步骤100:根据非规则S维片上网络的结构判断其是否存在汉密尔顿路径;
[0077] 步骤200:根据步骤100的判断结构,进行下一步操作。若网络中存在汉密尔顿路径 且唯一,则选用该路径执行基于汉密尔顿路径的容错路由算法;若网络中存在汉密尔顿路 径且不唯一,则需要在运些路径中任意选择一条,再执行基于汉密尔顿路径的容错路由算 法;若网络中不存在汉密尔顿路径,则采用基于生成树的容错路由算法路由数据包;
[0078] 步骤201:若=维片上网络采用基于汉密尔顿路径的容错路由算法路由数据包,首 先根据源节点S和目的节点D的位置确定是使用按照节点编号的单调上升还是下降的顺序 进行容错路由,此顺序一旦选定,则不可更改。数据包在网络中沿选中的汉密尔顿路径传输 的过程中,应尽可能保证数据包每经过一个节点都距离目的节点更近一步;
[0079] 步骤202:若=维片上网络采用基于生成树的容错路由算法路由数据包,首先应选 择出合适的生成树根节点R,再根据根节点R,W及源节点S和目的节点D的位置,在始终为 In,始终为Out和先In再Out运S种传输方向中选择合适的传输路径完成数据包的路由过 程。数据包在确定根节点的生成树上传输的过程中,应尽可能保证数据包每经过一个节点 都距离目的节点更近一步;
[0080] 步骤300:若步骤201或者202中的可选下一跳节点不唯一,则根据DP-3时几制,获得 当前节点每个合法端口的流量感应情况,选择流量最少的合法端口输出,降低消息碰撞的 几率,避开热点区域;
[0081] 步骤400:数据包到达下一个节点后,先比较节点地址,如果该节点是目的节点D, 则到达目的节点,否则,依据网络负载的不同,再次执行步骤201或者202中的内容,W及步 骤300中的相关操作,得出下一跳节点的位置;
[0082] 步骤500:重复执行步骤400中的内容,直至数据包到达目的节点D。
[0083] 举例而言,依然W图3中的不规则网络为例进行说明。很显然,在该网络中存在不 止一条的汉密尔顿路径,W图3中所示的路径为例进行说明。设源节点为节点2,目的节点为 节点17,如图5所示。由于链接6-13故障,因此无法使用"最短"路径2^3^4^5^6^13^14 一 17进行路由,转而义用另一条"最短"路径2一3一8一9一 10一11一 16一 17。本例义用的是 按节点编号进行单调升序路由,反之亦同理。
[0084] 如图6所示,是当不规则网络中不存在汉密尔顿路径时执行生成树容错路由算法 的示例。由于按照网络生成树根节点需要满足的约束条件,只有节点8和节点11满足要求, 因此节点12不能再作为网络生成树的根节点。运里设节点11为根节点。当链接11-12发生永 久性故障时,路径2一 1 一 8一 16一 15 一 17和2一 1 一 8一 7一 15一 17依然皆可使用,由于数据包 经过节点別寸合法的输出端口不唯一,需要根据端口选择机制DP-3D进行实时判断,假设最 后选择了2^1^8^7^15^17为数据传输路径,分别经历了2个In方向(链接1-2和1-8)和 随后的3个Out方向(链接7-8,7-15和15-17)的传输。
[0085] 本发明还提出一种面向非规则=维集成电路片上网络的路由系统,包括:
[0086] 判断模块,用于根据所述非规则=维集成电路片上网络的拓扑结构,判断采用基 于汉密尔顿路径的容错路由算法路由数据包,或基于生成树的容错路由算法路由数据包;
[0087] 汉密尔顿路径算法模块,用于若采用基于所述汉密尔顿路径的容错路由算法路由 数据包,根据源节点与目的节点的位置确定使用按照节点编号单调上升或单调下降的顺序 进行路由容错,所述数据包沿选中的汉密尔顿路径进行传输过程中,使数据包每经过一个 节点都距离目的节点更近一步;
[0088] 生成树算法模块,用于若采用基于所述生成树的容错路由算法路由数据包,则选 择生成树根节点,根据根节点,W及源节点与目的节点的位置,选择传输路径完成所述数据 包的传输;
[0089] 到达目的节点模块,用于当所述数据包到达节点时,查看到达的节点的地址与所 述目的节点的地址是否相同,若相同,则所述数据包到达所述目的节点,否则循环执行所述 汉密尔顿路径算法模块或所述生成树算法模块,直到数据包到达目的
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1