Patent ID: 7836259
Filing Date: 2010-11-16
Classification: G06F

Abstract:
1. A prefetch unit comprising: a stream storage including a plurality of locations configured to store a plurality of entries, wherein each entry includes a field corresponding to a respective range of prefetch addresses; and a prefetch control coupled to said stream storage and configured to prefetch an address in response to receiving a cache access request including an address that is within said respective range of prefetch addresses of any of said plurality of entries; wherein said respective range of prefetch addresses corresponds to a range of addresses prefetched during a last prefetch cycle; wherein each of said plurality of entries includes a next address indicative of a prefetch starting address of a next prefetch, a prefetch depth value indicative of a number of bytes to prefetch and a prefetch distance value indicative of a number of bytes ahead of a propagation region; wherein said prefetch control is further configured to dynamically increment said prefetch depth value dependent upon a confidence count which is indicative of an accuracy of preceding prefetches; and wherein said prefetch control is further configured to dynamically increment said prefetch distance value dependent upon whether an outstanding prefetch exists during a subsequent prefetch cycle.