3-16
Processor Interface
No address manipulation occurs. As an example, a byte access to memory shared between the local pro-
cessor and the PCI at MEM_BYTE0 must be accessed as Byte 0 by the processor and as Byte 3 by the
PCI device.
When enabled, this swapping will occur on all accesses from the PCI to local memory, independent of the
size of the transfer (1, 2, 3, or 4 bytes).
Note: As indicated, this swapping occurs only on PCI to local memory accesses. Even if this byte swapping
mechanism is enabled, PCI accesses to CPC700 internal PCI configuration registers are not affected.
3.11.2.3 PCI to Memory Byte Swapping Examples
To illustrate the two methods of byte swapping which may be used for local memory accesses from the PCI
bus, assume the local processor has written a 32-bit value of x’12345678’ to local memory. Byte ‘12’ is the
MSB and ‘78’ is the LSB as seen from the local processor.
Using the default “byte lane preservation” method, when the PCI accesses the same memory location, the
value will appear on the PCI bus as x’78563412’, where byte ‘78’ is on the PCI bus MSB and ‘12’ is on the
LSB.
Using the alternative “byte lane swapping” method the value on the PCI bus will be x’12345678’ where byte
‘12’ is on the PCI MSB and ‘78’ on the LSB. Since the value is the same as seen from both the local pro-
cessor and the PCI bus, this method can be thought of as a “value preservation” method of byte swapping.
Note: The value preservation only preserves values of 32-bit data quantities. This method of byte swapping
should not be used for data quantities less than 32-bits. The default byte lane preservation method should
be used for transfer sizes other than 32-bit.
Processor
PLB Byte Lanes
PCI
0
1
2
3
4
5
7
6
1
2
3
4
5
6
7
0
3
2
1
0
[0:7]
[8:15]
[16:23] [24:31]
[32:39] [40:47] [48:55] [56:63]
[7:0]
[15:8]
[23:16]
[31:24]
(Big-Endian;
msb is bit 0)
(Little-Endian;
msb is bit 31)
Figure 7. Alternative Byte Swapping Method
Summary of Contents for CPC700
Page 10: ...Table of Contents x Table of Contents...
Page 16: ...Tables xvi List of Tables...
Page 28: ...1 12 CPC700 User s Manual Preliminary...
Page 72: ...3 36 Processor Interface...
Page 132: ...4 60 Memory Controller...
Page 184: ...5 52 PCI Interface...
Page 194: ...6 10 Clock Power Management and Reset...
Page 224: ...8 18 IIC...
Page 244: ...10 10 Interrupt Controller...
Page 246: ...I 11 2 JTAG...
Page 250: ...12 4 Processor Local Bus PLB...
Page 262: ...14 10 Register Summary...
Page 267: ...CPC700 User s Manual Preliminary...