![](http://datasheet.mmic.net.cn/110000/GT-96100A_datasheet_3491740/GT-96100A_463.png)
GT-96100A Advanced Communication Controller
Revision 1.0
463
25. BIG AND LITTLE ENDIAN
25.1
Background
NOTE: For a description of big and little endian and how it is used in Galileo Technology system controllers, go
to Endianess Explained!
(http://www.GalileoT.com/library/syslib.htm) on the Galileo Technology Web- site.
There are three bits in the GT-96100A which control byte swapping on the CPU and PCI interfaces. One bit is
located in the CPU Interface Configuration Register (0x000) bit 12. The other two bits are in PCI Internal Com-
mand register (0xc00) bits 0 and 16.
All these bits are given the same value as sampled at RESET on Interrupt0* pin. These bits can also be pro-
grammed after reset is de-asserted.
If all bits are set to 1, the GT-96100A assumes Little-endian data format and NO byte swapping is done within
the device.
Additionally, there are three WORD-SWAP bits in GT-96100A which controls 32-bit word swap on access to/
from PCI:
Bit 10 controls PCI master interface word swap.
Bit 11 controls PCI target interface word swap when accessed through non-swap BARs.
Bit 12 controls PCI target interface word swap when accessed through swap BARs.
Since the PCI bus is 32-bit wide and the GT-96100A data path is 64-bit wide, byte swap is not good enough in
case of working in a BIG endian PCI bus configuration. These three bits are used for endianess compensation for
this case.
On top of the above, the GT-96100A supports byte swapping on serial data transferred between the communica-
tion unit agents and memory/PCI. Each of the serial DMA channels has two configuration bits associated with it
that control byte swapping - one bit controls swapping of incoming (receive) data, and the other bit controls
swapping of outgoing (transmit) data. Refer to the Ethernet and SDMA sections for more details about serial
DMA configuration options.1
The nomenclature for this section is shown in
Table 429.1. DMA descriptors that are used by the serial DMA channels are not considered data, and therefore are not affected by the setting of receive/trans-
mit swap bits in the DMA configuration registers. Descriptors swapping is controlled via one bit in the CIU configuration register. Refer to CIU
section for details.