Patent ID: 7305523

Claim:
In a multi-processor system having multiple memory hierarchies each having an associated processor, a direct intervention system for processing load requests, said direct intervention system comprising: a first cache memory hierarchy having multiple cache memory levels for supporting a first processor, wherein said first cache memory hierarchy includes a first semi-private cache unit that is directly accessible by said first processor without accessing a shared memory interconnect that provides a snooped memory access interface between said first cache memory hierarchy and a second cache memory hierarchy; said second cache memory hierarchy distinct from said first cache memory hierarchy and supporting a second processor distinct from said first processor, wherein said second cache memory hierarchy includes a second semi-private cache unit that is directly accessible by said second processor without accessing said shared memory interconnect; wherein said first semi-private cache unit includes: a cache array and directory that store and index data, said cache array and directory including an arbiter logic module that, responsive to receiving a load request from said first processor, speculatively reads said cache array in parallel with a cache line directory lookup within said directory; direct intervention logic that, responsive to receiving the load request from said first processor, speculatively issues a direct intervention request containing a cache line address of the load request to said second semi-private cache unit, said direct intervention request issued in parallel with said speculative read of said cache array and including the address of a cache line requested in the load request; direct intervention logic that prior to issuing the load request as a snooped request on said shared memory interconnect responsive to a cache miss within said first semi-private cache unit, determines whether a negative acknowledgement has been received from said second semi-private cache unit, said negative acknowledgement indicating denial or failure of said direct intervention recquest; direct intervention logic for issuing the load request as a snooped request on said shared memory interconnect only in response to determining that the negative acknowledgement has been received; and direct intervention logic that responsive to a cache miss within said first semi-private cache unit, and in further response to a positive acknowledgement from said second semi-private cache unit indicating a cache hit responsive to said direct intervention request and containing a snoop machine identification of an available snoop machine within said second semi-private cache unit, sends a push request to said second semi-private cache unit to push the requested load data specified by the direct intervention request to said first semi-private cache unit, wherein said push request contains said snoop machine identification.