WCDMA3G_CodeBlkSeg
Description: Transport block concatenation and code block segmentation
Library: 3GPPFDD 10-99, Channel Coding
Class: SDFWCDMA3G_CodeBlkSeg
Parameters
Name |
Description |
Default |
Type |
---|---|---|---|
LinkDir |
link direction: Downlink, Uplink |
Downlink |
enum |
TrCHType |
transport channel type: DCH_8_kbps, DCH_16_kbps, DCH_32_kbps, DCH_64_kbps, DCH_128_kbps, DCH_256_kbps, DCH_512_kbps, DMCH_2_4_kbps, DMCH_12_2_kbps, DMCH_64_kbps, DMCH_144_kbps, DMCH_384_kbps, DMCH_2048_kbps, BCH_11_1_kbps, BCH_12_3_kbps |
DCH_8_kbps |
enum |
TTI |
transmission time interval: TTI_10ms, TTI_20ms, TTI_40ms, TTI_80ms |
TTI_10ms |
enum |
Pin Inputs
Pin |
Name |
Description |
Signal Type |
---|---|---|---|
1 |
in |
input transport block data |
int |
2 |
TF |
input transport format |
int |
Pin Outputs
Pin |
Name |
Description |
Signal Type |
---|---|---|---|
3 |
out |
output data after concatenation and segmentation |
int |
4 |
CurSize |
code block size after concatenation and segmentation |
int |
Notes/Equations
- This model is used to implement transport block concatenation and code block segmentation. All transport blocks in one transmission time interval are serially concatenated. If the number of bits in one TTI is larger than the maximum size of code block, the code block segmentation is performed after the concatenation of all transport blocks. The maximum size of the code blocks depend on the channel coding scheme (convolutional coding, turbo coding, no coding) used for transport channel in downlink and uplink. The number of input and output tokens are listed in the following table.
Input and Output Tokens
DCHType TTI Input Tokens Output Tokens in TF out Downlink out Uplink CurSize Tokens DCH_8_kbps 10 ms 96 1 96 104 1 20 ms 176 2 176 184 1 40 ms 336 4 336 344 1 80 ms 656 8 656 672 1 DCH_16_kbps 10 ms 176 1 184 184 1 20 ms 336 2 344 344 1 40 ms 656 4 672 672 2 80 ms 1296 8 1320 1320 3 DCH_32_kbps 10 ms 336 1 344 344 1 20 ms 656 2 672 672 2 40 ms 1296 4 1320 1320 3 80 ms 2576 8 2628 2628 6 DCH_64_kbps 10 ms 656 1 656 656 1 20 ms 1296 2 1296 1296 1 40 ms 2576 4 2576 2576 1 80 ms 5136 8 5136 5136 2 DCH_128_kbps 10 ms 1296 1 1296 1296 1 20 ms 2576 2 2576 2576 1 40 ms 5136 4 5136 5136 2 80 ms 10256 8 10257 10257 3 DCH_256_kbps 10 ms 2576 1 2576 2576 1 20 ms 5136 2 5136 5136 2 40 ms 10256 4 10257 10257 3 80 ms 20496 8 20500 20500 5 DCH_512_kbps 10 ms 5136 1 5136 5136 2 20 ms 10256 2 10257 10257 3 40 ms 20496 4 20500 20500 5 80 ms 40976 8 40977 40977 9 DMCH_2_4_kbps 40 ms 112 4 120 120 1 DMCH_12_2_kbps 20 ms 260 2 268 268 1 DMCH_64_kbps 20 ms 1296 2 1296 1296 1 DMCH_144_kbps 20 ms 2896 2 2896 2896 1 DMCH_384_kbps 20 ms 7696 2 7696 7696 2 DMCH_2048_kbps 20 ms 40976 2 40977 9 BCH_11_1_kbps 10 ms 127 1 135 1 BCH_12_3_kbps 20 ms 262 2 270 1 - Model functions
Input bits are read from the input buffer. The input transport format is read to determine which coding scheme to use.
Concatenation of transport blocks is performed.
Bits input to the transport block concatenation are denoted by bim1,bim2,...bimBi, where i is the TrCH number, m is the transport block number, Bi is the number of bits in each block (including CRC). The number of transport block on TrCH i is denoted by Mi. Bits after concatenation are denoted by xi1, xi2, ..., xiXi, where i is the TrCH number and Xi = Mi Bi. These are defined by the following relations:
In a W-CDMA system, only one transport block is produced within one TTI, so concatenation is only performed while Mi = 1.xik = bi1k, k = 1,2,...,Bi
xik = bi,2,(k-Bi), k = Bi+1,Bi+2,...,2Bi.
.
.
xik = bi,Mi,(k-(Mi-1)Bi), k = (Mi-1)Bi+1,(Mi-1)Bi+2, ..., MiBi
If data size Xi after concatenation is larger than the maximum code block size Z, the segmentation of bit sequence is performed. 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 last block. The filler bits are transmitted and these are always set to 0. The maximum code block size are:
Bits output from code block segmentation are denoted by Oir1,Oir2,...,OirKi, where i is TrCH number, r is code block number, Ki is number of bits.convolutional coding: Z = 504
turbo coding: Z = 5114
no coding: Z = unlimited
If Xi <= Z, then Oi1k =Xik, and Ki =XiNumber of code blocks: Ci = [ Xi / Z ]
Number of bits in each code block: Ki = [ Xi / Ci ]
Number of filler bits: Yi = Ci Ki - Xi
If Xi > Z, thenOi1k = xik, k = 1,2,...,Ki
Oi2k = xi,(k+Ki), k = 1,2,...,Ki.
.
.
OiCik = xi,(k+(Ci-1)Ki), k = 1,2,...,Ki - Yi
OiCik = 0, k = Ki - Yi+ 1, ..., Ki
The following figure illustrates the position of the code block for the coding schemes.
All data and current valid data size are output into the output buffer.
Position of Code Blocks for Different Channel Coding Schemes
References
- 3GPP Technical Specification TS25.212 V3.0.0,"Multiplexing and Channel Coding (FDD)," October 1999.
- 3GPP Technical Specification TS25.101 V3.0.0,"UE Radio transmission and Reception (FDD)," October 1999.
- 3GPP Technical Specification TS25.104 V3.0.0,"UTRA(BS) FDD: transmission and Reception," October 1999.