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

Method and system for bypassing a faulty line of data or its associated tag of a set associative cache memory

Assignee: STMicroelectronics lnc USA
•
Filing: 1996-09-25
•
Granted: 1997-09-09
•
Expires: 2016-09-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract According to the present invention, faulty lines of data of a set associative cache memory containing one or more faulty data bits which are not repairable through conventional repair means such as row/column redundancy, are not updated following a cache miss condition and thereby effectively bypassed. Replacement logic circuitry detects and controls the state of a replacement status bit associated with each line of data of the set associative cache memory to determine if the line of data in the cache should be updated or bypassed. Thus, when replacing a line of data, the replacement logic circuitry detects the address of a faulty line of data in a particular set and avoids updating that faulty line of data in favor of updating another line of data of another set. The replacement logic circuitry may be used with a variety of replacement algorithms including the least recently used (LRU) replacement algorithm, the first in first out (FIFO) replacement algorithm, the last in first out (LIFO) replacement algorithm, the random replacement algorithm, or the pseudo LRU replacement algorithm.

Inventors

  • 👤 David Charles McClure

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 00:46
CPC Classifications
G; G11; G11C; G11C29/00; G11C29/70; G11C29/88; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/12; G06F12/121; G06F12/126; G06F2212/00; G06F2212/10; G06F2212/1032

Claims Analysis

