7 Coding and interleaving

05.013GPPGeneral descriptionPhysical layer on the radio pathTS

7.1 General

A brief description of the coding schemes that are used for the logical channels mentioned in clause 2, plus the synchronization channel (SCH, see subclause 5.2), is made in the following tables. For all the types of channels the following operations are made in this order:

‑ external coding (block coding);

‑ internal coding (convolutional coding);

‑ interleaving.

After coding the different channels (except RACH, SCH, CTSBCH-SB and CTSARCH) are constituted by blocks of coded information bits plus coded header (the purpose of the header is to distinguish between TCH and FACCH blocks). These blocks are interleaved over a number of bursts. The block size and interleaving depth are channel dependent. All these operations are specified in 3GPP TS 05.03.

For the adaptive speech traffic channels a signaling codeword is attached to the block of coded information bits before interleaving. The signaling codeword is a block code representation of a 2-bits inband information word (rate ¼ for the adaptive full rate speech traffic channels and ½ for the adaptive half rate speech traffic channels)

Type of channel

bits/block data+parity+tail1

convolutional code rate

coded bits per block

interleaving depth

TCH/FS

456

8

class I2

182 + 3 + 4

1/2

378

class II

78 + 0 + 0

78

TCH/EFS

456

8

class I2

170 + 15 + 4

1/2

378

class II

74 + 4 + 0

78

TCH/HS

228

4

class I3

95+3+6

104/211

211

class II

17+0+0

17

TCH/AFS12.24

456

8

Class I5

244 + 6 + 4

127/224

448

TCH/AFS10.24

456

8

Class I6

204 + 6 + 4

107/224

448

TCH/AFS7.954

456

8

Class I7

159 + 6 + 6

171/448

448

TCH/AFS7.44

456

8

Class I8

148 + 6 + 4

79/224

448

TCH/AFS6.74

456

8

Class I9

134 + 6 + 4

9/28

448

TCH/AFS5.94

456

8

Class I10

118 + 6 + 6

65/224

448

TCH/AFS5.154

456

8

Class I11

103 + 6 + 4

113/448

448

TCH/AFS4.754

456

8

Class I12

95 + 6 + 6

107/448

448

TCH/AHS7.9513

228

4

Class I14

123 + 6 + 4

133/188

188

Class II

36+0+0

36

TCH/AHS7.413

228

4

Class I15

120 + 6 + 4

65/98

196

Class II

28+0+0

28

TCH/AHS6.713

228

4

Class I16

110 + 6 + 4

3/5

200

Class II

24+0+0

24

TCH/AHS5.913

228

4

Class I17

102 + 6 + 4

7/13

208

Class II

16+0+0

16

TCH/AHS5.1513

228

4

Class I18

91 + 6 + 4

101/212

212

Class II

12+0+0

12

TCH/AHS4.7513

228

4

Class I19

83 + 6 + 6

95/212

212

Class II

12+0+0

12

(continued)

(concluded)

Type of channel

bits/block data+parity+tail1

convolutional code rate

coded bits per block

interleaving depth

TCH/F14.4

TCH/F9.6

290 + 0 + 4

4*60 + 0 + 4

294/456

244/456

294/456

456

19

19

TCH/F4.8

60 + 0 + 16

1/3

228

19

TCH/H4.8

4*60 + 0 + 4

244/456

456

19

TCH/F2.4

72 + 0 + 4

1/6

456

8

TCH/H2.4

72 + 0 + 4

1/3

228

19

FACCH/F

184 + 40 + 4

1/2

456

8

E-FACCH/F

184 + 40 + 4

1/2

456

4

FACCH/H

184 + 40 + 4

1/2

456

6

SDCCHs SACCHs BCCH NCH AGCH PCH

CBCH

184 + 40 + 4

1/2

456

4

RACH

8 + 6 + 4

1/2

36

1

SCH

25 + 10 + 4

1/2

78

1

CTSBCH-SB

25 + 10 + 4

1/2

78

1

CTSPCH

184 + 40 + 4

1/2

456

4

CTSARCH

25 + 10 + 4

1/2

78

1

CTSAGCH

184 + 40 + 4

1/2

456

4

NOTE 1: The tail bits mentioned here are the tail bits of the convolutional code.

