← Back to Patent Explorer
US4168541A Expired / Lapsed US ⏱️ 0.0 years remaining

Paired least recently used block replacement system

Assignee: Unisys Corp
•
Filing: 1978-09-25
•
Granted: 1979-09-18
•
Expires: 1998-09-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A set associative cache buffer organized with 2 n blocks per set requires only 2n-1 age bits for determining the replacement block within a set. When the cache buffer is addressed and the data sought is not found therein, the age bits determine which block of data in the set should be replaced with new data from the main memory. The block replaced may be either the least recently used block or one of the two least recently used blocks. The replacement logic is such that the buffer may be expanded from two to four blocks per set with minimal impact on the replacement logic. In addition, provision is made for disabling faulty blocks thus allowing the cache buffer and main memory behind it to be utilized in a degraded mode.

Inventors

  • 👤 Clarence W. DeKarske

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 21:28
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/16; G06F11/1666; G06F12/00; G06F12/02; G06F12/08; G06F12/12; G06F12/121; G06F12/126; G11; G11C; G11C29/00; G11C29/70; G11C29/88; G06F11/20; G06F2201/00; G06F2201/85; G06F2212/00; G06F2212/10; G06F2212/1032

Claims Analysis

Total Claims: 12
Claim 1
Independent Claim 277 words
In a set associative memory system having a main memory, a buffer memory, and means for applying a main memory address to the buffer memory, said buffer memory having means for storing blocks of data words associatively arranged in sets, and means for storing tags representing portions of the main memory addresses for words currently stored in said buffer memory, means for determining if a word specified by a main memory address applied to said buffer memory is resident therein, and replacement control means for replacing a block of data words in said buffer memory with a block of data words from said main when said determining means determines that a word specified by a main memory address is not resident in said buffer memory, the improvement wherein said replacement means comprises: age buffer means for storing sets of age bits, there being one set of age bits corresponding to each set of blocks of data words in said buffer memory, and 2n-1 bits in each set of age bits where 2 n is the number of blocks in each set of blocks of data words; means for addressing said age buffer means each time said buffer memory is addressed to read from said age buffer means the set of age bits corresponding to the set addressed in said buffer memory; and, selector means responsive to said age buffer means for modifying a set of age bits read therefrom and returning said modified set of age bits to said age buffer means, said modified set of age bits designating the least recently used block in the set of blocks corresponding to the set of modified age bits.
Claim 2
Dependent Claim 277 words
In a set associative memory system having a main memory, a buffer memory, and means for applying a main memory address to the buffer memory, said buffer memory having means for storing blocks of data words associatively arranged in sets, and means for storing tags representing portions of the main memory addresses for words currently stored in said buffer memory, means for determining if a word specified by a main memory address applied to said buffer memory is resident therein, and replacement control means for replacing a block of data words in said buffer memory with a block of data words from said main when said determining means determines that a word specified by a main memory address is not resident in said buffer memory, the improvement wherein said replacement means comprises: age buffer means for storing sets of age bits, there being one set of age bits corresponding to each set of blocks of data words in said buffer memory, and 2n-1 bits in each set of age bits where 2 n is the number of blocks in each set of blocks of data words; means for addressing said age buffer means each time said buffer memory is addressed to read from said age buffer means the set of age bits corresponding to the set addressed in said buffer memory; and, selector means responsive to said age buffer means for modifying a set of age bits read therefrom and returning said modified set of age bits to said age buffer means, said modified set of age bits designating the least recently used block in the set of blocks corresponding to the set of modified age bits.
Claim 3
Dependent Claim 9 words
The improvement as claimed in claim 1 where n=1.
Claim 4
Dependent Claim 9 words
The improvement as claimed in claim 1 where n=2.
Claim 5
Dependent Claim 62 words
The improvement as claimed in claim 1 and further comprising means connected to said age buffer means and responsive to age bits read therefrom for applying to said replacement control means a signal indicating which block of a selected set should be replaced when it is determined that a word specified by the main memory address is not resident in buffer memory.
Claim 6
Dependent Claim 97 words
The improvement as claimed in claim 1 and further comprising a degrade buffer for storing sets of degrade bits, there being 2 n degrade bits in each set thereof; means generating degrade bits identifying blocks of invalid data; means for entering said degrade bits into said degrade buffer; means for addressing a set of said degrade bits in said degrade buffer concurrently with an associated set of said age bits to thereby read said degrade bits out of said degrade buffer; and means for applying said degrade bits read from said degrade buffer to said selector means.
Claim 7
Dependent Claim 315 words
In a set associative memory system having a main memory, a buffer memory, and means for applying a main memory address to the buffer memory, said buffer memory having first means for storing blocks of data words associatively arranged in sets and second means for storing tags representing portions of the main memory addresses for words currently stored in said buffer memory, a third means for producing a first signal if a word specified by a main memory address applied to said buffer memory is resident therein and, if so, producing signals indicating in which block it is resident, and replacement control means for replacing a block of data words in said buffer memory with a block of data words from said main when said determining means determines that a word specified by a main memory address is not resident in said buffer memory, the improvement wherein said replacement means comprises: age buffer means for storing sets of age bits, there being one set of age bits corresponding to each set of blocks of data words in said buffer memory, and 2n-1 bits in each set of age bits where 2 n is the number of blocks in each set of blocks of data words; means for addressing said age buffer means each time said buffer memory is addressed to read from said age buffer means the set of age bits corresponding to the set addressed in said buffer memory; and, selector means responsive to said age buffer means, said first signal, and said signals indicating in which block the addressed word is resident, for modifying a set of age bits read from said age buffer means and returning said modified set of age bits to said age buffer means, said modified set of age bits designating the least recently used block in the set of blocks corresponding to the set of modified age bits.
Claim 8
Dependent Claim 315 words
In a set associative memory system having a main memory, a buffer memory, and means for applying a main memory address to the buffer memory, said buffer memory having first means for storing blocks of data words associatively arranged in sets and second means for storing tags representing portions of the main memory addresses for words currently stored in said buffer memory, a third means for producing a first signal if a word specified by a main memory address applied to said buffer memory is resident therein and, if so, producing signals indicating in which block it is resident, and replacement control means for replacing a block of data words in said buffer memory with a block of data words from said main when said determining means determines that a word specified by a main memory address is not resident in said buffer memory, the improvement wherein said replacement means comprises: age buffer means for storing sets of age bits, there being one set of age bits corresponding to each set of blocks of data words in said buffer memory, and 2n-1 bits in each set of age bits where 2 n is the number of blocks in each set of blocks of data words; means for addressing said age buffer means each time said buffer memory is addressed to read from said age buffer means the set of age bits corresponding to the set addressed in said buffer memory; and, selector means responsive to said age buffer means, said first signal, and said signals indicating in which block the addressed word is resident, for modifying a set of age bits read from said age buffer means and returning said modified set of age bits to said age buffer means, said modified set of age bits designating the least recently used block in the set of blocks corresponding to the set of modified age bits.
Claim 9
Dependent Claim 81 words
The improvement as claimed in claim 6 wherein there are first and second pairs of blocks per associative set and three age bits in each set of age bits, one of said age bits indicating the pair of blocks containing the least recently addressed block of the set, a second of said age bits indicating the least recently used block of said second pair and a third of said age bits indicating the least recently used block of said first pair.
Claim 10
Dependent Claim 53 words
The improvement as claimed in claim 7 and further comprising a selector responsive to age bits, read from said age buffer means, for issuing a signal indicating that one of the two least recently used blocks is the one to be replaced if an addressed word is not resident in said buffer memory.
Claim 11
Dependent Claim 117 words
The improvement as claimed in claim 8 and further comprising: a degrade buffer for storing sets of degrade bits indicating invalid blocks, there being a degrade bit for each block in a set; a first register connected to receive degrade bits from said degrade buffer; a second register connected to the output of said first register and the input of said degrade buffer; and means for applying output signals from said first and second registers to said selector means to modify the operation thereof whereby age bits applied to said age buffer from said selector means always indicate that a block is the most recently used block of its pair if its associated degrade bit is set.
Claim 12
Dependent Claim 35 words
The improvement as claimed in claim 9 and including means for modifying a set of degrade bits in said second register; and means for writing said modified set of degrade bits into said degrade buffer.

References Cited (Backward Citations)

US3967247A Cited
US4045779A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1982-09-17 1983-03-19 1983-09-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1986-09-17 1987-03-19 1987-09-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1990-09-17 1991-03-19 1991-09-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag