Claims
- 1. A multiprocessor computer system, said multiprocessor computer system comprising the elements of:
- a bus structure, said bus structure carrying information within said multiprocessor computer system;
- a) a first processor subsystem, said first processor subsystem comprising
- i) a first processing unit, said first processing unit generating a first plurality of virtual addresses, said virtual addresses comprising a plurality of bits wherein a subset of said bits comprise a first virtual index, said first virtual index broadcast on said bus structure;
- ii) a first cache memory unit, said first cache memory unit coupled to said first processing unit, said first cache memory unit addressed using said first plurality of virtual addresses, said first cache memory unit comprising a plurality of cache entries, said cache entries indexed using said first virtual index;
- iii) a first memory management unit, said first memory management unit coupled to said first processing unit, said first memory management unit translating said first plurality of virtual addresses into a correspond plurality of physical addresses, said physical addresses broadcast on said bus structure;
- b) a second processor subsystem, said second processor subsystem comprising
- i) a second processing unit, said second processing unit generating a second plurality of virtual addresses, said second plurality of virtual addresses comprising a plurality of bits wherein a subset of said bits comprise a second virtual index, said second virtual index broadcast on said bus structure;
- ii) a second cache memory unit, said second cache memory unit coupled to said second processing unit, said second cache memory unit addressed using said second plurality of virtual addresses, said second cache memory unit comprising a plurality of cache entries, said cache entries indexed using said second virtual index;
- iii) a second memory management unit, said second memory management unit coupled to said second processing unit, said second memory management unit translating said second plurality of virtual addresses into a correspond plurality of physical addresses, said physical addresses broadcast on said bus structure; and
- a main memory, said main memory coupled to said bus structure, said main memory addressed by said physical addresses;
- wherein if a first unit of information in said first cache memory having a first virtual index value from a first virtual address value has the same physical address value as a second unit of information in said second cache memory having a second virtual index value from a second virtual address value then said first virtual index value and said second virtual index value are equal.
- 2. The multiprocessor computer system as claimed in claim 1 wherein said second processor subsystem further comprises:
- a snoopy tag directory, said snoopy tag directory coupled to said bus
- structure, said snoopy tag directory comprising a listing of physical addresses for said cache entries in said second cache memory unit, said snoopy tag directory outputting one of said physical addresses when indexed by a virtual index on said bus structure;
- a comparator, said comparator coupled to said bus structure and said snoopy tag directory, said comparator comparing physical addresses received from said bus structure and said snoopy tag directory; and
- an invalidation mechanism, said invalidation mechanism invalidating an entry in said second cache memory unit as indexed by a virtual index on said bus structure when said comparator detects a match.
Parent Case Info
This is a continuation of application Ser. No. 07/461,225, filed Jan. 5, 1990,now abandoned.
US Referenced Citations (13)
Foreign Referenced Citations (2)
Number |
Date |
Country |
0232526 |
Dec 1986 |
GBX |
2221066 |
May 1989 |
GBX |
Continuations (1)
|
Number |
Date |
Country |
Parent |
461225 |
Jan 1990 |
|