
TM1300 Data Book
Philips Semiconductors
10-2
PRODUCT SPECIFICATION
10.4
IEC-958 SERIAL FORMAT
Figure 10-2 shows the serial format layout of a IEC-958
block. A block starts with a special ‘B’ pre-amble, and
consists of 192 frames. The sample-rate of all embedded
audio data is equal to the frame rate. Each frame con-
sists of 2 sub-frames. Sub-frame 1 always starts with a
‘M’ pre-amble, except for sub-frame 1 in frame 0, which
starts with a ‘B’. Sub-frame 2 always starts with a ‘W’ pre-
amble.
When IEC-958 data carries 2-channel PCM data, one
audio sample is transmitted in each sub-frame, ‘left’ in
sub-frame 1 and ‘right’ in sub-frame 2. Each sample can
be 16 or 24 bits in length, where the MSB is always
aligned with bit slot 28 of the sub-frame. In case of more
than 20 bits/sample, the Aux field is used for the 4 LSBs.
When IEC-958 data carries non-PCM audio, such as 1 or
more streams of Dolby AC-3 encoded data and/or MPEG
audio, each sub-frame carries 16-bit data. The data of
successive frames adds up to a payload data-stream
which carries its own burst-data.This is described in [2].
Programmers should refer to the IEC-958 documents [1]
and Project 1937 document [2] for a precise description
of the required values in each field for different types of
consumer equipment. A complete discussion of this is-
sue is outside the scope of this document.
The SPDO block hardware only concerns itself with gen-
erating B, W and M preambles as well as generating the
P (parity) bit. All other bits in the sub-frame are complete-
ly determined by software and copied verbatim from
memory to output, subject only to bit-cell coding.
The programmer must construct valid IEC-958 blocks by
constructing the right sequence of 32-bit words as de-
scribed in Section 10.7, “IEC-958 Memory Data Format.”
10.5
IEC-958 BIT CELL AND PRE-AMBLE
Each data bit in IEC-958 is transmitted using bi-phase
mark encoding. In bi-phase mark encoding, each data bit
is transmitted as a cell consisting of two consecutive bi-
nary states. The first state of a cell is always inverted
from the second state of the previous cell. The second
state of a cell is identical to the first state if the data bit
value is a “0”, and inverted if the data bit value is a “1”.
Pre-ambles are coded as bi-phase mark violations,
where the first state of a cell is not the inverse of the last
state of the previous cell.
The duration of each state in a cell is called a UI (Unit In-
terval), so that each cell is 2 UI’s long. In SPDO, the
length of a UI is 1 SPDO clock cycle as determined by
the settings of the DDS (see Section 10.8, “Sample Rate
Programming”).
Figure 10-3 illustrates the transmission format of 8-bit
data value “10011000”, as well as the transmission for-
mat of the 3 pre-ambles. Note that each pre-amble al-
Figure 10-2. Serial format of a IEC958 block
sub-frame 1
M
sub-frame 2
W
sub-frame 1
B
sub-frame 2
W
sub-frame 1
M
sub-frame 2
W
Start of block (indicated by unique B pre-amble)
sub-frame
frame 0
frame 1
sub-fram
M
frame 191
0
31
28
24
20
16
12
8
4
Sample data
L
S
B
M
S
B
B, W or M
pre-amble
Aux.
VU C P
Validity flag
User data
Channel status
Parity bit
sub-frame (2 channel PCM)
0
31
28
24
20
16
12
8
4
16-bit data
L
S
B
M
S
B
B, W or M
pre-amble
VU C P
Validity flag
User data
Channel status
Parity bit
sub-frame (non-PCM audio)
unused (0)