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

Cache replacement mechanism

Assignee: Fujitsu Services Ltd
•
Filing: 1996-06-17
•
Granted: 1998-04-07
•
Expires: 2016-06-17
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An n-way set-associative cache (where n is an integer greater than 1), includes a replacement mechanism for selecting a cache line for replacement. Each cache line has an associated priority tag indicating a user-defined priority for that cache line The replacement mechanism comprises an apparatus for selecting a cache line with the lowest user-defined priority in a current set of cache lines, and apparatus (e.g. based on recency of usage) for choosing between cache lines of equal priority if there is more than one cache line with said lowest user-defined priority in the current set.

Inventors

  • 👤 Albert Stephen Hilditch

Bibliographic Details

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

Claims Analysis

Total Claims: 6
Claim 1
Independent Claim 237 words
An n-way set-associative cache (where n is an integer greater than 1), comprising: (a) a plurality n of cache RAMs, each of said cache RAMs containing a plurality of cache lines; (b) means for storing a plurality of priority tags, one for each of said cache lines, said priority tags defining respective individual user-defined priorities for each of said cache lines; (c) addressing means for addressing said cache RAMs in parallel to select a set of n cache lines, one line from each of the cache RAMs; (d) means for comparing the priority tags of said set of n cache lines with each other; (e) first selection means operative in the event that one of said set of n cache lines has a priority, as defined by its priority tag, that is lower than the priorities of all others of said set of n cache lines, as defined by their priority tags, for selecting said one of said set of n cache lines for replacement; and (f) second selection means operative in the event that at least two of said set of n cache lines have priorities, as defined by their priority tags, that are equal to each other but lower than the priorities of all others of said set of n cache lines, as defined by their priority tags, for selecting one of said at least two of said set of n cache lines for replacement.
Claim 2
Dependent Claim 237 words
An n-way set-associative cache (where n is an integer greater than 1), comprising: (a) a plurality n of cache RAMs, each of said cache RAMs containing a plurality of cache lines; (b) means for storing a plurality of priority tags, one for each of said cache lines, said priority tags defining respective individual user-defined priorities for each of said cache lines; (c) addressing means for addressing said cache RAMs in parallel to select a set of n cache lines, one line from each of the cache RAMs; (d) means for comparing the priority tags of said set of n cache lines with each other; (e) first selection means operative in the event that one of said set of n cache lines has a priority, as defined by its priority tag, that is lower than the priorities of all others of said set of n cache lines, as defined by their priority tags, for selecting said one of said set of n cache lines for replacement; and (f) second selection means operative in the event that at least two of said set of n cache lines have priorities, as defined by their priority tags, that are equal to each other but lower than the priorities of all others of said set of n cache lines, as defined by their priority tags, for selecting one of said at least two of said set of n cache lines for replacement.
Claim 3
Dependent Claim 33 words
An n-way set-associative cache according to claim 1 wherein said second selection means comprises means for selecting a least-recently used one of said at least two of said n cache lines for replacement.
Claim 4
Independent Claim 228 words
A method of operating an n-way set-associative cache (where n is an integer greater than 1), said cache comprising a plurality n of cache RAMs, each of said cache RAMs containing a plurality of cache lines, the method comprising: (a) storing a plurality of priority tags, one for each of said cache lines, said priority tags defining respective individual user-defined priorities for each of said cache lines; (b) addressing said cache RAMs in parallel to select a set of n cache lines, one line from each of the cache RAMs; (c) comparing the priority tags of said set of n cache lines with each other; (d) in the event that one of said set of n cache lines has a priority, as defined by its priority tag, that is lower than the priorities of all others of said set of n cache lines, as defined by their priority tags, selecting said one of said set of n cache lines for replacement; and (e) in the event that at least two of said set of n cache lines have priorities, as defined by their priority tags, that are equal to each other but lower than the priorities of all others of said set of n cache lines, as defined by their priority tags, selecting one of said at least two of said set of n cache lines for replacement.
Claim 5
Independent Claim 228 words
A method of operating an n-way set-associative cache (where n is an integer greater than 1), said cache comprising a plurality n of cache RAMs, each of said cache RAMs containing a plurality of cache lines, the method comprising: (a) storing a plurality of priority tags, one for each of said cache lines, said priority tags defining respective individual user-defined priorities for each of said cache lines; (b) addressing said cache RAMs in parallel to select a set of n cache lines, one line from each of the cache RAMs; (c) comparing the priority tags of said set of n cache lines with each other; (d) in the event that one of said set of n cache lines has a priority, as defined by its priority tag, that is lower than the priorities of all others of said set of n cache lines, as defined by their priority tags, selecting said one of said set of n cache lines for replacement; and (e) in the event that at least two of said set of n cache lines have priorities, as defined by their priority tags, that are equal to each other but lower than the priorities of all others of said set of n cache lines, as defined by their priority tags, selecting one of said at least two of said set of n cache lines for replacement.
Claim 6
Dependent Claim 41 words
A method according to claim 3 wherein said step of selecting one of said at least two of said n cache lines for replacement comprises selecting a least-recently-used one of said at least two of said n cache lines for replacement.

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag