
RS8234
11.0 PCI Bus Interface
ATM ServiceSAR Plus with xBR Traffic Management
11.4 PCI Bus Master Logic
N8234DSC
PRELIMINARY
11-5
Five possible sources of error are present during any PCI bus master
transaction. If the any of the following five errors occur, the bus master logic will
permanently terminate the transaction, flag an error, and cease to process any
more commands.
1.
Target Abort—The PCI transaction will terminate if the addressed target
signals a target abort. In this case, the RTA and MERROR bits in the PCI
Configuration Register space will be set and the PCI_BUS_STATUS[4] bit
in the SYS_STAT Register will be set.
2.
Master Abort—If the addressed target does not respond with an
HDEVSEL* assertion, then a master abort is flagged. In this case, the
RMA and MERROR bits in the PCI Configuration Register space will be
set and the PCI_BUS_STATUS[3] bit in the SYS_STAT Register will be
set.
3.
Parity Error—If the data parity checked during read transfers is
inconsistent with the state of the HPAR signal, then a parity error is
signaled. In this case, the DPR and MERROR bits in the PCI
Configuration Register space will be set and the PCI_BUS_STATUS[2] bit
in the SYS_STAT Register will be set.
4.
Interface Disabled—If the driver or application software on the PCI host
CPU has disabled, the RS8234 PCI bus master logic (using the M_EN bit
in the Command field of the PCI bus configuration registers), then any
attempt to perform a DMA transaction to the PCI bus will result in an
error. In this case, the MERROR and INTF_DIS bits in the PCI
configuration space will be set and the PCI_BUS_STATUS[1] bit in the
SYS_STAT Register will be set.
5.
Internal Failure—Upon a synchronization error between the DMA
coprocessor and the PCI master logic, an internal failure will be flagged. In
this case, the MERROR and INT_FAIL bits in the PCI configuration space
will be set and the PCI_BUS_STATUS[0] bit in the SYS_STAT Register
will be set.
NOTE(S):
The above errors permanently affect system level operation. Because of this the system
should be re-initialized, since full system level recovery is unlikely. The bus protocol
errors can be cleared either by a software reset of the associated status flag or flags,
i.e., RTA, RMA, or DPR, or with a reset of the PCI bus master logic using the HRST*
input pin. For example, a master abort error can be cleared by writing a logic one to the
RMA status bit in the PCI Configuration Register space, causing the status bit to be
cleared. Internal failures (attempting to initiate a master transaction with the interface
disabled, or loss of synchronization with the DMA controller) can only be reset by
applying the global reset, CONFIG0 (GLOBAL_RESET), or by asserting the HRST*
signal.
Next, the MERROR bit must be cleared. The MERROR bit in the PCI
Configuration Register drives the PCI_BUS_ERROR interrupt. To clear
this interrupt, a logic high must be written to the MERROR bit location.
The MERROR bit can also be cleared by a logic low on the HRST* input
pin.
The local processor can clear the error bits by setting CONFIG0
(PCI_ERR_RESET) to a logic high. After the errors have been cleared, the
SAR should be re-initialized.
Several fields are provided in the PCI configuration space to aid in
recovering from a PCI master error. The PCI host software can determine
that an error occurred by checking the MERROR bit. It can also determine