一种用于片上网络低延迟通信的隧道加速机制

未命名 07-12 阅读:106 评论:0


1.本发明属于多核片上系统的片上网络通信架构低延迟设计研究技术领域,具体地,涉及一种用于片上网络低延迟通信的隧道加速机制。


背景技术:

2.半导体技术的快速发展推动着芯片集成度以指数级速率持续增长。现今单个芯片上集成的晶体管数目已经达到数十亿,甚至百亿级别,多核片上系统(multiprocessor system on a chip,mpsoc)架构已经成为处理器的主流架构。依据现有的资料显示,在100nm工艺节点下,片上系统的ip核之间的通信功耗占比总功耗超过30%。研究表明随着工艺节点的进步和芯片集成度的提高,ip核之间的通信功耗占比会越来越高,这带来了巨大的通信挑战。基于传统总线结构的设计由于通信效率低,可扩展性差,功耗高等原因难以满足mpsoc系统日益增长的通信需求,逐渐成为制约片上系统架构发展的重要原因之一。相比与传统的总线架构,片上网络(network-on-chip,noc)的通讯架构具有高带宽、易于扩展、全局异步局部同步等优势。经过20多年的发展,noc已经成为片上多核系统互连技术的主要解决方案。
3.随着mpsoc的核数从几个核发展到几十、几百个核,片上网络的规模也在迅速增加,网络中距离较远的核的数据包通信,也需要经过更多跳数,产生了更大的延迟。以n
×
n 2d mesh拓扑的片上网络为例,从9核到100核,网络对角的核之间进行数据包通信所需的跳数从4跳增长为18跳,而相邻核间仍然只需要一跳就可以进行数据包通信,网络的通信延迟极为不平衡。但现如今,多媒体等片上网络应用对数据包抖动(即延迟的均匀性)要求较高,加上部分应用中需要网络中的一些关键路径具有更低的延迟,因此,寻找一种降低数据包通信的抖动值和减少片上网络关键路径的通信延迟的机制显得尤为重要。


技术实现要素:

