MOTOROLA
Chapter 4. Processor Bus Interface
4-17
The following sections describe how the MPC106 can be configured through its register
settings to accommodate a variety of snoop responses and snoop timing requirements.
4.3.3.1 MPC106 Snoop Response
Processors may assert ARTRY because of pipeline collisions or because an address snoop
hits a modified block in the processor’s L1 cache. When a processor detects a snoop hit due
to a modified block in the cache, it will assert its bus request in the window of opportunity
(the clock after the ARTRY window) to obtain mastership of the bus for its L1 copy-back
cycle.
The MPC106 can be configured to repeat the snoop for a PCI-to-memory transaction that
has been terminated by the assertion of ARTRY by a processor or by the L2 cache through
the use of the PICR1[CF_LOOP_SNOOP] bit. If PICR1[CF_LOOP_SNOOP] is set, the
MPC106 repeats snooping until ARTRY is not asserted. If PICR1[CF_LOOP_SNOOP] is
cleared, the MPC106 repeats the snoop until either ARTRY is not asserted, or a snoop push
occurs.
The MPC106 may assert ARTRY because of an L2 cast-out operation (when the MPC106’s
internal L2 cache controller is being used), an address collision with an MPC106 internal
buffer, or because the PCI bus is occupied by another PCI bus master in a transaction that
requires snooping before the 60x-to-PCI address bus transaction is completed. This can
occur, for example, when a 60x processor performs a read operation to a PCI target while
the PCI bus is occupied by another PCI bus master, or when a 60x processor performs a
write operation to the PCI bus, but the MPC106’s 60x-to-PCI write buffer is full and
another PCI bus master accesses the system RAM requiring a snoop while the 60x
processor is waiting. Note that the MPC106 may assert ARTRY on any clock cycle after the
assertion of TS and the clock cycle following AACK.
Figure 4-7 illustrates the sequence of bus actions in the case of a snoop. When a 60x
processor detects a snoop hit with the L1 cache in write-back mode, the 60x asserts ARTRY
and BR. This causes the MPC106 to grant the bus to the 60x processor which then proceeds
with a copy-back to main memory of the modified cache block.
Figure 4-7. Snooped Address Transaction with ARTRY and L1 Cache Copy-Back
60x Bus Clock
BR0
BG0
60x Address
TS
AACK
ARTRY
MPC106 Snoop
Snoop Push