
e200z6 Core (Z6)
PXN20 Microcontroller Reference Manual, Rev. 1
Freescale Semiconductor
13-23
Figure 13-14. Cache Organization and Line Format
13.3.2.2
Cache Lookup
After it is enabled, the unified cache is searched for a tag match on all instruction fetches and data accesses
from the CPU. If a match is found, the cached data is forwarded on a read access to the instruction fetch
unit or the load/store unit (data access), or is updated on a write access, and can also be written-through to
memory if required.
When a read miss occurs, if there is a TLB hit and the cache inhibit bit (WIMGE = 0bx0xxx) of the hitting
TLB entry is clear, the translated physical address is used to fetch a four doubleword cache line beginning
with the requested doubleword (critical doubleword first). The line is fetched and placed into the
appropriate cache block and the critical doubleword is forwarded to the CPU. Subsequent doublewords
can be streamed to the CPU if they have been requested and streaming is enabled via the DSTRM bit in
the L1CSR0 register.
During a cache line fill, doublewords received from the bus are placed into a cache linefill buffer, and can
be forwarded (streamed) to the CPU if such a request is pending. Accesses from the CPU following
delivery of the critical doubleword can be satisfied from the cache (hit under fill, non-blocking) or from
the linefill buffer if the requested information has been already received.
The cache always fills an entire line, thereby providing validity on a line-by-line basis. A cache line is
always in one of the following states: invalid, valid, or dirty (and valid). For invalid lines, the V bit is clear,
causing the cache line to be ignored during lookups. Valid lines have their V bit set and D bit cleared,
indicating the line contains valid data consistent with memory. Dirty cache lines have the D and V bits set,
indicating that the line has valid entries that have not been written to memory. In addition, a cache line can
be locked (L bit set) indicating the line is not available for replacement.
Way 0
Way 1
Way 2
Way 7
Line
•
•
•
•
•
•
•
•
•
•
•
•
V
D
Tag
Cache line format
Doubleword 3
Doubleword 2
Doubleword 1
Doubleword 0
Set 0
Set 1
Set 126
Set 127
•
•
•
L
A[0:19]
Tag address
Tag
V
D
valid
L
Line
lock
Line
dirty
• • • •
Cache tag format
P
Parity
bits
P
Summary of Contents for PXN2020
Page 1: ...PXN20 Microcontroller Reference Manual Devices Supported PXN2020 PXN2120 PXN20RM Rev 1 06 2011...
Page 42: ...PXN20 Microcontroller Reference Manual Rev 1 lxiv Freescale Semiconductor...
Page 64: ...Introduction PXN20 Microcontroller Reference Manual Rev 1 1 22 Freescale Semiconductor...
Page 112: ...Signal Description PXN20 Microcontroller Reference Manual Rev 1 3 44 Freescale Semiconductor...
Page 118: ...Resets PXN20 Microcontroller Reference Manual Rev 1 4 6 Freescale Semiconductor...
Page 372: ...e200z6 Core Z6 PXN20 Microcontroller Reference Manual Rev 1 13 8 Freescale Semiconductor...
Page 412: ...e200z0 Core Z0 PXN20 Microcontroller Reference Manual Rev 1 14 14 Freescale Semiconductor...
Page 821: ...Media Local Bus MLB PXN20 Microcontroller Reference Manual Rev 1 Freescale Semiconductor 27 49...
Page 822: ...Media Local Bus MLB PXN20 Microcontroller Reference Manual Rev 1 27 50 Freescale Semiconductor...
Page 1376: ...Memory Map PXN20 Microcontroller Reference Manual Rev 1 A 118 Freescale Semiconductor...