MOTOROLA
Chapter 8. Instruction and Data Caches
8-23
Part II. PowerPC Microprocessor Module
the cache can service a hit while a cache miss Þll is waiting to complete. If no bus errors
are encountered during the 4-word cache block fetch, the burst buffer is marked valid and
written to the cache array, provided the cache array is not busy servicing a hit.
If a bus error is encountered while fetching the requested instruction (the critical word),
then a machine check exception is generated. If a bus error occurs while fetching
subsequent words in the cache block, then the burst buffer is marked invalid and the cache
block is not written to the cache array.
8.5.3 Instruction Fetching on a Predicted Path
The core implements branch prediction to allow branches to issue as early as possible. This
mechanism allows instruction prefetching to continue while an unresolved branch is being
computed and the condition is being evaluated. Instructions fetched after unresolved
branches are said to be fetched on a predicted path. These instructions may be discarded
later if it turns out that the machine has followed the wrong path. To minimize power
consumption, the MPC860 instruction cache does not initiate a miss sequence in most cases
when the instruction is inside a predicted path. The MPC860 instruction cache evaluates
fetch requests to see if they are inside a predicted path. If a hit is detected, the requested
instruction is delivered to the core. However, if it is a cache miss, the miss sequence is not
initiated in most cases until the core Þnishes the branch evaluation.
8.5.4 Fetching Instructions from Caching-Inhibited Regions
The caching-inhibited/caching-allowed attributes of a memory region are programmed in
the memory management unit (MMU). To improve performance when fetching instructions
from caching-inhibited regions, the MPC860 loads the burst buffer with a full 4-word
block. Instructions that are stored in the burst buffer and originate from a cache-inhibited
region, can be sent to the instruction sequencer, at most, once before being refetched.
If an instruction fetch from a caching-inhibited region results in a cache hit, the instruction
is delivered to the instruction sequencer in the core from the cache and not from memory.
However, it is considered a programming error if an instruction fetch from a
caching-inhibited region results in a cache hit. Software must ensure that instructions from
a caching-inhibited region have not been previously loaded into the cache, or, if so, those
blocks have been ßushed from the cache. See Section 8.5.5, ÒUpdating Code And Memory
Region Attributes,Ó for more information.
It is also considered a programming error to perform load & lock cache block operations
from zero wait state devices that are located on the internal bus. The MPC860 considers
these devices as caching-inhibited memory regions. If a load & lock cache block operation
is performed from such a device, the instruction is not guaranteed to be fetched from the
instruction cache; in most cases, the instruction is fetched from the device, regardless of
whether it is in the instruction cache.
Summary of Contents for MPC860 PowerQUICC
Page 3: ...MPC860UM AD 07 98 REV 1 MPC860 PowerQUICC ª UserÕs Manual ...
Page 36: ...xxxvi MPC860 PowerQUICC UserÕs Manual MOTOROLA CONTENTS Paragraph Number Title Page Number ...
Page 78: ...I iv MPC860 PowerQUICC UserÕs Manual MOTOROLA Part I Overview ...
Page 88: ...1 10 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part I Overview ...
Page 114: ...3 16 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part I Overview ...
Page 226: ...8 32 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part II PowerPC Microprocessor Module ...
Page 262: ...9 36 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part II PowerPC Microprocessor Module ...
Page 274: ...III iv MPC860 PowerQUICC UserÕs Manual MOTOROLA Part III Configuration ...
Page 320: ...12 12 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part III Configuration ...
Page 325: ...MOTOROLA Part IV Hardware Interface IV v Part IV Hardware Interface ...
Page 326: ...IV vi MPC860 PowerQUICC UserÕs Manual MOTOROLA Part IV Hardware Interface ...
Page 352: ...13 26 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part IV Hardware Interface ...
Page 394: ...14 42 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part IV Hardware Interface ...
Page 426: ...15 32 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part IV Hardware Interface ...
Page 530: ...17 26 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part IV Hardware Interface ...
Page 632: ...21 44 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part V The Communications Processor Module ...
Page 660: ...22 28 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part V The Communications Processor Module ...
Page 708: ...24 24 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part V The Communications Processor Module ...
Page 748: ...27 20 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part V The Communications Processor Module ...
Page 846: ...31 20 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part V The Communications Processor Module ...
Page 914: ...35 12 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part V The Communications Processor Module ...
Page 948: ...36 34 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part V The Communications Processor Module ...
Page 998: ...37 48 MPC860 PowerQUICC UserÕs Manual MOTOROLA Part VI Debug and Test ...
Page 1016: ...A 10 MPC860 PowerQUICC UserÕs Manual MOTOROLA Appendixes ...
Page 1024: ...B 8 MPC860 PowerQUICC UserÕs Manual MOTOROLA Appendixes ...
Page 1030: ...C 6 MPC860 PowerQUICC UserÕs Manual MOTOROLA Appendixes ...
Page 1086: ...Glossary 12 MPC860 PowerQUICC UserÕs Manual MOTOROLA ...
Page 1106: ......