Hardware Reference Manual 75
Intel
®
IXP2800 Network Processor
Technical Description
(either a PCI interrupt or an Intel XScale
®
core interrupt). When an interrupt is received, the
DOORBELL registers can be read and the bit mask can be interpreted. If a larger bit mask is
required than that is provided by the DOORBELL register, the MAILBOX registers can be used to
pass up to 16 bytes of data.
The doorbell interrupts are controlled through the registers shown in Table 18.
2.9.5 PCI Arbiter
The PCI unit contains a PCI bus arbiter that supports two external masters in addition to the PCI
Unit’s initiator interface. If more than two external masters are used in the system, the aribter can
be disabled and an external (to the IXP2800 Network Processor used. In that case, the IXP2800
Network Processor will provide its PCI request signal to the external aribter, and use that arbiters
grant signal.
The arbiter uses a simple round-robin priority algorithm; it asserts the grant signal corresponding to
the next request in the round-robin during the current executing transaction on the PCI bus (this is
also called hidden arbitration). If the arbiter detects that an initiator has failed to assert frame_l
after 16 cycles of both grant assertion and PCI bus idle condition, the arbiter deasserts the grant.
That master does not receive any more grants until it deasserts its request for at least one PCI clock
cycle. Bus parking is implemented in that the last bus grant will stay asserted if no request is
pending.
To prevent bus contention, if the PCI bus is idle, the arbiter never asserts one grant signal in the
same PCI cycle in which it deasserts another, It deasserts one grant, and then asserts the next grant
after one full PCI clock cycle has elapsed to provide for bus driver turnaround.
Table 18. Doorbell Interrupt Registers
Register Name Description
XSCALE DOORBELL Used to generate the Intel XScale
®
core Doorbell interrupts.
XSCALE DOORBELL
SETUP
Used to initialize the Intel XScale
®
core Doorbell register and for diagnostics.
PCI DOORBELL Used to generate the PCI Doorbell interrupts.
PCI DOORBELL SETUP Used to initialize the PCI Doorbell register and for diagnostics.