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

Fast comparison method and apparatus for error corrected cache tags

Assignee: Hewlett Packard Development Co LP
•
Filing: 1994-09-23
•
Granted: 1996-04-16
•
Expires: 2014-09-23
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A fast cache hit detection method and apparatus. The present invention provides a method and apparatus for quickly determining whether there is a cache hit in cache memory systems utilizing error corrected tags. The hit detection process is split into two paths. The first path includes a circuit to check and correct a tag stored in the cache memory. The second path tests the validity of the tag stored in the cache memory by computing the appropriate ECC information using memory address information supplied by the computer CPU and comparing the tag and ECC stored in the cache memory to the CPU address and computed ECC. As the computed ECC is performed in parallel with the cache RAM access, this second path provides hit confirmation faster than the first path which must process the tag and ECC stored in the cache RAM through a ECC check and correction circuit. If a fast hit is confirmed, then the cache memory system can proceed to supply cache data to the CPU. If a fast hit is not confirmed, then the cache memory system waits for the first path to check and correct, if required, the tag stored in the cache and then test the corrected tag. As the cache tag typically does not need correction and most cache systems have a high hit rate, this invention dramatically increases the efficiency of the cache memory system.

Inventors

  • 👤 Ross V. La Fetra

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-10 02:20
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1008; G06F11/1064; G06F11/1044

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 192 words
A computer apparatus, having a cache memory system, comprising: a cache memory device having a first storage location and stored in the first storage location is a Cache-Tag, where the Cache-Tag includes address information, and also stored in the first storage location is a cache error correcting code (Cache-ECC) where the Cache-ECC is based on the Cache-Tag and the Cache-ECC is generated by a first ECC generator; a second ECC generator to derives which derives a CPU-ECC for a CPU-Tag where the CPU-Tag includes address information, and the second ECC generator operates such that the first and second ECC generators derive an identical ECC given an identical Tag input; a fast hit comparator which operates to compare the Cache-Tag stored in the first storage location and a particular CPU-Tag generated by a CPU, and the fast hit comparator operates to compare the Cache-ECC stored in the first storage location and a particular CPU-ECC generated by the second ECC generator in response to the particular CPU-Tag; and the fast hit comparator signals the cache memory system if both the Cache-Tag and the particular CPU-Tag match and the particular Cache-ECC and the CPU-ECC match.
Claim 2
Dependent Claim 192 words
A computer apparatus, having a cache memory system, comprising: a cache memory device having a first storage location and stored in the first storage location is a Cache-Tag, where the Cache-Tag includes address information, and also stored in the first storage location is a cache error correcting code (Cache-ECC) where the Cache-ECC is based on the Cache-Tag and the Cache-ECC is generated by a first ECC generator; a second ECC generator to derives which derives a CPU-ECC for a CPU-Tag where the CPU-Tag includes address information, and the second ECC generator operates such that the first and second ECC generators derive an identical ECC given an identical Tag input; a fast hit comparator which operates to compare the Cache-Tag stored in the first storage location and a particular CPU-Tag generated by a CPU, and the fast hit comparator operates to compare the Cache-ECC stored in the first storage location and a particular CPU-ECC generated by the second ECC generator in response to the particular CPU-Tag; and the fast hit comparator signals the cache memory system if both the Cache-Tag and the particular CPU-Tag match and the particular Cache-ECC and the CPU-ECC match.
Claim 3
Dependent Claim 60 words
An apparatus as in claim 1 wherein: the first storage location includes at least four fields where a first field contains the Cache-Tag, a second field contains the Cache-ECC, a third field contains information used by the computer apparatus to operate the cache memory system, and a fourth field contains error correcting information based, on information in the third field.
Claim 4
Dependent Claim 31 words
An apparatus as in claim 1 wherein: the second ECC generator generates an ECC in response to a CPU-Tag within the time required to read information from the cache memory device.
Claim 5
Dependent Claim 76 words
An apparatus as in claim 1 wherein: the cache memory device contains a plurality of storage locations and stored in the plurality of storage locations is a plurality of Cache-Tags Cache-ECCs; the CPU-Tag provides an index which selects a particular Cache-Tag and Cache-ECC stored in the cache memory device; and the selected Cache-Tag and Cache-ECC are compared by the fast hit comparator against the CPU-Tag and the CPU-ECC to determine whether a fast hit has occurred.
Claim 6
Dependent Claim 252 words
A computer apparatus, having a cache memory system, comprising: a cache memory device having a first storage location and stored in the first storage location is a Cache-Tag where the Cache-Tag includes address information, and also stored in the first storage location is a cache error correcting code (Cache-ECC) where the Cache-ECC is based on the Cache-Tag and the Cache-ECC is generated by a first ECC generator; a second ECC generator which operates to derive a CPU-ECC for a CPU-Tag where the CPU-Tag includes address information, and the second ECC generator operates such that the first and second ECC generators derive an identical ECC given an identical Tag input; a fast hit comparator which operates to compare the Cache-Tag stored in the first storage location and a particular CPU-Tag generated by a CPU, and the fast hit comparator compares the Cache-ECC stored in the first storage location and a particular CPU-ECC generated by the second ECC generator in response to the particular CPU-Tag and the fast hit comparator signals the cache memory system if both the Cache-Tag and the particular CPU-Tag match and the Cache-ECC and the particular CPU-ECC match; a Cache-Tag correction device which operates to receive the Cache-Tag and correct the Cache-Tag if the Cache-Tag is corrupted and output the corrected Cache-Tag to a true hit comparator; and the true hit comparator compares the corrected Cache-Tag to the particular CPU-Tag and signals the cache memory system that a cache hit has occured if the Cache-Tag and the particular CPU-Tag match.
Claim 7
Dependent Claim 252 words
A computer apparatus, having a cache memory system, comprising: a cache memory device having a first storage location and stored in the first storage location is a Cache-Tag where the Cache-Tag includes address information, and also stored in the first storage location is a cache error correcting code (Cache-ECC) where the Cache-ECC is based on the Cache-Tag and the Cache-ECC is generated by a first ECC generator; a second ECC generator which operates to derive a CPU-ECC for a CPU-Tag where the CPU-Tag includes address information, and the second ECC generator operates such that the first and second ECC generators derive an identical ECC given an identical Tag input; a fast hit comparator which operates to compare the Cache-Tag stored in the first storage location and a particular CPU-Tag generated by a CPU, and the fast hit comparator compares the Cache-ECC stored in the first storage location and a particular CPU-ECC generated by the second ECC generator in response to the particular CPU-Tag and the fast hit comparator signals the cache memory system if both the Cache-Tag and the particular CPU-Tag match and the Cache-ECC and the particular CPU-ECC match; a Cache-Tag correction device which operates to receive the Cache-Tag and correct the Cache-Tag if the Cache-Tag is corrupted and output the corrected Cache-Tag to a true hit comparator; and the true hit comparator compares the corrected Cache-Tag to the particular CPU-Tag and signals the cache memory system that a cache hit has occured if the Cache-Tag and the particular CPU-Tag match.
Claim 8
Dependent Claim 60 words
An apparatus as in claim 5 wherein: the first storage location includes at least four fields where a first field contains the Cache-Tag, a second field contains the Cache-ECC, a third field contains information used by the computer apparatus to operate the cache memory system, and a fourth field contains error correcting information based on information in the third field.
Claim 9
Dependent Claim 31 words
An apparatus as in claim 5 wherein: the second ECC generator generates an ECC in response to a CPU-Tag within the time required to read information from the cache memory device.
Claim 10
Dependent Claim 111 words
An apparatus as in claim 5 wherein: the cache memory device contains a plurality of storage locations and stored in the plurality of storage locations is a plurality of Cache-Tags and Cache-ECCs; the CPU-Tag provides an index which selects a particular Cache-Tag and Cache-ECC stored in the cache memory device; the selected Cache-Tag and Cache-ECC are compared by the fast hit comparator against the CPU-Tag and the CPU-ECC to determine whether a fast hit has occured; and the selected Cache-Tag is corrected, if required, by the Cache-Tag correction device and the corrected Cache-Tag is compared by the true hit compartor against the CPU-Tag to determine if a cache hit has occured.

References Cited (Backward Citations)

US4862462A Cited
US4995041A Cited
US5251310A Cited
US5287512A Cited
US5233616A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-04-16 1999-10-16 2000-04-16 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-04-16 2003-10-16 2004-04-16 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-04-16 2007-10-16 2008-04-16 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag