English
Language : 

MCF5272 Datasheet, PDF (114/550 Pages) Motorola, Inc – MCF5272 ColdFire Integrated Microprocessor Users Manual
Instruction Cache Overview
The tag array maintains a single valid bit per line entry. Accordingly, only entire 16-byte
lines are loaded into the instruction cache.
The instruction cache also contains a 16-byte fill buffer that provides temporary storage for
the last line fetched in response to a cache miss. With each instruction fetch, the contents
of the line-fill buffer are examined. Thus, each instruction fetch address examines both the
tag memory array and the line-fill buffer to see if the desired address is mapped into either
hardware resource. A cache hit in either the memory array or the line-fill buffer is serviced
in a single cycle. Because the line-fill buffer maintains valid bits on a longword basis, hits
in the buffer can be serviced immediately without waiting for the entire line to be fetched.
If the referenced address is not contained in the memory array or the line-fill buffer, the
instruction cache initiates the required external fetch operation. In most situations, this is a
16-byte line-sized burst reference.
Hardware is nonblocking, meaning the ColdFire core's local bus is released after the initial
access of a miss. Thus, the cache, SRAM, or ROM module can service subsequent requests
while the rest of the line is being fetched and loaded into the fill buffer.
Generally, longword references are used for sequential fetches. If the processor branches to
an odd word address, a word-sized fetch is generated. The memory array of the instruction
cache is enabled only if CACR[CENB] is asserted.
Local Address Bus
31
9 43210
31
4
Line
Buffer
Address
External Data[31:0]
Line Buffer Data Storage
MUX
=
Fill Hit
31
9
0
Tag
31
31
0
0
Data
63
MUX
=
Tag Hit
Local Data Bus
Figure 4-3. Instruction Cache Block Diagram
4-8
MCF5272 User’s Manual
MOTOROLA