US5956752A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for accessing a cache using index prediction
Assignee: Intel Corp
•
Filing: 1996-12-16
•
Granted: 1999-09-21
•
Expires: 2016-12-16
Abstract
Abstract Index prediction is used to access data in a memory array. A virtual address is received at an input. The virtual address is translated to a physical address. The memory array is accessed at a predicted address. A portion of the predicted address is compared to a portion of the physical address. If the portion of the predicted address is different from the portion of the physical address, then the predicted address was an incorrect prediction. The memory array is accessed at the physical address.
Inventors
- 👤 Gregory S. Mathews
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-29 15:27
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0862
Claims Analysis
Total Claims: 14
Claim 1
Independent Claim
134 words
A method of accessing data in a memory array, the method comprising the steps of: (a) receiving a virtual address at an input; (b) translating the virtual address to a physical address; (c) accessing the memory array at a predicted address; (d) using a first comparator to compare a portion of the predicted address to a portion of the physical address; (e) accessing the memory array at the physical address if the portion of the predicted address is different from the portion of the physical address; (f) using a second comparator to compare a portion of the virtual address to the portion of the physical address, and (g) storing the portion of the physical address in a buffer if the portion of the virtual address is different from the portion of the physical address.
Claim 2
Independent Claim
134 words
A method of accessing data in a memory array, the method comprising the steps of: (a) receiving a virtual address at an input; (b) translating the virtual address to a physical address; (c) accessing the memory array at a predicted address; (d) using a first comparator to compare a portion of the predicted address to a portion of the physical address; (e) accessing the memory array at the physical address if the portion of the predicted address is different from the portion of the physical address; (f) using a second comparator to compare a portion of the virtual address to the portion of the physical address, and (g) storing the portion of the physical address in a buffer if the portion of the virtual address is different from the portion of the physical address.
Claim 3
Dependent Claim
63 words
The method of claim 1 further comprising the step of: (h) using prediction for a subsequent access if the portion of the predicted address matches the portion of the physical address in the step (d), and not using prediction on a subsequent access if the portion of the predicted address does not match the portion of the physical address in the step (d).
Claim 4
Dependent Claim
42 words
The method of claim 1 wherein, in a first mode, the virtual address is provided as the predicted address in the step (c), and in a second mode, the buffer of the step (g) provides the predicted address in the step (c).
Claim 5
Dependent Claim
30 words
The method of claim 3 further comprising the step of: (h) using the portion of the physical address stored in the buffer for a subsequent access to the memory array.
Claim 6
Dependent Claim
172 words
A cache memory comprising: an address translator having an input to receive virtual address bits of a current operation, the address translator providing physical address bits at an output; first comparator circuitry having an input from both the physical address bits and the virtual address bits, the first comparator circuitry providing a prediction output indicating whether the physical address bits match the virtual address bits; a first latch coupled to receive the physical address bits from the address translator, the first latch coupled to latch the physical address bits responsive to a predetermined state of the prediction output of the first comparator circuitry, the first latch providing a first latch output; a multiplexer coupled to receive the virtual address bits and the physical address bits, the multiplexer providing cache address bits at a multiplexer output; and second comparator circuitry having an input from both the physical address bits and the cache address bits, the second comparator circuitry providing a verification output indicating whether the physical address bits match the cache address bits.
Claim 7
Dependent Claim
172 words
A cache memory comprising: an address translator having an input to receive virtual address bits of a current operation, the address translator providing physical address bits at an output; first comparator circuitry having an input from both the physical address bits and the virtual address bits, the first comparator circuitry providing a prediction output indicating whether the physical address bits match the virtual address bits; a first latch coupled to receive the physical address bits from the address translator, the first latch coupled to latch the physical address bits responsive to a predetermined state of the prediction output of the first comparator circuitry, the first latch providing a first latch output; a multiplexer coupled to receive the virtual address bits and the physical address bits, the multiplexer providing cache address bits at a multiplexer output; and second comparator circuitry having an input from both the physical address bits and the cache address bits, the second comparator circuitry providing a verification output indicating whether the physical address bits match the cache address bits.
Claim 8
Dependent Claim
88 words
The cache memory of claim 5 further comprising: a second latch coupled to receive the physical address bits from the address translator, the second latch coupled to latch the physical address bits responsive to the predetermined state of the prediction output of the first comparator circuitry, the second latch providing a second latch output, wherein the first latch latches the physical address bits if the current operation is a load operation, and the second latch latches the physical address bits if the current operation is a store operation.
Claim 9
Dependent Claim
22 words
The cache memory of claim 5 wherein the first latch output is coupled to provide an address input to a memory array.
Claim 10
Dependent Claim
92 words
A circuit comprising: a memory array; comparator means, the comparator means having an input from a virtual address, a physical address, and a predicted address, the comparator means providing a first comparator signal indicating whether prediction is to be used on a subsequent data access, and the comparator means providing a second comparator signal indicating whether a current data access is correctly predicted; control logic receiving the first and second comparator signals, the control logic for providing an access address to the memory array responsive to the first and second comparator signals.
Claim 11
Dependent Claim
92 words
A circuit comprising: a memory array; comparator means, the comparator means having an input from a virtual address, a physical address, and a predicted address, the comparator means providing a first comparator signal indicating whether prediction is to be used on a subsequent data access, and the comparator means providing a second comparator signal indicating whether a current data access is correctly predicted; control logic receiving the first and second comparator signals, the control logic for providing an access address to the memory array responsive to the first and second comparator signals.
Claim 12
Dependent Claim
48 words
The circuit of claim 8 wherein the address storage means comprises: a first latch means that latches the predicted cache address when the subsequent access is a load access; and a second latch means that latches the predicted cache address when the subsequent access is a store access.
Claim 13
Dependent Claim
46 words
The circuit of claim 8 wherein the address storage means comprises: a first latch that latches the predicted cache address when the subsequent access is a load access; and a second latch that latches the predicted cache address when the subsequent access is a store access.
Claim 14
Dependent Claim
24 words
The circuit of claim 10 further comprising an instruction decoder, the instruction decoder providing an indication whether the subsequent access is a load access.
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-09-20 | 2003-03-22 | 2003-09-21 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-09-20 | 2007-03-22 | 2007-09-21 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-09-20 | 2011-03-22 | 2011-09-21 | $7700.00 | Window Closed / Lapsed |