Cache coherence unit for interconnecting multiprocessor nodes having pipelined snoopy protocol
First Claim
1. A cache coherence unit for use in a data processing system having multiple nodes, each node having a plurality of processors coupled to a memory bus operating according to a cache coherence protocol, each processor having an associated cache memory for caching data, the cache coherence unit comprising:
- a bus interface element coupled to said memory bus;
a coherence control element coupled to said bus interface element and coupled to said cache memories;
a sparse directory coupled to said coherence control element for storing node identifications and information of locations in said cache memories; and
a protocol decision pipeline coupled to said coherence control element for processing concurrent requests for cache memory.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention consists of a cache coherence protocol within a cache coherence unit for use in a data processing system. The data processing system is comprised of multiple nodes, each node having a plurality of processors with associated caches, a memory, and input/output. The processors within the node are coupled to a memory bus operating according to a “snoopy” protocol. This invention includes a cache coherence protocol for a sparse directory in combination with the multiprocessor nodes. In addition, the invention has the following features: the current state and information from the incoming bus request are used to make an immediate decision on actions and next state; the decision mechanism for outgoing coherence is pipelined to follow the bus; and the incoming coherence pipeline acts independently of the outgoing coherence pipeline.
-
Citations
7 Claims
-
1. A cache coherence unit for use in a data processing system having multiple nodes, each node having a plurality of processors coupled to a memory bus operating according to a cache coherence protocol, each processor having an associated cache memory for caching data, the cache coherence unit comprising:
-
a bus interface element coupled to said memory bus;
a coherence control element coupled to said bus interface element and coupled to said cache memories;
a sparse directory coupled to said coherence control element for storing node identifications and information of locations in said cache memories; and
a protocol decision pipeline coupled to said coherence control element for processing concurrent requests for cache memory. - View Dependent Claims (2, 3, 4, 5, 6, 7)
means for updating information characterizing a current transient state, means for reading information characterizing other transient states, and means for updating said information characterizing other transient states after said information characterizing the current transient state has been updated.
-
-
7. The cache coherence unit of claim 1, being capable of:
-
concurrently handling multiple memory bus requests; and
concurrently handling multiple network request.
-
Specification