IP Library Granted Patent US 7,890,686
Granted Patent B2
US 7,890,686 · App. 11/252,341 · Granted Feb 15, 2011

Dynamic priority conflict resolution in a multi-processor computer system having shared resources

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 7,890,686
App. No.
11/252,341
Granted
Feb 15, 2011
Kind
B2
Abstract

A system and method for fair dynamic priority conflict resolution in a multi-processor computer system having shared resources wherein each multi-processor seeking access to said shared resource possesses a common priority level. In the occurrence of a priority tie or when a single port is active, a typical dynamic conflict resolution scheme is altered to ensure fair resolution of the conflict or tie. Upon determination that a priority conflict tie exists, one of the processor elements is selected based on a predetermined priority level. The identity of the selected processor element and the configuration of the conflict priority tie is stored. Upon a subsequent conflict priority tie having the same configuration as a previous priority conflict tie, the processor elements selected in previous ties are prevented from being selected in subsequent priority conflict ties until all of the processor elements in a particular priority tie configuration have been selected. In situations involving a single active port, established dynamic conflict resolution schemes are modified to provide fair access and reduce priority tie conflicts.

Claims (28)

1. A computer system including a plurality of processing elements requiring access to a shared resource, said computer system comprising:

a priority conflict resolution circuit comparator for dynamically resolving a priority tie among a plurality of processing elements simultaneously requesting access to said shared resource, the priority tie resulting from more than one of said plurality of processing elements to be of a common highest priority, said priority conflict resolution circuit comparator including an initial predetermined differing priority tie precedence assigned corresponding to each of said plurality of said processing elements wherein upon a selected one of said plurality of processing elements being afforded access to said shared resource based upon said initial priority tie precedence thereof being a highest priority of said plurality of processing elements and wherein an identity of the selected one of said plurality of said processors is stored so as upon a subsequent priority tie of said plurality of processing elements the selected one of said plurality of said processors is prevented from being selected again until each remaining processing element of the plurality of processing elements is selected.

2. The computer system of claim 1 wherein said priority conflict resolution circuit comparator dynamically corrects erroneous priorities among said plurality of processing elements.

3. The computer system of claim 1 wherein said priority conflict resolution circuit comparator resets after each of said plurality of processing elements is selected subsequent to the priority tie.

4. The computer system of claim 1 wherein said predetermined differing priority tie precedence assigned corresponding to each processing element of said plurality of processing elements is maintained by an output port of a dynamic priority conflict resolution circuit.

5. The computer system of claim 1 wherein said initial predetermined differing priority tie precedence and a predetermined processor element priority level are the same.

6. The computer system of claim 5 wherein said initial predetermined differing priority tie precedence and said predetermined processor element priority level are determined at computer start up.

7. The computer system of claim 1 wherein said shared resource is a semaphore.

8. A method for dynamically resolving a priority conflict tie in a computer system including a plurality of processing elements and a shared resource, the priority conflict tie resulting from more than one of said plurality of processing elements to be of a common highest priority, said method comprising the steps of:

assigning a predetermined differing initial priority tie precedence corresponding to each of said plurality of processing elements;

affording access to said shared resource to a requesting one of said plurality of processing elements having a highest initial priority tie precedence thereof;

storing an identity of the requesting one of said plurality of processing elements afforded access to said shared resource; and

upon a subsequent priority conflict tie among the plurality of processing elements, preventing processing elements previously afforded access to said shared resource from affording access to said shared resource until each of said plurality of processing elements is afforded access to said shared resource.

9. The method of claim 8 wherein said steps of affording access, storing and preventing are carried out by a priority conflict resolution circuit comparator.

10. The method of claim 8 further comprising the steps of:

comparing priorities among said plurality of processing elements; and

dynamically correcting erroneous priorities among said plurality of processing elements.

11. The method of claim 8 further comprising the step of:

maintaining said initial priority tie precedence assigned corresponding to each of said plurality of said processing elements at a respective output port of said priority conflict resolution circuit.

12. The method of claim 8 wherein said shared resource is a semaphore.

13. A computer system including a plurality of processing elements and a shared resource, said computer system comprising:

a dynamic conflict resolution circuit for controlling access to said shared resource among said processing elements, said dynamic conflict resolution circuit including a conflict priority scheme for resolving two or more simultaneous processing element requests to access said memory resources wherein, responsive to request activity being isolated to a single active port, said conflict priority scheme maintaining current processing element priority level of each processor element for at least one processing cycle.

14. The computer system of claim 13 wherein said processing elements request access to a semaphore.

15. The computer system of claim 13 wherein responsive to request activity being isolated to said single port, said dynamic conflict resolution circuit inhibiting processor element priority level alterations subsequent to shared resource access being granted.

16. A method for dynamic conflict resolution a computer system having a plurality of processing elements and a shared resource, said method comprising the steps of:

implementing a conflict resolution scheme to arbitrate simultaneous access requests from said plurality of processing elements to said shared resource; and

responsive to a single port being active, inhibiting processor element priority level alterations of said plurality of processing elements subsequent to shared resource access being granted.

17. The method of claim 16 wherein said plurality of processing elements request access to a semaphore.

Assignments (9)
RELEASE OF SECURITY INTEREST IN SPECIFIED PATENTS Recorded May 22, 2023
From: BARINGS FINANCE LLC, AS COLLATERAL AGENT
To: RPX CORPORATION
Reel/Frame 063723/0139 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2020
From: DIRECTSTREAM LLC
To: FG SRC LLC
Reel/Frame 051615/0344 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2019
From: SAINT REGIS MOHAWK TRIBE
To: DIRECTSTREAM, LLC
Reel/Frame 049251/0855 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 2, 2017
From: SRC LABS, LLC
To: SAINT REGIS MOHAWK TRIBE
Reel/Frame 043174/0318 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2016
From: SRC COMPUTERS, LLC
To: SRC LABS, LLC
Reel/Frame 037820/0147 →
RELEASE OF SECURITY INTEREST Recorded Feb 11, 2016
From: FREEMAN CAPITAL PARTNERS LP
To: SRC COMPUTERS, LLC
Reel/Frame 037707/0196 →
MERGER Recorded Oct 31, 2013
From: SRC COMPUTERS, INC.
To: SRC COMPUTERS, LLC
Reel/Frame 031523/0855 →
SECURITY AGREEMENT Recorded Sep 23, 2013
From: SRC COMPUTERS, LLC
To: FREEMAN CAPITAL PARTNERS LP
Reel/Frame 031263/0288 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2005
From: CONNER, BRYAN
To: SRC COMPUTERS, INC.
Reel/Frame 017111/0123 →