CN115080474B - 加权轮询仲裁器及其轮询仲裁方法和芯片 - Google Patents
加权轮询仲裁器及其轮询仲裁方法和芯片 Download PDFInfo
- Publication number
- CN115080474B CN115080474B CN202210844833.0A CN202210844833A CN115080474B CN 115080474 B CN115080474 B CN 115080474B CN 202210844833 A CN202210844833 A CN 202210844833A CN 115080474 B CN115080474 B CN 115080474B
- Authority
- CN
- China
- Prior art keywords
- circuit
- arbitration
- request
- gate
- priority control
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000004260 weight control Methods 0.000 claims abstract description 24
- 241001522296 Erithacus rubecula Species 0.000 claims description 19
- 238000010586 diagram Methods 0.000 description 10
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 102200048773 rs2224391 Human genes 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
- G06F13/366—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a centralised polling arbiter
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/4031—Coupling between buses using bus bridges with arbitration
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Bus Control (AREA)
Abstract
本发明提供一种加权轮询仲裁器及其轮询仲裁方法和芯片。其中加权轮询仲裁器包括至少二个仲裁电路,每个仲裁电路与一个请求源连接,各仲裁电路顺次连接成环状;一个优先级控制电路分别与各仲裁电路连接;一个输出电路分别与各仲裁电路和一个目标设备连接;一个权重控制电路与优先级控制电路连接;每个仲裁电路响应于优先级控制电路发出的最高优先级控制信号或前一个仲裁电路发出的使能控制信号,将请求源发出的请求通过输出电路发送至目标设备,或基于请求源无请求向后一个仲裁电路发出使能控制信号;权重控制电路预先配置有各请求源的权重值,优先级控制电路基于预先配置的权重值调整最高优先级控制信号。本发明可以使多个请求源按比例获得仲裁。
Description
技术领域
本发明涉及集成电路技术领域,尤其涉及一种加权轮询仲裁器及其轮询仲裁方法和芯片。
背景技术
在计算机结构中,当多个请求源同时请求同一个资源时,如果该资源只能接受一个请求,就需要用到仲裁结构,如果需要让多个请求源均匀的获得资源,就需要用到轮询仲裁,否则会造成某个请求源一直占用该资源导致其他请求源无法获取资源,影响计算功能性能。
发明内容
本发明提供一种加权轮询仲裁器及其轮询仲裁方法和芯片,可以使多个请求源按比例获得仲裁。
第一方面,本发明提供一种加权轮询仲裁器,包括:至少二个仲裁电路、一个优先级控制电路、一个权重控制电路和一个输出电路;其中,
每一个所述仲裁电路与一个请求源连接;各所述仲裁电路顺次连接形成环状,并分别与所述输出电路和所述优先级控制电路连接;所述输出电路与一个目标设备连接;所述优先级控制电路还分别与各所述仲裁电路对应的请求源连接;所述权重控制电路与所述优先级控制电路连接;
每一个所述仲裁电路响应于所述优先级控制电路发出的最高优先级控制信号,或者前一个所述仲裁电路基于所连接的请求源无请求发出的使能控制信号,将所连接的请求源发出的请求传输至所述输出电路,并通过所述输出电路发送至所述目标设备,或者基于所连接的请求源无请求向后一个所述仲裁电路发出所述使能控制信号;
在所述权重控制电路中预先配置有各所述请求源的权重值,所述优先级控制电路基于所述请求源预先配置的权重值调整所述最高优先级控制信号。
根据本发明提供的加权轮询仲裁器,每一个所述仲裁电路包括第一或门、非门、第一与门和第二与门;
所述第一或门的第一输入端与所述优先级控制电路的一个输出端连接,所述第一或门的第二输入端与前一个所述仲裁电路连接,所述第一或门的输出端分别与第一与门和第二与门的第一输入端连接;
所述第一与门的第二输入端与对应的请求源连接,所述第一与门的输出端与所述输出电路的一个输入端连接;
所述第二与门的第二输入端与所述非门的输出端连接,所述非门的输入端与对应的请求源连接,所述第二与门的输出端与后一个所述仲裁电路连接。
根据本发明提供的加权轮询仲裁器,各所述仲裁电路还分别与所述目标设备连接;
每一个所述仲裁电路基于所述目标设备处于就绪状态将所连接的请求源发出的请求传输至所述输出电路。
根据本发明提供的加权轮询仲裁器,每一个所述仲裁电路还包括第三与门;所述第三与门的第一输入端与所述第一与门的输出端连接,所述第三与门的第二输入端与所述目标设备连接,所述第三与门的输出端与对应的请求源连接。
根据本发明提供的加权轮询仲裁器,所述优先级控制电路还与所述目标设备连接;
所述优先级控制电路基于所述目标设备处于就绪状态发出所述最高优先级控制信号。
根据本发明提供的加权轮询仲裁器,所述优先级控制电路确定当前具有最高优先级的有请求的一个所述仲裁电路;
基于所确定的具有最高优先级的有请求的所述仲裁电路和预先设定的仲裁电路的优先级顺序,确定各所述仲裁电路的优先级调整顺序;
响应于所确定的具有最高优先级的有请求的所述仲裁电路所连接的请求源发出的请求的数量小于或者等于所述请求源预先配置的权重值,基于所确定的各所述仲裁电路的优先级调整顺序,调整所述最高优先级控制信号。
根据本发明提供的加权轮询仲裁器,所述优先级控制电路基于各所述请求源均无请求,保持所述最高优先级控制信号不变。
根据本发明提供的加权轮询仲裁器,所述输出电路包括第二或门,所述第二或门的输入端与各所述仲裁电路连接,所述第二或门的输出端与所述目标设备连接。
第二方面,本发明还提供一种加权轮询仲裁方法,应用于第一方面所述的加权轮询仲裁器,所述方法包括:
响应于所述优先级控制电路发出的最高优先级控制信号,确定一个当前具有最高优先级的所述仲裁电路;
将所连接的请求源发出的请求传输至所述输出电路,并通过所述输出电路发送至所述目标设备,或者基于所连接的请求源无请求向后一个所述仲裁电路发出所述使能控制信号;
响应于前一个所述仲裁电路基于所连接的请求源无请求发出的使能控制信号,将后一个所述仲裁电路作为当前具有最高优先级的所述仲裁电路;
其中,所连接的请求源发出的请求的数量小于或者等于在所述权重控制电路中为所述请求源预先配置的权重值。
第三方面,本发明还提供一种芯片,包括第一方面所述的加权轮询仲裁器。
本发明提供的加权轮询仲裁器及其轮询仲裁方法和芯片,通过每一个仲裁电路与一个请求源连接,二个以上仲裁电路顺次连接形成环状,并分别与优先级控制电路和输出电路连接,优先级控制电路还分别与各仲裁电路对应的请求源连接,权重控制电路与优先级控制电路连接,输出电路与一个目标设备连接,使得每一个仲裁电路,可以响应于优先级控制电路发出的最高优先级控制信号,或者前一个仲裁电路基于所连接的请求源无请求发出的使能控制信号,将所连接的请求源发出的请求传输至输出电路,并通过输出电路发送至目标设备,或者基于所连接的请求源无请求向后一个仲裁电路发出使能控制信号,其中在权重控制电路中预先配置有各请求源的权重值,优先级控制电路基于请求源预先配置的权重值调整最高优先级控制信号,可以使多个请求源按照预先配置的权重值的比例获得仲裁,通过合理配置请求源的权重值,可以保证使用该加权轮询仲裁器的片上系统负载均衡,维持较高的数据吞吐量,具有较高的效率和稳定性,保证较高的性能。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的加权轮询仲裁器的一实施例的组成结构示意图;
图2是本发明提供的加权轮询仲裁方法的流程示意图;
图3是本发明提供的加权轮询仲裁器的另一实施例的组成结构示意图;
图4是本发明提供的优先级控制电路调整最高优先级控制信号的流程示意图;
图5是本发明提供的加权轮询仲裁器的又一实施例的组成结构示意图;
图6是图5中仲裁电路的组成结构示意图;
图7是图5中优先级控制电路的输入输出端口的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1是本发明提供的加权轮询仲裁器的一实施例的组成结构示意图。本发明提供的轮询仲裁器包括:至少二个仲裁电路、一个优先级控制电路、一个权重控制电路和一个输出电路。其中,每一个仲裁电路与一个请求源连接,各仲裁电路顺次连接形成环状,并分别与输出电路和优先级控制电路连接,输出电路与一个目标设备连接,优先级控制电路还分别与各仲裁电路对应的请求源连接,权重控制电路与优先级控制电路连接。如图1所示,S00,S01,S02为请求源,S4为轮询仲裁器,S5为被请求资源所在的目标设备,请求源S00,S01,S02通过轮询仲裁器S4与目标设备S5连接。轮询仲裁器S4包括:三个仲裁电路S10、S11、S12、一个优先级控制电路S2、一个权重控制电路S6和一个输出电路S3。其中,仲裁电路S10与请求源连接S00连接,处理来自请求源S00的请求,仲裁电路S11与请求源连接S01连接,处理来自请求源S01的请求,仲裁电路S12与请求源连接S02连接,处理来自请求源S02的请求,仲裁电路S10、S11、S12顺次连接形成环状。优先级控制电路S2分别与仲裁电路S10、S11、S12连接,调整仲裁电路S10、S11、S12的优先级。输出电路S3分别与仲裁电路S10、S11、S12连接,汇总仲裁电路S10、S11、S12的请求到目标设备S5。权重控制电路S6与优先级控制电路S2连接,预先配置有请求源S00,S01,S02的权重值。
每一个仲裁电路响应于优先级控制电路发出的最高优先级控制信号,或者前一个仲裁电路基于所连接的请求源无请求发出的使能控制信号,将所连接的请求源发出的请求传输至输出电路,并通过输出电路发送至目标设备,或者基于所连接的请求源无请求向后一个仲裁电路发出使能控制信号。如图1所示,仲裁电路S10响应于优先级控制电路S2发出的最高优先级控制信号,或者前一个仲裁电路S12基于所连接的请求源S02无请求发出的使能控制信号,将所连接的请求源S00发出的请求传输至输出电路S3,并通过输出电路S3发送至目标设备S5,或者基于所连接的请求源S00无请求向后一个仲裁电路S11发出使能控制信号。仲裁电路S11响应于优先级控制电路S2发出的最高优先级控制信号,或者前一个仲裁电路S10基于所连接的请求源S00无请求发出的使能控制信号,将所连接的请求源S01发出的请求传输至输出电路S3,并通过输出电路S3发送至目标设备S5,或者基于所连接的请求源S01无请求向后一个仲裁电路S12发出使能控制信号。仲裁电路S12响应于优先级控制电路S2发出的最高优先级控制信号,或者前一个仲裁电路S11基于所连接的请求源S01无请求发出的使能控制信号,将所连接的请求源S02发出的请求传输至输出电路S3,并通过输出电路S3发送至目标设备S5,或者基于所连接的请求源S02无请求向后一个仲裁电路S10发出使能控制信号。
优先级控制电路还分别与各仲裁电路对应的请求源连接,基于请求源预先配置的权重值调整最高优先级控制信号。如图1所示,优先级控制电路S2还分别与仲裁电路S10对应的请求源S00、仲裁电路S11对应的请求源S01以及仲裁电路S12对应的请求源S02连接,基于请求源S00、S01、S02预先配置的权重值调整最高优先级控制信号。
图1是以三个仲裁电路S10、S11、S12为例进行说明,但是本发明实施例对加权轮询仲裁器中仲裁电路的数量不作限定,加权轮询仲裁器中仲裁电路的数量可以根据实际的应用需求确定,可以将加权轮询仲裁器中仲裁电路的数量记为N个,其中N为整数,并且N≥2。
请参阅图2,图2是本发明提供的加权轮询仲裁方法的流程示意图。本发明提供的加权轮询仲裁方法应用于图1所示的加权轮询仲裁器,如图2所示,该加权轮询仲裁方法至少包括:
201,响应于优先级控制电路发出的最高优先级控制信号,确定一个当前具有最高优先级的仲裁电路。
202,将所连接的请求源发出的请求传输至输出电路,并通过输出电路发送至目标设备,或者基于所连接的请求源无请求向后一个仲裁电路发出使能控制信号。
203,响应于前一个仲裁电路基于所连接的请求源无请求发出的使能控制信号,将后一个仲裁电路作为当前具有最高优先级的仲裁电路。
其中,所连接的请求源发出的请求的数量小于或者等于在权重控制电路中为请求源预先配置的权重值。
本发明实施例提供的加权轮询仲裁器及其仲裁方法,通过每一个仲裁电路与一个请求源连接,二个以上仲裁电路顺次连接形成环状,并分别与优先级控制电路和输出电路连接,优先级控制电路还分别与各仲裁电路对应的请求源连接,权重控制电路与优先级控制电路连接,输出电路与一个目标设备连接,使得每一个仲裁电路,可以响应于优先级控制电路发出的最高优先级控制信号,或者前一个仲裁电路基于所连接的请求源无请求发出的使能控制信号,将所连接的请求源发出的请求传输至输出电路,并通过输出电路发送至目标设备,或者基于所连接的请求源无请求向后一个仲裁电路发出使能控制信号,其中在权重控制电路中预先配置有各请求源的权重值,优先级控制电路基于请求源预先配置的权重值调整最高优先级控制信号,可以使多个请求源按照预先配置的权重值的比例获得仲裁,通过合理配置请求源的权重值,可以保证使用该加权轮询仲裁器的片上系统负载均衡,维持较高的数据吞吐量,具有较高的效率和稳定性,保证较高的性能。
请参阅图3,图3是本发明提供的加权轮询仲裁器的另一实施例的组成结构示意图。图3中加权轮询仲裁器与图1中加权轮询仲裁器的不同之处在于,图3中加权轮询仲裁器的各仲裁电路还分别与目标设备连接,每一个仲裁电路基于目标设备处于就绪状态将所连接的请求源发出的请求传输至输出电路。如图3所示,加权轮询仲裁器S4的三个仲裁电路S10、S11、S12还分别与目标设备S5连接,仲裁电路S10基于目标设备S5处于就绪状态将所连接的请求源S00发出的请求传输至输出电路S3,仲裁电路S11基于目标设备S5处于就绪状态将所连接的请求源S01发出的请求传输至输出电路S3,仲裁电路S12基于目标设备S5处于就绪状态将所连接的请求源S02发出的请求传输至输出电路S3。
可选地,优先级控制电路还与目标设备连接,优先级控制电路基于目标设备处于就绪状态发出最高优先级控制信号。如图3所示,优先级控制电路S2还与目标设备S5连接,优先级控制电路S2基于目标设备S5处于就绪状态发出最高优先级控制信号。
请参阅图4,图4是本发明提供的优先级控制电路调整最高优先级控制信号的流程示意图。如图4所示,优先级控制电路基于请求源的请求调整最高优先级控制信号至少包括:
401,确定当前具有最高优先级的有请求的一个仲裁电路。
402,基于所确定的具有最高优先级的有请求的仲裁电路和预先设定的仲裁电路的优先级顺序,确定各仲裁电路的优先级调整顺序。
403,响应于所确定的具有最高优先级的有请求的仲裁电路所连接的请求源发出的请求的数量小于或者等于请求源预先配置的权重值,基于所确定的各仲裁电路的优先级调整顺序,调整最高优先级控制信号。
可选地,优先级控制电路基于各请求源均无请求,保持最高优先级控制信号不变。
在上述各实施例中,加权轮询仲裁器中的仲裁电路可以采用逻辑电路实现。请参阅图5、图6和图7,图5是本发明提供的加权轮询仲裁器的又一实施例的组成结构示意图,图6是图5中仲裁电路的组成结构示意图,图7是图5中优先级控制电路的输入输出端口的示意图。图5中加权轮询仲裁器与图1中加权轮询仲裁器的不同之处在于,图5中加权轮询仲裁器的每一个仲裁电路均包括一个或门S100、一个非门S110和二个与门S120、S130。
如图6所示,每一个仲裁电路均包括三个输入端i1、i3、i4和二个输出端o1、o3。其中,输入端i1与仲裁电路对应的请求源连接,接收请求源发出的请求,输入端i3与仲裁电路的前一个仲裁电路连接,接收前一个仲裁电路发出的使能控制信号,输入端i4与优先级控制电路S2的一个输出端连接,接收优先级控制电路S2发出的优先级控制信号。输出端o1与输出电路S3的一个输入端连接,将请求传输至输出电路S3,输出端o3与仲裁电路的后一个仲裁电路连接,向后一个仲裁电路发出使能控制信号。
如图6所示,或门S100的第一输入端为仲裁电路的输入端i4,或门S100的第二输入端为仲裁电路的输入端i3,或门S100的输出端分别与与门S120和与门S130的第一输入端连接。与门S120的第二输入端为仲裁电路的输入端i1,与门S120的输出端为仲裁电路的输出端o1。与门S130的第二输入端与非门S110的输出端连接,非门S110的输入端为仲裁电路的输入端i1,与门S130的输出端为仲裁电路的输出端o3。
可选地,如图5所示,每一个仲裁电路还可以包括与门S140。如图6所示,每一个仲裁电路还可以包括输入端i2和输出端o2。其中,输入端i2与目标设备S5连接,接收目标设备S5的状态信号,输出端o2与仲裁电路对应的请求源连接,向请求源发送目标设备S5的状态。与门S140的第一输入端为仲裁电路的输出端o1,与门S140的第二输入端为仲裁电路的输入端i2,与门S140的输出端为仲裁电路的输出端o2。
图6中仲裁电路的各输入端i1、i2、i3、i4与输出端o1、o2、o3的真值表如表1所示。
表1
其中,x既可以为1,又可以为0;i4为1表示优先级控制电路S2发出最高优先级控制信号,i4为0表示优先级控制电路S2未发出最高优先级控制信号;i3为1表示前一个仲裁电路发出使能控制信号,i3为0表示前一个仲裁电路未发出使能控制信号;i2为0表示目标设备S5处于就绪状态;i1为1表示请求源发出请求,i1为0表示请求源未发出请求;o3为1表示向后一个仲裁电路发出使能控制信号,o3为0表示未向后一个仲裁电路发出使能控制信号;o2为0表示目标设备S5处于就绪状态;o1为1表示向输出电路S3传输请求,o1为0表示未向输出电路S3传输请求。
如图7所示,优先级控制电路S2,或者称为优先级控制模块,包括四个输入端i1、i2、i3、i5和三个输出端o1、o2、o3。其中,输入端i1与仲裁电路S10对应的请求源S00连接,接收请求源S00发出的请求,输入端i2与仲裁电路S11对应的请求源S01连接,接收请求源S01发出的请求,输入端i3与仲裁电路S12对应的请求源S02连接,接收请求源S02发出的请求,输入端i5与权重控制电路S6,或者称为权重控制模块连接,接收权重控制电路S6预先配置请求源S00、S01、S02的权重值。输出端o1与仲裁电路S12连接,向仲裁电路S12发送优先级控制信号,输出端o2与仲裁电路S11连接,向仲裁电路S11发送优先级控制信号,输出端o3与仲裁电路S10连接,向仲裁电路S10发送优先级控制信号。
可选地,如图5所示,优先级控制电路S2还可以与目标设备S5连接。如图7所示,优先级控制电路S2还可以包括输入端i4,输入端i4与目标设备S5连接,接收目标设备S5的状态信号。
图7中优先级控制电路S2的各输入端i1、i2、i3、i4、i5与输出端o1、o2、o3的真值表如表2所示。
表2
其中,x既可以为1,又可以为0;i5为1表示权重控制电路S6有效,i5为0表示权重控制电路S6无效;i4为1表示目标设备S5处于就绪状态,i4为0表示目标设备S5未处于就绪状态;i3为1表示请求源S02发出请求,i3为0表示请求源S02未发出请求;i2为1表示请求源S01发出请求,i2为0表示请求源S01未发出请求;i1为1表示请求源S00发出请求,i1为0表示请求源S00未发出请求;o3为1表示向仲裁电路S10发送最高优先级控制信号,o3为0表示未向仲裁电路S10发送最高优先级控制信号;o2为1表示向仲裁电路S11发送最高优先级控制信号,o2为0表示未向仲裁电路S11发送最高优先级控制信号;o1为1表示向仲裁电路S12发送最高优先级控制信号,o1为0表示未向仲裁电路S12发送最高优先级控制信号;o3n、o2n和o1n表示当前时钟周期,o3n+1、o2n+1和o1n+1表示下一时钟周期;在优先级控制电路S2的输出端o1、o2、o3中,同时有且仅有1个输出端输出1,使该仲裁电路具有最高优先级,例如,优先级控制电路S2在初始状态下输出为o3=0,o2=0,o1=1,仲裁电路S10具有最高优先级。
如图5所示,优先级控制电路S2通过S102、S112、S122控制仲裁电路S10、S11、S12的优先级顺序为S10>S11>S12,此时仲裁电路S10具有最高优先级,若此时请求源S00有请求发往仲裁电路S10,请求源S00发出的请求将通过仲裁电路S10和输出电路S3到达目标设备S5,由于请求源S00的权重为4,因此请求源S00可以最多连续发送4个请求到目标设备S5,当请求源S00发送完连续4个请求或者请求源S00没有连续4个请求后,例如请求源S00只有连续3个请求,优先级控制电路S2将通过S102、S112、S122调整仲裁电路S10、S11、S12的优先级顺序为S11>S12>S10。
若此时请求源S01有请求发往仲裁电路S11,由于此时仲裁电路S11为具有最高优先级的有请求的端口,请求源S01发出的请求将通过仲裁电路S11和输出电路S3到达目标设备S5,由于请求源S01的权重为2,因此请求源S01可以最多连续发送2个请求到目标设备S5,当请求源S01发送完连续2个请求或者请求源S01没有连续2个请求后,例如请求源S01只有1个请求,优先级控制电路S2将通过S102、S112、S122调整仲裁电路S10、S11、S12的优先级顺序为S12>S10>S11。
若此时请求源S01无请求发往仲裁电路S11,仲裁电路S11将使仲裁电路S12使能,若此时请求源S02有请求发往仲裁电路S12,由于此时仲裁电路S12是具有最高优先级的有请求的端口,请求源S02发出的请求将通过仲裁电路S12和输出电路S3到达目标设备S5,由于请求源S02的权重为1,因此请求源S02可以最多发送1个请求到目标设备S5,当请求源S02发送完1个请求后,优先级控制电路S2将通过S102、S112、S122调整仲裁电路S10、S11、S12的优先级顺序为S10>S11>S12。
若此时请求源S01无请求发往仲裁电路S11,仲裁电路S11将使仲裁电路S12使能,若此时请求源S02无请求发往仲裁电路S12,仲裁电路S12将使仲裁电路S10使能,若此时请求源S00有请求发往仲裁电路S10,由于此时仲裁电路S10是具有最高优先级的有请求的端口,请求源S00发出的请求将通过仲裁电路S10和输出电路S3到达目标设备S5,由于请求源S00的权重为4,因此请求源S00可以最多连续发送4个请求到目标设备S5,当请求源S00发送完连续4个请求或者请求源S00没有连续4个请求后,例如请求源S00只有1个请求,优先级控制电路S2将通过S102、S112、S122调整仲裁电路S10、S11、S12的优先级顺序为S11>S12>S10。
若三个请求源S00、S01、S02均没有请求,此时优先级控制电路S2将保持优先级不变,等待请求源S00,S01,S02发来请求,再通过S102、S112、S122调整仲裁电路S10、S11、S12的优先级顺序。
可选地,加权轮询仲裁器中的输出电路也可以采用逻辑电路实现。如图5所示,输出电路S3可以包括或门S150,或门S150的输入端与各仲裁电路S10、S11、S12连接,或门S150的输出端与目标设备S5连接。
本发明实施例提供的加权轮询仲裁器,通过逻辑电路来实现仲裁电路和输出电路,可以缩短关键路径,提高的工作频率,使电路规模更小,功耗更低。
本发明还提供了一种芯片,该芯片可以包括图1、图3或图5加权轮询仲裁器。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种加权轮询仲裁器,其特征在于,包括:至少二个仲裁电路、一个优先级控制电路、一个权重控制电路和一个输出电路;其中,
每一个所述仲裁电路与一个请求源连接;各所述仲裁电路顺次连接形成环状,并分别与所述输出电路和所述优先级控制电路连接;所述输出电路与一个目标设备连接;所述优先级控制电路还分别与各所述仲裁电路对应的请求源连接;所述权重控制电路与所述优先级控制电路连接;
每一个所述仲裁电路响应于所述优先级控制电路发出的最高优先级控制信号,或者前一个所述仲裁电路基于所连接的请求源无请求发出的使能控制信号,将所连接的请求源发出的请求传输至所述输出电路,并通过所述输出电路发送至所述目标设备,或者基于所连接的请求源无请求向后一个所述仲裁电路发出所述使能控制信号;
在所述权重控制电路中预先配置有各所述请求源的权重值,所述优先级控制电路基于所述请求源预先配置的权重值调整所述最高优先级控制信号;
每一个所述仲裁电路包括第一或门、非门、第一与门、第二与门和第三与门;
所述第一或门的第一输入端与所述优先级控制电路的一个输出端连接,所述第一或门的第二输入端与前一个所述仲裁电路连接,所述第一或门的输出端分别与第一与门和第二与门的第一输入端连接;
所述第一与门的第二输入端与对应的请求源连接,所述第一与门的输出端与所述输出电路的一个输入端连接;
所述第二与门的第二输入端与所述非门的输出端连接,所述非门的输入端与对应的请求源连接,所述第二与门的输出端与后一个所述仲裁电路连接;
所述第三与门的第一输入端与所述第一与门的输出端连接,所述第三与门的第二输入端与所述目标设备连接,所述第三与门的输出端与对应的请求源连接。
2.根据权利要求1所述的加权轮询仲裁器,其特征在于,各所述仲裁电路还分别与所述目标设备连接;
每一个所述仲裁电路基于所述目标设备处于就绪状态将所连接的请求源发出的请求传输至所述输出电路。
3.根据权利要求1所述的加权轮询仲裁器,其特征在于,所述优先级控制电路还与所述目标设备连接;
所述优先级控制电路基于所述目标设备处于就绪状态发出所述最高优先级控制信号。
4.根据权利要求1至3中任一项所述的加权轮询仲裁器,其特征在于,所述优先级控制电路确定当前具有最高优先级的有请求的一个所述仲裁电路;
基于所确定的具有最高优先级的有请求的所述仲裁电路和预先设定的仲裁电路的优先级顺序,确定各所述仲裁电路的优先级调整顺序;
响应于所确定的具有最高优先级的有请求的所述仲裁电路所连接的请求源发出的请求的数量小于或者等于所述请求源预先配置的权重值,基于所确定的各所述仲裁电路的优先级调整顺序,调整所述最高优先级控制信号。
5.根据权利要求4所述的加权轮询仲裁器,其特征在于,所述优先级控制电路基于各所述请求源均无请求,保持所述最高优先级控制信号不变。
6.根据权利要求1至3中任一项所述的加权轮询仲裁器,其特征在于,所述输出电路包括第二或门,所述第二或门的输入端与各所述仲裁电路连接,所述第二或门的输出端与所述目标设备连接。
7.一种加权轮询仲裁方法,其特征在于,应用于权利要求1至6中任一项所述的加权轮询仲裁器,所述方法包括:
响应于所述优先级控制电路发出的最高优先级控制信号,确定一个当前具有最高优先级的所述仲裁电路;
将所连接的请求源发出的请求传输至所述输出电路,并通过所述输出电路发送至所述目标设备,或者基于所连接的请求源无请求向后一个所述仲裁电路发出所述使能控制信号;
响应于前一个所述仲裁电路基于所连接的请求源无请求发出的使能控制信号,将后一个所述仲裁电路作为当前具有最高优先级的所述仲裁电路;
其中,所连接的请求源发出的请求的数量小于或者等于在所述权重控制电路中为所述请求源预先配置的权重值。
8.一种芯片,其特征在于,包括权利要求1至6中任一项所述的加权轮询仲裁器。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210844833.0A CN115080474B (zh) | 2022-07-19 | 2022-07-19 | 加权轮询仲裁器及其轮询仲裁方法和芯片 |
PCT/CN2023/076180 WO2024016647A1 (zh) | 2022-07-19 | 2023-02-15 | 加权轮询仲裁器及其轮询仲裁方法和芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210844833.0A CN115080474B (zh) | 2022-07-19 | 2022-07-19 | 加权轮询仲裁器及其轮询仲裁方法和芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115080474A CN115080474A (zh) | 2022-09-20 |
CN115080474B true CN115080474B (zh) | 2022-12-02 |
Family
ID=83258803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210844833.0A Active CN115080474B (zh) | 2022-07-19 | 2022-07-19 | 加权轮询仲裁器及其轮询仲裁方法和芯片 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115080474B (zh) |
WO (1) | WO2024016647A1 (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003256358A (ja) * | 2002-02-28 | 2003-09-12 | Sony Corp | アービタ装置及び方法、並びに、リソース共有システム |
CN101887382A (zh) * | 2010-06-28 | 2010-11-17 | 中兴通讯股份有限公司 | 动态优先级的仲裁方法及装置 |
CN109101443A (zh) * | 2018-07-27 | 2018-12-28 | 天津国芯科技有限公司 | 一种权重分时的仲裁装置及方法 |
CN113641605A (zh) * | 2021-07-16 | 2021-11-12 | 南京大学 | 一种适用于异步电路的轮询仲裁器及其方法 |
CN114265798A (zh) * | 2022-03-02 | 2022-04-01 | 北京得瑞领新科技有限公司 | 任务队列的仲裁管理方法、存储介质及固态硬盘 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1016974B1 (en) * | 1998-12-29 | 2006-07-19 | International Business Machines Corporation | A fair and high speed arbitration system based on rotative and weighted priority monitoring |
US20020078282A1 (en) * | 2000-12-18 | 2002-06-20 | International Business Machines Corporation | Target directed completion for bus transactions |
US7024506B1 (en) * | 2002-12-27 | 2006-04-04 | Cypress Semiconductor Corp. | Hierarchically expandable fair arbiter |
US11055247B2 (en) * | 2016-12-30 | 2021-07-06 | Intel Corporation | System and method to enable fairness on multi-level arbitrations for switch architectures |
CN114138706B (zh) * | 2021-10-29 | 2022-07-08 | 北京中科昊芯科技有限公司 | 一种多功能仲裁器、仲裁方法、芯片以及产品 |
CN114564424B (zh) * | 2022-03-10 | 2023-04-25 | 上海壁仞智能科技有限公司 | 仲裁器及电子装置 |
-
2022
- 2022-07-19 CN CN202210844833.0A patent/CN115080474B/zh active Active
-
2023
- 2023-02-15 WO PCT/CN2023/076180 patent/WO2024016647A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003256358A (ja) * | 2002-02-28 | 2003-09-12 | Sony Corp | アービタ装置及び方法、並びに、リソース共有システム |
CN101887382A (zh) * | 2010-06-28 | 2010-11-17 | 中兴通讯股份有限公司 | 动态优先级的仲裁方法及装置 |
CN109101443A (zh) * | 2018-07-27 | 2018-12-28 | 天津国芯科技有限公司 | 一种权重分时的仲裁装置及方法 |
CN113641605A (zh) * | 2021-07-16 | 2021-11-12 | 南京大学 | 一种适用于异步电路的轮询仲裁器及其方法 |
CN114265798A (zh) * | 2022-03-02 | 2022-04-01 | 北京得瑞领新科技有限公司 | 任务队列的仲裁管理方法、存储介质及固态硬盘 |
Also Published As
Publication number | Publication date |
---|---|
CN115080474A (zh) | 2022-09-20 |
WO2024016647A1 (zh) | 2024-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114925004B (zh) | 轮询仲裁器及其轮询仲裁方法和芯片 | |
KR100218675B1 (ko) | 지능적 우선순위 결정 방식의 다중 인터럽트 제어기 및 그 제어 방법 | |
US9880601B2 (en) | Method and apparatus to control a link power state | |
US8140727B2 (en) | Bus arbitration apparatus and method | |
US7328295B2 (en) | Interrupt controller and interrupt controlling method for prioritizing interrupt requests generated by a plurality of interrupt sources | |
US7065595B2 (en) | Method and apparatus for bus access allocation | |
US20140281099A1 (en) | METHOD, SYSTEM, AND COMPUTER PROGRAM PRODUCT FOR CONTROLLING FLOW OF PCIe TRANSPORT LAYER PACKETS | |
US20050071210A1 (en) | Method, system, and apparatus for an adaptive weighted arbiter | |
CN115080474B (zh) | 加权轮询仲裁器及其轮询仲裁方法和芯片 | |
JPH06161952A (ja) | アクセス要求仲裁装置 | |
WO2021115482A1 (zh) | 一种令牌的调整方法及装置 | |
US6937133B2 (en) | Apparatus and method for resource arbitration | |
JP2001014243A (ja) | 受信割込処理装置 | |
US10872051B2 (en) | Bus control circuit | |
US20030031197A1 (en) | Multiple arbitration circuit | |
JP2004078508A (ja) | バス調停回路、バス調停方法およびそのプログラム | |
US20190227841A1 (en) | Arbitration of multiple requests | |
CN115269467B (zh) | 一种总线仲裁的方法、装置、存储介质及电子设备 | |
JPH04256246A (ja) | バス優先占有方式およびその方式を使用した通信ネットワーク接続装置 | |
CN115495399B (zh) | 一种分布式仲裁系统、方法、装置、存储介质及电子设备 | |
CN112949247B (zh) | 一种基于相位的芯片片上总线调度装置及调度方法 | |
US20230229612A1 (en) | Dynamic equality of service in a switch network | |
CN117708008A (zh) | 基于计数器的轮询仲裁方法及装置 | |
JPS60198662A (ja) | バス使用権決定方式 | |
JP2000207352A (ja) | メモリアクセス競合制御方法とその回路、並びにデ―タ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20240308 Address after: 10 Jialeng Road, Singapore # 09-11 Patentee after: Shenglong (Singapore) Pte. Ltd. Country or region after: Singapore Address before: 1605, floor 16, No. 9, North Fourth Ring West Road, Haidian District, Beijing 100080 Patentee before: SUNLUNE TECHNOLOGY DEVELOPMENT (BEIJING) Co.,Ltd. Country or region before: China |
|
TR01 | Transfer of patent right |