NOTE 2: The 3 parity bits for TCH/FS detect an error on 50 bits of class I.

NOTE 3: The 3 parity bits for TCH/HS detect an error on 22 bits of class I.

NOTE 4: For TCH/AFS an 8 bits in band signalling codeword is attached to the block of coded information before interleaving.
A dedicated block structure to carry the comfort noise information associated with the adaptive full rate speech traffic channels is also specified in 3GPP TS 05.03.

NOTE 5: The 6 parity bits for TCH/AFS12.2 detect an error on 81 bits of class I.

NOTE 6: The 6 parity bits for TCH/AFS10.2 detect an error on 65 bits of class I.

NOTE 7: The 6 parity bits for TCH/AFS7.95 detect an error on 75 bits of class I.

NOTE 8: The 6 parity bits for TCH/AFS7.4 detect an error on 61 bits of class I.

NOTE 9: The 6 parity bits for TCH/AFS6.7 detect an error on 55 bits of class I.

NOTE 10: The 6 parity bits for TCH/AFS5.9 detect an error on 55 bits of class I.

NOTE 11: The 6 parity bits for TCH/AFS5.15 detect an error on 49 bits of class I.

NOTE 12: The 6 parity bits for TCH/AFS4.75 detect an error on 39 bits of class I.

NOTE 13: For TCH/AHS a 4 bits in band signalling codeword is attached to the block of coded information before interleaving
A dedicated block structure to carry the comfort noise information associated with the adaptive half rate speech traffic channels is also specified in 3GPP TS 05.03.

NOTE 14: The 6 parity bits for TCH/AHS7.95 detect an error on 67 bits of class I.

NOTE 15: The 6 parity bits for TCH/AHS7.4 detect an error on 61 bits of class I.

NOTE 16: The 6 parity bits for TCH/AHS6.7 detect an error on 55 bits of class I.

NOTE 17: The 6 parity bits for TCH/AHS5.9 detect an error on 55 bits of class I.

NOTE 18: The 6 parity bits for TCH/AHS5.15 detect an error on 49 bits of class I.

NOTE 19: The 6 parity bits for TCH/AHS4.75 detect an error on 39 bits of class I.

Type of channel

bits/block data+parity+tail1

Reed-Solomon code rate

convolutional code rate

coded bits per block

interleaving depth

E-TCH/F43.2

E-TCH/F32.0

E-TCH/F28.8

870 + 0 + 6

640 + 0 + 6

580 + 0 + 6

N/A

N/A

73/85

876/1368

646/1392

686/1368

1368

1392

1368

19

12

19

7.2 Packet Traffic and Control Channels

All packet traffic and control channels, except PRACH, use rectangular interleaving of one Radio Block over four bursts in consecutive TDMA frames.

7.2.1 Channel coding for PDTCH

7.2.1.1 Channel coding for GPRS PDTCH

Four different coding schemes, CS-1 to CS-4, are defined for the GPRS Radio Blocks carrying RLC data blocks. For the Radio Blocks carrying RLC/MAC Control blocks code CS-1 is always used. The exception are messages that use the existing Access Burst [9] (e.g. Packet Channel Request). An additional coding scheme is defined for the Access Burst that includes 11 information bits.

The first step of the coding procedure is to add a Block Check Sequence (BCS) for error detection. For CS-1 – CS-3, the second step consists of pre-coding USF (except for CS-1), adding four tail bits and a convolutional coding for error correction that is punctured to give the desired coding rate. For CS-4 there is no coding for error correction.

The details of the codes are shown in the table below, including:

– the length of each field;

– the number of coded bits (after adding tail bits and convolutional coding);

– the number of punctured bits;

– the data rate, including the RLC header and RLC information.

Scheme

Code rate

USF

Pre-coded USF

Radio Block excl. USF and BCS

BCS

Tail

Coded
bits

Punctured
bits

CS-1

1/2

3

3

181

40

4

456

0

CS-2

»2/3

3

6

268

16

4

588

132

CS-3

»3/4

3

6

312

16

4

676

220

CS-4

1

3

12

428

16

456

CS-1 is the same coding scheme as specified for SDCCH. It consists of a half rate convolutional code for FEC and a 40 bit FIRE code for BCS (and optionally FEC). CS-2 and CS-3 are punctured versions of the same half rate convolutional code as CS-1 for FEC. CS-4 has no FEC.

