Instruction Cache Hit; Instruction Cache Miss - Freescale Semiconductor MPC850 User Manual

Mpc850 family integrated communications microprocessor
Table of Contents

Advertisement

Instruction Cache Operations
The MPC850 instruction cache includes the following operational features:
• Instruction fetch latency is reduced by sending the requested instruction address to
the instruction cache and internal bus simultaneously. A cache hit aborts the internal
bus transaction before the MPC850 can initiate an external fetch.
• The instruction cache supports stream hits (allows fetching from the burst buffer or
directly from the internal data bus, before the instruction cache array is filled)
• The instruction cache supports hits under misses (allows servicing hits while a
previous miss is being fetched from the external bus)
• A fetch request from the instruction sequencer has priority over burst buffer writes
to the cache array (the burst buffer holds the last missed cache block), thus
increasing the overall performance
• Efficiently uses the pipeblock of the internal data bus by initiating a new burst cycle
(if miss is detected) while bringing the tail of the previous missed block
• Performance for caching-inhibited regions is enhanced by fetching a full 4-word
block into the burst buffer. Instructions in the burst buffer are only used once before
being refetched

7.5.1 Instruction Cache Hit

In the case of a cache hit, the cache block is transferred to the cache block buffer and
forwarded to the stream hit multiplexer and word select multiplexer. As shown in
Figure 7-2, bits 28–29 of the instruction address are used to select one word of the cache
block which is transferred to the instruction sequencer in the core.

7.5.2 Instruction Cache Miss

On an instruction cache miss, the address of the missed instruction is driven on the internal
bus with a 4-word burst transfer read request. The transfer begins with the word requested
by the instruction sequencer (critical-word first), followed by the remaining words (if any)
of the cache block, then by any remaining words at the beginning of the block
(wrap-around).
On a cache miss, the critical word is simultaneously written to the burst buffer and
forwarded to the instruction sequencer, thus minimizing stalls due to cache fill latency. As
subsequent words are received from the internal bus, they are also written into the burst
buffer and delivered to the instruction sequencer either directly from the internal bus or
from the burst buffer (a stream hit). A cache block in the array is then selected to receive
the cache block being gathered in the burst buffer. The selection algorithm gives first
priority to invalid blocks. If all blocks in the set are marked invalid, the block in way 0 is
selected. If none of the blocks in the selected set are invalid, then the least recently used
block is selected for replacement. Locked cache blocks are never replaced.
MPC850 Family User's Manual

Advertisement

Table of Contents
loading

This manual is also suitable for:

Mpc850deMpc850dslMpc850sr

Table of Contents