US5285527A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Predictive historical cache memory
Assignee: Benhov GmbH LLC
•
Filing: 1990-11-29
•
Granted: 1994-02-08
•
Expires: 2010-11-29
Abstract
Abstract A cache memory functioning as a circular buffer for use as a part historical, part predictive cache memory is provided. A first register contains data having a value corresponding to a cache memory location of a last instruction executed by a processor and a second register contains data having a value corresponding to a memory location in the cache memory of a last prefetched instruction. Prefetching of instructions from a main memory to the cache memory is disabled if the difference between the values in the first and second pointer registers exceeds a predetermined amount.
Inventors
- 👤 William R. Crick
- 👤 Walter J. Jager
- 👤 Michael L. Takefman
- 👤 Randal K. Mullin
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-29 11:44
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0862
Claims Analysis
Total Claims: 4
Claim 1
Independent Claim
266 words
In a system having a processor and a memory system which includes a part predictive part historical cache memory, a method of halting the prefetching of instructions to the cache memory when the ratio of the predictive part to the historical part of the cache memory becomes greater than a predetermined ratio, the method comprising the steps of: maintaining a first register which contains a word having a value which defines a first pointer to a location in the cache memory which held a last instruction provided to the processor from the cache memory; and maintaining a second register having a predetermined number of contiguous zero-bits and having a predetermined number of one-bits forming a word, a ratio of the number of zero-bits to the number of one-bits corresponding to a desired ratio of the historical to predictive parts of the cache memory, the bit position having a value of zero that is immediately to the left of and adjacent to the contiguous bits having a value of one, corresponding to a location in the cache memory incremented by one location from where a last prefetched instruction was stored in the cache memory; ANDing each bit of the first register with each respective bit of the second register to yield an ANDed word having a number of bits corresponding to the number of bit positions of the first and second registers; ORing each of the bits of the ANDed word to yield a single bit value corresponding to a prefetch control signal; and halting prefetching of instructions when the prefetch control signal has a zero value.
Claim 2
Dependent Claim
266 words
In a system having a processor and a memory system which includes a part predictive part historical cache memory, a method of halting the prefetching of instructions to the cache memory when the ratio of the predictive part to the historical part of the cache memory becomes greater than a predetermined ratio, the method comprising the steps of: maintaining a first register which contains a word having a value which defines a first pointer to a location in the cache memory which held a last instruction provided to the processor from the cache memory; and maintaining a second register having a predetermined number of contiguous zero-bits and having a predetermined number of one-bits forming a word, a ratio of the number of zero-bits to the number of one-bits corresponding to a desired ratio of the historical to predictive parts of the cache memory, the bit position having a value of zero that is immediately to the left of and adjacent to the contiguous bits having a value of one, corresponding to a location in the cache memory incremented by one location from where a last prefetched instruction was stored in the cache memory; ANDing each bit of the first register with each respective bit of the second register to yield an ANDed word having a number of bits corresponding to the number of bit positions of the first and second registers; ORing each of the bits of the ANDed word to yield a single bit value corresponding to a prefetch control signal; and halting prefetching of instructions when the prefetch control signal has a zero value.
Claim 3
Dependent Claim
288 words
In a switching system having a processor, a main memory, and a cache memory for temporarily storing instructions, a circuit for maintaining a cache memory as a part historical, part predictive circular buffer, the circuit comprising: a logic circuit including a plurality of pointer registers including a first pointer register for containing a word having a value which is expressed in a predetermined number of bits and defines a first pointer indicating a first location in the cache memory which held a last instruction provided to the processor from the cache memory, and a second pointer register for containing a word having a value which is expressed in a predetermined number of bits and defines a second pointer indicating a second location in the cache memory where a last prefetched instruction was stored, the logic circuit further monitoring if a positional difference between the first and second pointers exceeds a predetermined amount; and a prefetching circuit responsive to control signals from the processor and the logic circuit for fetching instructions upon requests from the processor and for prefetching instructions from the main memory to the cache memory upon requests from the logic circuit wherein the prefetching circuit is prevented from performing the prefetching by the logic circuit when the positional difference between the first and second pointers exceeds the predetermined amount; wherein the value of the word in the second pointer register is expressed in a preset number of binary bits which have a predetermined number of contiguous zero bits and a predetermined number of one-bits, the number of zero bit values to the number of one-bit values being adjustable and corresponding to a desired relationship between the historical part and the predictive part of the cache memory.
Claim 4
Dependent Claim
288 words
In a switching system having a processor, a main memory, and a cache memory for temporarily storing instructions, a circuit for maintaining a cache memory as a part historical, part predictive circular buffer, the circuit comprising: a logic circuit including a plurality of pointer registers including a first pointer register for containing a word having a value which is expressed in a predetermined number of bits and defines a first pointer indicating a first location in the cache memory which held a last instruction provided to the processor from the cache memory, and a second pointer register for containing a word having a value which is expressed in a predetermined number of bits and defines a second pointer indicating a second location in the cache memory where a last prefetched instruction was stored, the logic circuit further monitoring if a positional difference between the first and second pointers exceeds a predetermined amount; and a prefetching circuit responsive to control signals from the processor and the logic circuit for fetching instructions upon requests from the processor and for prefetching instructions from the main memory to the cache memory upon requests from the logic circuit wherein the prefetching circuit is prevented from performing the prefetching by the logic circuit when the positional difference between the first and second pointers exceeds the predetermined amount; wherein the value of the word in the second pointer register is expressed in a preset number of binary bits which have a predetermined number of contiguous zero bits and a predetermined number of one-bits, the number of zero bit values to the number of one-bit values being adjustable and corresponding to a desired relationship between the historical part and the predictive part of the cache memory.
References Cited (Backward Citations)
US4189768A
Cited
US5043870A
Cited
US4594659A
Cited
US4626988A
Cited
US4884197A
Cited
US4924376A
Cited
US4881170A
Cited
US4722050A
Cited
US4896264A
Cited
US4894772A
Cited
US4942520A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1997-02-07 | 1997-08-09 | 1998-02-08 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2001-02-07 | 2001-08-09 | 2002-02-08 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2005-02-07 | 2005-08-09 | 2006-02-08 | $7700.00 | Window Closed / Lapsed |