Shared resource access via declarations that contain a sequence number of a packet
First Claim
1. A method of obtaining access to a shared resource, the method comprising:
- issuing a first declaration indicative of a possible need in future to access the shared resource, and providing a sequence number in said first declaration;
executing software until access to the shared resource is needed or not needed;
issuing a request to access the shared resource and providing said sequence number in said request, if access is needed; and
issuing a second declaration indicative of no need in future to access the shared resource and providing said sequence number in said second declaration;
wherein the sequence number indicates an order of arrival of packets whose information is being processed by said executing software.
5 Assignments
0 Petitions
Accused Products
Abstract
Logic (also called “re-ordering semaphore”) issues semaphore grants to access a shared resource in an order different from the order in which semaphore requests for accessing the shared resource are received. The re-ordering semaphore needs to receive a semaphore release between any two semaphore grants. There is no limit on the duration between a semaphore grant and a semaphore release, so that a task that receives a semaphore grant can use the shared resource for any length of time. In one embodiment, each request is associated with a number indicative of the order in which grants are to be issued, and the re-ordering semaphore uses this number in deciding which request is to be granted. The number can be a sequence number that is indicative of the order of arrival of packets that generated the requests.
-
Citations
22 Claims
-
1. A method of obtaining access to a shared resource, the method comprising:
-
issuing a first declaration indicative of a possible need in future to access the shared resource, and providing a sequence number in said first declaration;
executing software until access to the shared resource is needed or not needed;
issuing a request to access the shared resource and providing said sequence number in said request, if access is needed; and
issuing a second declaration indicative of no need in future to access the shared resource and providing said sequence number in said second declaration;
wherein the sequence number indicates an order of arrival of packets whose information is being processed by said executing software. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A circuit for accessing a shared resource, the circuit comprising:
-
means for issuing a first declaration indicative of a possible need in future to access the shared resource, and for providing a sequence number in said first declaration;
means for executing software until access to the shared resource is needed or not needed;
means for issuing a request to access the shared resource and providing said sequence number in said request, if access is needed; and
means for issuing a second declaration indicative of no need in future to access the shared resource, and for providing said sequence number in said second declaration;
wherein the sequence number indicates an order of arrival of packets whose information is being processed by said executing software. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method of obtaining access to a shared resource, the method comprising:
-
issuing a first declaration indicative of a possible need in future to access the shared resource, and providing a number in said first declaration;
executing software until access to the shared resource is needed or not needed;
issuing a request to access the shared resource and providing said number in said request if access is needed; and
issuing a second declaration indicative of no need in future to access the shared resource, and providing said number in said second declaration;
wherein said number indicates an order in which grants are to be issued. - View Dependent Claims (20, 21, 22)
-
Specification