Claims
- 1. A computer system including a plurality of processing elements requiring access to a shared memory resource, said computer system comprising:
- a priority conflict resolution circuit for controlling access to said memory resource among said processing elements, said priority conflict resolution circuit including a predetermined differing initial priority assigned corresponding to each of said plurality of said processing elements and wherein upon a selected one of said plurality of said processing elements being afforded access to said memory resource based upon said initial priority thereof being a highest priority, said initial priority of said selected one of said plurality of said processing elements is changed to a lowest priority and said priority of all others of said plurality of said processing elements is incremented to a next higher priority, the all others of said plurality of said processing elements incrementable to the next higher priority thereof until a common highest priority is reached, and wherein said priority of said subset of said processing elements default to said differing initial priorities thereof.
- 2. The computer system of claim 1 wherein said priority conflict resolution circuit comprises a comparator to dynamically correct erroneous priorities among said plurality of processing elements.
- 3. The computer system of claim 2 wherein said comparator is operative to implement a greater-than-or-equal-to function to correct said erroneous priorities.
- 4. The computer system of claim 1 wherein said priority conflict resolution circuit comprises a comparator to dynamically resolve priority ties among said plurality of processing elements the priority ties resulting from more than one of said plurality of processing elements incremented to be of the common highest priority.
- 5. The computer system of claim 1 wherein said initial priority assigned corresponding to each of said plurality of said processing elements is maintained by each output port of said dynamic priority conflict resolution circuit.
- 6. The computer system of claim 1 wherein said dynamic priority conflict resolution circuit comprises a first plurality of input ports and a second plurality of output ports coupled through a number of data routing resources.
- 7. The computer system of claim 6 wherein said data routing resources are operatively controlled by a number of conflict resolution resources.
- 8. The computer system of claim 6 comprising twenty input ports and sixteen output ports.
- 9. A method for dynamic priority conflict resolution in a computer system including a plurality of processing elements and a shared memory resource, said method comprising the steps of:
- assigning a predetermined differing initial priority corresponding to each of said plurality of processing elements;
- affording access to said memory resource to a requesting one of said plurality of processing elements having a highest initial priority thereof;
- reducing said initial priority of said requesting one of said plurality of processing elements afforded access to said memory resource to a lowest priority thereof;
- incrementing said priority of each remaining one of said plurality of processing elements to a next higher priority, each remaining one of said plurality of processing elements incrementable until a common highest priority is reached; and
- defaulting said priority of a subset of each remaining one of said plurality of processing elements which have been incremented to a common highest priority thereof to said predetermined differing initial priorities thereof.
- 10. The method of claim 9 wherein said steps of affording access, reducing and incrementing are carried out by a priority conflict resolution circuit.
- 11. The method of claim 9 further comprising the steps of:
- comparing priorities among said plurality of processing elements; and
- dynamically correcting erroneous priorities among said plurality of processing elements.
- 12. The method of claim 11 wherein said step of comparing is carried out by a greater-than-or-equal-to function to correct said erroneous priorities.
- 13. The method of claim 9 further comprising the steps of:
- comparing priorities among said plurality of processing elements; and
- dynamically resolving priority ties among said plurality of processing elements, the priority ties resulting from more than one of said plurality of processing elements incremented to be of the common highest priority.
- 14. The method of claim 10 further comprising the step of:
- maintaining said initial priority assigned corresponding to each of said plurality of said processing elements at a respective output port of said priority conflict resolution circuit.
CROSS REFERENCE TO RELATED PATENT APPLICATIONS
The present invention is related to the subject matter disclosed in U.S. patent applications Ser. No. 08/992,763 filed Dec. 17, 1997 for "Multiprocessor Computer Architecture Incorporating a Plurality of Memory Algorithm Processors in the Memory Subsystem" and Ser. No. 09/008,871 filed Jan. 20, 1998 for "Scalable Single System Image Operating Software Architecture for a Multi-Processing Computer System", both assigned to SRC Computers, Inc., Colorado Springs, Colo., assignee of the present invention, the disclosures of which are herein specifically incorporated by this reference.
US Referenced Citations (8)