4.2.2 Transport block concatenation and code block segmentation
25.2123GPPMultiplexing and channel coding (FDD)Release 17TS
All transport blocks in a TTI are serially concatenated. If the number of bits in a TTI is larger than Z, the maximum size of a code block in question, then code block segmentation is performed after the concatenation of the transport blocks. The maximum size of the code blocks depends on whether convolutional coding or turbo coding is used for the TrCH.
4.2.2.1 Concatenation of transport blocks
The bits input to the transport block concatenation are denoted by where i is the TrCH number, m is the transport block number, and Bi is the number of bits in each block (including CRC). The number of transport blocks on TrCH i is denoted by Mi. The bits after concatenation are denoted by
, where i is the TrCH number and Xi=MiBi. They are defined by the following relations:
k = 1, 2, …, Bi
k = Bi + 1, Bi + 2, …, 2Bi
k = 2Bi + 1, 2Bi + 2, …, 3Bi
k = (Mi – 1)Bi + 1, (Mi – 1)Bi + 2, …, MiBi
4.2.2.2 Code block segmentation
Segmentation of the bit sequence from transport block concatenation is performed if Xi>Z. The code blocks after segmentation are of the same size. The number of code blocks on TrCH i is denoted by Ci. If the number of bits input to the segmentation, Xi, is not a multiple of Ci, filler bits are added to the beginning of the first block. If turbo coding is selected and Xi < 40, filler bits are added to the beginning of the code block. The filler bits are transmitted and they are always set to 0. The maximum code block sizes are:
– convolutional coding: Z = 504;
– turbo coding: Z = 5114.
The bits output from code block segmentation, for Ci 0, are denoted by , where i is the TrCH number, r is the code block number, and Ki is the number of bits per code block.
Number of code blocks:
Number of bits in each code block (applicable for Ci 0 only):
if Xi < 40 and Turbo coding is used, then
Ki = 40
else
Ki = Xi / Ci
end if
Number of filler bits: Yi = CiKi – Xi
for k = 1 to Yi — Insertion of filler bits
end for
for k = Yi+1 to Ki
end for
r = 2 — Segmentation
while r Ci
for k = 1 to Ki
I
end for
r = r+1
end while