US5113510A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for operating a cache memory in a multi-processor
Assignee: Thinking Machines Corp
•
Filing: 1987-12-22
•
Granted: 1992-05-12
•
Expires: 2007-12-22
Abstract
Abstract A computer system having a plurality of processors with each processor having associated therewith a cache memory is disclosed. When it becomes necessary for a processor to update its cache with a block of data from main memory, such a block of data is simultaneously loaded into each appropriate cache. Thus, each processor subsequently requiring such updated block of data may retrieve the block from its own cache, and not be required to access main memory.
Inventors
- 👤 W. Daniel Hillis
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-25 10:20
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F12/0815; G06F12/0831; G06F12/0833
Claims Analysis
Total Claims: 21
Claim 1
Independent Claim
118 words
A method of operating a multiprocessor computer system having a plurality of cache memories and a common memory which supplies data to said cache memories, each processor having a cache memory associated therewith, said method comprising the steps of: accessing a first cache memory from a first processor in order to determine whether referenced data exists in said first cache memory; reading said referenced data from said first cache memory upon determining that said referenced data exists in said first cache memory; and upon determining that said referenced data does not exist in said first cache memory, updating each cache memory of said plurality of cache memories with an identical block of data obtained from said common memory.
Claim 2
Independent Claim
118 words
A method of operating a multiprocessor computer system having a plurality of cache memories and a common memory which supplies data to said cache memories, each processor having a cache memory associated therewith, said method comprising the steps of: accessing a first cache memory from a first processor in order to determine whether referenced data exists in said first cache memory; reading said referenced data from said first cache memory upon determining that said referenced data exists in said first cache memory; and upon determining that said referenced data does not exist in said first cache memory, updating each cache memory of said plurality of cache memories with an identical block of data obtained from said common memory.
Claim 3
Dependent Claim
29 words
The method of claim 1 wherein said updating comprises replacing a block of data in each said cache memory with said identical block of data from a common memory.
Claim 4
Dependent Claim
17 words
The method of claim 2 wherein said replacing is accomplished by a least recently used (LRU) method.
Claim 5
Dependent Claim
143 words
In a parallel processing computer of the type having a plurality of cache memories, each cache memory associated with one of such processing units, and a common memory associated with said plurality of processing units wherein when a cache memory is tested for referenced data required by an associated processing unit it is updated with a new block of data from said common memory upon determining that said referenced data is not in said cache memory, a method of updating said cache memories comprising the steps of: testing a cache memory for the presence of data to be used in an associated processing unit; in the absence of such data in said cache memory, requesting such data from common memory; and in response to such request, updating each of said cache memories with an identical block of data obtained from said common memory.
Claim 6
Dependent Claim
143 words
In a parallel processing computer of the type having a plurality of cache memories, each cache memory associated with one of such processing units, and a common memory associated with said plurality of processing units wherein when a cache memory is tested for referenced data required by an associated processing unit it is updated with a new block of data from said common memory upon determining that said referenced data is not in said cache memory, a method of updating said cache memories comprising the steps of: testing a cache memory for the presence of data to be used in an associated processing unit; in the absence of such data in said cache memory, requesting such data from common memory; and in response to such request, updating each of said cache memories with an identical block of data obtained from said common memory.
Claim 7
Dependent Claim
13 words
The computer of claim 4 wherein said updating step comprises reading data instructions.
Claim 8
Dependent Claim
23 words
The computer of claim 4 wherein said updating step comprises simultaneously reading said new block of data into each of said cache memories.
Claim 9
Dependent Claim
96 words
A computer comprising: an array of processors operating in parallel with each other; a common memory operatively associated with said array of processors; an array of cache memories, each cache memory operatively associated with one processor within said array of processors, said cache memory providing a miss signal upon the occurrence of miss, means responsive to said miss signal from one cache memory for updating each said cache memory with an identical block of data from said common memory by causing said block of data from common memory to be written to each said cache memory.
Claim 10
Dependent Claim
96 words
A computer comprising: an array of processors operating in parallel with each other; a common memory operatively associated with said array of processors; an array of cache memories, each cache memory operatively associated with one processor within said array of processors, said cache memory providing a miss signal upon the occurrence of miss, means responsive to said miss signal from one cache memory for updating each said cache memory with an identical block of data from said common memory by causing said block of data from common memory to be written to each said cache memory.
Claim 11
Dependent Claim
10 words
The computer of claim 7 wherein said data is instructions.
Claim 12
Dependent Claim
19 words
The computer of claim 7 wherein said means for updating each said cache memory comprises a shared data bus.
Claim 13
Independent Claim
129 words
A method of operating a multi-processor computer system having a plurality of cache memories and a common memory which supplies data to said cache memories, each processor having a cache memory associated therewith, said method comprising the steps of: accessing a first cache memory from a first processor in order to determine whether referenced data exists in said first cache memory; reading said referenced data from said first cache memory upon determining that said referenced data exists in said first cache memory; and upon determining that said referenced data does not exist in said first cache memory, supplying to each cache memory an identical block of data obtained from said common memory, said block of data providing the referenced data that did not exist in the first cache memory.
Claim 14
Independent Claim
129 words
A method of operating a multi-processor computer system having a plurality of cache memories and a common memory which supplies data to said cache memories, each processor having a cache memory associated therewith, said method comprising the steps of: accessing a first cache memory from a first processor in order to determine whether referenced data exists in said first cache memory; reading said referenced data from said first cache memory upon determining that said referenced data exists in said first cache memory; and upon determining that said referenced data does not exist in said first cache memory, supplying to each cache memory an identical block of data obtained from said common memory, said block of data providing the referenced data that did not exist in the first cache memory.
Claim 15
Dependent Claim
34 words
The method of claim 10 further comprising the step of selectively updating each cache memory to which said identical block of data is supplied depending on address information associated with said block of data.
Claim 16
Dependent Claim
164 words
In a parallel processing computer of the type having a plurality of processing units operating in parallel, a plurality of cache memories, each cache memory associated with one of such processing units, and a common memory associated with said plurality of processing units wherein when a cache memory is tested for data required by an associated processing unit it is updated with a new block of data from said common memory upon determining that said data is not in said cache memory, a method of updating said cache memories comprising the steps of: testing a cache memory for the presence of data to be used in an associated processing unit; in the absence of such data in said cache memory, requesting such data from common memory; and in response to such request, supplying to each cache memory an identical block of data obtained from said common memory, said block of data providing the data that was absent from the cache memory that was tested.
Claim 17
Dependent Claim
164 words
In a parallel processing computer of the type having a plurality of processing units operating in parallel, a plurality of cache memories, each cache memory associated with one of such processing units, and a common memory associated with said plurality of processing units wherein when a cache memory is tested for data required by an associated processing unit it is updated with a new block of data from said common memory upon determining that said data is not in said cache memory, a method of updating said cache memories comprising the steps of: testing a cache memory for the presence of data to be used in an associated processing unit; in the absence of such data in said cache memory, requesting such data from common memory; and in response to such request, supplying to each cache memory an identical block of data obtained from said common memory, said block of data providing the data that was absent from the cache memory that was tested.
Claim 18
Dependent Claim
34 words
The method of claim 12 further comprising the step of selectively updating each cache memory to which said identical block of data is supplied depending on address information associated with said block of data.
Claim 19
Dependent Claim
96 words
A computer comprising: an array of processors operating in parallel with each other; a common memory operatively associated with said array of processors; an array of cache memories, each cache memory operatively associated with one processor within said array of processors, said cache memory providing a miss signal upon the occurrence of a miss; and means responsive to said miss signal from one cache memory for supplying to each cache memory an identical block of data from said common memory, said block of data providing data absent from the cache memory which provided the miss signal.
Claim 20
Dependent Claim
96 words
A computer comprising: an array of processors operating in parallel with each other; a common memory operatively associated with said array of processors; an array of cache memories, each cache memory operatively associated with one processor within said array of processors, said cache memory providing a miss signal upon the occurrence of a miss; and means responsive to said miss signal from one cache memory for supplying to each cache memory an identical block of data from said common memory, said block of data providing data absent from the cache memory which provided the miss signal.
Claim 21
Dependent Claim
29 words
The apparatus of claim 14 further comprising means associated with each cache memory for selectively updating that cache memory depending on address information associated with said block of data.
References Cited (Backward Citations)
US4228503A
Cited
US4400770A
Cited
US4410944A
Cited
US4442487A
Cited
US4654819A
Cited
US4616310A
Cited
US4695951A
Cited
US4558413A
Cited
US4843542A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1995-05-12 | 1995-11-11 | 1996-05-12 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1999-05-12 | 1999-11-11 | 2000-05-12 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2003-05-12 | 2003-11-11 | 2004-05-12 | $7700.00 | Window Closed / Lapsed |