IP Library Granted Patent US 12,079,471
Granted Patent B2
US 12,079,471 · App. 17/875,457 · Granted Sep 3, 2024

Adaptive credit-based replenishment threshold used for transaction arbitration in a system that supports multiple levels of credit expenditure

Inventor: Daniel Brad Wu (Plano, TX)
Assignee: Texas Instruments Incorporated
G06F3/0604G06F3/0607G06F3/0632G06F3/064G06F3/0658G06F3/0659G06F3/0673G06F3/0679G06F9/30101G06F9/30123G06F9/3897G06F9/4881G06F9/5016G06F12/0607G06F12/0811G06F12/0815G06F12/0828G06F12/0831G06F12/084G06F12/0855G06F12/0857G06F12/0875G06F12/0891G06F12/10G06F12/1009G06F13/124G06F13/1642G06F13/1663G06F13/1668G06F13/4027H03M13/015H03M13/098H03M13/1575H03M13/276H03M13/2785G06F12/0833G06F12/0846G06F12/0851G06F12/0862G06F2212/1008G06F2212/1016G06F2212/1024G06F2212/1048G06F2212/304G06F2212/452G06F2212/6024G06F2212/657
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,079,471
App. No.
17/875,457
Granted
Sep 3, 2024
Kind
B2
Abstract

A device includes an arbiter circuit configured to receive a first request for a resource. The first request is associated with a first credit cost. The arbiter circuit is further configured to receive a second request for the resource. The second request is associated with a second credit cost. The arbiter circuit is further configured to select the first request for the resource as an arbitration winner. The arbiter circuit is further configured to decrement a number of available credits associated with the resource by the first credit cost. The arbiter circuit is further configured to, in response to the number of available credits associated with the resource falling to a lower credit threshold, wait until the number of available credits associated with the resource reaches an upper credit threshold to select an additional arbitration winner for the resource.

Claims (52)

1. A system comprising:

a data path coupled to a resource associated with a first number of available credits;

an arbiter circuit coupled to the data path, the arbiter circuit configured to:

receive a plurality of requests for the resource;

determine a subset of the plurality of requests, wherein each of the subset of the plurality of requests is associated with a respective credit cost;

determine an arbitration winner request from the subset of the plurality of requests;

drive the arbitration winner request to the data path and decrement the number of available credits by a first credit cost associated with the arbitration winner request to produce a reduced number of available credits; and

in response to determining the reduced number of available credits of the resource is less than a lower credit threshold, stop driving subsequent requests from the subset to the data path until the resource is associated with a second number of available credits that is at or above an upper credit threshold, wherein the upper credit threshold comprises a scalable number of credits based on one or more heuristics, and wherein a heuristic of the one or more heuristics corresponds to a pattern of access to the resource via the data path indicative of frequencies, timing, and respective credit costs associated with the subset of the plurality of requests.

2. The system of claim 1 , wherein:

the lower credit threshold corresponds to zero credits, and wherein the upper credit threshold corresponds to a highest cost of possible requests for the resource.

3. The system of claim 1 , wherein:

the first credit cost corresponds to an amount of space in a queue of the resource consumed by the arbitration winner request.

4. The system of claim 1 , wherein:

the subset of the plurality of requests is determined by comparing the respective credit cost of each of the plurality of requests with the first number of available credits.

5. The system of claim 1 , wherein:

the arbitration winner request is determined based on a fair-share algorithm or a round-robin algorithm.

6. The system of claim 1 , wherein:

the pattern of access to the resource indicates that two or more requests of the subset of the plurality of requests correspond to sequential memory addresses associated with the resource; and

the upper credit threshold is based on the indication of the two or more requests.

7. The system of claim 1 , wherein:

the arbitration winner request is determined based on respective priorities of the subset of the plurality of requests.

8. The system of claim 1 , wherein:

the arbitration winner request is determined based on a respective starvation indicator of each of the subset of the plurality of requests.

9. The system of claim 1 , wherein:

the arbitration winner request is determined based on a combination of at least two of a fair share algorithm, a round-robin algorithm, a respective starvation indicator of each of the subset of the plurality of requests, and respective priorities of the subset of the plurality of requests.

10. The system of claim 1 , further comprising:

a configuration module coupled to the arbiter circuit, wherein the configuration module includes arbitration logic.

11. A method comprising:

receiving, by an arbiter circuit, a plurality of requests for a resource coupled to a data path, wherein the resource is associated with a first number of available credits;

determining, by the arbiter circuit, a subset of the plurality of requests, wherein each of the subset of the plurality of requests is associated with a respective credit cost;

determining, by the arbiter circuit, an arbitration winner request from the subset of the plurality of requests;

driving, by the arbiter circuit, the arbitration winner request to the data path and decrement the number of available credits by a first credit cost associated with the arbitration winner request to produce a reduced number of available credits; and

in response to determining the reduced number of available credits of the resource is less than a lower credit threshold, stop driving, by the arbiter circuit, subsequent requests from the subset to the data path until the resource is associated with a second number of available credits that is at or above an upper credit threshold, wherein the upper credit threshold comprises a scalable number of credits based on one or more heuristics at a given time, and wherein a heuristic of the one or more heuristics corresponds to a pattern of access to the resource via the data path indicative of frequencies, timing, and respective credit costs associated with the subset of the plurality of requests.

12. The method of claim 11 , wherein:

the lower credit threshold corresponds to zero credits, and wherein the upper credit threshold corresponds to a highest cost of possible requests for the resource.

13. The method of claim 11 , wherein:

the first credit cost corresponds to an amount of space in a queue of the resource consumed by the arbitration winner request.

14. The method of claim 11 , wherein:

the subset of the plurality of requests is determined by comparing the respective credit cost of each of the plurality of requests with the first number of available credits.

15. The method of claim 11 , wherein:

the arbitration winner request is determined based on a fair-share algorithm or a round-robin algorithm.

16. The method of claim 11 , wherein:

the pattern of access to the resource indicates that two or more requests of the subset of the plurality of requests correspond to sequential memory addresses associated with the resource; and

the upper credit threshold is based on the indication of the two or more requests.

17. The method of claim 11 , wherein:

the arbitration winner request is determined based on respective priorities of the subset of the plurality of requests.

18. The method of claim 11 , wherein:

the arbitration winner request is determined based on a respective starvation indicator of each of the subset of the plurality of requests.

19. The method of claim 11 , wherein:

the arbitration winner request is determined based on a combination of at least two of a fair share algorithm, a round-robin algorithm, a respective starvation indicator of each of the subset of the plurality of requests, and respective priorities of the subset of the plurality of requests.

20. The method of claim 11 , wherein:

the arbiter circuit is coupled to a configuration module that includes arbitration logic.

Continuity (3)
Continuation 16653421 · Oct 15, 2019
Provisional Application 62745842 · Oct 15, 2018
Related Publication 20220374358A1 · Nov 24, 2022