581
Chapter 31 External Bus
8.Prefetch Operation
• If a buffer read error occurs. A buffer read error is if any of the following events occurs:
• When no address is found in the buffer that matches in an to read from a prefetch-enabled area. In this
case, the external bus is accessed again. Data read in this case is not stored in the buffer, but the prefetch
access is started from the subsequent address to store addresses in the buffer.
• In an access to read from a prefetch-enabled area with a read modified system instruction. In this case,
the external bus is accessed again. Data read in this case is not stored in the buffer. Also, no prefetch
access is performed (This is because data is written to the next address).
• In an access to read from a prefetch-enabled area for DMA transfer. In this case, the external bus is
accessed again. Data read in this case is not stored in the buffer. Also, no prefetch access is performed.
• If a buffer write hit occurs. A buffer write hit is as follows:
• When the address of just one byte that matches is found in the buffer in an access to write to a prefetch-
enabled area. In this case, the external bus is accessed again, but no prefetch access is performed before
a new read access occurs.
Only part of the prefetch buffer is cleared when the following condition is met:
• If a buffer read hit occurs
In this case, only the part of the buffer before the hit address is cleared.
● Restrictions on prefetch-enabled areas
If prefetch to a little endian area is enabled, be sure to access the area using word access. If data read into the
prefetch buffer is accessed with any length other than word length, the correct endian conversion is not
performed and thus the wrong data will be read. This is due to hardware restrictions related to the endian
conversion mechanism.