In current processors, the cache controller, which contains the cache directory and other logic such as tag comparators, is active for each instruction fetch and is responsible for 20-25% of the power consumed in the Icache. Reducing the power consumed by the cache controller is important for low power I-cache design. We present three architectural modications, which in concert, allow us to reduce the cache controller activity to less than 2% for most applications. The rst modication involves comparing cache tags for only those instructions that result in fetches from a new cache block. The second modication involves the tagging of those branches that cause instructions to be fetched from a new cache block. The third modication involves augmenting the I-cache with a small on-chip memory called the S-cache. The most frequently executed basic blocks of code are statically allocated to the S-cache before program execution. We present empirical data to show the eect that these modi...
Ramesh Panwar, David A. Rennels