Philips Semiconductors
Endian-ness
File: endian.fm5, modified 7/23/99
PRELIMINARY INFORMATION
C-7
The
Table C-5 shows the byte-swap implementation of
various pixel formats used in the ICP unit. Refer to
Figurein Big Endian mode. No swapping is done in the Little En-
dian mode.
Image Co-Processor has a byte sex bit (L) defined in its
MMIO based configuration register. The setting of this
byte-sex bit and the BSX bit in the PCSW register should
be equal. This byte-sex bit (L) has to be set by the soft-
ware.
C.4.5
Video-In (VI) and Video-Out (VO)
The VI unit stores the YUV pixels in planar 4:2:2 or 4:2:0
image format as shown in
Figure C-3 and stores the raw
The VO unit uses YUV-4:2:2 planar, YUV-4:2:0 planar,
and YUV-4:2:2+
α packed as input pixel formats. The pla-
nar memory image format of the YUV-4:2:2 and YUV-
α memo-
ry image format for overlay is pictured in
Figure C-6.
The VI and VO units have a byte-sex bit (Little endian
and LTL_END) defined in control MMIO registers,
VI_CONTROL and VO_CONTROL. The definition of
these byte-sex bits and the BSX bit in the PCSW register
should be treated as same. Little Endian and LTL_END
bits have to be set by the software.
C.4.6
Audio-In (AI) and Audio-Out (AO)
The AI and AO units use 8-bit Mono, 8-bit stereo, 16-bit
mono and 16-bit stereo data and the memory image for-
The swapping takes place at byte level and the bits with-
in a byte never get disturbed. The AI and AO units have
a byte sex bit (LITTLE_ENDIAN) defined in its MMIO
based configuration register. The definition of the these
bits and the BSX bit in the PCSW register should be
treated as same. This byte sex bit has to be set by the
software.
C.4.7
Variable Length Encoder (VLD)
The VLD takes the input from SDRAM in the form of bit
stream, with byte aligned starting address and outputs a
header stream and a “run-level” data stream.
The VLD unit has a byte sex bit (LITTLE_ENDIAN) de-
fined in its MMIO based configuration register. The defi-
Table C-5. ICP Byte Swapping Type for Input Data
Endian-ness
L bit
Pixel Type
Swap Type
Big Endian
0
Y,U,V Planar
No Swap
Big Endian
0
RGB 24+
α
BSW
Big Endian
0
YUV-4:2:2+
α
BSH
Big Endian
0
RGB 15+
α
BSH
Table C-6. ICP Byte Swapping Type for Output Data
Endian-ness
L bit
Pixel Type
Swap Type
Big Endian
0
RGB 8A:
233
No Swap
Big Endian
0
RGB 8R:
332
No Swap
Big Endian
0
RGB 15+
α BSH
Big Endian
0
RGB 16
BSH
Big Endian
0
RGB 24+
α BSW
Big Endian
0
RGB24
packed
No support for Big
Endian
Big Endian
0
YUV- 4:2:2
packed
BSH
Figure C-12. Memory image format for raw 8-bit and 10-bit data
Dn+3
Dn+2
Dn+1
Dn
Big Endian Mode
Little Endian Mode
A+3
A+2
A+1
A+0
A+2
A+1
A+0
raw 8-bit data
in Memory
Dn+3
Dn+2
Dn+1
Dn
A+3
A+2
A+1
A+0
A+2
A+1
A+0
raw 10-bit data
in Memory
Dn+1
Dn
lsb
msb
lsb
Dn+1
Dn
lsb
msb
lsb
Note: A+0 corresponds to byte-zero lane of SDRAM/Hwy
and A+3 corresponds to byte-three lane of SDRAM/Hwy
lsb is the Least Significant Byte
msb is the Most Significant Byte