
PI7C7300
3-PORT PCI-to-PCI BRIDGE
Advanced Information
43
06/04/02 Revision 1.07
7.2.3
Delayed Write Transactions
When PI7C7300 detects a data parity error during a delayed write transaction, the
initiator drives data and data parity, and the target checks parity and conditionally
asserts PERR#.
For delayed write transactions, a parity error can occur at the following times:
§
During the original delayed write request transaction
§
When the initiator repeats the delayed write request transaction
§
When PI7C7300 completes the delayed write transaction to the target
When a delayed write transaction is normally queued, the address, command, address
parity, data, byte enable bits, and data parity are all captured and a target retry is
returned to the initiator. When PI7C7300 detects a parity error on the write data for the
initial delayed write request transaction, the following events occur:
§
If the parity-error-response bit corresponding to the initiator bus is set, PI7C7300
asserts TRDY# to the initiator and the transaction is not queued. If multiple data
phases are requested, STOP# is also asserted to cause a target disconnect. Two
cycles after the data transfer, PI7C7300 also asserts PERR#.
If the parity-error-response bit is not set, PI7C7300 returns a target retry.
It queues the transaction as usual. PI7C7300 does not assert PERR#.
In this case, the initiator repeats the transaction.
§
PI7C7300 sets the detected-parity-error bit in the status register corresponding to
the initiator bus, regardless of the state of the parity-error-response bit.
Note: If parity checking is turned off and data parity errors have occurred for queued
or subsequent delayed write transactions on the initiator bus, it is possible that the
initiator’s re-attempts of the write transaction may not match the original queued
delayed write information contained in the delayed transaction queue. In this case, a
master timeout condition may occur, possibly resulting in a system error (P_SERR#
assertion).
For downstream transactions, when PI7C7300 is delivering data to the target on the
secondary bus and S_PERR# is asserted by the target, the following events occur:
§
PI7C7300 sets the secondary interface data parity detected bit in the secondary
status register, if the secondary parity error response bit is set in the bridge control
register.
§
PI7C7300 captures the parity error condition to forward it back to the initiator on
the primary bus.
Similarly, for upstream transactions, when PI7C7300 is delivering data to the target on
the primary bus and P_PERR# is asserted by the target, the following events occur:
§
PI7C7300 sets the primary interface data-parity-detected bit in the status register,
if the primary parity-error-response bit is set in the command register.