节点控制器的调度系统及FPGA板卡技术方案

技术编号:21089475 阅读:36 留言:0更新日期:2019-05-11 09:55
本发明专利技术实施例公开了一种节点控制器的调度系统及FPGA板卡。其中,本地节点控制器的每个连接端口的输入通道包含多个用于缓存相应类型报文数据的虚拟通道,输入通道包含虚拟通道的个数与传输报文的类别数相同;每个虚拟通道具有预设深度的缓存和信用值,信用值作为衡量相应虚拟通道容纳报文数量的标准,且信用值随着相应虚拟通道的报文个数的变化而变化;各远端节点控制器根据各虚拟通道通过连接端口动态反馈的信用值向本地节点控制器发送报文数据;各处理引擎用于对缓存中的报文数据进行调度处理。本申请各虚拟通道相互独立且互不干扰,实现了节点控制器互联的无拥塞调度和节点控制器的路由层无拥塞调度。

Scheduling System of Node Controller and FPGA Board

【技术实现步骤摘要】
节点控制器的调度系统及FPGA板卡
本专利技术实施例涉及分布式共享内存多处理器
,特别是涉及一种节点控制器的调度系统及FPGA板卡。
技术介绍
缓存一致的分布式共享内存多处理器系统为当前一种重要的系统结构。目前处理器直接挂接内存,本身支持缓存一致性协议,因此在构建多处理器系统时,通常将这些处理器直连,由它们本身的协议维护处理器之间的一致性,并形成一个单一缓存一致性域。但是,由于协议规格、链路端口等限制,这样组成的单一域多处理器系统规模通常有限。为实现大规模CC-NUMA(cachecoherenceNonUniformMemoryAccessArchitecture,一致性缓存非均匀存储访问)多处理器系统,需借助NC(NodeController,节点控制器)扩大一致性域空间。节点控制器具有维护全局缓存一致性和扩展系统规模两种功能。首先,每个节点控制器连接1至4颗处理器,组成一个节点和第一级缓存一致性域,域内一致性由处理器和节点控制器共同维护;其次,节点控制器直接互连或通过节点路由器连接以组成大规模CC-NUMA系统。节点间的第二级缓存一致性由节点控制器维护。这样构成的大规模的CC-NUMA系统需要在处理器直联缓存一致性协议基础上扩展建立多层次的协议,并维护全局一致性。如图1所示的多级一致性域系统,其节点间可通过节点控制器直接连接或经过节点路由器(NR)连接,组成节点间单一缓存一致性域。如果采用直接连接,一个节点控制器会连接几个其他节点控制器。图1为一个节点控制器连接其他两个节点控制器为例子。数据传输过程中,短时负载高峰导致系统接收数据的速率远高于它处理数据的速率时,一般都会采用反压技术,以防止数据传输溢出。相关技术采用网状结构,使用简单轮询调度,虽然节省了存储空间,但是队列调度不公平,且极易造成拥塞。
技术实现思路
本公开实施例提供了一种节点控制器的调度系统及FPGA板卡,解决了节点控制器互联时通道之间的堵塞问题。为解决上述技术问题,本专利技术实施例提供以下技术方案:本专利技术实施例一方面提供了一种节点控制器的调度系统,包括本地节点控制器、多个远端节点控制器及多个代理引擎;所述本地节点控制器包含的连接端口的个数与互联的远端节点控制器的个数相同;每个连接端口的输入通道包含多个用于缓存相应类型报文数据的虚拟通道,所述输入通道包含虚拟通道的个数与传输报文的类别数相同;每个虚拟通道具有预设深度的缓存和用于作为相应虚拟通道容纳报文数量的衡量标准的信用值,所述信用值随着相应虚拟通道的报文个数的变化而变化;各远端节点控制器根据各虚拟通道通过连接端口动态反馈的信用值,向所述本地节点控制器发送报文数据;各处理引擎用于对缓存中的报文数据进行调度处理。可选的,各虚拟通道构成一级缓存,所述各虚拟通道构成一级缓存,所述各处理引擎用于对缓存中的报文数据进行调度处理为:各处理引擎的输入端口对二级缓存中的报文数据进行调度处理,所述二级缓存的报文数据为由将本地节点控制器的不同连接端口的各虚拟通道中具有相同目的处理引擎端口、且报文类型相同的报文数据发送至同一个缓存块中构成。可选的,所述将本地节点控制器的不同连接端口的各虚拟通道中具有相同目的处理引擎端口、且报文类型相同的报文数据发送至同一个缓存块中为:采用轮询调度算法将本地节点控制器的不同连接端口的各虚拟通道中具有相同目的处理引擎端口、且报文类型相同的报文数据发送至同一个缓存块中。可选的,各处理引擎的输入端口采用加权差额循环调度算法对所述二级缓存中的报文数据进行调度处理。可选的,所述信用值随着相应虚拟通道的报文个数的变化而变化包括:所述信用值的初始值为最大值,则所述信用值随着相应虚拟通道的报文个数的增加而降低,所述虚拟通道容纳报文的数量随着所述信用值的降低而减小;所述信用值的初始值不为最大值,则所述信用值随着相应虚拟通道的报文个数的增加而增大且不超过所述最大值,所述虚拟通道容纳报文的数量随着所述信用值的增加而减小。可选的,所述信用值的最大值与相应虚拟通道的缓存深度相同。可选的,所述信用值随着相应虚拟通道的报文个数的变化而变化包括:当目标虚拟通道在同一时刻,接收报文的个数和被取走的报文个数相同时,所述目标虚拟通道的信用值保持不变。可选的,所述代理引擎的个数为3个,包括两个本地代理引擎和两个远端代理引擎。本专利技术实施例另一方面提供了一种FPGA板卡,包括如前任意一项所述节点控制器的调度系统。本申请提供的技术方案的优点在于,为每个连接端口设置多个虚拟通道,不同的虚拟通道传输不同类型的报文数据,为各虚拟通道设置信用值,使得各虚拟通道接收报文个数由根据自身的缓存占用情况决定,从而实现各虚拟通道之间彼此独立且互不干扰,各个报文之间不会互相堵塞,路由调度也不会拥塞,实现了节点控制器互联的无拥塞调度和节点控制器的路由层无拥塞调度。此外,本专利技术实施例还针对节点控制器的调度系统提供了相应的应用环境,进一步使得所述系统更具有实用性,所述FPGA板卡具有相应的优点。应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。附图说明为了更清楚的说明本专利技术实施例或相关技术的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的多级一致性域系统框架示意图;图2为本专利技术实施例提供的节点控制器的调度系统的一种具体实施方式结构图;图3为本专利技术实施例提供的节点控制器的调度系统的另一种具体实施方式结构图。具体实施方式为了使本
的人员更好地理解本专利技术方案,下面结合附图和具体实施方式对本专利技术作进一步的详细说明。显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等是用于区别不同的对象,而不是用于描述特定的顺序。此外术语“包括”和“具有”以及他们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可包括没有列出的步骤或单元。在介绍了本专利技术实施例的技术方案后,下面详细的说明本申请的各种非限制性实施方式。首先参见图2,图2为本专利技术实施例提供的一种节点控制器的调度系统的流程示意图,本专利技术实施例可包括以下内容:节点控制器的调度系统包括本地节点控制器1、多个远端节点控制器2及多个代理引擎3。本地节点控制器1和各远端节点控制器2通过光纤相连,每个远端节点控制器通过相应连接端口和本地节点控制器进行报文数据传输。本地节点控制器1包含的连接端口的个数与互联的远端节点控制器的个数相同。举例来说,一个节点控制器的调度系统包括本地节点控制器1和2个远端节点控制器2,那么本地节点控制器1具有两个连接端口。每个连接端口的输入通道包含多个用于缓存相应类型报文数据的虚拟通道,输入通道包含虚拟通道的个数与传输报文的类别数相同。举例来说,若当前报文类型有3类,那么为每个输入通道构建3本文档来自技高网
...

