The invention discloses a data output scheduling device and a method thereof, which can reduce the chance that the data of the same queue is transmitted continuously. The method of the embodiment comprises the following steps: providing a plurality of buffer can respectively store Q queue data, each queue corresponds to a sum of all the weights, weight is Ws, the total Ws ranged from 2 (M-1) between the parties and 2 times M and less than the maximum sum. The maximum sum is not greater than 2 times N, where Q is greater than 1, the integer M is a positive integer and N is a positive integer not less than M; a bit reverse count, the reverse count is less than 2 N; and on the basis of the reverse count decided that the Q queue one of them get a data output right.
【技术实现步骤摘要】
本专利技术关于数据输出调度装置与方法,尤其关于能够减少同一队列的数据被连续发送的机会的数据输出调度装置与方法。
技术介绍
数据输出调度算法常应用于通信产品(例如网络通信产品),用来为多个队列的数据安排输出顺序。权重式循环(weightedroundrobin,WRR)算法是常见的数据输出调度算法,能依据多个队列中各队列的权重来从各队列调度数据以输出,举例而言,若该多个队列为队列Q0至队列Q3,队列Q0至Q3的数据依序标示为a、b、c、d,队列Q0至Q3的权重依序为1:1:2:4,则在该些队列均有足够数据待输出的情形下,被输出的数据如图1所示依序将为…a-b-cc-dddd-a-b-cc-dddd-a-b…,其中队列Q0至Q3的数据来自于前一装置或端点110、分别储存于当前装置120的缓存器122至缓存器128、待输出至下一装置或端点130。WRR算法的优点在于容易实现,但缺点在于权重配置不均匀所引起的突发数据流量(databurst)的问题、单个队列的输出不平稳的问题,以图1的例子来说,队列Q3会连续传送四笔数据dddd(相当于数据流量的波峰),接着队列Q0至Q2会依序传送四笔数据a-b-cc(相当于数据流量的波谷),当队列Q3的权重更高或者所连续传送的每笔数据的数据量很大时,数据流量不平稳的现象会更加明显。
技术实现思路
本专利技术的一目的在于提供一种数据输出调度装置与方法,以改善先前技术的缺陷。本专利技术揭露一种数据输出调度装置,能够减少同一队列的数据被连续发送的机会,该装置的一实施例包含:Q个缓存器(buffer);一权值配值器;以及一轮询(polli ...
【技术保护点】
一种数据输出调度装置,能够减少同一队列的数据被连续发送的机会,包含:Q个缓存器,能够分别储存Q个队列的数据,该Q个队列分别对应Q个权值,每该权值不大于一最大权值,该最大权值不大于2的N次方,其中该Q为大于1的整数,该N为正整数;一权值配置器,用来依据至少一二进制位反向数列分别配置该Q个权值,藉此散布该Q个权值中的一第K权值以使其逻辑上关联至2的N次方个排序点中的T个排序点,其中该第K权值的值为T、该K为不大于该Q的正整数、该T为不小于0且不大于该最大权值的整数、该2的N次方个排序点的顺序是一递增顺序;以及一轮询电路,用来依据该2的N次方个排序点的至少一部分的顺序轮询该Q个缓存器,当该轮询电路于一当前轮询周期内轮询该Q个缓存器时,若该当前轮询周期逻辑上对应该2的N次方个排序点中的该T个排序点的其中之一,该轮询电路使该第K权值所对应的该缓存器获得一数据输出权。
【技术特征摘要】
1.一种数据输出调度装置,能够减少同一队列的数据被连续发送的机会,包含:Q个缓存器,能够分别储存Q个队列的数据,该Q个队列分别对应Q个权值,每该权值不大于一最大权值,该最大权值不大于2的N次方,其中该Q为大于1的整数,该N为正整数;一权值配置器,用来依据至少一二进制位反向数列分别配置该Q个权值,藉此散布该Q个权值中的一第K权值以使其逻辑上关联至2的N次方个排序点中的T个排序点,其中该第K权值的值为T、该K为不大于该Q的正整数、该T为不小于0且不大于该最大权值的整数、该2的N次方个排序点的顺序是一递增顺序;以及一轮询电路,用来依据该2的N次方个排序点的至少一部分的顺序轮询该Q个缓存器,当该轮询电路于一当前轮询周期内轮询该Q个缓存器时,若该当前轮询周期逻辑上对应该2的N次方个排序点中的该T个排序点的其中之一,该轮询电路使该第K权值所对应的该缓存器获得一数据输出权。2.根据权利要求1所述的数据输出调度装置,其中该权值配置器将小于该第K权值且不小于零的整数逻辑上关联至一第K二进制位反向数列中的相对应数值,藉此散布该第K权值。3.根据权利要求2所述的数据输出调度装置,其中该权值配置器于散布该Q个权值中的第(K+1)权值时,将小于该第(K+1)权值且不小于零的整数逻辑上关联至一第(K+1)二进制位反向数列中的相对应数值,且该第(K+1)二进制位反向数列是该第K二进制位反向数列的一平移序列。4.根据权利要求1所述的数据输出调度装置,其中该权值配置器包含:一第一级配置器,用来对每该权值执行一第一级配置处理,藉此将该第K权值逻辑上关联至2的X次方个区间的R个区间,该2的X次方个区间逻辑上对应该2的N次方个排序点,该2的X次方个区间的每一个对应一区间权值且每该区间权值不大于该T,该R个区间所对应的区间权值的总和等于该T,其中该X为小于该N的正整数、若该T大于或等于2的X次方则该R等于2的X次方、若该T小于2的X次方则该R等于该T;以及一第二级配置器,用来对衍生自每该权值的每一区间权值执行一第二级配置处理,藉此将该R个区间权值中的第S个区间权值逻辑上关联至2的(N-X)次方个排序点中的Y个排序点,该Y个排序点属于该T个排序点,该S为不小于零且不大于该R的整数,该Y等于该第S个区间权值。5.根据权利要求4所述的数据输出调度装置,其中任二个该区间权值的差不大于1。6.根据权利要求4所述的数据输出调度装置,其中该第一级配置器包含:一第一级移位寄存器,包含2的X次方移位寄存单元,用来储存并平移一第一级二进制位反向数列;以及Q个区间权值输出器,耦接该第一级移位寄存器,用来于一输出权输出周期内依据该第一级二进制位反向数列以及该Q个权值分别输出Q个该区间权值。7.根据权利要求6所述的数据输出调度装置,其中该第二级配置器包含:一第二级移位寄存器,包含2的(N-X)次方个移位寄存单元,用来储存并平移一第二级二进制位反向数列;以及Q个输出权输出器,用来于该输出权输出周期内依据该第二级二进制位反向数列以及该Q个区间权值产生Q个输出权指示,每该输出权指示用来告知该轮询电路该输出权指示所对应的该缓存器是否获得该数据输出权。8.根据权利要求7所述的数据输出调度装置...
【专利技术属性】
技术研发人员:朱建银,
申请(专利权)人:瑞昱半导体股份有限公司,
类型:发明
国别省市:中国台湾;71
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。