Intel 21555 Network Router User Manual


 
42 21555 Non-Transparent PCI-to-PCI Bridge User Manual
Address Decoding
the Downstream memory 3 address range must be set to a non-zero value when the upper 32 bits
are enabled (a base address of 0 is not allowed).
.
4.4 I/O Transaction Address Decoding
The 21555 provides a mechanism where one BAR on each interface can be configured to be an I/O BAR instead of
a memory BAR. The Downstream I/O or Memory 1 BAR in primary configuration space is used to decode primary
bus I/O transactions for forwarding to the secondary bus. The Upstream I/O or Memory 0 BAR in secondary
configuration space is used to decode secondary bus I/O transactions for forwarding to the primary bus. (See
Table 37 on page 133.)
The 21555 performs direct offset address translation when forwarding I/O transactions in much the same manner
that it translates memory addresses. The size of the I/O BARs can be configured to be 64 bytes, 128 bytes, or 256
bytes. Accordingly, the base address can consist of 26, 25, or 24 bits. The 21555 hardware does not restrict setting
up larger I/O windows, although requesting more than 256 bytes of I/O space is a violation of the PCI Local Bus
Specification, Revision 2.2. The upper bits comprising the base address of the I/O address on the primary bus is
replaced with the base address written in the Downstream I/O or Memory 1 Translated BAR when initiated on the
secondary bus. Similarly, the Upstream I/O or Memory 0 Translated BAR is used for upstream I/O transactions.
These translated base registers are mapped in both device-specific configuration space and the 21555 CSR space.
4.4.1 Indirect I/O Transaction Generation
The 21555 implements a CSR mechanism that allows access to any I/O address in the secondary or local I/O
address map from the primary interface, or any I/O address in the primary or host I/O address map from the
secondary interface. A pair of device-specific CSR registers contain the address and data used to initiate the I/O
Figure 10. Dual
-Address Transaction Forwarding
A7468-01
Base + Offset
Translated
Base + Offset
2
64
Byte Boundary
4GB Boundary
Primary Address Map Secondary Address Map