MOTOROLA
Chapter 7. PCI Bus Interface
7-25
recently accessed cache line is locked from the processor. Since a snoop transaction is
required to establish a lock, the MPC106 does not honor the assertion of LOCK when
PICR1[NO_SNOOP_EN] is set.
7.6 PCI Error Functions
PCI provides for parity and other system errors to be detected and reported. This section
describes generation and detection of parity and error reporting for the PCI bus.
The PCI command register and error enabling registers 1 and 2 provide for selective
enabling of specific PCI error detection. The PCI status register, error detection registers 1
and 2, the PCI bus error status register, and the CPU/PCI error address register provide PCI
error reporting. These registers are described in Section 3.2.3, “PCI Registers,” and
Section 3.2.5, “Error Handling Registers.”
7.6.1 PCI Parity
Generating parity is not optional; it must be performed by all PCI-compliant devices. All
PCI transactions, regardless of type, calculate even parity; that is, the number of 1s on the
AD[31–0], C/BE[3–0], and PAR signals all sum to an even number.
Parity provides a way to determine, on each transaction, if the master successfully
addressed the target and transferred valid data. The C/BE[3–0] signals are included in the
parity calculation to insure that the correct bus command is performed (during the address
phase) and that correct data is transferred (during the data phase). The agent responsible for
driving the bus must also drive even parity on PAR one clock cycle after a valid address
phase or valid data transfer, as shown in Figure 7-10.
During the address and data phases, parity covers all 32 address/data signals and the four
command/byte enable signals regardless of whether all lines carry meaningful information.
Byte lanes not actually transferring data must contain stable (albeit meaningless) data and
are included in parity calculation. During configuration, special-cycle, or interrupt-
acknowledge commands, some address lines are not defined but are driven to stable values
and are included in parity calculation.
Agents that support parity checking must set the detected parity error bit in the status
register when a parity error is detected. Any additional response to a parity error is
controlled by the parity error response bit in the command register. If the parity error
response bit is cleared, the agent ignores all parity errors.