In one embodiment, the present invention includes a method for selecting a requester to service during an arbitration round, and updating counters associated with the selected requester including a command unit counter and a data unit counter, determining if the counters are in compliance with corre
In one embodiment, the present invention includes a method for selecting a requester to service during an arbitration round, and updating counters associated with the selected requester including a command unit counter and a data unit counter, determining if the counters are in compliance with corresponding threshold values, and if so granting a transaction for the selected requester, and otherwise denying the transaction. Other embodiments are described and claimed.
대표청구항▼
1. An apparatus comprising: a first counter circuit including a plurality of first counters each associated with one of a plurality of requesters of a system on a chip (SoC) and to store a count of command units allocated to the corresponding requester, each of the command units corresponding to a c
1. An apparatus comprising: a first counter circuit including a plurality of first counters each associated with one of a plurality of requesters of a system on a chip (SoC) and to store a count of command units allocated to the corresponding requester, each of the command units corresponding to a command portion of a transaction;a second counter circuit including a plurality of second counters each associated with one of the plurality requesters of the SoC and to store a count of data units allocated to the corresponding requester, each of the data units corresponding to a data portion of a transaction; andan arbiter coupled to the first and second counter circuits to select one of the plurality of requesters and to grant a transaction of the selected requester access to an interconnect if the first and second counters associated with the selected requester are in compliance with a corresponding threshold value, and otherwise to deny the transaction of the selected requester access to the interconnect. 2. The apparatus of claim 1, wherein the apparatus comprises the SoC including a plurality of agents each corresponding to one of the plurality of requesters, and wherein granted transactions are to be communicated on the interconnect. 3. The apparatus of claim 1, wherein the arbiter is to grant a consecutive plurality of transactions for the selected requester, while at least one other requester is not granted any transactions. 4. The apparatus of claim 3, wherein the arbiter is to iteratively update the first and second counters after each of the consecutive plurality of transactions, and grant the consecutive plurality of transactions until at least one of the first and second counters is not in compliance with the corresponding threshold. 5. The apparatus of claim 1, further comprising a controller coupled to the arbiter, wherein the controller is to adjust a fraction of service allocated to at least some of the plurality of requesters based on requester consumption information. 6. The apparatus of claim 5, wherein the controller is to dynamically adjust the fraction of service. 7. The apparatus of claim 5, wherein the controller is to determine if the requester consumption information indicates that consumption is within a consumption policy limit, and to adjust the fraction of service if the consumption is not within the consumption policy limit. 8. A non-transitory storage medium including instructions to enable a machine to perform a method, comprising: selecting, in an arbiter of a system on a chip (SoC), one of a plurality of requesters for servicing, and thereafter updating a first counter and a second counter associated with the selected requester, wherein the first counter corresponds to a command unit counter to maintain a first count value associated with a command portion of a transaction and the second counter corresponds to a data unit counter to maintain a second count value associated with a data portion of the transaction;determining if each of the first and second counters are in compliance with a corresponding threshold value for the first and second counters; andif so, granting a transaction for the selected requester, and otherwise denying the transaction for the selected requester. 9. The non-transitory storage medium of claim 8, wherein the method further comprises updating the first counter and the second counter based on the transaction. 10. The non-transitory storage medium of claim 9, wherein the method further comprises selecting the selected requester based on a priority level of the selected requester and a priority level of each of the plurality of requesters. 11. The non-transitory storage medium of claim 8, wherein the method further comprises granting a consecutive plurality of transactions for the selected requester, while at least one other requester is not granted any transactions. 12. The non-transitory storage medium of claim 11, wherein the method further comprises iteratively updating the first and second counters after each of the consecutive plurality of transactions. 13. The non-transitory storage medium of claim 12, wherein the method further comprises granting the consecutive plurality of transactions until at least one of the first and second counters is not in compliance with the corresponding threshold. 14. The non-transitory storage medium of claim 8, wherein the method further comprises responsive to the at least one of the first and second counters not being in compliance with the corresponding threshold, selecting a second requester to service. 15. The non-transitory storage medium of claim 8, wherein the first counter is not in compliance if it reaches a zero value, and the second counter is not in compliance if it reaches a zero value or a negative value. 16. The non-transitory storage medium of claim 15, wherein the method further comprises debiting the second counter by an amount of the negative value at a beginning of a next arbitration round. 17. The non-transitory storage medium of claim 8, wherein the method further comprises assigning a fraction of service for an arbitration round to each of the plurality of requesters. 18. A system comprising: a first agent to perform operations on data;a second agent to perform operations on data;a shared interconnect coupled to the first and second agents;a command unit counter to store a count of command units allocated to the first and second agents, each of the command units corresponding to a command portion of a transaction;a data unit counter to store a count of data units allocated to the first and second agents, each of the data units corresponding to at least a part of a data portion of a transaction; andan arbiter coupled to the command unit counter and the data unit counter, and to select one of the first and second agents to control access to the shared interconnect based on the count of the command unit counter and the count of the data unit counter. 19. The system of claim 18, wherein the arbiter is to grant a consecutive plurality of transactions of the selected agent access to the shared interconnect, while transactions of the other agent are not granted access to the shared interconnect. 20. The system of claim 18, further comprising a controller coupled to the arbiter, wherein the controller is to dynamically adjust a fraction of service allocated to the first and second agents based on comparison of consumption information of the first and second agents to corresponding consumption policy limits.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (39)
Singla,Ankur; Nakil,Harshad; Reddy,Rajashekar, Advanced bandwidth allocation in PCI bus architecture.
Wille Ross M. (Sunnyvale CA) Carter Richard J. (Palo Alto CA), Distributed fair arbitration system using separate grant and request lines for providing access to data communication bu.
Randy B. Osborne ; David J. Harriman, Method and apparatus for supporting multi-clock propagation in a computer system having a point to point half duplex interconnect.
Arimilli Ravi Kumar ; Dodson John Steven ; Lewis Jerry Don ; Williams Derek Edward, Method and system for controlling access to a shared resource in a data processing system utilizing dynamically-determin.
Lentz Derek J. (Los Gatos CA) Hagiwara Yasuaki (Santa Clara CA) Lau Te-Li (Palo Alto CA) Tang Cheng-Long (San Jose CA) Nguyen Le Trong (Monte Sereno CA), Microprocessor architecture with a switch network for data transfer between cache, memory port, and IOU.
Maergner, Juergen; Meritt, Allan S.; Nick, Jeffrey M; Wyman, Leslie W.; Yudenfriend, Harry M., Processing channel subsystem pending I/O work queues based on priorities.
Lee, Khee Wooi; Hunsaker, Mikal C.; Abramson, Darren L., Starvation prevention scheme for a fixed priority PCI-Express arbiter with grant counters using arbitration pools.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.