Patent US4942520A successfully refreshed from Google Patents.
US4942520A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for indexing, accessing and updating a memory
Assignee: Intel Corp
•
Filing: 1987-07-31
•
Granted: 1990-07-17
•
Expires: 2007-07-31
Abstract
Abstract A method and apparatus for accessing a selected entry in a first memory by means of an index formed by combining an index and a stored backpointer of a second memory's entry corresponding to the selected entry in the first memory.
Inventors
- 👤 Brian K. Langendorf
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-28 22:43
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3836; G06F9/3842; G06F9/3844
Claims Analysis
Total Claims: 23
Claim 1
Independent Claim
212 words
A method of indexing and accessing a memory, comprising: storing a plurality of data entries in an instruction cache memory at a plurality of locations, each of said instruction cache data entries including a coupling bit field, storing a plurality of data entries in a plurality of branch cache memories, having a plurality of locations, each of said branch cache data entries having a corresponding instruction cache data entry, and including a backpointer field, indexing said instruction cache locations by means of a first index, indexing said branch cache locations by means of a second index, determining from the coupling bit field of a first instruction cache data entry, which one of said plurality of branch cache memories contains a corresponding branch cache data entry, accessing said corresponding branch cache data entry of said one branch cache memory whose second index comprises a portion of the first index of said first instruction cache data entry, combining the second index and backpointer field of the corresponding branch cache data entry thereby reconstructing the first index of said first instruction cache data entry, accessing said first instruction cache data entry with said reconstructed first index, and updating the coupling bit field of said first instruction cache data entry acccessed by said reconstructed first index.
Claim 2
Independent Claim
212 words
A method of indexing and accessing a memory, comprising: storing a plurality of data entries in an instruction cache memory at a plurality of locations, each of said instruction cache data entries including a coupling bit field, storing a plurality of data entries in a plurality of branch cache memories, having a plurality of locations, each of said branch cache data entries having a corresponding instruction cache data entry, and including a backpointer field, indexing said instruction cache locations by means of a first index, indexing said branch cache locations by means of a second index, determining from the coupling bit field of a first instruction cache data entry, which one of said plurality of branch cache memories contains a corresponding branch cache data entry, accessing said corresponding branch cache data entry of said one branch cache memory whose second index comprises a portion of the first index of said first instruction cache data entry, combining the second index and backpointer field of the corresponding branch cache data entry thereby reconstructing the first index of said first instruction cache data entry, accessing said first instruction cache data entry with said reconstructed first index, and updating the coupling bit field of said first instruction cache data entry acccessed by said reconstructed first index.
Claim 3
Dependent Claim
32 words
The method of claim 1 wherein each of said branch cache data entries contains a branch target address whose corresponding branch instruction is contained in one of said instruction cache data entries.
Claim 4
Dependent Claim
201 words
A cache memory system for a pipelined digital computer, comprising: instruction cache means having a plurality of instruction cache locations for storing a plurality of instruction cache data entries, each of said instruction cache data entries having an associated coupling bit field, each of said instruction cache locations accessible by a first index, branch cache set means having a plurality of branch cache locations for storing a plurality of branch cache data entries, a plurality of said branch cache data entries having a corresponding instruction cache data entry, each of said branch cache locations accessible by a second index comprising a portion of the first index of said corresponding instruction cache data entry, said branch cache data entries each including a back pointer field, means responsive to one of said first indexes for accessing one of said corresponding instruction cache data entries, means responsive to the second index and backpointer field of said at least one branch cache data entry for reconstructing the first index of said corresponding instruction cache data entry, and means responsive to said reconstructed first index for accessing the instruction cache location containing said corresponding instruction cache data entry and for initializing said associated coupling bit field,
Claim 5
Dependent Claim
201 words
A cache memory system for a pipelined digital computer, comprising: instruction cache means having a plurality of instruction cache locations for storing a plurality of instruction cache data entries, each of said instruction cache data entries having an associated coupling bit field, each of said instruction cache locations accessible by a first index, branch cache set means having a plurality of branch cache locations for storing a plurality of branch cache data entries, a plurality of said branch cache data entries having a corresponding instruction cache data entry, each of said branch cache locations accessible by a second index comprising a portion of the first index of said corresponding instruction cache data entry, said branch cache data entries each including a back pointer field, means responsive to one of said first indexes for accessing one of said corresponding instruction cache data entries, means responsive to the second index and backpointer field of said at least one branch cache data entry for reconstructing the first index of said corresponding instruction cache data entry, and means responsive to said reconstructed first index for accessing the instruction cache location containing said corresponding instruction cache data entry and for initializing said associated coupling bit field,
Claim 6
Dependent Claim
19 words
The cache memory system of claim 3 in which said corresponding instruction cache data entry comprises a branch instruction.
Claim 7
Dependent Claim
20 words
The cache memory system of claim 4 wherein said corresponding instruction cache data entry further comprises a coupling bit field.
Claim 8
Dependent Claim
35 words
The cache memory system of claim 5 wherein said at least one branch cache data entry further comprises a branch target address, whose corresponding branch instruction is contained in said corresponding instruction cache data entry.
Claim 9
Dependent Claim
42 words
The cache memory system of claim 5 wherein the coupling bit field of a said corresponding instruction cache data entry contains a binary expression indicating which of said plurality of branch cache means contains said at least one branch cache data entry.
Claim 10
Dependent Claim
36 words
The cache memory system of claim 3 wherein the first index of said corresponding instruction cache data entry comprises m instruction address bits of the instruction contained therein, where m is a position integer than one.
Claim 11
Dependent Claim
46 words
The cache memory system of claim 8 wherein the second index of said at least one branch cache data entry comprises n bits of the first index of said corresponding instruction cache entry, wherein n is a positive integer greater that zero but less than m.
Claim 12
Dependent Claim
46 words
The cache memory system of claim 9 wherein the backpointer field of said at least one branch cache data entry comprises the instruction address bits of said first index which are not present in the second index of said at least one branch cache data entry.
Claim 13
Dependent Claim
51 words
The cache memory system of claim 10 wherein said means for reconstructing said first index includes circuitry for combining the instruction address bits contained in the second index and backpointer field of said at least one branch cache data entry to generate the index of said corresponding instruction cache data entry.
Claim 14
Dependent Claim
42 words
The cache memory system of claim 11 wherein said means responsive to said reconstructed first index comprises circuitry for re-accessing said corresponding instruction cache data entry and circuitry for initializing the associated coupling bit field of said corresponding instruction cache data entry.
Claim 15
Dependent Claim
47 words
The cache memory system of claim 3 wherein said associated coupling bit fields are stored in a third memory means having a plurality of third locations, each of said third locations accessible by the first index of the instruction cache entry associated with said coupling bit field.
Claim 16
Dependent Claim
216 words
A cache memory system for a pipelined computer comprising: an instruction cache means having a plurality of indexed instruction cache locations, each containing at least an instruction and a coupling bit field, each instruction cache location having a first index comprising instruction address bits of the instruction contained therein; a branch cache set means having a plurality of indexed branch cache locations each containing at least a branch target address and a backpointer field, each branch cache location having a corresponding instruction cache location which contains a branch instruction, each branch cache location having a second index comprising a portion of the first index of its corresponding instruction cache location; and a first control circuit means, responsive to the first index and coupling bit field of one of said corresponding instruction cache locations for identifying at least one of said branch cache locations which contains a corresponding branch target address; a second control circuit means, responsive to the second index and backpointer field of said at least one branch cache location for reconstructing the first index of said corresponding instruction cache location in which a corresponding branch instruction is stored, and an update circuit means, responsive to said reconstructed first index for accessing said corresponding instruction cache location and modifying the coupling bit field contained therein.
Claim 17
Dependent Claim
216 words
A cache memory system for a pipelined computer comprising: an instruction cache means having a plurality of indexed instruction cache locations, each containing at least an instruction and a coupling bit field, each instruction cache location having a first index comprising instruction address bits of the instruction contained therein; a branch cache set means having a plurality of indexed branch cache locations each containing at least a branch target address and a backpointer field, each branch cache location having a corresponding instruction cache location which contains a branch instruction, each branch cache location having a second index comprising a portion of the first index of its corresponding instruction cache location; and a first control circuit means, responsive to the first index and coupling bit field of one of said corresponding instruction cache locations for identifying at least one of said branch cache locations which contains a corresponding branch target address; a second control circuit means, responsive to the second index and backpointer field of said at least one branch cache location for reconstructing the first index of said corresponding instruction cache location in which a corresponding branch instruction is stored, and an update circuit means, responsive to said reconstructed first index for accessing said corresponding instruction cache location and modifying the coupling bit field contained therein.
Claim 18
Dependent Claim
44 words
The cache memory system of claim 14 wherein the first index of said corresponding instruction cache location comprises the m least significant instruction address bit of the instruction contained in said corresponding instruction cache location, where m is a positive integer greater than one.
Claim 19
Dependent Claim
45 words
The cache memory system of claim 15 wherein the second index of said at least one branch cache location comprises the n least significant instruction address bits of the corresponding first index, where n is a positive integer greater than zero but less than m.
Claim 20
Dependent Claim
48 words
The cache memory system of claim 16 wherein the backpointer field of said at least one branch cache location comprises the q most significant instruction address bits of the corresponding first index, where q is a positive integer greater than one and is equal to m minus n.
Claim 21
Dependent Claim
50 words
The cache memory system of claim 17 wherein said second control circuit means combines the m address bits of said second index wit the q address bits of said backpointer field of said at least one branch cache location to form the first index of said corresponding instruction cache location.
Claim 22
Dependent Claim
53 words
The cache memory system of claim 14 wherein said coupling bit field of an instruction cache location comprises a digital expression indicating which of said branch cache set means includes said at least one branch cache location containing a branch target address for the branch instruction stored in said corresponding instruction cache location.
Claim 23
Dependent Claim
59 words
The cache memory system of claim 19 wherein said coupling bit field comprises a plurality of bits, each of said bits representing a branch cache means, the binary value of each of said bits indicating whether the represented branch cache means contains a branch cache location corresponding to the instruction cache location in which the coupling bit field resides.
References Cited (Backward Citations)
US2987704A
Cited
US3559183A
Cited
US3585605A
Cited
US3940741A
Cited
US4109310A
Cited
US3936182A
Cited
US4058850A
Cited
US4173783A
Cited
US4077059A
Cited
US4148098A
Cited
US4115853A
Cited
US4181934A
Cited
US4200927A
Cited
US4370711A
Cited
US4594653A
Cited
US4435756A
Cited
US4477872A
Cited
US4750112A
Cited
US4764861A
Cited
US4775927A
Cited
US4679141A
Cited
US4794521A
Cited
US4777587A
Cited
US4763245A
Cited
US4797814A
Cited
US4825412A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1993-07-16 | 1994-01-15 | 1994-07-17 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 1997-07-16 | 1998-01-15 | 1998-07-17 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2001-07-16 | 2002-01-15 | 2002-07-17 | $7700.00 | Window Closed / Lapsed |