【技术保护点】
1.一种节点控制器的调度系统,其特征在于,包括本地节点控制器、多个远端节点控制器及多个代理引擎;所述本地节点控制器包含的连接端口的个数与互联的远端节点控制器的个数相同;每个连接端口的输入通道包含多个用于缓存相应类型报文数据的虚拟通道,所述输入通道包含虚拟通道的个数与传输报文的类别数相同;每个虚拟通道具有预设深度的缓存和用于作为相应虚拟通道容纳报文数量的衡量标准的信用值,所述信用值随着相应虚拟通道的报文个数的变化而变化;各远端节点控制器根据各虚拟通道通过连接端口动态反馈的信用值,向所述本地节点控制器发送报文数据;各处理引擎用于对缓存中的报文数据进行调度处理。

【技术特征摘要】
1.一种节点控制器的调度系统,其特征在于,包括本地节点控制器、多个远端节点控制器及多个代理引擎;所述本地节点控制器包含的连接端口的个数与互联的远端节点控制器的个数相同;每个连接端口的输入通道包含多个用于缓存相应类型报文数据的虚拟通道,所述输入通道包含虚拟通道的个数与传输报文的类别数相同;每个虚拟通道具有预设深度的缓存和用于作为相应虚拟通道容纳报文数量的衡量标准的信用值,所述信用值随着相应虚拟通道的报文个数的变化而变化;各远端节点控制器根据各虚拟通道通过连接端口动态反馈的信用值,向所述本地节点控制器发送报文数据;各处理引擎用于对缓存中的报文数据进行调度处理。2.根据权利要求1所述的节点控制器的调度系统,其特征在于,所述各虚拟通道构成一级缓存,所述各处理引擎用于对缓存中的报文数据进行调度处理为:各处理引擎的输入端口对二级缓存中的报文数据进行调度处理,所述二级缓存的报文数据为由将本地节点控制器的不同连接端口的各虚拟通道中具有相同目的处理引擎端口、且报文类型相同的报文数据发送至同一个缓存块中构成。3.根据权利要求2所述的节点控制器的调度系统,其特征在于,所述将本地节点控制器的不同连接端口的各虚拟通道中具有相同目的处理引擎端口、且报文类型相同的报文数据发送至同一个缓存块中为:采用轮询调度算法将本地节点控制器的不同连接端口的各虚拟通道中具有相...

【专利技术属性】
技术研发人员:王朝辉王振江刘同强
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1