Datasheet

Chapter 4. Local Memory 4-11
Cache Operation
4.9 Cache Operation
Figure 4-5 shows the general ow of a caching operation using the 8-Kbyte data cache as
an example. The discussion in this chapter assumes a data cache. Instruction cache
operations are similar except that there is no support for writing to the cache; therefore such
notions of modied cache lines and write allocation do not apply.
Figure 4-5. Data Caching Operation
The following steps determine if a data cache line is allocated for a given address:
1. The cache set index, A[10:4], selects one cache set.
2. A[31:11] and the cache set index are used as a tag reference or are used to update
the cache line tag eld. Note that A[31:11] can specify 21 possible addresses that
can be mapped to one of the four ways.
3. The four tags from the selected cache set are compared with the tag reference. A
cache hit occurs if a tag matches the tag reference and the V bit is set, indicating that
the cache line contains valid data. If a cacheable write access hits in a valid cache
line, the write can occur to the cache line without having to load it from memory.
If the memory space is copyback, the updated cache line is marked modied
(M = 1), because the new data has made the data in memory out of date. If the
memory location is write-through, the write is passed on to system memory and the
M bit is never used. Note that the tag does not have TT or TM bits.
034101131
Index
Tag Data/Tag Reference
MUX
Comparator
0
1
2
3
Logical OR
Hit 3
Hit 2
Hit 1
Hit 0
Hit
Line Select
Set 0
Set 1
Set 127
Address
A[31:11]
Way 0
Way 1
Way 2
Way 3
TAG
STATUS LW0 LW1 LW2 LW3
TAG STATUS LW0 LW1 LW2 LW3
Address
Set
Select
A[10:4]
Data