Fair Software Locking Across a Non-Coherent Interconnect
First Claim
1. A method, comprising:
- receiving a unique number from a hardware atomic unit;
receiving an owner number associated with a shared system resource; and
accessing the shared system resource when the unique number matches the owner number.
2 Assignments
0 Petitions
Accused Products
Abstract
Access to a shared resource by a plurality of execution units is organized and controlled by issuing tickets to each execution unit as they request access to the resource. The tickets are issued by a hardware atomic unit so that each execution unit receives a unique ticket number. A current owner field indicates the ticket number of the execution unit that currently has access to the shared resource. When an execution unit has completed its access, it releases the shared resource and increments the owner field. Execution units awaiting access to the shared resource periodically check the current value of the owner field and take control of the shared resource when their respective ticket values match the owner field.
17 Citations
18 Claims
-
1. A method, comprising:
-
receiving a unique number from a hardware atomic unit; receiving an owner number associated with a shared system resource; and accessing the shared system resource when the unique number matches the owner number. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method, comprising:
-
receiving a current number associated with a hardware atomic unit; receiving an owner number associated with a shared system resource; comparing the current number associated with the hardware atomic unit to a number that is one less than the owner number; and either requesting a new number when the current number associated with the hardware atomic unit is equal to a number that is one less than the owner number, or not requesting a new number when the current number associated with the hardware atomic unit is not equal to a number that is one less than the owner number. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system, comprising:
-
a hardware atomic unit adapted to issue ticket numbers upon request from execution units operating on the system; a shared resource accessible by the execution units; and a storage device adapted to hold an owner value associated with the shared resource; wherein the execution units receive a unique ticket number from the hardware atomic unit and are permitted access to the shared resource when the unique ticket number matches the owner value. - View Dependent Claims (16, 17, 18)
-
Specification