
MOTOROLA
Chapter 3. Instruction and Data Cache Operation
3-27
3.9 Bus Interface
The bus interface buffers bus requests from the instruction and data caches, and executes
the requests per the 603e bus protocol. It includes address register queues, prioritization
logic, and bus control logic. The bus interface also captures snoop addresses for snooping
in the cache and in the address register queues, snoops for reservations, and holds the touch
load address for the cache. All data storage for the address register buffers (load and store
data buffers) are located in the cache section. The data buffers are considered temporary
storage for the cache and not part of the bus interface.
The general functions and features of the bus interface are as follows:
Seven address register buffers that include the following:
— Instruction cache load address buffer
— Data cache load address buffer
— Data cache touch load address buffer (associated data block buffer located in
cache)
— Data cache castout/store address buffer (associated data line buffer located in
cache)
— Data cache snoop copyback address buffer (associated data line buffer located in
cache)
— Reservation address buffer for snoop monitoring
Pipeline collision detection for data cache buffers
Reservation address snooping for
lwarx
/
stwcx.
instructions
One-level address pipelining
Load ahead of store capability
A conceptual block diagram of the bus interface is shown in Figure 3-5. The address
register queues hold transaction requests that the bus interface may issue on the bus
independently of the other requests. The bus interface may have up to two transactions
operating on the bus at any given time through the use of address pipelining.