3465&3485-mfc.ib.rev4.doc
page 16 of 22
17/10/2007
MPEG-2 transport layer coding
The MPEG-2 Transport Layer is defined in ISO/IEC DIS 13818-1 [1]. The Transport Layer for MPEG-2 data is
comprised of packets having 188 Bytes, with one Byte for synchronisation purposes, three Bytes of header
containing service identification, scrambling and control information, followed by 184 Bytes of MPEG-2 or
auxiliary data.
The framing organisation is based on the MPEG-2 transport packet structure.
Channel coding
To achieve the appropriate level of error protection required for cable transmission of digital data, a FEC based on
Reed-Solomon encoding is used. In contrast to the Baseline System for satellite described in ETS 300 421, no
convolutional coding is applied to cable transmission. Protection against burst errors is achieved by the use of Byte
interleaving.
Randomisation for spectrum shaping (Scrambling)
The System input stream is organised in fixed length packets (see figure 2), following the MPEG-2 transport
multiplexer. The total packet length of the MPEG-2 transport MUX packet is 188 Bytes. This includes 1 sync-word
Byte (i.e. 47
HEX
).
The processing order at the transmitting side shall always start from the MSB (i.e. 0) of the sync
word-Byte (i.e. 01000111).
In order to comply with the System for satellite, (see ETS 300 421) and to ensure adequate binary transitions for
clock recovery, the data at the output of the MPEG-2 transport multiplex is randomised.
The polynomial for the Pseudo Random Binary Sequence (PRBS) generator is:
1 + X
14
+ X
15
Loading of the sequence 100101010000000" into the PRBS registers, is initiated at the start of every eight transport
packets. To provide an initialisation signal for the de-scrambler, the MPEG-2 sync Byte of the first transport packet
in a group of eight packets is bitwise inverted from 47
HEX
to B8
HEX
.
The first bit at the output of the PRBS generator is applied to the first bit of the first Byte following the inverted
MPEG-2 sync Byte (i.e.B8
HEX
). To aid other synchronisation functions, during the MPEG-2 sync Bytes of the
subsequent 7 transport packets, the PRBS generation continues, but its output is disabled, leaving these Bytes
unrandomised. The period of the PRBS sequence shall therefore be 1,503 Bytes.
The randomisation process is active also when the modulator input bit-stream is non-existent, or when it is non-
compliant with the MPEG-2 transport stream format (i.e. 1 sync Byte + 187 packet Bytes). This is to avoid the
emission of an unmodulated carrier from the modulator.
Reed-Solomon coding
Following the energy dispersal randomisation process, systematic shortened Reed-Solomon encoding is performed
on each randomised MPEG-2 transport packet, with T = 8. This means that 8 erroneous Bytes per transport packet
can be corrected. This process adds 16 parity Bytes to the MPEG-2 transport packet to give a codeword (204, 188).
NOTE: RS coding is applied also to the packet sync Byte, either non-inverted (i.e. 47
HEX
)
or inverted (i.e. B8
HEX
).
Code Generator Polynomial: g(x) = (x+
λ
0
)(x+
λ
1
)(x+
λ
2
) ... (x+
λ
15
), where
λ
= 02
HEX
Field Generator Polynomial: p(x) = x
8
+ x
4
+ x
3
+ x
2
+ 1
The shortened Reed-Solomon code is implemented by appending 51 Bytes, all set to zero, before the information
Bytes at the input of a (255, 239) encoder; after the coding procedure these Bytes are discarded.