Byte Ordering
MPC885 PowerQUICC Family Reference Manual, Rev. 2
Freescale Semiconductor
A-7
MSR[ILE] is used to set the endian mode of the core during exception handling. When an exception
occurs, MSR[ILE] is copied into MSR[LE] to select the endian mode for the context established by the
exception.
For PPC-LE-mode, the FCR[BO] parameter of each peripheral (SCCs, SMCs, SPI, I
2
C, PIP, or IDMA)
should be set to 0b01. The SDMA controller examines the BO parameter and, if set to 0b01, performs a
3-bit munge (XOR with 0b111) on every byte address of transmitted or received data as in
Table A-6
.
A.5.1
I/O Addressing in PPC-LE Mode
For a system running in BE or TLE mode, both the MPC885 and the memory subsystem recognize the
same byte as byte 0. However, this is not true for a system running in PPC-LE mode because of the munged
address bits when the accesses external memory.
For I/O transfers in PPC-LE mode to transfer bytes properly, they must be performed as if the bytes
transferred were accessed one at a time, using the little-endian address modification appropriate for the
single-byte transfers (that is, the lowest order address bits must be XORed with 0b111). This does not mean
that I/O operations in PPC-LE systems must be performed using only one-byte-wide transfers. Data
transfers can be as wide as desired, but the order of the bytes within double words must be as if they were
fetched or stored one at a time. That is, for a true little-endian I/O device, the system must provide a
mechanism to munge and unmunge the addresses and reverse the bytes within a doubleword (MSB to
LSB).
A load or store that maps to a control register on an external device may require the bytes of the register
data to be reversed. If this reversal is required, the load and store with byte-reverse instructions (lhbrx,
lwbrx, sthbrx, and stwbrx) may be used.
A.6
Setting the Endian Mode Of Operation
As shown in
Table A-1
, the MPC885 powers up in BE mode. The endian mode should be set early in the
initialization routine and remain unchanged for the duration of system operation. To switch between the
different endian modes of operation, the core must run in serialized mode and the caches should be
disabled. It is not recommended that you switch back and forth between modes.
To switch the system from BE to PPC-LE mode, the MSR[LE] and MSR[ILE] bits should be set using an
mtmsr instruction that resides on an odd word boundary (A[29] = 1). The instruction that is executed next
will be fetched from this address plus 8. If the mtmsr instruction resides on an even word boundary (A[29]
= 0), then the instruction will be executed twice due to the address munging of PPC-LE mode.
To switch the system from PPC-LE to BE mode, the MSR[LE] and MSR[ILE] bits should be cleared using
an mtmsr instruction that resides on an even word boundary (A[29] = 0). The instruction that is executed
next will be fetched from this address plus 12.
To switch the system to TLE mode, DC_CST[LES] should be set using an mtspr instruction that resides
on an even word boundary (A[29] = 0). Further instructions should reside in the little-endian format of the
external system memory or in the big-endian format of the internal memory (if it exists).
The buffer descriptors for the peripherals contain the FCR[BO] parameters for the SDMA controller. The
BO parameter should be set to the required endian format prior to activating the associated peripheral.
Содержание PowerQUICC MPC870
Страница 1: ...MPC885 PowerQUICC Family Reference Manual Supports MPC885 MPC880 MPC875 MPC870 MPC885RM Rev 2 04 2006 ...
Страница 98: ...MPC885 PowerQUICC Family Reference Manual Rev 2 I 4 Freescale Semiconductor ...
Страница 118: ...MPC885 Overview MPC885 PowerQUICC Family Reference Manual Rev 2 1 20 Freescale Semiconductor ...
Страница 158: ...The MPC8xx Core MPC885 PowerQUICC Family Reference Manual Rev 2 3 18 Freescale Semiconductor ...
Страница 192: ...MPC885 Instruction Set MPC885 PowerQUICC Family Reference Manual Rev 2 5 22 Freescale Semiconductor ...
Страница 242: ...Instruction and Data Caches MPC885 PowerQUICC Family Reference Manual Rev 2 7 30 Freescale Semiconductor ...
Страница 288: ...MPC885 PowerQUICC Family Reference Manual Rev 2 III 4 Freescale Semiconductor ...
Страница 416: ...External Bus Interface MPC885 PowerQUICC Family Reference Manual Rev 2 13 42 Freescale Semiconductor ...
Страница 440: ...Clocks and Power Control MPC885 PowerQUICC Family Reference Manual Rev 2 14 24 Freescale Semiconductor ...
Страница 554: ...MPC885 PowerQUICC Family Reference Manual Rev 2 V 6 Freescale Semiconductor ...
Страница 606: ...SDMA Channels and IDMA Emulation MPC885 PowerQUICC Family Reference Manual Rev 2 19 20 Freescale Semiconductor ...
Страница 738: ...SCC Asynchronous HDLC Mode and IrDA MPC885 PowerQUICC Family Reference Manual Rev 2 25 16 Freescale Semiconductor ...
Страница 780: ...SCC Ethernet Mode MPC885 PowerQUICC Family Reference Manual Rev 2 27 24 Freescale Semiconductor ...
Страница 794: ...SCC Transparent Mode MPC885 PowerQUICC Family Reference Manual Rev 2 28 14 Freescale Semiconductor ...
Страница 848: ...Serial Peripheral Interface SPI MPC885 PowerQUICC Family Reference Manual Rev 2 30 18 Freescale Semiconductor ...
Страница 882: ...Universal Serial Bus USB MPC885 PowerQUICC Family Reference Manual Rev 2 31 34 Freescale Semiconductor ...
Страница 944: ...Parallel I O Ports MPC885 PowerQUICC Family Reference Manual Rev 2 34 26 Freescale Semiconductor ...
Страница 956: ...CPM Interrupt Controller MPC885 PowerQUICC Family Reference Manual Rev 2 35 12 Freescale Semiconductor ...
Страница 1004: ...Buffer Descriptors and Connection Tables MPC885 PowerQUICC Family Reference Manual Rev 2 37 30 Freescale Semiconductor ...
Страница 1022: ...ATM Parameter RAM MPC885 PowerQUICC Family Reference Manual Rev 2 38 18 Freescale Semiconductor ...
Страница 1068: ...ATM Pace Control MPC885 PowerQUICC Family Reference Manual Rev 2 40 22 Freescale Semiconductor ...
Страница 1090: ...UTOPIA Interface MPC885 PowerQUICC Family Reference Manual Rev 2 43 8 Freescale Semiconductor ...
Страница 1120: ...AAL2 Implementation MPC885 PowerQUICC Family Reference Manual Rev 2 44 30 Freescale Semiconductor ...
Страница 1162: ...Fast Ethernet Controller FEC MPC885 PowerQUICC Family Reference Manual Rev 2 45 40 Freescale Semiconductor ...
Страница 1172: ...SEC Lite Overview MPC885 PowerQUICC Family Reference Manual Rev 2 46 8 Freescale Semiconductor ...
Страница 1176: ...SEC Lite Address Map MPC885 PowerQUICC Family Reference Manual Rev 2 47 4 Freescale Semiconductor ...
Страница 1214: ...SEC Lite Execution Units MPC885 PowerQUICC Family Reference Manual Rev 2 48 38 Freescale Semiconductor ...
Страница 1312: ...Byte Ordering MPC885 PowerQUICC Family Reference Manual Rev 2 A 8 Freescale Semiconductor ...
Страница 1313: ...MPC885 PowerQUICC Family Reference Manual Rev 2 Freescale Semiconductor B 1 Appendix B Serial Communications Performance TBD ...
Страница 1314: ...Serial Communications Performance MPC885 PowerQUICC Family Reference Manual Rev 2 B 2 Freescale Semiconductor ...
Страница 1320: ...Register Quick Reference Guide MPC885 PowerQUICC Family Reference Manual Rev 2 C 6 Freescale Semiconductor ...
Страница 1336: ...MPC885 PowerQUICC Family Reference Manual Rev 2 D 16 Freescale Semiconductor ...
Страница 1358: ...MPC885 PowerQUICC Family Reference Manual Rev 2 D 38 Freescale Semiconductor ...
Страница 1370: ...MPC880 MPC885 PowerQUICC Family Reference Manual Rev 2 E 4 Freescale Semiconductor ...
Страница 1384: ...Serial ATM Scrambling Reception and SI Programming MPC885 PowerQUICC Family Reference Manual Rev 2 H 6 Freescale Semiconductor ...
Страница 1386: ...Revision History MPC885 PowerQUICC Family Reference Manual Rev 2 I 2 Freescale Semiconductor ...