4.本发明的目的在于提供一种用于片上网络低延迟通信的隧道加速机制,基于片上网络的五级流水线路由器架构,设计了隧道入口路由器架构、隧道中转路由器架构和隧道出口路由器架构,使用三类路由器架构可以在片上网络中搭建隧道路径,该路径除了通常的流水线数据包转发功能外,对于路由信息满足隧道条件的隧道路径的数据包,可以将其微片通过隧道加速的方式转发,以更低延迟通过多跳路由结点,帮助降低数据包通信的抖动,优化片上网络关键路径的通信延迟,解决了现有技术中存在的数据包通信的抖动值高和片上网络关键路径的通信延迟严重的问题。
5.本发明的目的可以通过以下技术方案实现:
6.一种用于片上网络低延迟通信的隧道加速机制,包括片上网络隧道路径、隧道入口路由器架构、隧道中转路由器架构和隧道出口路由器架构;
7.所述片上网络隧道路径包括进入隧道入口路由器的数据包,所述隧道中转路由器中包括多路复用器,所述进入隧道入口路由器的数据包包括隧道路径的数据包和数据包的
后续路径不包含完整隧道路径的数据包;数据包由若干微片组成,微片是片上网络中流量控制的最小单位,本发明中假定片上网络中的通信位宽与微片大小一致,也即路由器可以在每个周期向下一级路由器传输一个微片,路由器的各流水线级在每个周期都能处理一个微片;
8.所述隧道路径的数据包进入隧道入口路由器后,路由器根据数据包头微片中包含的发送地址和目的地址等信息进行路由计算,若数据包后续路径中包含了完整的隧道路径则通过隧道加速机制加速,否则通过正常的流水线送入下一级路由器;
9.片上网络隧道路径,用于以低延迟传输隧道路径的数据包微片;
10.隧道入口路由器架构,用于根据进入隧道入口路由器的数据包的路由信息计算该数据包的后续路径是否包含完整的隧道路径,对于片上通信路径包含完整隧道路径的数据包,根据隧道出口缓冲区剩余容量与信道资源分配策略决定是否允许隧道路径的数据包微片通过隧道路径传输,并向下一级路由器发送隧道建立信号;
11.隧道中转路由器架构,用于根据上一级发送的隧道建立信号决定是否允许下一周期到达路由器的数据包微片通过隧道传输,并将隧道建立信号转发到下一级路由器;对于隧道路径的数据包微片,直接经过一个时钟周期转发到输出端口,不会占用隧道中转路由器缓冲区;
12.隧道出口路由器架构,用于根据上一级发送的隧道建立信号决定是否将下一周期到达路由器的数据包微片存入专用的隧道出口缓冲区,并对微片进行正常的流水线转发流程;根据隧道出口缓冲区容量判断是否需要向隧道入口路由器发送隧道出口缓冲区容量预警信号。
13.作为本发明进一步的方案,所述片上网络隧道路径,经过隧道路径入口的数据包,在其剩下的片上通信路径包含整条隧道路径时,可以通过隧道机制,以远低于正常流水线路由器转发机制所需的延迟的情况下,将微片快速传输到隧道出口。
14.作为本发明进一步的方案,所述隧道入口路由器架构包括输入单元、开关、路由计算模块、虚通道分配模块和开关分配模块。
15.作为本发明进一步的方案,所述路由计算模块基于进入隧道入口路由器的数据包的路由信息进行路由计算时,会判断该数据包的后续路径是否会包含完整的隧道路径,对于符合条件的数据包,也即隧道路径的数据包,会根据隧道出口缓冲区剩余容量与信道资源分配策略决定是否运行数据包微片通过隧道路径传输,并向下一级路由器发送隧道建立信号。
16.作为本发明进一步的方案,所述隧道中转路由器架构在收到上一级路由器发来的隧道建立信号之后,会通过多路复用器,将下一个周期到达的隧道路径的数据包微片直接送到交叉开关入口,并在一个周期内通过交叉开关送到输出端口,向下一级进行传输。
17.作为本发明进一步的方案,所述隧道出口路由器架构,收到上一级路由器发来的隧道建立信号后,会将下一个周期到达的隧道路径的数据包微片存入专用的隧道出口缓冲区中,并对该微片进行正常的流水线转发流程,根据隧道出口缓冲区的容量,判断是否需要向隧道入口路由器发送隧道出口缓冲区容量预警信号。
18.本发明的有益效果:
19.(1)本发明的多核片上系统的片上网络通信架构的低延迟隧道加速机制包括片上
网络隧道路径,片上网络隧道路径将路由信息满足条件的数据包微片通过更低延迟的隧道加速方式从隧道入口穿越多跳隧道路由器结点,转发到隧道出口;构成隧道路径的隧道入口路由器,在路由计算模块中根据进入隧道路口路由器的数据包头微片的路由信息判断是否能够通过隧道加速的方式转发;隧道中转路由器,用于将以隧道加速方式转发的隧道路径的数据包微片在一个周期内送到路由器输出端口;隧道出口路由器,用于接收隧道路径的数据包微片并存放到专用的隧道出口缓冲区中,根据隧道出口缓冲区剩余容量判断是否需要向隧道入口路由器发送预警信号,以暂停隧道加速转发。该隧道加速机制显著降低了隧道路径的数据包从隧道入口路由结点转发到隧道出口路由结点的延迟。
20.(2)该隧道加速机制通通过在片上网络中合理安排隧道路径的位置,有效减少远距离结点间高跳数的数据包通信延迟,进而改善较大规模的片上网络中数据包通信的抖动值,以满足多媒体通信等低抖动的应用需求。此外,还可以在片上网络的关键路径设置隧道路径,以减少关键路径的通信延迟。
附图说明
21.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
22.图1为本发明片上网络低延迟隧道结构的示意图;
23.图2为本发明隧道入口路由器架构示意图;
24.图3为本发明隧道中转路由器架构示意图;
25.图4为本发明隧道出口路由器架构示意图。
具体实施方式
26.下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
27.以下结合附图,对本发明的一种用于片上网络低延迟通信的隧道加速机制以及构成隧道的路由器架构进行详细说明,包括:
28.步骤一:片上网络低延迟隧道路径建立与隧道路径的数据包微片的隧道加速;
29.请参阅图1所示,为了方便实施方式的说明,假设五级流水线路由器的每一级流水线级都占用一个片上网络的系统时钟周期。
30.在片上网络中任取一条连续路由路径,将连续路由路径上的路由器更换为隧道路由器,形成如图1所示的片上网络低延迟隧道结构,隧道由1个隧道入口路由器、若干个隧道中转路由器和1个隧道出口路由器组成;
31.当数据包进入隧道入口路由器时,若根据具体设计选择的路由算法,得到的数据包路径完全包含某条隧道路径,则称之为符合隧道加速条件,符合隧道加速条件的数据包称为隧道路径的数据包。这类数据包可以跳过隧道路径上的路由器结点的部分流水线级,
以隧道加速方式快速通过多个路由器结点,进而显著降低数据包延迟。通过在片上网络中合理安排隧道路径,可以有效减少片上网络关键路径或跳数较大的数据包传输延迟。
32.在图1中,路由结点1是隧道入口路由器,除了完成通常的五级流水线路由器功能外,还会判断进入隧道入口路由器的数据包是否为隧道路径的数据包;其中,路由结点2~(n-1)是隧道中转路由器,除了完成通常的五级流水线路由器功能外,还会将通过隧道加速方式转发的微片在一个周期内从输入端口转发到输出端口;路由结点n是隧道出口路由器,除了完成通常的五级流水线路由器功能外,还会将通过隧道加速方式转发的微片存入专用的隧道出口缓冲区中,并对微片执行正常的五级流水线转发流程。
33.步骤二:隧道入口路由器架构,判断是否能够通过隧道加速的方式转发;
34.请参阅图2所示,如图2所示的隧道入口路由器架构中,仍然包含了常规的五级流水线路由器的相关组件,包括输入单元、开关、路由计算模块、虚通道分配模块和开关分配模块等。与常规的片上网络流水线路由器相比,其路由计算模块会判断要转发的数据包是否为隧道路径的数据包;
35.所述隧道路径的数据包随后向虚通道分配器申请虚通道,虚通道分配器会将专用于隧道加速的虚通道分配给数据包;之后按微片向开关分配器申请开关的时隙,开关分配器将根据具体设计的流量优先级策略与隧道出口路由器的隧道出口缓冲区容量预警信号bf,决定是否将开关时隙分配给隧道路径的数据包的微片;在开关分配器将开关时隙授权给隧道路径的数据包的微片的同时,会将ts信号置为有效,并向下一级路由结点传输。由于在该微片的开关穿越周期,也就是从隧道入口路由器的输入缓冲区读取微片并穿越开关的周期,ts信号就已经开始了片上网络的链路穿越阶段,因此该信号会比头微片提前一个周期到达下一级路由器。
36.步骤三:隧道中转路由器,将以隧道加速方式转发的微片在一个周期内送到路由器输出端口;
37.请参阅图3所示,如图3所示的隧道中转路由器,在收到上一级路由器发来的ts信号后,开关分配器会在下一个周期建立起隧道所需的输入-输出路径,并且暂停其它数据包对该输出端口的微片申请;同时,经过触发器延时了一个时钟周期的ts信号,会在下一周期隧道穿越微片到达该路由器时,控制二选一多路复用器,使隧道加速微片直接进行开关穿越阶段,在本级路由器中仅消耗了一个开关穿越周期。对于下一级路由器传来的隧道出口缓冲区预警信号bf,使用触发器寄存一个周期后发往前一级路由器,保持信号的完整性,并且有利于对隧道出口缓冲区大小设计与隧道出口缓冲区剩余容量预警阈值进行预估。
38.步骤四:隧道出口路由器,接收隧道加速微片并存放到专用的隧道出口缓冲区中、判断是否需要暂停隧道加速转发;
39.请参阅图4所示,如图4所示的隧道出口路由器,在收到上一级路由器发来的ts信号后,输入单元在下一个周期会将到达的隧道加速微片存入专用的隧道出口缓冲区中。该缓冲区专门用来存放通过隧道加速传输的微片,并且在剩余容量低于一定阈值后会通过信号线bf向隧道入口路由器发送预警,暂停隧道路径的数据包微片的发送。在将隧道加速微片存入输入单元的隧道出口缓冲区后,在隧道出口路由器中,微片重新参与片上网络路由器的五级流水线转发过程。
40.步骤五:隧道出口路由器缓冲区预警阈值的确定;
41.隧道出口缓冲区的容量预警阈值c
tb
为:
42.c
tb
=(n-1)
×
(n
lt
+1)
43.其中,(n-1)表示隧道路径的总跳数;n
lt
表示数据在片上网络中进行链路传输所需的周期数。
44.而如图1所示,隧道路径中共有n个路由器结点。当缓冲区容量少于c
tb
时,发送bf预警信号,在缓冲区容量耗尽前,预警信号转发到隧道入口路由器的开关分配模块,暂停以隧道加速方式转发微片。
45.在说明书的描述中,参考术语“一个实施例”、“示例”、“具体示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
46.以上内容仅仅是对本发明的构思所作的举例和说明,所属本技术领域的技术人员对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,只要不偏离发明的构思或者超越本权利要求书所定义的范围,均应属于本发明的保护范围。

