Method and system for avoiding starvation and deadlocks in a split-response interconnect of a computer system
First Claim
1. A method for avoiding split-response-bus conflicts in a multiprocessor computer system, the multiprocessor computer system including a first node and a second mode coupled to the split-response bus, wherein the first and second nodes communicate by passing request packets over the split-response bus, wherein the first node is a requesting node, further wherein the multiprocessor system includes a PCI adapter having a node Id coupled to a split-response and to a PCI bus, the PCI adapter operable to detect a read request conflict when a split-response-to-PCI-BUS read request is received while a PCI-BUS-to-split-response read request is active, each of the read requests including a source Id and a target Id, the method including the steps of:
- (a) providing precedence information in the request packets, wherein the multiprocessor system includes a particular topology, step (a) further including the step of;
(a1) providing the precedence information by including a precedence label in the request packets indicating where the requesting node is located in the topology of multiprocessor system; and
(b) using the precedence information upon receiving the request packets to determine which request packets to process and which request packets to reject when a conflict occurs(c) performing conflict resolution by rejecting the received read request at the adapter unless I) the adapter node Id is less than the source Id within the received read-request, and ii) the adapter node Id is less than the target Id of the active read request.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for avoiding starvation and deadlocks in a split-response-bus multiprocessor computer system. The multiprocessor computer system includes a first node and a second node coupled to the a split-response bus, wherein the first and second nodes communicate by passing request packets over the split-response bus. The method and system includes providing precedence information in the request packets, and then using the precedence information when receiving the request packets to determine which request packets to process and which request packets to reject when a conflict occurs.
155 Citations
12 Claims
-
1. A method for avoiding split-response-bus conflicts in a multiprocessor computer system, the multiprocessor computer system including a first node and a second mode coupled to the split-response bus, wherein the first and second nodes communicate by passing request packets over the split-response bus, wherein the first node is a requesting node, further wherein the multiprocessor system includes a PCI adapter having a node Id coupled to a split-response and to a PCI bus, the PCI adapter operable to detect a read request conflict when a split-response-to-PCI-BUS read request is received while a PCI-BUS-to-split-response read request is active, each of the read requests including a source Id and a target Id, the method including the steps of:
-
(a) providing precedence information in the request packets, wherein the multiprocessor system includes a particular topology, step (a) further including the step of; (a1) providing the precedence information by including a precedence label in the request packets indicating where the requesting node is located in the topology of multiprocessor system; and (b) using the precedence information upon receiving the request packets to determine which request packets to process and which request packets to reject when a conflict occurs (c) performing conflict resolution by rejecting the received read request at the adapter unless I) the adapter node Id is less than the source Id within the received read-request, and ii) the adapter node Id is less than the target Id of the active read request. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A multiprocessor computer system for avoiding starvation and deadlocks, comprising:
-
a split-response-bus; a first node and a second node coupled to the split-response bus, wherein the first and second nodes communicate by passing request packets over the split-response;
wherein the first node is a requesting node;precedence means for providing precedence information in the request packets, wherein the multiprocessor system includes a particular topology, wherein the precedence means provides a precedence label in the request packets indicating where the requesting node is located in the topology of multiprocessor system; means for determining which request packets to process during a conflict and which request packets to reject based on the precedence information; a PCI bus; and a PCI adapter having a node Id coupled to a split-response and to the PCI bus, wherein the PCI adapter detects a read request conflict when a split-response-to-PCI-BUS read request is received while a PCI-BUS-to-split-response read request is active, each of the read requests including a source Id and a target Id, the adapter further including means for performing conflict resolution by rejecting the received read request at the adapter unless I) the adapter node Id is less than the source Id within the received read-request, and ii) the adapter node Id is less than the target Id of the active read request. - View Dependent Claims (8, 9, 10, 11, 12)
-
Specification