Total Claims: 33
Claim 1
Independent Claim 210 words
A method of bypassing a faulty line of data or its associated tag of a set associated cache memory, comprising the steps of: identifying an address of a faulty line of data associated with a first set of a set associative cache memory; generating a faulty line of data address signal corresponding to the address of the faulty line of data; performing logic on the faulty line of data address signal, an address hit/miss signal, and a status bit signal to produce a logic state of a replacement status bit of the faulty line of data that flags the address of the faulty line of data, wherein the address hit/miss signal indicates whether there is a cache hit or a cache miss condition for the first set associative cache memory; flagging the address of the faulty line of data using a replacement logic circuit so that when a replacement line of data having an address corresponding to the address of the faulty line of data, is to be written to the set associative cache memory, the replacement line of data is written to a second set of the set associative cache memory, as determined by the replacement logic circuit, effectively bypassing the faulty line of data of the first set.
Claim 2
Independent Claim 210 words
A method of bypassing a faulty line of data or its associated tag of a set associated cache memory, comprising the steps of: identifying an address of a faulty line of data associated with a first set of a set associative cache memory; generating a faulty line of data address signal corresponding to the address of the faulty line of data; performing logic on the faulty line of data address signal, an address hit/miss signal, and a status bit signal to produce a logic state of a replacement status bit of the faulty line of data that flags the address of the faulty line of data, wherein the address hit/miss signal indicates whether there is a cache hit or a cache miss condition for the first set associative cache memory; flagging the address of the faulty line of data using a replacement logic circuit so that when a replacement line of data having an address corresponding to the address of the faulty line of data, is to be written to the set associative cache memory, the replacement line of data is written to a second set of the set associative cache memory, as determined by the replacement logic circuit, effectively bypassing the faulty line of data of the first set.
Claim 3
Dependent Claim 65 words
The method of claim 1, wherein the set associative cache memory has a plurality of lines of data contained in a plurality of sets and each line of data has an address and at least one replacement status bit associated with it which indicates when each line of data was used relative to other lines of data of different sets corresponding to the same address.
Claim 4
Dependent Claim 34 words
The method of claim 2, wherein the replacement logic circuit uses a least recently used (LRU) replacement algorithm to update a least recently used (LRU) line of data with the replacement line of data.
Claim 5
Dependent Claim 91 words
The method of claim 3, wherein the replacement status bit of the faulty line of data is forced to a first logic level which denotes the faulty line of data as a more recently used line of data which is not updated by the replacement line of data; rather a line of data of the second set whose replacement status bit is equal to a second logic level which denotes the line of data as the least recently used (LRU) line of data is updated by the replacement line of data.
Claim 6
Dependent Claim 82 words
The method of claim 3, wherein when the replacement status bit of a line of data denotes the line of data as the least recently used (LRU) line of data, the line of data is updated with the replacement line of data; however, when the faulty line of data is the LRU line of data, the faulty line of data is bypassed and another line of data is updated with the replacement line of data as determined by the replacement logic circuit.
Claim 7
Dependent Claim 21 words
The method of claim 1, wherein a programming means is used to identify the address of the faulty line of data.
Claim 8
Dependent Claim 12 words
The method of claim 6, wherein the programming means uses fuse programming.
Claim 9
Dependent Claim 14 words
The method of claim 6, wherein the programming means uses a plurality of registers.
Claim 10
Dependent Claim 17 words
The method of claim 8, wherein the registers are loaded using a built-in self test (BIST) circuit.
Claim 11
Dependent Claim 12 words
The method of claim 6, wherein the programming means uses nonvolatile devices.
Claim 12
Dependent Claim 19 words
The method of claim 1, wherein the replacement logic circuit uses a first in first out (FIFO) replacement algorithm.
Claim 13
Dependent Claim 19 words
The method of claim 1, wherein the replacement logic circuit uses a last in first out (LIFO) replacement algorithm.
Claim 14
Dependent Claim 15 words
The method of claim 1, wherein the replacement logic circuit uses a random replacement algorithm.
Claim 15
Dependent Claim 19 words
The method of claim 1, wherein the replacement logic circuit uses a pseudo least recently used (LRU) replacement algorithm.
Claim 16
Dependent Claim 16 words
The method of claim 1, wherein the set associative cache memory is an embedded cache memory.
Claim 17
Dependent Claim 17 words
The method of claim 15, wherein the embedded cache memory is a primary cache of a microprocessor.
Claim 18
Dependent Claim 246 words
A structure for bypassing a faulty line of data or its associated tag of a set associative cache memory, comprising: a set associative cache memory having a plurality of lines of data contained in a plurality of sets with each line of data having at least one replacement status bit associated with it which indicates when each line of data was used relative to other lines of data of different sets corresponding to an address; a faulty address identification block which identifies an address of a faulty line of data of the plurality of lines of data of a set of the plurality of sets; a logic element having the address of the faulty line of data as an input signal which generates a faulty line of data address signal corresponding to the address of the faulty line of data; a replacement logic circuit which performs logic on the faulty line of data address signal, an address hit/miss signal, and a status bit signal to produce a logic state of a replacement status bit of the faulty line of data that flags the address of the faulty line of data such that when an address of a faulty line of data is detected during a replacement cycle following a cache miss condition the faulty line of data is bypassed, wherein the address hit/miss signal indicates whether there is a cache hit or a cache miss condition for the first set of the set associative cache memory.
Claim 19
Dependent Claim 246 words
A structure for bypassing a faulty line of data or its associated tag of a set associative cache memory, comprising: a set associative cache memory having a plurality of lines of data contained in a plurality of sets with each line of data having at least one replacement status bit associated with it which indicates when each line of data was used relative to other lines of data of different sets corresponding to an address; a faulty address identification block which identifies an address of a faulty line of data of the plurality of lines of data of a set of the plurality of sets; a logic element having the address of the faulty line of data as an input signal which generates a faulty line of data address signal corresponding to the address of the faulty line of data; a replacement logic circuit which performs logic on the faulty line of data address signal, an address hit/miss signal, and a status bit signal to produce a logic state of a replacement status bit of the faulty line of data that flags the address of the faulty line of data such that when an address of a faulty line of data is detected during a replacement cycle following a cache miss condition the faulty line of data is bypassed, wherein the address hit/miss signal indicates whether there is a cache hit or a cache miss condition for the first set of the set associative cache memory.
Claim 20
Dependent Claim 34 words
The structure of claim 17, wherein the replacement logic circuit uses a least recently used (LRU) replacement algorithm to update a least recently used (LRU) line of data with a replacement line of data.
Claim 21
Dependent Claim 87 words
The structure of claim 18, wherein the replacement status bit of the faulty line of data is forced to a first logic level which denotes the faulty line of data as a more recently used line of data which is not updated by the replacement line of data; rather a line of data whose replacement status bit is equal to a second logic level which denotes the line of data as the least recently used (LRU) line of data is updated by the replacement line of data.
Claim 22
Dependent Claim 82 words
The structure of claim 18, wherein when the replacement status bit of a line of data denotes the line of data as the least recently used (LRU) line of data, the line of data is updated with the replacement line of data; however, when the faulty line of data is the LRU line of data, the faulty line of data is bypassed and another line of data is updated with the replacement line of data as determined by the replacement logic circuit.
Claim 23
Dependent Claim 21 words
The structure of claim 17, wherein a programming means is used to identify the address of the faulty line of data.
Claim 24
Dependent Claim 12 words
The structure of claim 21, wherein the programming means uses fuse programming.
Claim 25
Dependent Claim 14 words
The structure of claim 21, wherein the programming means uses a plurality of registers.
Claim 26
Dependent Claim 17 words
The structure of claim 23, wherein the registers are loaded using a built-in self test (BIST) circuit.
Claim 27
Dependent Claim 12 words
The structure of claim 21, wherein the programming means uses nonvolatile devices.
Claim 28
Dependent Claim 19 words
The structure of claim 17, wherein the replacement logic circuit uses a first in first out (FIFO) replacement algorithm.
Claim 29
Dependent Claim 19 words
The structure of claim 17, wherein the replacement logic circuit uses a last in first out (LIFO) replacement algorithm.
Claim 30
Dependent Claim 15 words
The structure of claim 17, wherein the replacement logic circuit uses a random replacement algorithm.
Claim 31
Dependent Claim 19 words
The structure of claim 17, wherein the replacement logic circuit uses a pseudo least recently used (LRU) replacement algorithm.
Claim 32
Dependent Claim 16 words
The structure of claim 17, wherein the set associative cache memory is an embedded cache memory.
Claim 33
Dependent Claim 17 words
The structure of claim 30, wherein the embedded cache memory is a primary cache of a microprocessor.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-09-08 2001-03-10 2001-09-09 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-09-08 2005-03-10 2005-09-09 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-09-08 2009-03-10 2009-09-09 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag