Patent US5715427A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5715427A Expired / Lapsed US ⏱️ 0.0 years remaining

Semi-associative cache with MRU/LRU replacement

Assignee: International Business Machines Corp
•
Filing: 1996-01-26
•
Granted: 1998-02-03
•
Expires: 2016-01-26
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A cache memory uses content-addressable tag-compare arrays (CAM) to determine if a match occurs. In a semi-associative instruction cache, with the CAM and eight cache lines grouped together to form camlets, a binary index is used to address one camlet in the cache array, and the effective address tag match is used to select a potential line within the camlet in accessing data stored in the cache array. Since an E-tag match causes that cache line's wordline to activate, proper cache operation requires that no two (or more) E-tags within a camlet have the same match criteria (ECAM entry); the invalidation of entries is done to prevent this from happening. Due to the mapping of the effective address into the E-tag CAM and the camlet binary index, addresses that are 1-Meg apart point to the same camlet and have the same ECAM tag. The method thus employs a semi-associative cache having cache lines configured in camlets of, for example, eight lines per camlet. An LRU indication is stored in each camlet showing which line was least-recently-used. Upon occurrence of a cache replacement operation, it is determined whether or not a replacement line has a tag matching a line that is already in the camlet, and, if so, this line is invalidated and it is indicated to be the least-recently-used line. The next replacement goes to this line, whereas otherwise it would have appeared to be the most-recently-used since its wordline went high for the invalidate operation.

Inventors

  • 👤 David Daniel Barrera
  • 👤 Bahador Rastegar, deceased
  • 👤 Paul Charles Rossbach

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 18:31
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/12; G06F12/121; G06F12/126; G06F12/127; G06F12/0802; G06F12/0864; G06F12/123

Claims Analysis

Total Claims: 12
Claim 1
Independent Claim 116 words
A method of operating a cache memory comprising the steps of: storing data in a plurality of lines in said cache memory, the plurality of lines being configured in groups of a selected number of lines, storing an indication for each said group of which one of said selected number is least-recently-used, in an operation of writing to said cache memory, detecting whether or not a line to be written has a tag matching a line that is already in a group, and if so, invalidating said line already in said group, and indicating said line already in said group as least-recently-used, and if not, replacing a line in the group indicated by said least-recently-used indication.
Claim 2
Independent Claim 116 words
A method of operating a cache memory comprising the steps of: storing data in a plurality of lines in said cache memory, the plurality of lines being configured in groups of a selected number of lines, storing an indication for each said group of which one of said selected number is least-recently-used, in an operation of writing to said cache memory, detecting whether or not a line to be written has a tag matching a line that is already in a group, and if so, invalidating said line already in said group, and indicating said line already in said group as least-recently-used, and if not, replacing a line in the group indicated by said least-recently-used indication.
Claim 3
Dependent Claim 23 words
A method according to claim 1 wherein said cache is a semi-associative cache, and said tag is stored in a content-addressable memory (CAM).
Claim 4
Dependent Claim 28 words
A method according to claim 2 wherein said operation of writing includes selecting a line in said group based on an address for said line to be written.
Claim 5
Dependent Claim 19 words
A method according to claim 3 wherein said step of invalidating includes activating said line already in said group.
Claim 6
Dependent Claim 25 words
A method according to claim 4 wherein said step of indicating said least-recently-used line is done in response to activation of lines of said group.
Claim 7
Dependent Claim 107 words
A cache memory system, comprising: a cache memory array storing data in a plurality of lines, the of plurality of lines being configured in groups of a selected number of lines, an indicator stored for each group of which one of said selected number was least-recently-used, writing circuitry for said cache lines detecting whether or not a line to be written has a tag matching a line that is already in a group, and if so, invalidating said line already in said group, and indicating said line already in said group as least-recently-used, and if not, replacing a line in the group indicated by said least-recently-used indication.
Claim 8
Dependent Claim 107 words
A cache memory system, comprising: a cache memory array storing data in a plurality of lines, the of plurality of lines being configured in groups of a selected number of lines, an indicator stored for each group of which one of said selected number was least-recently-used, writing circuitry for said cache lines detecting whether or not a line to be written has a tag matching a line that is already in a group, and if so, invalidating said line already in said group, and indicating said line already in said group as least-recently-used, and if not, replacing a line in the group indicated by said least-recently-used indication.
Claim 9
Dependent Claim 23 words
A system according to claim 6 wherein said cache is a semi-associative cache, and said tag is stored in a content-addressable memory (CAM).
Claim 10
Dependent Claim 26 words
A system according to claim 7 wherein said writing circuitry selects a line in said group based on an address for said line to be written.
Claim 11
Dependent Claim 17 words
A system according to claim 8 wherein said invalidating includes activating said line already in said group.
Claim 12
Dependent Claim 24 words
A system according to claim 9 wherein said indication of said least-recently-used line is done in response to activation of lines of said group.

References Cited (Backward Citations)

EP0432524A2 Cited
US5073891A Cited
US5467460A Cited
US5325511A Cited
US5584013A Cited
US5638531A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-02-02 2001-08-04 2002-02-03 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-02-02 2005-08-04 2006-02-03 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-02-02 2009-08-04 2010-02-03 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag