METHOD AND SYSTEM FOR MAXIMUM RESIDENCY REPLACEMENT OF CACHE MEMORY
First Claim
1. A method for replacing one of a plurality of set ways of a cache memory in the event of a cache tag miss, comprising the steps of:
- selecting a victim way as the cache way that is to be replaced according to the position of said cache way on a FIFO cache way listing of cache ways for use in the operation of a digital signal processor;
placing at the end of said FIFO cache way listing subsequent cache tag misses to said cache memory reusing a victim way on a next cache tag miss;
preventing reuse of a victim way until initial allocation of said victim way completes avoiding incoherency between the cache tag and said cache memory;
preventing reuse of a victim way until initial allocation of said victim way completes by stalling response to a reuse request until such initial allocation of said victim way completes;
preventing reuse of a victim way until initial allocation of said victim way completes by replaying a reuse request until such initial allocation of said victim way completes.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques for use in CDMA-based products and services, including replacing cache memory allocation so as to maximize residency of a plurality of set ways following a tag miss allocation. Herein, steps and instructions provide for forming a first-in, first-out (FIFO) cache way listing of victim ways for the cache memory, wherein the depth of the FIFO cache way listing approximately equals the number of ways in the cache memory. The method and system place a victim way on the FIFO cache way listing only in the event that a tag miss results in a tag miss allocation, the victim way is placed at the tail of the FIFO cache way listing after any previously selected victim way. Use of a victim way on the FIFO cache way listing is prevented in the event of an incomplete prior allocation of the victim way by, for example, stalling a reuse request until such initial allocation of the victim way completes or replaying a reuse request until such initial allocation of the victim way completes.
9 Citations
39 Claims
-
1. A method for replacing one of a plurality of set ways of a cache memory in the event of a cache tag miss, comprising the steps of:
-
selecting a victim way as the cache way that is to be replaced according to the position of said cache way on a FIFO cache way listing of cache ways for use in the operation of a digital signal processor; placing at the end of said FIFO cache way listing subsequent cache tag misses to said cache memory reusing a victim way on a next cache tag miss; preventing reuse of a victim way until initial allocation of said victim way completes avoiding incoherency between the cache tag and said cache memory; preventing reuse of a victim way until initial allocation of said victim way completes by stalling response to a reuse request until such initial allocation of said victim way completes; preventing reuse of a victim way until initial allocation of said victim way completes by replaying a reuse request until such initial allocation of said victim way completes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A cache way replacement circuit for operation in association with a digital signal processor, said cache way replacement circuit for replacing one of a plurality of set ways of a cache memory in the event of a cache tag miss and comprising:
-
victim way selection circuitry for selecting a victim way as the cache way that is to be replaced according to the position of said cache way on a FIFO cache way listing of cache ways for use in the operation of a digital signal processor; FIFO cache way listing populating circuitry for placing at the end of said FIFO cache way listing subsequent cache tag misses to said cache memory reusing a victim way on a next cache tag miss; cache way reuse hazard detection circuitry for preventing reuse of a victim way until initial allocation of said victim way completes avoiding incoherency between the cache tag and said cache memory, said cache way reuse hazard detection circuitry further for preventing reuse of a victim way until initial allocation of said victim way completes by stalling response to a reuse request until such initial allocation of said victim way completes and preventing reuse of a victim way until initial allocation of said victim way completes by replaying a reuse request until such initial allocation of said victim way completes. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
-
27. A digital signal processor including means for replacing one of a plurality of set ways of a cache memory in the event of a cache tag miss, the digital signal processor comprising:
-
means for selecting a victim way as the cache way that is to be replaced according to the position of said cache way on a FIFO cache way listing of cache ways for use in the operation of a digital signal processor; means for placing at the end of said FIFO cache way listing subsequent cache tag misses to said cache memory reusing a victim way on a next cache tag miss; means for preventing reuse of a victim way until initial allocation of said victim way completes avoiding incoherency between the cache tag and said cache memory; means for preventing reuse of a victim way until initial allocation of said victim way completes by stalling response to a reuse request until such initial allocation of said victim way completes; and means for preventing reuse of a victim way until initial allocation of said victim way completes by replaying a reuse request until such initial allocation of said victim way completes. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A computer usable medium having computer readable program code means embodied therein for processing instructions on the digital signal processor for replacing one of a plurality of set ways of a cache memory in the event of a cache tag miss, said computer readable medium comprising:
-
computer readable program code means for selecting a victim way as the cache way that is to be replaced according to the position of said cache way on a FIFO cache way listing of cache ways for use in the operation of a digital signal processor; computer readable program code means for placing at the end of said FIFO cache way listing subsequent cache tag misses to said cache memory reusing a victim way on a next cache tag miss; computer readable program code means for preventing reuse of a victim way until initial allocation of said victim way avoids incoherency between the cache tag and said cache memory; computer readable program code means for preventing reuse of a victim way until initial allocation of said victim way completes by stalling response to a reuse request until such initial allocation of said victim way completes; computer readable program code means for preventing reuse of a victim way until initial allocation of said victim way completes by replaying a reuse request until such initial allocation of said victim way completes. - View Dependent Claims (39)
-
Specification