CN109587056A - 一种异构片上网络自适应路由算法 - Google Patents
一种异构片上网络自适应路由算法 Download PDFInfo
- Publication number
- CN109587056A CN109587056A CN201710902011.2A CN201710902011A CN109587056A CN 109587056 A CN109587056 A CN 109587056A CN 201710902011 A CN201710902011 A CN 201710902011A CN 109587056 A CN109587056 A CN 109587056A
- Authority
- CN
- China
- Prior art keywords
- network
- routing algorithm
- output port
- algorithm
- microplate
- 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
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
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
- H04L49/254—Centralised controller, i.e. arbitration or scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
针对片上网络运行应用的多样性,异构网络作为一种相对灵活的网络结构,能有效地降低网络的传输时延,提高系统性能。发明了一种异构片上网络自适应路由算法,并匹配静态路由算法和动态的自适应路由算法进行数据包的传输。同时,还发明了一种针对自适应路由算法的优化算法,该算法主要对自适应路由算法中新增的无缓存路由部分进行了改进,采用数据微片的二次竞争仲裁来降低数据微片偏转的误传概率,从而减少数据微片在网络中的传输时延,提高了网络性能。
Description
所属技术领域
本发明涉及片上网络的设计,尤其涉及异构片上网络无缓存路由算法的设计。
背景技术
片上网络是片上系统的一种新的通信方法。它是 多核技术的主要组成部分。片上网络方法带来了一种全新的片上通信方法,显著优于传统总线式系统(bus)的性能。基于片上网络的系统能更好地适应在未来复杂多核片上系统设计中使用的全局异步局部同步的时钟机制,是新一代复杂计算体系结构的必然选择。针对片上网络运行应用的多样性,异构网络作为一种相对灵活的网络结构,其内部采用多种功能不同的核心。由结构、功能、功耗、运算性能各不相同的多个核心形成的异构多核的片上系统,通过任务分工和划分将不同的任务分配给不同的核心,让每个核心处理自己擅长的任务,这种异构组织方式实现了资源的最优化配置,比同构多核处理器执行任务更有效率,能够有效地降低网络的平均延迟并提高系统性能。
在异构片上网络的设计中,路由算法决定了路由器发送数据包的方向。路由器对数据包所包含的路由信息做出仲裁,根据路由算法将数据包发送到对应的路径上,最终准确无误的发送到目的节点。路由算法对网络的吞吐量、延时、服务质量等将产生很大的影响,同时也影响到路由器的结构设计。所选择的路由算法必须能够将数据包正确地发送到目的节点,即要求算法无死锁和活锁。死锁是指数据包在通讯网络中行成了循环等待而阻塞不前的情况;活锁是由于数据包到达目的节点所需的通道被其它数据包传输任务占用,导致该数据包只能围绕着目的节点而永远不能到达,产生的原因是网络采用了适应性、非最小路径路由算法;路由算法应该尽量选择最短路径,或者限制绕道次数的绕道路由算法,以缓解网络资源的压力;路由路径的选择与计算应该尽量简单,计算简单的路由算法才能使系统频率更快、消耗资源更少;路由算法应该公平对待片上网络的所有节点,以防止饥饿。使用不同优先级可能出现高优先级的数据包始终占用资源,而一些低优先级的数据包永远不能到达其目的节点,发生饥饿现象。使用公平路由算法或为低优先级的包预留一些资源可避免饥饿现象。
对于片上网络的业务传输,随着数据包的不断注入,网络的负载状态也在不断的变化。当网络负载高时,链路竞争导致无缓存路由的误传率增高,利用buffered带缓存路由器对数据微片进行存储缓存,可以 有效地降低网络拥塞程度;当网络负载低时,使用buffeless无缓存路由器对数据微片进行快速地转发,从而降低数据微片在buffer的传输时延,提高传输效率。自适应路由算法设计的基本思想是根据前4个周期经过路由节点的平均数据微片数l来判断网络负载流量的高低。当负载程度高于路由器的阈值上限时,将路由节点由buffferless路由器转换成buffered路由器;当网络负载程度低于路由器的阈值下限并且buffered路由器中所有端口的虚通道全部为空时,将路由节点由buffered路由器转换成bufferless路由器,否则会导致buffered路由器中缓存的数据微片丢失,数据包路由失败。自适应路由算法可以根据网络负载的状态变换路由器的模式,相比于静态的异构网络来说更加灵活和高效。算法中新增的无缓存路由器基于偏转的路由方式,还存在很大的改进空间。因此,对自适应路由算法中的无缓存路由部分进行进一步优化改进,以降低延迟,提高性能。
发明内容
本发明的目的是为解决基于异构片上网络的路由算法问题,降低通信的平均时延,提高网络性能,设计针对自适应路由算法的优化算法。
本发明解决其技术问题所采用的技术方案是:
本发明针对自适应路由算法中无缓存片上网络存在的不足之处,提出算法的优化设计方案改进型自适应路由算法,其优化路由输出端口的选择策略,通过对输出端口的二次竞争仲裁,避免数据微片偏离目的节点越来越远,从而有效地降低数据微片在网络中的传输时延,提高系统性能。
所述的动态自适应路由算法可以根据网络负载的状态变换路由器的模式,相比于静态的异构网络来说更加灵活和高效。
所述的改进型自适应路由算法通过设计让数据微片再选择一个次优的输出端口进行二次竞争仲裁,使得数据微片误传的概率降低。当数据微片到达路由节点之后,首先要计算出数据微片的有效输出端口和次优输出端口。假设当前路由节点坐标为(Xc,Yc),目的节点坐标为(Xd,Yd)。为每个数据微片设置一个flit_info的结构体,包括时间戳、有效输出端口first和次优输出端口second。当Xd>Xc时,若Yd>Yc),则设置数据微片的first为下,second为右;若Yd<Yc),则设置first为上,second为右;否则,设置first为右,second为-1。当Xd<Xc时,若Yd>Yc),则设置first为下,second为左;若Yd<Yc),则设置 first为上,second为左;否则,设置first为左,second为-1。当Xd=Xc时,若Yd>Yc),则设置first为下,second为-1;若Yd<Yc),则设置first为上,second为-1;否则,输出端口为本地。
附图说明
下面结合附图和实施例对本发明进一步说明。
图1是改进型自适应路由算法端口选择示意图。
具体实施方式
图1所示的输出端口选择的优化策略示意图,数据微片再选择一个次优的输出端口进行二次竞争仲裁,使得数据微片误传的概率降低。当数据微片到达路由节点之后,首先要计算出数据微片的有效输出端口和次优输出端口。假设当前路由节点坐标为(Xc,Yc),目的节点坐标为(Xd,Yd)。为每个数据微片设置一个flit_info的结构体,包括时间戳、有效输出端口first和次优输出端口second。当Xd>Xc时,若Yd>Yc),则设置数据微片的first为下,second为右;若Yd<Yc),则设置first为上,second为右;否则,设置first为右,second为-1。当Xd<Xc时,若Yd>Yc),则设置first为下,second为左;若Yd<Yc),则设置 first为上,second为左;否则,设置first为左,second为-1。当Xd=Xc时,若Yd>Yc),则设置first为下,second为-1;若Yd<Yc),则设置first为上,second为-1;否则,输出端口为本地。
完成了路由计算的任务后,需要通过竞争仲裁完成输入端口到输出端口的映射。设计算法的处理过程如下所示:
1.对所有端口的输入数据微片进行筛选判断,满足条件者进入到下一步,否则继续扫描下一端口。
2.判断数据微片的目的地是否为本地节点,如果目的地是本地节点,则将路由的本地输出端口状态设为真,进入下一轮循环。
3.对于目的节点不是本地节点的数据微片,提取当前路由节点和数据微片的路由信息,进行源节点与目的节点相对位置的判断,根据上述设计的端口计算方式得出有效输出端口与次优输出端口。
4.取出数据微片的有效输出端口,判断路由节点中该端口的状态是否被占用。若返回ture,端口未被占用,将该端口状态更改为占用,并将数据微片的时间戳和优先级信息赋值给路由节点的该端口。否则,判断该数据微片的时间戳或者优先级信息是否大于端口中的数据微片,若大于,则该数据微片竞争胜利,占用端口,将原有端口中的数据微片取出保存,进行第二次竞争仲裁,失败的进行第三次竞争仲裁;否则,取出该数据微片的次优输出端口,进行第二次竞争仲裁,对两次偏转均失败的数据微片进行最后一次偏转,找出路由的正确输出端口,进入下一轮循环。
5.对所有端口的数据微片全部扫描后,释放空间,路由算法结束。
本发明使用基于踪迹(Trace)驱动的模拟器Macsim来对算法的性能进行评估测试。能够详细地模拟出结构的行为状态,包括详细的流水线阶段(顺序或者乱序)、多线程和存储系统。实验从 SPEC CPU 2006中随机抽取测试程序,在Macsim实验平台上逐一调试通过,在性能输出文件network.stat和stdout.out里查看实验的输出结果。本发明的异构动态自适应路由算法相比于传统带缓存片上网络路由算法,片上网络的平均延迟降低28.7%,在路由器中的平均排队延迟降低28.4%,IPC性能提高10.4%。自适应的路由算法与改进之前的性能相比,片上网络的平均延迟降低5.4%,在路由器中的平均排队延迟降低2.6%,IPC性能也有所提高。这
一结果表明,对异构自适应路由算法中无缓存 NoC 算法的优化,能将网络的传输时延进一步降低,改进路由策略产生了一定的效果。
Claims (2)
1.异构片上网络自适应路由算法对自适应路由算法中无缓存片上网络存在的不足之处,提出算法的优化设计方案改进型自适应路由算法,其优化路由输出端口的选择策略,通过对输出端口的二次竞争仲裁,避免数据微片偏离目的节点越来越远,从而有效地降低数据微片在网络中的传输时延,提高系统性能。
2.根据权利要求1所述的异构片上网络自适应路由算法,其改进型自适应路由算法通过设计让数据微片再选择一个次优的输出端口进行二次竞争仲裁,使得数据微片误传的概率降低,当数据微片到达路由节点之后,首先要计算出数据微片的有效输出端口和次优输出端口,假设当前路由节点坐标为(Xc,Yc),目的节点坐标为(Xd,Yd),为每个数据微片设置一个flit_info的结构体,包括时间戳、有效输出端口first和次优输出端口second,当Xd>Xc时,若Yd>Yc),则设置数据微片的first为下,second为右;若Yd<Yc),则设置first为上,second为右;否则,设置first为右,second为-1,当Xd<Xc时,若Yd>Yc),则设置first为下,second为左;若Yd<Yc),则设置 first为上,second为左;否则,设置first为左,second为-1,当Xd=Xc时,若Yd>Yc),则设置first为下,second为-1;若Yd<Yc),则设置first为上,second为-1;否则,输出端口为本地。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710902011.2A CN109587056A (zh) | 2017-09-29 | 2017-09-29 | 一种异构片上网络自适应路由算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710902011.2A CN109587056A (zh) | 2017-09-29 | 2017-09-29 | 一种异构片上网络自适应路由算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109587056A true CN109587056A (zh) | 2019-04-05 |
Family
ID=65913986
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710902011.2A Pending CN109587056A (zh) | 2017-09-29 | 2017-09-29 | 一种异构片上网络自适应路由算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109587056A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111030927A (zh) * | 2019-11-20 | 2020-04-17 | 中国人民解放军国防科技大学 | 一种顺序感知的片上网络路由方法和网络路由器 |
-
2017
- 2017-09-29 CN CN201710902011.2A patent/CN109587056A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111030927A (zh) * | 2019-11-20 | 2020-04-17 | 中国人民解放军国防科技大学 | 一种顺序感知的片上网络路由方法和网络路由器 |
CN111030927B (zh) * | 2019-11-20 | 2021-07-23 | 中国人民解放军国防科技大学 | 一种顺序感知的片上网络路由方法和网络路由器 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180225156A1 (en) | Task allocation method, task allocation apparatus, and network-on-chip | |
Carvalho et al. | Heuristics for dynamic task mapping in NoC-based heterogeneous MPSoCs | |
Carvalho et al. | Congestion-aware task mapping in heterogeneous MPSoCs | |
Castilhos et al. | Distributed resource management in NoC-based MPSoCs with dynamic cluster sizes | |
Lotfi-Kamran et al. | EDXY–A low cost congestion-aware routing algorithm for network-on-chips | |
Mesidis et al. | Genetic mapping of hard real-time applications onto NoC-based MPSoCs—A first approach | |
Wang et al. | A power-aware mapping approach to map IP cores onto NoCs under bandwidth and latency constraints | |
US10547514B2 (en) | Automatic crossbar generation and router connections for network-on-chip (NOC) topology generation | |
Tedesco et al. | Implementation and evaluation of a congestion aware routing algorithm for networks-on-chip | |
Jiang et al. | A low-latency and low-power hybrid scheme for on-chip networks | |
Jokanovic et al. | Effective quality-of-service policy for capacity high-performance computing systems | |
Paul et al. | Dynamic task allocation and scheduling with contention-awareness for Network-on-Chip based multicore systems | |
Carvalho et al. | Evaluation of static and dynamic task mapping algorithms in NoC-based MPSoCs | |
Goodarzi et al. | Task migration in mesh NoCs over virtual point-to-point connections | |
Daneshtalab et al. | CARS: Congestion-aware request scheduler for network interfaces in NoC-based manycore systems | |
Mesidis | Mapping of Real-time Applications on Network-on-Chip based MPSOCS. | |
Chao et al. | Congestion-aware scheduling for NoC-based reconfigurable systems | |
CN109587056A (zh) | 一种异构片上网络自适应路由算法 | |
Silva et al. | Effects of the NoC architecture in the performance of NoC-based MPSoCs | |
Chen et al. | Contention minimized bypassing in SMART NoC | |
Mazloumi et al. | A hybrid packet/circuit-switched router to accelerate memory access in NoC-based chip multiprocessors | |
Raparti et al. | RAPID: Memory-aware NoC for latency optimized GPGPU architectures | |
Masing et al. | In-NoC circuits for low-latency cache coherence in distributed shared-memory architectures | |
Chao et al. | Dynamic task mapping with congestion speculation for reconfigurable network-on-chip | |
Chen et al. | Contention minimization in emerging smart NoC via direct and indirect routes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190405 |