
1-2
PowerPC Microprocessor Family: The Bus Interface for 32-Bit Microprocessors
The 60x bus definition is based on the Motorola 88110 bus definition. This interface runs
synchronous to the system clock. Inputs are sampled at and outputs are driven from the
rising edge of the system clock. This processor bus provides two transfer protocols:
The basic transfer protocol is used to access normal memory segments. This
protocol supports transfer of any number of 32- or 64-bit continuous bytes within an
aligned double word to any address in the 32-bit address range. It also supports the
use of burst transfers and multiple-beat transfers that transfer up to 64 bits of data
during each beat.
Direct-store operations (elsewhere referred to as extended transfer protocol, or ETP)
use a slightly different protocol for accessing the direct-store segments as defined in
the PowerPC architecture. This protocol provides an extended address, support for
split transactions, and a positive reply for each transaction. The synchronous nature
of this protocol limits its performance compared to the basic protocol, but provides
for enhanced error recovery. This functionality is now considered optional to the
PowerPC architecture and is not supported in all PowerPC processors, for example
in second generation processors in the 603 family.
The PowerPC architecture includes the following:
An address space shared by all processing elements in the system
A weakly-ordered memory model that allows processors to improve performance by
reordering loads and stores
A set of explicit cache management and translation lookaside buffer (TLB)
management instructions that can be broadcast by the processor to allow software
control of caches in a single- or multiple-processor environment
Instructions for synchronizing operations between different processors
Each processor has a separate address and data bus. In the basic transfer protocol, these
separate buses may be used to implement coupled address and data tenures typical of low-
end personal computers, or they may be used to implement advanced features such as
address pipelining, which allows a new bus transaction to begin before the current
transaction has finished, and split-bus transactions, which allows the address bus and data
bus to have separate masters at the same time.
The processor bus supports full write-back cache coherency, bus snooping, transaction
retry, and snoop copy-back operations, although it should be noted that each processor may
not implement all such features and that some processors may implement such features in
a more sophisticated manner.
The bus defines signals that support access from multiple masters, including other
processors and devices, with arbitration provided by the system implementation.