
3.4 Memory System Mechanisms 119
The CPU knows when it is fetching an instruction (the PC is used to calculate
the address, either directly or indirectly) or data. We can therefore choose whether
to cache instructions, data, or both. If cache space is limited, instructions are the
highest priority for caching because they will usually provide the highest hit rates.
A cache that holds both instructions and data is called a unified cache.
Various ARM implementations use different cache sizes and organizations
[Fur96]. The ARM600 includes a 4-KB, 64-way (wow!) unified instruction/data
cache.The StrongARM uses a 16-KB, 32-way instruction cache with a 32-byte ...