User Manual
BCM1250/BCM1125/BCM1125H
10/21/02
B r o a d c o m C o r p o r a t i o n
Document
1250_1125-UM100CB-R
Section 8: PCI Bus and HyperTransport Fabric Page
203
B
IG
E
NDIAN
S
YSTEM
: M
ATCH
B
IT
L
ANES
The match bit lanes endian policy will match the bit numbers of 32 bit values on either side of the interface. In
byte lane terms this is an endian swap of the data. Consequently a 32 bit value that is written into a PCI register
from the CPU will have the same interpretation. This policy is therefore the correct one to use when setting up
configuration registers, passing addresses, and most control functions.
The policy is illustrated in
. Compared to
, the bit ordering is maintained going
from the system to the PCI. The PCI byte enables are generated from the inverse of the bottom two system
address bits reflecting the different byte significance between the two sides of the interface.
Figure 40: Match Bit Lane Endian Policy
By matching the bit number in 32 bit words, the bits that the CPU uses will match with the register descriptions
in the PCI peripheral data sheet. Similarly, an address written into a control register from a CPU register will
have the same meaning. Note that the situation is more complicated for 64-bit accesses (see below), but these
are forbidden by the HyperTransport specification for configuration accesses to the HyperTransport space, and
forbidden by the bridge for accesses to the PCI configuration registers.
If a byte access is performed the programmer will get the expected result for a big-endian context, i.e. the most
significant bits of the register will be at the lowest CPU byte address. Similarly a 16 bit access will be mapped
in the way expected for a big-endian machine. A sixty-four bit access performed by the CPU will be split into
two thirty two bit accesses, again the data will end up in the positions consistent with a big-endian model.
The problem with this policy is that the byte memory ordering is scrambled since the byte lanes are swapped.
This affects bulk data transfer, where the device on the PCI or HyperTransport assumes that the order on the
byte lanes matches the memory order with BE#[0] associated with the lowest memory address. Therefore this
mapping is unlikely to be useful for devices doing DMA accesses into the system memory. It is useful for
access to control registers (where it will save endian swapping in software). The match bits policy can also be
used if the peripheral can be configured for big endian DMA operation.
A B
63 56 55
C D
48 47
E F
G H
40 39 32 31 24 23 16 15
8 7
0
BYTE Address [2:0]
000 001 010 011 100 101 110 111
A B
C D
31
24 23 16 15 8 7
0
E F
G H
31
24 23 16 15 8 7
0
PCI Bus
A [2] = 0
PCI Bus
A [2] = 1
PCI Byte Enables
BE#[3] BE#[2] BE#[1] BE#[0]
Содержание BCM1125
Страница 18: ...BCM1250 BCM1125 BCM1125H User Manual 10 21 02 Broadcom Corporation Page xviii Document 1250_1125 UM100CB R ...
Страница 28: ...BCM1250 BCM1125 BCM1125H User Manual 10 21 02 Broadcom Corporation Page xxviii Document 1250_1125 UM100CB R ...
Страница 515: ...BCM1250 BCM1125 BCM1125H User Manual 10 21 02 Broadcom Corporation Page vii Index Document 1250_1125 UM100CB R ...