
3-18
PowerPC Microprocessor Family: The Bus Interface for 32-Bit Microprocessors
up to or on the bus cycle following the first (or only) assertion of TA for the data tenure, the
processor ignores the first data beat; if it is a load operation, it does not forward data
internally to the cache and execution units. If the 604 is in fast-L2 mode, TA should not be
asserted prior to the valid ARTRY cycle. If ARTRY is asserted after the first (or only)
assertion of TA, improper operation of the bus interface may result.
As a bus master, the processor responds to an assertion of ARTRY by aborting the bus
transaction and re-requesting the bus. The assertion causes both the address and data
tenures to be rerun. After recognizing an assertion of ARTRY and aborting a transaction,
the processor may not run the same transaction the next time it is granted the bus.
As a snooping device, the processor asserts ARTRY for a snooped transaction that hits
modified data in the data cache that must be written back to memory, or if the snooped
transaction could not be serviced. As shown in Figure 3-6, ARTRY is asserted for one bus
clock cycle, three-stated for half of the next bus clock cycle, driven high till the following
bus cycle, and finally three-stated. Section 2.5.2, “Address Retry (ARTRY)—Output,”
describes ARTRY timing for different processors.
Figure 3-6. Snooped Address Cycle with ARTRY
The snoop push window occurs two cycles after the assertion of AACK. Coherency
protocol provides that only one device can get a snoop hit due to modified data for any given
address tenure. If ARTRY is asserted during the cycle after the assertion of AACK, then in
the following cycle, no processor asserts BR unless a snoop hit requires it to do a push. To
guarantee that a snoop push gets an immediate opportunity to obtain the address bus, the
external arbiter must grant the bus to the snooping device next.
1
2
3
4
5
6
7
8
ts
abb
addr
aack
ARTRY
qual BG
ABB