Prefetching hints
First Claim
Patent Images
1. In a processor with an n-way, set associative cache, a method comprising:
- addressing the cache using address information contained in an instruction, said instruction including a hint field;
indicating a cache miss for desired data that is addressed by said instruction;
specifying a refill destination for said desired data with a first portion of said hint field, wherein said destination is a first way in said cache when said desired data is a first type of data and a second way in said cache when said desired data is a second type of data, said first portion being operable in subsequent instructions to consistently specify such way destinations for subsequent first and second types of data; and
refilling said cache with said desired data.
5 Assignments
0 Petitions
Accused Products
Abstract
A processor capable of executing prefetching instructions containing hint fields is provided. The hint fields contain a first portion which enables the selection of a destination indicator for refill operations, and a second portion which identifies a destination.
63 Citations
24 Claims
-
1. In a processor with an n-way, set associative cache, a method comprising:
-
addressing the cache using address information contained in an instruction, said instruction including a hint field;
indicating a cache miss for desired data that is addressed by said instruction;
specifying a refill destination for said desired data with a first portion of said hint field, wherein said destination is a first way in said cache when said desired data is a first type of data and a second way in said cache when said desired data is a second type of data, said first portion being operable in subsequent instructions to consistently specify such way destinations for subsequent first and second types of data; and
refilling said cache with said desired data. - View Dependent Claims (2, 3, 4, 5, 14)
-
-
6. A processor comprising:
-
a first n-way, set associative cache containing a first-cache line that is addressed using address information contained in an instruction, said instruction also containing a hint field;
a first comparator, coupled to said first n-way cache, for indicating a first-cache miss when said first-cache line is addressed and does not contain desired data; and
a first multiplexer, coupled to said first n-way cache, for choosing a first destination indicator used to direct refilling of said first-cache line with said desired data, said first destination indicator being chosen from a first portion of said hint field and a first alternative indicator, said first portion specifying a first way for desired data identified as a first data type and a second way for desired data identified as a second data type, and said first alternative indicator specifying a destination way for desired data without regard to data type, said first portion being operable in subsequent refill operations to consistently specify first and second way destinations for subsequent first data type and second data type data, respectively. - View Dependent Claims (7, 8, 15, 16, 19, 20)
a second n-way cache, coupled to said first cache, containing a second cache line that is addressed using said address information;
a second comparator, coupled to said second cache, for indicating a second-cache miss when said second cache line is addressed; and
a second multiplexer, coupled to said second cache, for choosing a second destination indicator used to direct refilling of said second cache line with said desired data, said second destination indicator being chosen from said first portion of said hint field and a second alternative indicator, said first portion being operable to consistently specify said first way for desired data identified as first data type and said second way for desired data identified as second data type, and said second alternative indicator specifying a destination way for desired data without regard to data type.
-
-
15. The processor of claim 6 wherein said hint field includes a second portion which controls said first multiplexer.
-
16. The processor of claim 6 wherein said first data type and said second data type are streamed data and retained data, respectively.
-
19. The processor of claim 6 wherein said first alternative indicator is an LRU bit.
-
20. The processor of claim 6 wherein said first alternative indicator is a randomly generated bit.
-
9. A processor comprising:
-
a queue for holding an instruction, said instruction including a hint field and being used to refill desired data to a first n-way, set associative, cache; and
a first multiplexer, coupled to said queue, for choosing a first destination indicator used to direct refilling of said first cache with said desired data, said first destination indicator being chosen from a first portion of said hint field and an alternative indicator under control of a second portion of said hint field, said first portion specifying a first way for desired data identified as a first data type and a second way for desired data identified as a second data type, said first portion being operable in subsequent refill operations to consistently specify first and second way destinations for subsequent first data type and second data type data, respectively. - View Dependent Claims (10, 11, 12, 13, 17, 18)
a second multiplexer, coupled to said queue, for choosing a second destination indicator used to direct reading of said desired data from a second cache.
-
-
13. The processor of claim 9 wherein said alternative indicator is a randomly generated bit.
-
17. The processor of claim 9 wherein said first data type and said second data type are streamed data and retained data, respectively.
-
18. The processor of claim 9 wherein said alternative indicator is an LRU bit.
-
21. In a processor with an n-way, set associative, cache, a method comprising:
-
issuing an instruction, wherein said instruction includes a hint field; and
specifying a refill destination for desired data within the cache using said hint field, said destination being a first way in said cache when said desired data is a first type of data and a second way in said cache when said desired data is a second type of data, wherein subsequent hint fields in subsequent instructions are operable to consistently specify such way destinations for subsequent first and second types of data.
-
-
22. A processor comprising:
-
an n-way, set associative, cache containing a cache line that is addressed using address information contained in an instruction, said instruction also containing a hint field; and
a multiplexer, coupled to said n-way cache, for choosing a destination indicator that is used to direct refilling of said cache line with desired data, said destination indicator being chosen from information contained in said hint field and an alternative indicator, said information specifying a first way for desired data identified as a first data type and a second way for desired data identified as a second data type, and wherein subsequent hint fields disposed in subsequent instructions contain subsequent information that is operable to consistently specify first and second way destinations for subsequent first data type and second data type data, respectively, in subsequent refill operations. - View Dependent Claims (23)
-
-
24. A processor comprising:
-
a queue for holding an instruction, said instruction including a hint field; and
an n-way, set associative, cache coupled to said queue that is operable to receive desired data in accordance with said hint field, wherein said hint field specifies a first way for receiving desired data identified as a first data type and a second way for receiving desired data identified as a second data type, and subsequent instructions contain hint fields that are operable to consistently specify first and second way destinations for subsequent first data type and second data type data, respectively.
-
Specification