CN1870769B - 一种基于优先级传播的交叉连接矩阵的仲裁方法及仲裁单元 - Google Patents
一种基于优先级传播的交叉连接矩阵的仲裁方法及仲裁单元 Download PDFInfo
- Publication number
- CN1870769B CN1870769B CN200510034923XA CN200510034923A CN1870769B CN 1870769 B CN1870769 B CN 1870769B CN 200510034923X A CN200510034923X A CN 200510034923XA CN 200510034923 A CN200510034923 A CN 200510034923A CN 1870769 B CN1870769 B CN 1870769B
- Authority
- CN
- China
- Prior art keywords
- arbitration unit
- arbitration
- unit
- priority
- cell
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种基于优先级传播的交叉连接矩阵的仲裁方法,包括以下步骤:A、为每个仲裁单元设置一变量;B、由设定的最高优先级组向最低优先级组逐级仲裁,直到仲裁器中任意一行和任意一列都有一个且仅有一个仲裁单元被选中或者仲裁到最低优先级组为止,得出一次仲裁结果;C、遍历所有仲裁单元,改变处于休眠态的仲裁单元变量的值,使其逐步接近初始值,且当处于休眠态的仲裁单元的变量恢复为初始值时,该仲裁单元被置为标准态;D、发送被选中的仲裁单元对应的虚拟输出队列中的信元,判断被选中的仲裁单元以及其所在行和列上仲裁单元的状态,且依据一判断原则,决定是否改变被选中仲裁单元的状态以及为该单元的变量赋予预定值。本方法解决了公平性问题。
Description
技术领域
本发明涉及路由交换技术领域,具体涉及一种基于优先级传播的交叉连接矩阵的仲裁方法及仲裁单元。
背景技术
交叉连接矩阵(crossbar)是一种将输入端和输出端互联的交换结构,非常容易用大规模集成电路实现。仲裁方法将尽量多的输入端和输出端匹配,其执行时延、公平性、实现复杂性决定了交换的性能。提高仲裁方法的性能一直是学术界和工业界研发的重点,已提出多种方法和多项专利。当前大部分的仲裁方法都是按request→grant→accept三个步骤执行,美国Standford大学提出iSLIP方法是目前较为成功的一种单播仲裁方法,基于该方法的ESLIP方法已经成功应用于Cisco的GSR12000系列路由器中。随后,随着二维优先级(two-dimensional priority)的提出,一系列新的方法被相继提出,如TSA(Two-Step Arbiter)方法、STSA(SkewedTwo-Step Arbiter)方法、WFA(Wave Front Arbiter)方法、WFFA(WrappedWave Front Arbiter)方法、RPA(Rectilinear Propagation Arbiter)方法、DPA(Diagonal Propagation Arbiter)方法等。其中WWFA方法和DPA方法是目前较为成功的两种方法,它们是靠相邻单元电路之间的信息传播来仲裁,执行时延仅为N个门级延时(N为crossbar端口数),且实现简单。
仲裁方法:仲裁器收到N×N个输入队列的状态信息,根据这些状态信息,通过特定的方法,匹配非空输入队列和相应的输出队列,匹配完成后,发送对应输入队列中的信元。仲裁器中完成非空输入队列和相应 的输出队列的匹配的仲裁方法,称之为仲裁方法。说明书中提到的WWFA方法、DPA方法、iSLIP方法和PPAwFE方法都是仲裁方法。图1中Ai(t)表示信元到达输入端口的离散时间过程。在某一信元时隙,若有信元到达输入端口i(1≤i≤N),此信元的目的端口确定为j(1≤j≤N),则该信元被放入输入端口的第j个缓冲队列Q(i,j)中,Q(i,j)称之为虚拟输出队列(VOQ)。在图1的交换结构中,每一个输入端口都分别通过开关和所有的输出端口相连,当输入端口和输出端口j是一个匹配时,就闭合对应的开关,发送信元,这种交换结构称为交叉连接矩阵结构。在仲裁器仲裁结束后,根据匹配的结果,如果输入端口和输出端口j是一个匹配,则从队列Q(i,j)发送一个信元到输出端口j;
仲裁单元:一种基本的仲裁装置,对i输入端口和j输出端口间能否发送信元进行仲裁,在仲裁器结构逻辑图和仲裁方法原理图中,用小正方形表示,正方形用(i,j)标识,称之为仲裁单元(i,j)。当一个仲裁单元被选中时,也表示对应的从i端口进入且要发送到j端口的信元所在的VOQ被允许发送信元;
公平性:对于N×N交换结构的N个输入端口,每个输入端口中有N个VOQ,这N2VOQ中,有的VOQ中有信元等待转发,而有的VOQ中没有信元等待转发。公平性分为两种情形:第一种情形是针对不同输入端口、相同输出端口的VOQ,第二种情形是针对相同输入端口、不同输出端口的VOQ。第一种情形的公平性是指:若所要比较的两个VOQ属于不同输入端口,相同输出端口且状态相同(要么同时有信元等待发送,要么同时没有信元等待发送),在一段足够长的时间内,所要比较的两个VOQ发送信元的个数几乎相等就认为是公平的。第二种情形的公平性是指:若所要比较的两个VOQ属于相同输入端口,不同输出端口且状态相同(要么同时有信元等待发送,要么同时没有信元等待发 送),在一段足够长的时间内,所要比较的两个VOQ发送信元的个数几乎相等就认为是公平的。
基于优先级传播的仲裁方法:它是一组大容量交换网络基于优先级传播的仲裁方法的总称,一般来说,它有如下特征:
①.根据方法的要求,所有最高优先级组中的仲裁单元都不同行且不同列,即任意一个最高优先级组都有且仅有n个仲裁单元,且这n个仲裁单元对称分布在(1,1),(2,2),(3,3)......(n,n)为轴线的两侧;
②.将任意优先级组的所有仲裁单元向右平移一列或向下平移一行,即(i,j)变为(i,j+1)或(i+1,j)(当i,或j为n时,令i+1=1,j+1=1),则新的仲裁单元也可以构成一个最高优先级组。我们将这样的优先级组称为一类,共有n个,这n个优先级组内的仲裁单元都不同行且不同列;
③.最高优先级组的各个仲裁单元只向其它次一级的优先级的仲裁单元发送状态信息,不接收状态信息;最低优先级组的各个仲裁单元只接收比它高一级的优先级的仲裁单元的状态信息,不发送状态信息;
④.所有的仲裁结构中,仲裁器都是由最高优先级向最低优先级仲裁,即仲裁的方向是单向的。在仲裁结构的图中表现为箭头是单向的;
仲裁单元的状态:仲裁单元的状态有3种,分别为空闲态、标准态和休眠态;
1)空闲态:仲裁单元没有信元等待发送的状态;
2)标准态:仲裁单元有信元等待发送,且其发送信元的请求没有被忽略,也即该仲裁单元的被选中权没有被取消的状态;
3)休眠态:仲裁单元有信元等待发送,但是其发送信元的请求被忽略,也即该仲裁单元的被选中权被取消的状态。
图2是WWFA方法的仲裁器结构的原理图,该仲裁器结构称为正方形仲裁结构,以4×4的仲裁器结构为例。图中虚线上的仲裁单元具 有相同的优先级,虚线上的优先级组w2具有最高的优先级,是最高优先级组,用加粗的虚线表示。优先级组w3、w4,w1的优先级依次递减。在任何一个优先级组上的仲裁单元入端口和出端口都互不相同,所以可以同时被选中,不会出现冲突。当开始仲裁时,首先仲裁最高优先级组,然后仲裁次一级优先级组,以此类推,像波纹(wave)一样向下一级优先级组传递。为了达到公平性的要求,最高优先级组也不是固定的,也要像波纹一样传递,图2中的最高优先级组是w2,那么下次仲裁时,最高优先级组就变为w3,当最高优先级组是w4时,那么下次仲裁的最高优先级回到w1。
仲裁的最基本的规则是在每一行、每一列都有且仅有一个仲裁单元能被选中,在图2中,如果仲裁单元(1,1)被选中,那么,第一行的其余仲裁单元(1,j)和第一列的其余仲裁单元(i,1)都不能被选中。如果仲裁单元(1,1)没有被选中,那么就仲裁它下一个优先级,即分别仲裁仲裁单元(1,1)正x方向,y方向上的仲裁单元。因此,当波纹移动到w3 时,如果仲裁单元(1,1)和(2,4)都没有被选中,那么(2,1)才可能被选中。如果一个仲裁单元被选中的话,还需要两个条件,一个是这个仲裁单元有发包的请求(request),另一个条件是对应的输出端口正在空闲。
一个仲裁单元是否被选中的公式如下:
grant=(request)·(priorityxdirection)·(priorityydirection)·(output-port ready),式中各个信号为1时表示信号为真,即grant为1表示当前仲裁单元被选中,request为1表示当前仲裁单元有发包请求,priorityxdirection为1表示仲裁单元x方向上已经有仲裁单元被选中,priorityydirection为1表示y方向上已经有仲裁单元被选中,output-port ready为1表示当前仲裁单元对应输出端口空闲。
相邻优先级的仲裁单元的仲裁信号传递公式如下:
priorityx(y)direction=(grant)·(priorityx(y)direction),式中第一个priorityx(y)direction表示当前仲裁单元的两条入线上的信号,第二个priorityx(y)direction表示当前仲裁单元的负x(y)方向上的仲裁单元的对应方向上的出线的信号。仲裁单元的原理图如图3所示,仲裁真值表如图4所示。
WWFA方法结构这种靠相邻单元电路之间的信息传播来仲裁的特性决定了只有当每个端口都被充分利用的时候,各个端口的公平性才能得以保证;在某些端口没有流量或流量很小的情况下,会出现不公平;在大部分端口没有流量或大部分端口流量很小的时候,其公平性带来的问题尤其明显。在实际应用中,如果使用WWFA方法的交换机,在端口没有全部被配置或者某些端口的流量不足的时候,公平性所带来的问题非常巨大,对n×n的交换机,公平性最差的时候端口的利用率最高和最低的比是(n-1)∶1,可以认为,某些端口几乎得不到服务。因此,WWFA方法在公平性上的缺陷极大地限制了它的商用。
DPA方法结构这种靠相邻单元电路之间的信息传播来仲裁的特性决定了只有当每个端口都被充分利用的时候,各个端口的公平性才能得以保证;在某些端口没有流量或流量很小的情况下,会出现不公平;在大部分端口没有流量或大部分端口流量很小的时候,其公平性带来的问题尤其明显。在实际应用中,如果使用DPA方法的交换机,在端口没有全部被配置或者某些端口的流量不足的时候,公平性所带来的问题非常 巨大,对n×n的交换机,公平性最差的时候端口的利用率最高和最低的比是(n-1)∶1,可以认为,某些端口几乎得不到服务。因此,DPA方法在公平性上的缺陷极大地限制了它的商用。
iSLIP(iterative SLIP)方法的目的是为了有效、公平、快速的匹配一个输入队列调度器的输入端口和输出端口,它是一种迭代(iteration)方法,在每个时隙采用多次迭代来选择交叉开关的配置,使输入端口和输出端口尽量达到匹配。iSLIP方法采用轮循匹配RRM(Round-RobinMatching)方法来轮流调度每个有效输入端口和输出端口,而且RRM是一种优先级轮循匹配方法,用于仲裁输入/输出端口之间的匹配。iSLIP方法是目前应用广泛的一种调度方法,它的主要缺点在于它需要多次迭代,执行时延较长。这在不久的将来,必将无法满足大容量交换网络高速仲裁的需要。
发明内容
本发明要解决的技术问题是提供一种基于优先级传播的交叉连接矩阵的仲裁方法及仲裁单元,克服现有技术的仲裁方法仲裁时延较长、无法保证公平性的缺点。
为解决上述技术问题,本发明采用如下的技术方案:
一种基于优先级传播的交叉连接矩阵的仲裁方法,所述方法包括以下步骤:
为每个仲裁单元设置一变量,当仲裁单元的所述变量不等于其初始值时,该仲裁单元被置为休眠态;
由设定的最高优先级组向最低优先级组逐级仲裁,直到仲裁器中任意一行和任意一列都有一个且仅有一个仲裁单元被选中或者仲裁到最低优先级组为止,得出一次仲裁结果;
遍历所有仲裁单元,改变处于休眠态的仲裁单元所述变量的 值,使其逐步接近所述初始值,且当处于休眠态的仲裁单元的变量恢复为初始值时,该仲裁单元被置为标准态;
发送被选中的仲裁单元对应的虚拟输出队列中的信元,之后判断所述被选中的仲裁单元以及其所在行和列上仲裁单元的状态,且基于对被选中的仲裁单元对应的虚拟输出队列有无信元和其所在行和列上其他仲裁单元状态的判断原则,决定是否改变被选中仲裁单元的状态以及为所述被选中仲裁单元的变量赋予不等于初始值的预定值,所述判断原则包括:若被选中的仲裁单元对应的虚拟输出队列中已没有信元,将所述被选中仲裁单元置为空闲态;若所述被选中仲裁单元对应的虚拟输出队列中仍有信元,且其所在行和列上没有其它仲裁单元处于标准态,则不改变该所述被选中仲裁单元的状态;若该所述被选中仲裁单元对应的虚拟输出队列中仍有信元且其所在行或列上至少有一个仲裁单元处于标准态,则将该所述被选中仲裁单元置为休眠态,并对所述被选中仲裁单元的所述变量赋予所述预定值。
所述的仲裁方法,其中:所述初始值设为0。
所述的仲裁方法,其中:所述改变处于休眠态的仲裁单元的所述变量的值的步骤包括,将所述变量的值减1。
所述的仲裁方法,其中:所述步发送选中的仲裁单元对应的虚拟输出队列中的信元为队首信元。
所述的仲裁方法,其中:所述预定值由以下方法确定:对所述被选中仲裁单元所在行和列上处于标准态的仲裁单元分别计数,其中较大的值作为所述预定值。
所述的仲裁方法,其中:设置所述仲裁器的结构为正方形仲裁结构。
一种仲裁单元,包括一组输入接口和一组输出接口,其中:R输入 接口,用于接收表示该仲裁单元所对应的虚拟输出队列是否有发送信元的请求的R输入信号;W输入接口,用于接收表示该仲裁单元所在行上是否存在优先级高于所述仲裁单元的仲裁单元被选中的W输入信号;N输入接口,用于接收表示该仲裁单元所在列上是否存在优先级高于所述仲裁单元的仲裁单元被选中的N输入信号;
G输出接口,用于发送表示该仲裁单元是否被选中的G输出信号;E输出接口,用于发送表示该仲裁单元所在行上是否存在优先级高于或等于该仲裁单元的仲裁单元被选中的E输出信号;S输出接口,用于发送表示该仲裁单元所在列上是否存在优先级高于或等于该仲裁单元的仲裁单元被选中的S输出信号;
该仲裁单元还包括xi输入接口,用于接收表示在该仲裁单元所在行上处于标准态的仲裁单元的个数的xi输入信号;yj输入接口,用于接收表示在该仲裁单元所在列上处于标准态的仲裁单元的个数的yj信号;I输出接口,用于发送表示该仲裁单元是否参与xi和yj值的计算的I输出信号;以及所述仲裁单元内部设置有一个信号变量λ,用于控制该仲裁单元处于休眠态的时间。
所述的仲裁单元,其中:其所有接口信号之间满足以下公式:
仲裁前:
Wi,j=Ei,(j-1);Ni,j=S(i-1),j;
当其为最高优先级组中的仲裁单元时,Wi,j=Ni,j=0。
仲裁时:
仲裁后:
Ii,j=Ri,j·{λi,j=0};
λi,j=max{xi,yj}·{Gi,j=1}+(λi,j-1)·{Gi,j=0}·{λi,j≠0}+λi,j·{Gi,j=0}·{λi,j=0};
Si,j=Gi,j+Ni,j;
Ei,j=Gi,j+Wi,j;
设i、j为正整数,当i=1时,S(i-1),j=Sn,j;j=1时,Ei,(j-1)=Ei,n,n表示n×n个仲裁单元组成的n×n仲裁器结构的行、列数,i表示行下标,j表示列下标。
本发明的有益效果为:采用本发明的技术方案,由于设置了控制仲裁单元状态变化的变量,极好地解决了公平性问题,且仲裁速度快,时延短,实现简单;由于采用了正方形仲裁结构,因此仲裁器所占面积小。
附图说明
图1是现有技术中N端口VOQ交换结构示意图;
图2是现有技术中WWFA方法的仲裁器结构及优先级组划分示意图;
图3是现有技术中WWFA方法的仲裁单元示意图;
图4是现有技术中WWFA方法的仲裁真值表;
图5是现有技术中DPA方法的仲裁器结构及优先级组示意图;
图6是本发明的4*4端口仲裁器结构示意图;
图7是本发明的仲裁单元(CAC:Cross-point arbiter cell)示意图;
图8是本发明的仲裁器中仲裁单元的一种状态示意图;
图9是本发明的仲裁器中仲裁单元另一种状态示意图;
图10是本发明的仲裁器中仲裁单元的第三种状态示意图;
图11是本发明的仲裁器中仲裁单元的第四种状态示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明:
本发明的方法从每个仲裁单元本身出发考虑,保证仲裁算法的公平性。两个仲裁单元ξ、η不公平,也就是在仲裁算法进行仲裁的时候,选中仲裁单元ξ的可能性大于或小于仲裁单元η的可能性。如果在选中仲裁单元ξ的可能性大于仲裁单元η的可能性的条件下,仲裁单元ξ被选中的时候,将该仲裁单元的被选中权取消一段时间,即将处于标准态的该仲裁单元置为非标准态,在这段时间内,本来应该选中仲裁单元ξ的可能性就给了其它仲裁单元(包括仲裁单元η),这样就有可能使两个仲裁单元ξ、η公平。基于这样的考虑,我们为每个仲裁单元设置了一个变量λ,变量的初始值为0,当仲裁单元(i,j)被选中的时候,分别计算第i行、第j列上有发包请求的且没有被取消被选中权的仲裁单元的个数,取其中的较大值赋给λ,当λ大于0的时候,取消仲裁单元(i,j)的被选中权。此后,每经过一个仲裁时隙,λ均减1,直到λ为0时恢复仲裁单元(i,j)的被选中权——这就是本发明的根本思想。
在仲裁器结构上,本发明的方法采用了与WWFA方法一样的正方形结构,如图6所示。
本发明的实现步骤如下:
①.在一次仲裁开始的时候,首先仲裁最高优先级组,然后仲裁次一级优先级组,以此类推,向波纹(wave)一样向下一级优先级组传递;直到仲裁器中任意一行和任意一列都有一个且仅有一个仲裁单元被选中或者仲裁到最低优先级组为止,得出仲裁结果;
②.将处于休眠态的仲裁单元的λ值减1,判断λ是否为0,如果为0则将仲裁单元的状态置为标准态;
③.发送排在本次仲裁结果的仲裁单元所代表的VOQ队首的信元,并判断该仲裁单元的状态,如果该仲裁单元由有信元发送请求变为没有信元发送请求,则将该仲裁单元置为空闲态;如果该仲裁单元处于标准态而且其所在行和列上没有仲裁单元处于标准态,则不改变该仲裁单元 的状态,如果该仲裁单元处于标准态而且其所在行或列上至少有一个仲裁单元处于标准态,则将该仲裁单元置为休眠态,并对其所在行和列上处于标准态的仲裁单元计数,其将其中的较大值赋给λ;
④.选择下一次仲裁的最高优先级组,我们按照最高优先级组的自然顺序,选择当前仲裁时隙的最高优先级组在行或列方向上的下一个最高优先级组,执行步骤①.。
我们规定:仲裁开始时,用w1作为最高优先级组进行仲裁,每个仲裁单元的λ初值为0,且仲裁单元要么处于空闲态,要么处于标准态,不存在处于休眠态的仲裁单元。
本发明的仲裁单元如图7所示,R信号是输入信号,表示仲裁单元所代表的VOQ队列是否有发送信元的请求(request),R=1表示有发送信元的请求,初值为0;W(west)信号是输入信号,表示仲裁单元所在行上,是否存在优先级高于当前仲裁单元的仲裁单元被选中,存在则W=1,初值为0;N(north)是输入信号,表示仲裁单元所在列上,是否存在优先级高于当前仲裁单元的仲裁单元被选中,存在则N=1,初值为0;G是输出信号,表示仲裁单元是否被选中(grant),选中则G=1,初值为0;E(east)是输出信号,表示仲裁单元所在行上,是否存在优先级高于或等于当前仲裁单元的仲裁单元被选中,存在则E=1,初值为0;S(South)是输出信号,表示仲裁单元所在列上,是否存在优先级高于或等于当前仲裁单元的仲裁单元被选中,存在则S=1,初值为0;xi (X_req_num)是输入信号,表示在仲裁单元所在行上处于标准态的仲裁单元的个数,初值为0;yj(Y_req_num)是输入信号,表示在仲裁单元所在列上处于标准态的仲裁单元的个数,初值为0;I(idle)信号是输出信号,表示仲裁单元是否参与x和y值的计算,参与则I=1,初值为0;λ是仲裁单元内部信号,初值为0。
仲裁单元的所有信号的值由以下公式确定:
1.仲裁单元被仲裁前:
Wi,j=Ei,(j-1);Ni,j=S(i-1),j;
当仲裁单元是最高优先级组中的仲裁单元时,Wi,j=Ni,j=0。
2.仲裁单元被仲裁时:
3.仲裁单元被仲裁后:
Ii,j=Ri,j·{λi,j=0};
λi,j=max{xi,yj}·{Gi,j=1}+(λi,j-1)·{Gi,j=0}·{λi,j≠0}+λi,j·{Gi,j=0}·{λi,j=0};
Si,j=Gi,j+Ni,j;
Ei,j=Gi,j+Wi,j;
其中当i=1时,S(i-1),j=Sn,j;j=1时,Ei(j-1)=Ei,n,n表示n×n个仲裁单元组成的n×n仲裁器结构的行、列数,i表示行下标,j表示列下标。
仲裁单元的状态由仲裁单元内部信号λ和仲裁单元输入信号R决定,当λ=0且R=1时,仲裁单元处于标准态;当λ≠0且R=1时,仲裁单元处于休眠态;当λ=0且R=0时,仲裁单元处于空闲态。
下面以4×4的仲裁器结构说明本发明的具体仲裁过程:
由前面的讨论知道,4×4的仲裁器结构中,优先级组有四组,分别为w1(1,1)、(4,2)、(3,3)、(2,4),w2(2,1)、(1,2)、(4,3)、(3,4),w3 (3,1)、(2,2)、(1,3)、(4,4),w4(4,1)、(3,2)、(2,3)、(1,4)。
本次仲裁开始时仲裁单元的状态如图8所示,最高优先级组为w3:(3,1)、(2,2)、(1,3)、(4,4),这四个仲裁单元的入线保留为初始信息,不接收其它仲裁单元的状态信息;当前状态下,仲裁单元(1,1)、(1,2)、 (2,1)、(2,2)、(3,2)、(4,4)处于标准态,除仲裁单元(2,2)所代表的VOQ只有一个信元等待发送外,其它仲裁单元所代表的VOQ均至少有两个信元等待发送;仲裁单元(2,3)处于休眠态,λ=1;仲裁单元(3,3)处于休眠态,λ=2;其它仲裁单元处于空闲态。下面是仲裁步骤:
①.以w3为本次仲裁的最高优先级组进行仲裁,得出仲裁结果:(1,1)、(2,2)、(4,4);
②.遍历所有仲裁单元,将处于休眠态的仲裁单元的λ值减1,当结果为0时将该仲裁单元的状态置为标准态。仲裁单元(2,3)处于休眠态,λ-1=0,则将仲裁单元(2,3)置为标准态;仲裁单元(3,3)处于休眠态,λ-1=1,其状态不变;此时仲裁单元的状态如图9所示。
③.发送排在本次次仲裁结果的仲裁单元所代表的VOQ队首的信元,并重新判断仲裁单元的状态。仲裁单元(1,1),发送一个信元后,其对应VOQ中仍有信元等待发送,且其行方向上和列方上向均有一个仲裁单元处于标准态,则置仲裁单元(1,1)为休眠态,λ=1;仲裁单元(2,2),发送一个信元后,其对应VOQ中没有信元等待发送,则置仲裁单元(2,2)为空闲态;仲裁单元(4,4),发送一个信元后,其对应VOQ中仍有信元等待发送,且其行方向和列方向上均没有仲裁单元处于标准态,则仲裁单元(4,4)的状态不变。此时仲裁单元的状态如图10所示。
④.按照最高优先级组的自然顺序,选择当前仲裁时隙的最高优先级组w3在行或列方向上的下一个最高优先级组w4作为下一次仲裁的最高优先级组,此时仲裁单元的状态如图11所示。
本发明技术方案的有益效果:
(1)仲裁速度快,时延短,实现简单。本发明的方法和WWFA、DPA方法一样,都是靠相邻单元电路之间的信息传播来仲裁。本发明的方法与iSLIP方法不同,不需要迭代,一次仲裁即可最大限度的匹配所有的输入输出端口,且执行时延仅为o(N)(N为crossbar端口数)个门级延 时,且实现简单。这为路由器、交换机获得较高的交换带宽,解决了调度方法性能的一个瓶颈。同时,方法能实现高速的交换,且易于实现,也使使用该方法的路由器、交换机在当前激烈的竞争中占有较为有利的地位。
(2)公平性好。本发明的方法每历经一个仲裁时隙,最高优先级仍然是简单地平移,保证仲裁结构中的每一个仲裁单元都能被仲裁。这与WWFA方法、DPA方法不同,本发明的方法每选中一个仲裁单元,都改变那个仲裁单元的状态;每仲裁一个时隙,也改变一些仲裁单元的状态。这些仲裁单元的状态,导致在某一段时间内,一些仲裁单元虽然有信元等待发送,但是并不能被选中,简单的说,也就是当可能出现过多的选中某个仲裁单元时,在某几个时隙内,改变那个仲裁单元的状态,使其不能被选中,以保证方法的公平性。本发明的方法无论在路由器、交换机端口充分利用的情况下,还是只应用一部分端口或者某些端口的流量很少的情况下,都能大致公平的对每个正在运行的端口进行交换,在实际的使用中保证了每个用户都能平等的得到服务。
(3)方法结构所占面积小。与DPA方法结构相比,本发明的方法使用的仲裁器结构和WWFA方法的仲裁器结构一样,是最小面积。这使交换机能尽量做的小巧,或者用同样大小的芯片能实现更多的功能。
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
Claims (8)
1.一种基于优先级传播的交叉连接矩阵的仲裁方法,所述方法包括以下步骤:
为每个仲裁单元设置一变量,当仲裁单元的所述变量不等于其初始值时,该仲裁单元被置为休眠态;
由设定的最高优先级组向最低优先级组逐级仲裁,直到仲裁器中任意一行和任意一列都有一个且仅有一个仲裁单元被选中或者仲裁到最低优先级组为止,得出一次仲裁结果;
遍历所有仲裁单元,改变处于休眠态的仲裁单元所述变量的值,使其逐步接近所述初始值,且当处于休眠态的仲裁单元的变量恢复为初始值时,该仲裁单元被置为标准态;
发送被选中的仲裁单元对应的虚拟输出队列中的信元,之后判断所述被选中的仲裁单元以及其所在行和列上仲裁单元的状态,且基于对被选中的仲裁单元对应的虚拟输出队列有无信元和其所在行和列上其他仲裁单元状态的判断原则,决定是否改变被选中仲裁单元的状态以及为所述被选中仲裁单元的变量赋予不等于初始值的预定值;
所述判断原则包括:若被选中的仲裁单元对应的虚拟输出队列中已没有信元,将所述被选中的仲裁单元置为空闲态;若所述被选中的仲裁单元对应的虚拟输出队列中仍有信元,且其所在行和列上没有其它仲裁单元处于标准态,则不改变所述被选中仲裁单元的状态;若所述被选中的仲裁单元对应的虚拟输出队列中仍有信元且其所在行或列上至少有一个仲裁单元处于标准态,则将所述被选中的仲裁单元置为休眠态,并对所述被选中的仲裁单元的所述变量赋予所述预定值。
2.根据权利要求1所述的仲裁方法,其特征在于:所述初始值设为0。
3.根据权利要求2所述的仲裁方法,其特征在于:所述改变处于休眠态的仲裁单元的所述变量的值的步骤包括,将所述变量的值减1。
4.根据权利要求3所述的仲裁方法,其特征在于:所述发送选中的仲裁单元对应的虚拟输出队列中的信元为队首信元。
5.根据权利要求3所述的仲裁方法,其特征在于:所述预定值由以下方法确定:对所述被选中的仲裁单元所在行和列上处于标准态的仲裁单元分别计数,其中较大的值作为所述预定值。
6.根据权利要求1至5任一权利要求所述的仲裁方法,其特征在于:设置所述仲裁器的结构为正方形仲裁结构。
7.一种仲裁单元,包括一组输入接口和一组输出接口,其中:R输入接口,用于接收表示该仲裁单元所对应的虚拟输出队列是否有发送信元的请求的R输入信号;W输入接口,用于接收表示该仲裁单元所在行上是否存在优先级高于所述仲裁单元的仲裁单元被选中的W输入信号;N输入接口,用于接收表示该仲裁单元所在列上是否存在优先级高于所述仲裁单元的仲裁单元被选中的N输入信号;
G输出接口,用于发送表示该仲裁单元是否被选中的G输出信号;E输出接口,用于发送表示该仲裁单元所在行上是否存在优先级高于或等于该仲裁单元的仲裁单元被选中的E输出信号;S输出接口,用于发送表示该仲裁单元所在列上是否存在优先级高于或等于该仲裁单元的仲裁单元被选中的S输出信号;
其特征在于:该仲裁单元还包括xi输入接口,用于接收表示在该仲裁单元所在行上处于标准态的仲裁单元的个数的xi输入信号;yj输入接口,用于接收表示在该仲裁单元所在列上处于标准态的仲裁单元的个数的yj信号;I输出接口,用于发送表示该仲裁单元是否参与xi和yj值的计算的I输出信号;以及所述仲裁单元内部设置有一个信号变量λ,用于控制该仲裁单元处于休眠态的时间。
8.根据权利要求7所述的仲裁单元,其特征在于:其所有接口信号之间满足以下公式:
仲裁前:
Wi,j=Ei,(j-1);Ni,j=S(i-1),j;
当其为最高优先级组中的仲裁单元时,Wi,j=Ni,j=0。
仲裁时:
仲裁后:
Ii,j=Ri,j·{λi,j=0};
λi,j=max{xi,yj}·{Gi,j=1}+(λi,j-1)·{Gi,j=0}·{λi,j≠0}+λi,j·{Gi,j=0}·{λi,j=0};
Si,j=Gi,j+Ni,j;
Ei,j=Gi,j+Wi,j;
设i、j为正整数,当i=1时,S(i-1),j=Sn,j;j=1时,Ei,(j-1)=Ei,n,n表示n×n个仲裁单元组成的n×n仲裁器结构的行、列数,i表示行下标,j表示列下标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200510034923XA CN1870769B (zh) | 2005-05-26 | 2005-05-26 | 一种基于优先级传播的交叉连接矩阵的仲裁方法及仲裁单元 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200510034923XA CN1870769B (zh) | 2005-05-26 | 2005-05-26 | 一种基于优先级传播的交叉连接矩阵的仲裁方法及仲裁单元 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1870769A CN1870769A (zh) | 2006-11-29 |
CN1870769B true CN1870769B (zh) | 2011-12-07 |
Family
ID=37444305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200510034923XA Expired - Fee Related CN1870769B (zh) | 2005-05-26 | 2005-05-26 | 一种基于优先级传播的交叉连接矩阵的仲裁方法及仲裁单元 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1870769B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102724763B (zh) * | 2012-06-07 | 2014-11-05 | 西安交通大学 | 一种基于二维优先级的时域分组调度方法 |
CN103498377A (zh) * | 2013-10-16 | 2014-01-08 | 陕西科技大学 | 一种多核聚合羟基铝绿液除硅的方法 |
CN114968866B (zh) * | 2022-08-01 | 2022-11-01 | 中科声龙科技发展(北京)有限公司 | 优先级分组轮询仲裁器及其仲裁方法、交叉开关和芯片 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6735212B1 (en) * | 1999-04-19 | 2004-05-11 | Pmc-Sierra, Inc. | Short and long term fair shuffling for crossbar switch arbiter |
CN1555016A (zh) * | 2003-12-22 | 2004-12-15 | 威盛电子股份有限公司 | 存储器存取要求优先序列仲裁装置及方法 |
CN1604537A (zh) * | 2003-09-29 | 2005-04-06 | 中国人民解放军理工大学通信工程学院 | 一种支持多优先级的高速Crossbar调度策略 |
-
2005
- 2005-05-26 CN CN200510034923XA patent/CN1870769B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6735212B1 (en) * | 1999-04-19 | 2004-05-11 | Pmc-Sierra, Inc. | Short and long term fair shuffling for crossbar switch arbiter |
CN1604537A (zh) * | 2003-09-29 | 2005-04-06 | 中国人民解放军理工大学通信工程学院 | 一种支持多优先级的高速Crossbar调度策略 |
CN1555016A (zh) * | 2003-12-22 | 2004-12-15 | 威盛电子股份有限公司 | 存储器存取要求优先序列仲裁装置及方法 |
Non-Patent Citations (3)
Title |
---|
JP特开2004-78713A 2004.03.11 |
温立,涂晓东,王凯.基于Crossbar的高性能输入排队调度算法对比分析.电子科技大学学报33 6.2004,33(6),718-721. |
温立,涂晓东,王凯.基于Crossbar的高性能输入排队调度算法对比分析.电子科技大学学报33 6.2004,33(6),718-721. * |
Also Published As
Publication number | Publication date |
---|---|
CN1870769A (zh) | 2006-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Nong et al. | Analysis of nonblocking ATM switches with multiple input queues | |
Agrawal et al. | Simulation of network on chip for 3D router architecture | |
Sivaram et al. | HIPIQS: A high-performance switch architecture using input queuing | |
CN1870769B (zh) | 一种基于优先级传播的交叉连接矩阵的仲裁方法及仲裁单元 | |
CN109474960B (zh) | 一种基于q学习的双连接流量分配方法 | |
CN111224883B (zh) | 一种高阶路由器的瓦片结构及其构建的高阶路由器 | |
Mische et al. | Low power flitwise routing in an unidirectional torus with minimal buffering | |
ElGindy et al. | RMB-a reconfigurable multiple bus network | |
CN104022950A (zh) | 一种可共享和自配置缓存的路由器结构 | |
CN101964747B (zh) | 基于前置反馈的两级交换结构工作方法 | |
Park et al. | NN based ATM cell scheduling with queue length-based priority scheme | |
Ueno et al. | Hybrid network utilization for efficient communication in a tightly coupled FPGA cluster | |
CN111711574B (zh) | 一种超高阶单周期报文调度方法及装置 | |
Karadeniz et al. | A new approach to switch fabrics based on mini-router grids and output queueing | |
Katevenis et al. | ‘VC-level Flow Control and Shared Buffering in the Telegraphos Switch | |
Feng et al. | Simulated performance evaluation of a 6D Mesh/iBT interconnect | |
Jiang et al. | Effective coflow scheduling in hybrid circuit and packet switching networks | |
Delgado-Frias et al. | A VLSI crossbar switch with wrapped wave front arbitration | |
Yu et al. | Design and implementation of switch module for NS-3 | |
CN108199977A (zh) | 一种双活数据中心的多跳路由和调度方法 | |
CN103744819B (zh) | Crossbar总线向Avalon总线的通讯转换设备及其转换方法 | |
Nitnaware et al. | Folded architecture of scheduler for area optimization in an on-chip switch fabric | |
Wang et al. | CPNoC: an energy-efficient photonic network-on-chip | |
Yi et al. | SpaceWire standard and improved wormhole router design | |
Li et al. | An Input-Queueing TSN Switching Architecture to Achieve Zero Packet Loss for Timely Traffic |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20111207 Termination date: 20180526 |
|
CF01 | Termination of patent right due to non-payment of annual fee |