CN113709040B - 一种基于可扩展互联裸芯的封装级网络路由算法 - Google Patents
一种基于可扩展互联裸芯的封装级网络路由算法 Download PDFInfo
- Publication number
- CN113709040B CN113709040B CN202111015390.6A CN202111015390A CN113709040B CN 113709040 B CN113709040 B CN 113709040B CN 202111015390 A CN202111015390 A CN 202111015390A CN 113709040 B CN113709040 B CN 113709040B
- Authority
- CN
- China
- Prior art keywords
- routing
- node
- coordinate
- nod
- network
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multi Processors (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及互联裸芯网络路由算法技术领域,具体涉及一种基于可扩展互联裸芯的封装级网络路由算法,该算法结构包括两级:对互联裸芯内的裸芯级网络,采用XY维序路由算法将NoD定义为X和Y两个方向的二维网络,规定数据从源节点出发,首先在X维度上进行传输,然后再在Y维度上进行传输,该算法禁止在Y维度前进的数据包转向进入X维度,即相应地禁止了两种转向情况,可以解决传统片上网络中的环形死锁问题;对由互联裸芯组成的环形网络,采用转弯模型配合最短路径路由算法进行路由选择,有利于最短路径的数据传输,提升了数据传输速度。
Description
技术领域
本发明涉及互联裸芯网络路由算法技术领域,具体涉及一种基于可扩展互联裸芯的封装级网络路由算法。
背景技术
互联裸芯是一种用于裸芯扩展和数据传输的通用标准裸芯。在NoP中,不同类型的功能裸芯通过互联裸芯相互联接起来,形成微组件。多个微组件之间再采用一定的拓补结构互联起来,便构成了NoP整体,即微系统。微系统体系庞大,网络与网络之间层层包含,数据链路复杂,能否提出一种结构清晰、运行高效的NoP数据路由算法成为了当前决定NoP和互联裸芯能否最大程度发挥其高效性的关键问题之一。
发明内容
针对现有技术中存在的不足,本发明提供了一种基于可扩展互联裸芯的封装级网络路由算法,解决了数据路由面临的环形死锁问题,从而有利于NoP最大程度、高效率地发挥功能。
为解决上述技术问题,本发明提供的技术方案是:一种基于可扩展互联裸芯的封装级网络路由算法,该算法结构包括两级:对互联裸芯内的裸芯级网络,采用XY维路由算法;对由互联裸芯组成的环形网络,采用转弯模型配合最短路径路由算法进行路由选择。
进一步地,在XY维路由算法中,将网状拓扑的NoD定义为X和Y两个方向的二维网络,为网络的每一行节点和每一列节点都标定其对应的Y坐标和X坐标,规定数据从源节点出发,首先在X维度上进行传输,直到到达X坐标与目的节点的X坐标相同的节点,然后在Y维度上进行传输,最终抵达目的节点。
进一步地,XY维路由算法的执行流程为:
S1:根据数据包格式中所定义的NoD内节点ID,计算目的节点与源节点的X坐标之差x,若x<0,则先向X负方向进行路由,直到当前节点的X坐标等于目的节点的X坐标;若x>0,则反向X正方向进行路由,直到当前节点的X坐标等于目的节点的X坐标;若x=0,则不进行X方向的路由;
S2:计算目的节点与源节点的Y坐标之差y,若y<0,则先向Y负方向进行路由,直到当前节点的Y坐标等于目的节点的Y坐标;若y>0,则反向Y正方向进行路由,直到当前节点的Y坐标等于目的节点的Y坐标;若y=0,则不进行Y方向的路由;若当前节点的Y坐标等于目的节点的Y坐标,则完成XY未路由,到达目的节点。
进一步地,在互联裸芯组成的环形网络中,对每个方向的环路分别增加一条等同环路,该等同环路实现一处转向限制。
进一步地,在互联裸芯组成的环形网络中,首先计算路由结构中源NoD和目的NoD分别采用顺时针环路和逆时针子网络的路由距离,基于此选择距离较短的路径进行路由,然后对于任一方向中的两条路径,若其完全等价,则任意选择一条路径,若两条路径中只有一条可以满足源NoD和目的NoD的路由要求,则选择满足的条件的路径。
进一步地,裸芯间转弯模型路由算法的执行步骤包括:
S1:以NoP中节点的三维坐标分别表示NoD的ID、NoD内节点X方向坐标、NoD内节点Y方向坐标,设源节点s(i,j,k),去到目的节点d(p,q,t);
S2:首先判断i与p的大小关系,若二者相等则不需要NoP环形路由,在NoD中采用XY路由到达目的节点;若二者不相等则计算i与p差的绝对值,若该值小于阈值,则选择顺时针环形路径,若大于阈值,则选择逆时针环形路径,最后根据路由选择确定下一个NoD节点,并将数据包发送至下一个节点。
进一步地,等同环路通过虚通道实现。
本技术方案所带来的有益效果是:1、采用XY维路由算法的方式可以使得数据包一旦开始在Y维度移动,就无法在X维度移动,由此禁止了两种转向情况,从而无法形成依赖环路的必要条件,进而解决了传统片上网络中的环形死锁问题;2、在裸芯间环形拓扑回路中,对每个方向分别增加一条等同环路并进行转向限制来避免死锁;3、裸芯间的转弯模型有利于最短路径的数据传输,提升了数据传输速度;4、使用虚通道来实现等同环路,能有效降低硬件开销、涉及难度和系统复杂程度,保证了NoD互联原本具有的简明性;5、整体上结构层次清晰,易于扩展,算法简洁。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为X维路由的结构图;
图2为Y维路由的结构图;
图3为裸芯间转弯模型路由结构图;
图4为裸芯间路由方向选择;
图5为裸芯间路由路径选择;
图6为裸芯间转弯模型路由结构中虚通道等同环路的微观结构图;
图7为互联裸芯的内部打破死锁产生可能的结构示意图。
具体实施方式
以下结合附图对本发明的优选实例进行说明,应当理解,此处所描述的优选实例仅用于说明和解释本发明,并不用于限定本发明。这种基于可扩展互联裸芯的封装级网络路由算法,主要包括两级结构,首先是对互联裸芯内的裸芯级网络,采用XY维路由算法,而对于互联裸芯组成的环形网络,采用转弯模型配合最短路径路由算法进行路由选择。
首先,在XY维路由算法中,将网状拓扑的NoD定义为X和Y两个方向的二维网络,为网络的每一行节点和每一列节点都标定其对应的Y坐标和X坐标,规定数据从源节点出发,首先在X维度上进行传输,直到到达X坐标与目的节点的X坐标相同的节点,然后在Y维度上进行传输,最终抵达目的节点。
具体的,XY维路由算法的执行流程为:
S1:根据数据包格式中所定义的NoD内节点ID,计算目的节点与源节点的X坐标之差x,若x<0,则先向X负方向进行路由,直到当前节点的X坐标等于目的节点的X坐标;若x>0,则反向X正方向进行路由,直到当前节点的X坐标等于目的节点的X坐标;若x=0,则不进行X方向的路由;
S2:计算目的节点与源节点的Y坐标之差y,若y<0,则先向Y负方向进行路由,直到当前节点的Y坐标等于目的节点的Y坐标;若y>0,则反向Y正方向进行路由,直到当前节点的Y坐标等于目的节点的Y坐标;若y=0,则不进行Y方向的路由;若当前节点的Y坐标等于目的节点的Y坐标,则完成XY未路由,到达目的节点。
如图1和2所示,在该实施例中,其源节点为A,目的节点为B,首先计算B与A的坐标差值为3,因此需要先从源节点A开始沿X方向路由3跳(hop),直到节点的当前X坐标等于目的节点B的X坐标。此时再计算Y方向B与当前节点 的坐标差值为-2,因此需要从当前节点向Y负方向路由跳直到节点的当前Y坐标等于目的节点B的Y坐标。
多个互联裸芯通过其内部NoD内的外部接口(同步控制器)按照环形的拓扑结构互联起来,由于其互联总线一般分为输入总线和输出总线两组总线,因此该环形拓扑回路可以分为顺时针和逆时针两个环路,每个环路上数据呈单向流动。然而这种环形拓扑仍然存在环形死锁的可能,因此可以采用限制一处转向的方式来避免死锁。再这种情况下,当数据需要经过被限制处传输时就无法正常传输,只能选择相反方向的环路,然后反向传输到达目的NoD。但是这不能保证数据的最短距离传输,因此大大降低了数据的传输效率。进而在此基础上,对于每个方向的环路,分别增加一条等同环路,该等同环路同样进行一处转向限制,但是限制位置与原回路不同。
如图3所示,在本实施例中,6个互联裸芯为核心的微组件组成NoP,分别为NoD1-NoD6。NoD之间采用环形拓扑连接,共设有4条环路,分别为子网络1-子网络4,其中子网络1和子网络2为顺时针方向环路,两者互为等同环路,子网络3和子网络4为逆时针方向环路,两者亦互为等同环路。子网络1和子网络3限制了NoD4处的转向,而子网络2和子网络4限制了NoD1处的转向。
其次,在互联裸芯组成的环形网络中,首先计算路由结构中源NoD和目的NoD分别采用顺时针环路和逆时针子网络的路由距离,基于此选择距离较短的路径进行路由,然后对于任一方向中的两条路径,若其完全等价,则任意选择一条路径,若两条路径中只有一条可以满足源NoD和目的NoD的路由要求,则选择满足的条件的路径。
在本实施例中,源NoD为NoD3,目的NoD为NoD5,其顺时针方向距离为2(最外侧线),逆时针方向距离为4(最内侧线),同理选择顺时针方向作为路由,如图4所示,对于顺时针方向的两条路径,从NoD3到NoD5,只有路径2(从外侧起第二条线)满足路由要求,因此选择该路径进行路由,如图5所示。
裸芯间转弯模型路由算法的执行步骤包括:
S1:以NoP中节点的三维坐标分别表示NoD的ID、NoD内节点X方向坐标、NoD内节点Y方向坐标,设源节点s(i,j,k),去到目的节点d(p,q,t);
S2:首先判断i与p的大小关系,若二者相等则不需要NoP环形路由,在NoD中采用XY路由到达目的节点;若二者不相等则计算i与p差的绝对值,若该值小于阈值,则选择顺时针环形路径,若大于阈值,则选择逆时针环形路径,最后根据路由选择确定下一个NoD节点,并将数据包发送至下一个节点。
图6和7为互联裸芯内部结构,此处展示了与互联裸芯外部接口(同步控制器)相连的路由器,路由器的四个方向的传输总线均分为输入总线和输出总线两组总线,这两组总线通过同步控制器连接至互联裸芯外部,映射到NoP互联总线的输入总线和输出总线。
由于数据在NoD间的传输的底层过程也是由NoD内部的路由器支撑完成的,因此,对NoP互联总线设置两个虚通道,其本质是在微观上对互联裸芯NoD内部的路由器设置两组缓冲器(Buffer),这两组Buffer相互独立,分别用于存储NoP同一方向的两条等同环路上传输的数据,他们的输入或输出分时复用同一条物理总线。
对转弯模型路由结构的顺时针和逆时针两个方向的环路分别标号为1和2,对于同一个方向的两条等同环路标号为a和b,于是每一个路由器的每一个方向的接口都设置了4个虚通道buffer,分别为1a、1b、2a、2b。
最后应说明的是:以上所述仅为本发明的优选实例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于可扩展互联裸芯的封装级网络路由算法,其特征在于,该算法结构包括两级:对互联裸芯内的裸芯级网络,采用XY维路由算法;对由互联裸芯组成的环形网络,采用转弯模型配合最短路径路由算法进行路由选择;
在XY维路由算法中,将网状拓扑的NoD定义为X和Y两个方向的二维网络,为网络的每一行节点和每一列节点都标定其对应的Y坐标和X坐标,规定数据从源节点出发,首先在X维度上进行传输,直到到达X坐标与目的节点的X坐标相同的节点,然后在Y维度上进行传输,最终抵达目的节点;
XY维路由算法的执行流程为:S1:根据数据包格式中所定义的NoD内节点ID,计算目的节点与源节点的X坐标之差x,若x<0,则先向X负方向进行路由,直到当前节点的X坐标等于目的节点的X坐标;若x>0,则反向X正方向进行路由,直到当前节点的X坐标等于目的节点的X坐标;若x=0,则不进行X方向的路由;S2:计算目的节点与源节点的Y坐标之差y,若y<0,则先向Y负方向进行路由,直到当前节点的Y坐标等于目的节点的Y坐标;若y>0,则反向Y正方向进行路由,直到当前节点的Y坐标等于目的节点的Y坐标;若y=0,则不进行Y方向的路由;若当前节点的Y坐标等于目的节点的Y坐标,则完成XY未路由,到达目的节点;
在互联裸芯组成的环形网络中,对每个方向的环路分别增加一条等同环路,该等同环路实现一处转向限制。
2.根据权利要求1所述的一种基于可扩展互联裸芯的封装级网络路由算法,其特征在于,在互联裸芯组成的环形网络中,首先计算路由结构中源NoD和目的NoD分别采用顺时针环路和逆时针子网络的路由距离,基于此选择距离较短的路径进行路由,然后对于任一方向中的两条路径,若其完全等价,则任意选择一条路径,若两条路径中只有一条可以满足源NoD和目的NoD的路由要求,则选择满足的条件的路径。
3.根据权利要求2所述的一种基于可扩展互联裸芯的封装级网络路由算法,其特征在于,裸芯间转弯模型路由算法的执行步骤包括:
S1:以NoP中节点的三维坐标分别表示NoD的ID、NoD内节点X方向坐标、NoD内节点Y方向坐标,设源节点s(i,j,k),去到目的节点d(p,q,t);
S2:首先判断i与p的大小关系,若二者相等则不需要NoP环形路由,在NoD中采用XY路由到达目的节点;若二者不相等则计算i与p差的绝对值,若该值小于阈值,则选择顺时针环形路径,若大于阈值,则选择逆时针环形路径,最后根据路由选择确定下一个NoD节点,并将数据包发送至下一个节点。
4.根据权利要求1所述的一种基于可扩展互联裸芯的封装级网络路 由算法,其特征在于,所述等同环路通过虚通道实现。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111015390.6A CN113709040B (zh) | 2021-08-31 | 2021-08-31 | 一种基于可扩展互联裸芯的封装级网络路由算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111015390.6A CN113709040B (zh) | 2021-08-31 | 2021-08-31 | 一种基于可扩展互联裸芯的封装级网络路由算法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113709040A CN113709040A (zh) | 2021-11-26 |
CN113709040B true CN113709040B (zh) | 2023-04-07 |
Family
ID=78658227
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111015390.6A Active CN113709040B (zh) | 2021-08-31 | 2021-08-31 | 一种基于可扩展互联裸芯的封装级网络路由算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113709040B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114679422B (zh) * | 2022-03-25 | 2024-04-26 | 中国电子科技集团公司第五十八研究所 | 一种基于双网络的无死锁多裸芯集成微系统高性能架构 |
CN114615215B (zh) * | 2022-03-25 | 2024-04-09 | 中国电子科技集团公司第五十八研究所 | 一种支撑片上片间一体化路由的数据包编码方法 |
CN114760255B (zh) * | 2022-03-31 | 2024-03-08 | 中国电子科技集团公司第五十八研究所 | 一种面向多裸芯互连的片上片间一体化网络无死锁架构 |
CN116016384B (zh) * | 2022-12-23 | 2024-04-16 | 西安电子科技大学 | 基于环形布局的可扩展片上网络拓扑结构及其路由方法 |
CN117395746B (zh) * | 2023-12-12 | 2024-03-29 | 苏州元脑智能科技有限公司 | 双路径无线网格网络的路由方法、装置、设备和存储介质 |
CN117811996A (zh) * | 2024-03-01 | 2024-04-02 | 山东云海国创云计算装备产业创新中心有限公司 | 双路径三维超立方网络的路由方法、装置、设备和介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267394A (zh) * | 2008-03-10 | 2008-09-17 | 清华大学 | 三维mesh网中无死锁的平面自适应路由方法 |
CN105072032A (zh) * | 2015-09-17 | 2015-11-18 | 浪潮(北京)电子信息产业有限公司 | 一种确定片上网络路由路径的方法及系统 |
CN110048947A (zh) * | 2019-03-06 | 2019-07-23 | 清华大学 | 二维Mesh网络中数据包的自适应路由方法与电子设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060041715A1 (en) * | 2004-05-28 | 2006-02-23 | Chrysos George Z | Multiprocessor chip having bidirectional ring interconnect |
US8601423B1 (en) * | 2012-10-23 | 2013-12-03 | Netspeed Systems | Asymmetric mesh NoC topologies |
CN103986664B (zh) * | 2014-05-15 | 2017-06-27 | 厦门大学 | 一种用于片上网络的混合互连Mesh拓扑结构及其路由算法 |
CN104092617B (zh) * | 2014-05-30 | 2017-10-27 | 中国科学院计算技术研究所 | 一种三维集成电路片上网络路由方法及其系统 |
CN104539547B (zh) * | 2014-11-14 | 2017-10-10 | 中国科学院计算技术研究所 | 一种用于三维集成电路片上网络的路由器及路由方法 |
US9804979B2 (en) * | 2014-12-29 | 2017-10-31 | Sandisk Technologies Llc | Ring bus architecture for use in a memory module |
CN108429679B (zh) * | 2018-04-23 | 2020-12-22 | 曙光信息产业(北京)有限公司 | 扩展型互连网络的拓扑结构及其路由方法 |
CN112817905A (zh) * | 2021-02-05 | 2021-05-18 | 中国电子科技集团公司第五十八研究所 | 互联裸芯、互联微组件、互联微系统及其通信方法 |
-
2021
- 2021-08-31 CN CN202111015390.6A patent/CN113709040B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101267394A (zh) * | 2008-03-10 | 2008-09-17 | 清华大学 | 三维mesh网中无死锁的平面自适应路由方法 |
CN105072032A (zh) * | 2015-09-17 | 2015-11-18 | 浪潮(北京)电子信息产业有限公司 | 一种确定片上网络路由路径的方法及系统 |
CN110048947A (zh) * | 2019-03-06 | 2019-07-23 | 清华大学 | 二维Mesh网络中数据包的自适应路由方法与电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113709040A (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113709040B (zh) | 一种基于可扩展互联裸芯的封装级网络路由算法 | |
US8819616B2 (en) | Asymmetric mesh NoC topologies | |
JP6060316B2 (ja) | NoCを構成するための方法及びシステム並びにコンピュータ可読記憶媒体 | |
RU2479158C2 (ru) | Устройство и способ иерархической маршрутизации в многопроцессорных системах с ячеистой структурой | |
US10218581B2 (en) | Generation of network-on-chip layout based on user specified topological constraints | |
CN105075199B (zh) | 具有到每一资源的多个分布式连接的直接网络系统 | |
US8825986B2 (en) | Switches and a network of switches | |
US20180183672A1 (en) | System and method for grouping of network on chip (noc) elements | |
CN105051717A (zh) | 增强3d圆环 | |
CN116886591B (zh) | 计算机网络系统及路由方法 | |
CN101242372A (zh) | k元N维mesh网中的无死锁路由方法 | |
EP3442172B1 (en) | Network topology system and building methods for topologies and routing tables thereof | |
CN107094116B (zh) | 一种包含跨维度链路的直接网络路由方法和系统 | |
Cai et al. | Design and OPNET implementation of routing algorithm in 3D optical network on chip | |
US9762474B2 (en) | Systems and methods for selecting a router to connect a bridge in the network on chip (NoC) | |
CN103491023B (zh) | 用于三维torus光电混合网络的路由方法 | |
CN105224501A (zh) | 改进圆环面网络及其确定数据包传输路径的方法和装置 | |
US10084725B2 (en) | Extracting features from a NoC for machine learning construction | |
CN114448862A (zh) | 基于3d片上网络的数据传输方法、装置、设备和介质 | |
US20140201475A1 (en) | Information processing system and method of controlling the same | |
US20240048508A1 (en) | Mixed-Dimension Order Routing | |
CN111865782B (zh) | 三维集成电路及路由方法 | |
Sasakawa et al. | LEF: long edge first routing for two-dimensional mesh network on chip | |
Ghosal et al. | Routing in multicore nocs | |
Rezazadeh et al. | An enhanced fault-tolerant routing algorithm for mesh network-on-chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |