B-4 Munged Memory Image In Local Memory - Motorola MPC8240 User Manual

Integrated host processor with integrated pci
Table of Contents

Advertisement

Table B-4. Byte Lane Translation in Little-Endian Mode (Continued)
Processor
Byte Lane
4
5
6
7
Starting with the same program as before:
store string ("hello, world") at 0x000
store pointer (0xFEDCBA98) at 0x010
store half word (0d1234) at 0x00E
store byte (0x55) at 0x00D
If the data is stored to local memory in little-endian mode, the MPC8240 stores the data to
the munged addresses in local memory as shown in Figure B-4.
Contents
Address
Contents
Address
Contents
Address
Figure B-4. Munged Memory Image in Local Memory
The image shown in Figure B-4 is not a true little-endian mapping. Note how munging has
changed the addresses of the data. The 'h' is now at address 0x007. Also note that the byte
ordering of the 4-byte pointer, 0xFEDCBA98, is big-endian; only the address has been
modified. However, since the processor core munges the address when accessing local
memory, the mapping appears little-endian to the processor core.
If the data is stored to the PCI memory space, or if a PCI agent reads from local memory,
the MPC8240 unmunges the addresses and reverses the byte-ordering before sending the
data out to the PCI bus. The data is stored to little-endian PCI memory space as shown in
Figure B-5.
Processor Data Bus
Signals
DL[0–7]
DL[8–15]
DL[16–23]
DL[24–31]
'w'
' '
','
00
01
02
12
34
0x55
08
09
0A
10
11
12
Appendix B. Bit and Byte Ordering
PCI Address/Data Bus
PCI Byte Lane
Signals During PCI Data
3
2
1
0
'o'
'l'
'l'
03
04
05
'd'
'l'
0B
0C
0D
0xFE
0xDC
13
14
15
Little-Endian Mode
Phase
AD[31–24]
AD[23–16]
AD[15–8]
AD[7–0]
'e'
'h'
06
07
'r'
'o'
0E
0F
0xBA
0x98
16
17
B-7

Advertisement

Table of Contents
loading

Table of Contents