技术特征:
1.一种用于片上网络低延迟通信的隧道加速机制,其特征在于,所述隧道加速机制包括片上网络隧道路径、隧道入口路由器架构、隧道中转路由器架构和隧道出口路由器架构;所述片上网络隧道路径包括进入隧道入口路由器的数据包,所述隧道中转路由器中包括多路复用器,所述进入隧道入口路由器的数据包包括隧道路径的数据包和数据包的后续路径不包含完整隧道路径的数据包;片上网络隧道路径,用于以低延迟传输隧道路径的数据包微片;隧道入口路由器架构,用于根据进入隧道入口路由器的数据包的路由信息计算该数据包的后续路径是否包含完整的隧道路径;隧道中转路由器架构,用于根据上一级发送的隧道建立信号决定是否允许下一周期到达路由器的数据包微片通过隧道传输,并将隧道建立信号转发到下一级路由器;对于隧道路径的数据包微片,直接经过一个时钟周期转发到输出端口,不会占用隧道中转路由器缓冲区;隧道出口路由器架构,用于根据上一级发送的隧道建立信号决定是否将下一周期到达路由器的数据包微片存入专用的隧道出口缓冲区,并对微片进行正常的流水线转发流程;根据隧道出口缓冲区容量判断是否需要向隧道入口路由器发送隧道出口缓冲区容量预警信号。2.根据权利要求1所述的一种用于片上网络低延迟通信的隧道加速机制,其特征在于,所述隧道路径的数据包为数据包的后续路径包含完整隧道路径的数据包,所述数据包的后续路径不包含完整隧道路径的数据包为非隧道路径的数据包,通过路由器的流水线级正常转发,无法利用隧道加速机制;所述隧道路径的数据包,用于根据隧道出口缓冲区剩余容量与信道资源分配策略决定是否允许隧道路径的数据包微片通过隧道路径传输,并向下一级路由器发送隧道建立信号。3.根据权利要求1所述的一种用于片上网络低延迟通信的隧道加速机制,其特征在于,所述片上网络隧道路径,进入隧道入口路由器的数据包,在其后续路径包含整条隧道路径时,能通过隧道机制。4.根据权利要求1所述的一种用于片上网络低延迟通信的隧道加速机制,其特征在于,所述隧道入口路由器架构包括输入单元、开关、路由计算模块、虚通道分配模块和开关分配模块。5.根据权利要求4所述的一种用于片上网络低延迟通信的隧道加速机制,其特征在于,所述路由计算模块基于进入隧道入口路由器的数据包的路由信息进行路由计算时,会判断该数据包的后续路径是否会包含完整的隧道路径,对于符合条件的数据包,也即隧道路径的数据包,会根据隧道出口缓冲区剩余容量与信道资源分配策略决定是否运行数据包微片通过隧道路径传输,并向下一级路由器发送隧道建立信号。6.根据权利要求1所述的一种用于片上网络低延迟通信的隧道加速机制,其特征在于,所述隧道中转路由器架构在收到上一级路由器发来的隧道建立信号之后,会通过多路复用器,将下一个周期到达的隧道路径的数据包微片直接送到交叉开关入口,并在一个周期内通过交叉开关送到输出端口,向下一级进行传输。7.根据权利要求1所述的一种用于片上网络低延迟通信的隧道加速机制,其特征在于,
所述隧道出口路由器架构,收到上一级路由器发来的隧道建立信号后,会将下一个周期到达的隧道路径的数据包微片存入专用的隧道出口缓冲区中,并对该微片进行正常的流水线转发流程,根据隧道出口缓冲区的容量,判断是否需要向隧道入口路由器发送隧道出口缓冲区容量预警信号。

技术总结
本发明涉及一种用于片上网络低延迟通信的隧道加速机制,属于多核片上系统的片上网络通信架构低延迟设计研究技术领域。本发明基于片上网络的五级流水线路由器架构,设计了隧道入口路由器架构、隧道中转路由器架构和隧道出口路由器架构,使用三类路由器架构可以在片上网络中搭建隧道路径,该路径除了通常的流水线数据包转发功能外,对于路由信息满足隧道条件的数据包,可以将其微片通过隧道加速的方式转发,以更低延迟通过多跳路由结点,帮助降低数据包通信的抖动,优化片上网络关键路径的通信延迟。延迟。延迟。


技术研发人员:刘毅 战林均 翁笑冬
受保护的技术使用者:西安电子科技大学广州研究院
技术研发日:2023.02.15
技术公布日:2023/7/11
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