Patent US5113510A successfully refreshed from Google Patents.
← Back to Patent Explorer
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
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

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 16:06
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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag