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

Four-way associative cache with dlat and separately addressable arrays used for updating certain bits without reading them out first

Assignee: International Business Machines Corp
•
Filing: 1989-01-06
•
Granted: 1991-10-22
•
Expires: 2009-01-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A cache storage system is disclosed which has a high speed buffer (cache), a directory-look-aside-table, and apparatus for maintaining binary coded information signifying the order of use of various sections of the cache. A separately addressable and controllable storage array is provided for each bit position of the binary code so that updating of a code is accomplished by selectively writing certain but not all of the bits in the arrays storing said bits to be updated. This avoids the need to read all bits from an array, change the appropriate bits, then write all bits back into the array. Bits signifying the changed or unchanged state of data in said various sections of the cache are also stored in separately addressable arrays to permit updating of their value merely by selectively writing to the appropriate array.

Inventors

  • 👤 Richard W. Furney
  • 👤 Gordon C. Hurlbut
  • 👤 Michael P. Vachon

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-26 14:07
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/12; G06F12/121; G06F12/123

Claims Analysis

Total Claims: 5
Claim 1
Independent Claim 292 words
A computer system comprising: a four-way associative cache having groups of memory locations, each of said groups comprising four associative classes, said cache including means for coupling to a CPU and permitting said CPU to individually access each of said associative classes; means for determining which associative class is currently being accessed by said CPU; a storage array for storing indications of relative order of access by said CPU to the associative classes within each group, said array including a separately addressable entry for each group, said storage array also storing parity bits for each of said entries; and storage array control means, coupled to said storage array and the determining means, for directly updating, without first reading, the entry in said storage array corresponding to the group containing the associative class that is currently being accessed by said CPU with an indication of relatively recent access to said associative class compared to other associative classes within said group, and writing the respective parity bits for the entry; and wherein there are exactly four associative classes within each group, each of said entries of said storage array utilizes exactly three bits to indicate said relative order of access, and there is a one-to-one correspondence between each of said parity bits and each bit of the corresponding entry in said storage array; and said storage array control means sets one of the three bits of the entry corresponding to the currently accessed group to indicate that two of the associative classes within the group have not been accessed by the current access, and sets another one of the three bits to indicate that one of the other two of the associative classes within the gorup has not been accessed by the current access.
Claim 2
Dependent Claim 292 words
A computer system comprising: a four-way associative cache having groups of memory locations, each of said groups comprising four associative classes, said cache including means for coupling to a CPU and permitting said CPU to individually access each of said associative classes; means for determining which associative class is currently being accessed by said CPU; a storage array for storing indications of relative order of access by said CPU to the associative classes within each group, said array including a separately addressable entry for each group, said storage array also storing parity bits for each of said entries; and storage array control means, coupled to said storage array and the determining means, for directly updating, without first reading, the entry in said storage array corresponding to the group containing the associative class that is currently being accessed by said CPU with an indication of relatively recent access to said associative class compared to other associative classes within said group, and writing the respective parity bits for the entry; and wherein there are exactly four associative classes within each group, each of said entries of said storage array utilizes exactly three bits to indicate said relative order of access, and there is a one-to-one correspondence between each of said parity bits and each bit of the corresponding entry in said storage array; and said storage array control means sets one of the three bits of the entry corresponding to the currently accessed group to indicate that two of the associative classes within the group have not been accessed by the current access, and sets another one of the three bits to indicate that one of the other two of the associative classes within the gorup has not been accessed by the current access.
Claim 3
Dependent Claim 157 words
A computer system as set forth in claim 1 further comprising means for determining if the associative class that is currently accessed by said CPU is being updated during said access; and wherein said storage array also stores indications of which of said associative classes has been updated during access by said CPU, said storage array including a separately addressable entry for each of said associative classes to indicate update of said associative class; said storage array control means directly updates, without first reading, the entry in said storage array corresponding to an associative class that is currently being updated with an indication that said associative class has been updated at least once since said associative class was read from a main memory; and said storage array control means simultaneously makes the update to the entry indicating relatively recent access to the associative class and the update indicating that the currently accessed associative class has been updated.
Claim 4
Dependent Claim 63 words
A computer system as set forth in claim 1 wherein the associative classes within each group are divided into two sets of two associative classes each, and said one bit indicates relative order of access as between the two sets, and said other bit indicates relative order of access between the tow associative classes in the set containing the currently accessed associative class.
Claim 5
Dependent Claim 27 words
A computer system as set forth in claim 3 wherein the remaining bit indicates relative order of access between the two associative classes in the other set.

References Cited (Backward Citations)

US3588829A Cited
US3840863A Cited
US3958228A Cited
US4008460A Cited
US4168541A Cited
US4322795A Cited
US4464712A Cited
US4807110A Cited
US4695950A Cited
US4835686A Cited
US4833601A Cited
US4843541A Cited
US4905141A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1994-10-21 1995-04-22 1995-10-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1998-10-21 1999-04-22 1999-10-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2002-10-21 2003-04-22 2003-10-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag