Claims
- 1. A computer system comprising:
- a local bus;
- a plurality of caches coupled to the local bus, at least one of which is a write-back cache;
- a main memory coupled to the local bus;
- at least one processor coupled to the local bus;
- a bus master coupled to the local bus, wherein a cache of the plurality of caches is operable to generate a plurality of signals which include:
- a shared signal generated in response to a data element that is snooped on the first local bus being present in the cache; and
- a snoop-busy signal that is active when the cache is in the process of searching for the data element being snooped on the local bus; and
- a circuit directly coupled to each of the multiple caches that receives the snoop-busy signal from each of the multiple caches and transmits a done signal on the local bus in response.
- 2. The apparatus of claim 1, wherein the local bus is a peripheral component interface (PCI) bus that operates according to a protocol.
- 3. The apparatus of claim 2, wherein the done signal is a snoop-done (SDONE) signal transmitted to each of the multiple caches and to a main memory.
- 4. The apparatus of claim 1, wherein the cache stores a set of status bits for each data element in the cache, including a modified bit, an exclusive bit, a shared bit, and an invalid bit.
- 5. The apparatus of claim 4, wherein, in response to the data element being found in an exclusive status, the cache asserts the shared signal to a bus master that initiated the snoop and changes an associated set of status bits to indicate that the data element has a shared status.
- 6. The apparatus of claim 4, wherein, in response to the data element being found during a snoop in a modified state, the cache asserts a snoop back off (SBO) signal according to the protocol to a main memory and initiates a write back of the data element to the main memory.
- 7. A method for operating multiple caches coupled to a local bus in a computer system, including at least one write-back cache, comprising the steps of:
- performing a snoop operation, wherein a bus master component initiates a search for a data element in each of the multiple caches;
- transmitting a shared signal from each of the multiple caches to the bus master in response to the data element being found in the cache;
- asserting a snoop busy signal for each of the multiple caches that is searching for a data element;
- sensing a snoop busy signal from the multiple caches; and
- transmitting a snoop done (SDONE) signal to each of caches and to the bus master in response to the states of the snoop busy signals.
- 8. The method of claim 7, wherein the shared signal is transmitted from more than one cache at one time over a single line.
- 9. The method of claim 8, further comprising the steps of:
- storing a plurality of data elements in the multiple caches with a set of status bits for each data element;
- changing the state of a set of status bits associated with a data element according to the shared signal;
- asserting the shared signal in response to the status bits indicating that the data element is present in the multiple caches in an unmodified state; and
- asserting a signal to initiate a write back of the data element to a main memory in response to the status bits indicating that the data element is present in the multiple caches in a modified state.
- 10. The method of claim 9, wherein the set of status bits comprises modified, exclusive, shared, invalid (MESI) bits, and wherein the local bus is a peripheral component interface (PCI) bus.
- 11. The method of claim 10, wherein the signal to initiate a write back is a snoop back off (SBO) signal.
- 12. The method of claim 11, wherein, if the data element is found in the multiple caches in an exclusive state, the shared signal is asserted and the state of the set of status bits is changed to indicate that the data element is shared.
Parent Case Info
This is a continuation of application Ser. No. 08/762,304, filed Dec. 9, 1996, now abandoned, which is a continuation of application Ser. No. 08/406,153, filed Mar. 17, 1995, now abandoned.
US Referenced Citations (6)
Non-Patent Literature Citations (5)
| Entry |
| "PCI Local Bus Specification, Revision 2.0", Intel Corporation, Apr. 30, 1993. |
| Computer Architecture A Quantitative Approach, ISBN 1-55860-069-8, pp. 582-585, Patterson, D, Hennessy, J. |
| Optimizing Systems Performance Based On Pentium Processors, COMPCON Spring 1993 IEEE Computer Society Int'l Conference. |
| The Cache Memory Book, Jim Handy ISBN 0-12-322985-5. |
| Pentium Extends 480 bus to 64 Bits, Higher Frequencies, New Features Improve Performance, Microprocessor Report, v.7, n.5, p 10. |
Continuations (2)
|
Number |
Date |
Country |
| Parent |
762304 |
Dec 1996 |
|
| Parent |
406153 |
Mar 1995 |
|