The USF has 8 states, which are represented by a binary 3 bit field in the MAC Header.

All coding schemes are mandatory for MSs supporting GPRS. Only CS-1 is mandatory for the network.

7.2.1.2 Channel coding for EGPRS PDTCH

Nine different modulation and coding schemes, MCS-1 to MCS-9, are defined for the EGPRS Radio Blocks (4 bursts, 20ms) carrying RLC data blocks. For the Radio Blocks carrying RLC/MAC Control blocks code CS-1 is always used. The exception are messages that use the existing Access Burst [9] (e.g. Packet Channel Request). An additional coding scheme is defined for the Access Burst that includes 11 information bits.

To ensure strong header protection, the header part of the Radio Block is independently coded from the data part of the Radio Block (8 bit CRC calculated over the header -excl. USF- for error detection, followed by rate 1/3 convolutional coding –and eventually puncturing- for error correction).

The MCSs are divided into different families A, B and C. Each family has a different basic unit of payload (see 3GPP TS 03.64 [16]). Different code rates within a family are achieved by transmitting a different number of payload units within one Radio Block. For families A and B, 1, 2 or 4 payload units are transmitted, for family C, only 1 or 2 payload units are transmitted.

When 4 payload units are transmitted (MCS-7, MCS-8 and MCS-9), these are splitted into two separate RLC blocks (i.e. with separate sequence numbers and block check sequences).

The first step of the coding procedure is to add a Block Check Sequence (BCS) for error detection.

The second step consists of adding six tail bits (TB) and a 1/3 rate convolutional coding for error correction that is punctured to give the desired coding rate.

The USF has 8 states, which are represented by a binary 3 bit field in the MAC Header. The USF is encoded to 12 symbols similarly to GPRS, (12 bits for GMSK modes and 36 bits for 8PSK modes).

Coding schemes MCS-1 to MCS-9 are mandatory for MSs supporting EGPRS. A network supporting EGPRS may support only some of the MCSs.

The details of the EGPRS coding schemes are shown in the table below. An exhaustive description of the EGPRS coding schemes can be found in 3GPP TS 05.03 [9].

Coding parameters for the EGPRS coding schemes

Scheme

Code rate

Header Code rate

Modulation

RLC blocks per Radio Block (20ms)

Raw Data within one Radio Block

Family

BCS

Tail payload

HCS

Data rate
kb/s

MCS-9

1.0

0.36

8PSK

2

2×592

A

2×12

2×6

8

59.2

MCS-8

0.92

0.36

2

2×544

A

54.4

MCS-7

0.76

0.36

2

2×448

B

44.8

MCS-6

0.49

1/3

1

592

48+544

A

12

6

29.6

27.2

MCS-5

0.37

1/3

1

448

B

22.4

MCS-4

1.0

0.53

GMSK

1

352

C

17.6

MCS-3

0.85

0.53

1

296

48+248 and 296

A

14.8

13.6

MCS-2

0.66

0.53

1

224

B

11.2

MCS-1

0.53

0.53

1

176

C

8.8

Note: The italic captions indicate the 6 octets of padding when retransmitting MCS-8 block with MCS-3 or MCS-6. For MCS-3, the 6 octets of padding are sent every second block (see 3GPP TS 04.60).

7.2.2 Channel coding for PACCH, PBCCH, PAGCH, PPCH, PNCH, CPBCCH, CPAGCH, CPPCH, CPNCH, and CSCH

The channel coding for the PACCH, PBCCH, PAGCH, PPCH, PNCH, CPBCCH, CPAGCH, CPPCH, and CPNCH is corresponding to the coding scheme CS-1. The channel coding for the CSCH is identical to SCH.

7.2.3 Channel Coding for the PRACH

Two types of packet random access burst may be transmitted on the PRACH: an 8 information bits random access burst or an 11 information bits random access burst called the extended packet random access burst. The MS shall support both random access bursts. The channel coding used for the burst carrying the 8 data bit packet random access uplink message is identical to the coding of the random access burst on the RACH. The channel coding used for the burst carrying the 11 data bit packet random access uplink message is a punctured version of the coding of the random access burst on the RACH