本发明专利技术涉及一种调度装置200,其用于接收请求集合202且提供对所述请求集合202的允许集合204,所述调度装置200包括:查找向量准备单元203,其用于取决于所述请求集合202和选择掩码210而提供查找向量准备请求集合208且提供对所述请求集合202的确认集合212;以及前缀森林单元205,其耦合到所述查找向量准备单元203,其中所述前缀森林单元205用于提供作为所述查找向量准备请求集合208的函数的所述允许集合204且基于所述允许集合204提供所述选择掩码210。
【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及一种调度装置,尤其涉及一种高速硬件调度器。
技术介绍
高速硬件调度器是当今的应用中需要的,尤其是对于业务服务质量(QoS)、CPU核 心之间的任务分布以及其它应用。调度器接收请求集合或输入队列状态集合,且根据调度 方案产生对那些请求或输入队列的允许。每一允许可被解释为对发送包或数据信息块或者 使用共享资源的许可。调度方案的类型从简单的轮循到具有若干分层、权重和优先级等级的极复杂方案 而变化。标准硬件调度器实现最常见的调度方案,但具有过低允许速率的主要缺陷。在这 方面中,两个参数是最重要的。第一者是调度器可产生的最大允许速率。第二者是从请求 直到所述请求的允许所存在的最小时延。 在先前的现有技术中,硬件调度器通常可每两个时钟周期执行不超过一个允许, 而时延可占用几个到甚至一千个周期以便服务于新请求。这是由调度方案的复杂性导致。
技术实现思路
本专利技术的目的是提供一种快速调度器,其在低时延下以比系统时钟高的速率允许 请求。 独立权利要求的特征可以实现这个目的。进一步的实施形式通过从属权利要求、 说明书以及图式清楚可见。 为了详细描述本专利技术,将使用以下术语、缩写和符号:QoS:服务质量(qualityofservice),CPU:中央处理单元(centralprocessingunit),RR:轮循(round-robin),RCS:速率控制整形器或速率限制单元(ratecontrolshaperorratelimiting unit), LVP:查找向量准备单元(lookupvectorprepareunit),PFF:前缀森林单元(prefixforestunit),req_vec:请求集合或请求向量(setofrequestsorvectorofrequests),ack_vec:确认集合或确认向量(setofacknowledgementsorvectorof acknowledgements),raw_mask:选择掩码集合或选择掩码向量(setofselectionmasksorvector ofselectionmasks),CMP:比较模块(comparemodule),NASO:与非移一位模块(NotAndShiftOnemodule),TE,Bld,Sel:指定可具有不同优先级的不同队列群组(designatedifferent queuegroupswhichmayhavedifferentpriorities),PD:传播延迟(propagationdelay),FA,HA:实施前缀树的加法器(addersimplementingtheprefixtree)〇 根据第一方面,本专利技术涉及一种调度装置,用于接收请求集合(asetof requests)且提供对所述请求集合的允许集合(asetofgrants),所述调度装置包括:查 找向量准备单元(alookupvectorprepareunit),用于合并(merge)请求集合和选择掩 码(aselectionmask)以便提供查找向量准备请求集合(alookupvectorpreparedset ofrequests)且提供对所述请求集合的确认集合(asetofacknowledgements);以及親 合到所述查找向量准备单元的前缀森林单元(aprefixforestunit),其中所述前缀森林 单元用于提供作为所述新请求集合(thenewsetofrequests)的函数的所述允许集合且 提供基于所述允许集合的所述选择掩码。 所述调度装置可实施为同步硬件电路调度器(asynchronoushardwarecircuit scheduler)。所述调度装置能够根据调度方案选择N个请求,例如输入队列,且所述调度装 置能够在每一时钟周期中执行P个选择(selections)或分发(issues)。因此,所述调度装 置允许在低时延下以比系统时钟高的速率处理请求。 所述调度装置可用作CPU之间的任务的调度器,或在交换或路由单元上调度数据 包。所述调度装置还可用作用于更复杂的调度器的构建模块以便产生更复杂的调度方案。 在此意义上所述调度装置可以是级联的若干任务调度器,所述调度器以不同方式配置以便 产生分层式调度方案。 在根据第一方面的调度装置的第一可能的实施形式中,所述调度装置包括耦合到 所述查找向量准备单元的速率限制单元(aratelimitingunit),其中所述速率限制单元 用于根据调度方案(aschedulingscheme)限制所述请求集合的速率以提供速率受限请求 集合(arate-limitedsetofrequests),相应的,由所述查找向量准备单元合并的所述请 求集合是所述速率受限请求集合。 通过根据调度方案对请求集合进行速率限制,所述调度装置能够产生分层式调度 方案。 在根据第一方面的第一实施形式的调度装置的第二可能的实施形式中,速 率限制单元用于过滤已通过(pass)确认的可配置速率(aconfigurablerateof acknowledgments)的请求群组(requestor-groups)的请求(requests) 〇 所述速率限制机制因此可用于实施可配置速率限制。 当队列已接收到确认时,所述队列被告知将允许请求且所述队列可继续发送下一 请求。所述请求,例如所述队列因此被告知调度装置的内部状态。 在根据第一方面的先前实施形式中的任一者的调度装置的第三可能的实施形式 中,调度方案是基于请求集合和确认集合所指派给的队列群组。 当在调度方案中实施不同队列群组时,调度装置可实施优先级调度,其中重要请 求放置于高优先级的队列群组中。 在根据第一方面的第三实施形式的调度装置的第四可能的实施形式中,速率限制 单元包括桶缓冲器的集合(asetofbucketbuffers),每一桶缓冲器被指派给所述队列群 组中的一者用于存储所述确认集合中的确认,所述确认集合中的确认被指派给所述队列群 组中的一者(eachbucketbufferassignedtooneofthequeuegroupsforstoring acknowledgementsofthesetofacknowledgementsassignedtotheoneofthequeue groups)〇 不同桶缓冲器可实现不同队列群组。桶缓冲器可表示用于根据调度方案进行流量 整形的整形器桶,例如整形器存储器。每一桶缓冲器可单独地执行队列群组的整形直到队 列群组可遵照流行的流量合同进行发送。这可在指派给队列群组的桶缓冲器为空的情况下 立即发生,在指派给队列群组的桶缓冲器填充到某一水平的情况下在某一延迟之后发生, 或在桶缓冲器溢出的情况下从不发生。 在根据如此的第一方面或根据第一方面的先前实施形式中的任一者的调度装置 的第五可能的实施形式中,查找向量准备单元包括:掩蔽单元,其用于基于选择掩码掩蔽当 前请求集合以提供经掩蔽请求集合;联合单元,其用于合并所述经掩蔽请求集合与所述速 率受限请求集合以提供当前请求集合;以及移位单元,其用于基于所述选择掩码的经移位 版本移位所述当前请求集合以提供所述查找向量准备请求集合。 通过基于选择掩码掩蔽经移本文档来自技高网...
【技术保护点】
一种调度装置(200),用于接收请求集合(202)且提供对所述请求集合(202)的允许集合(204),所述调度装置(200)包括:查找向量准备单元(203),用于合并请求集合(202、206)和选择掩码(210)以便提供查找向量准备请求集合208且提供对所述请求集合(202)的确认集合(212);以及耦合到所述查找向量准备单元(203)的前缀森林单元(205),其中所述前缀森林单元(205)用于提供作为所述新请求集合(208)的函数的所述允许集合(204)且提供基于所述允许集合(204)的所述选择掩码(210)。
【技术特征摘要】
【国外来华专利技术】
【专利技术属性】
技术研发人员:亚戎·夏哈,约阿夫·皮莱格,亚历克斯·塔勒,熊礼霞,陆玉春,亚历克斯·乌曼斯基,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。