Page tree
Skip to end of metadata
Go to start of metadata


WCDMA3G_CCTrCHDeRMatch


Description: Rate de-matching from transport channels to CCTrCH
Library: 3GPPFDD 10-99, Transport Channel Multiplex
Class: SDFWCDMA3G_CCTrCHDeRMatch

Parameters
Name Description Default Sym Type Range
LinkDir link direction: Downlink, Uplink Downlink   enum  
TrCHPosInCCTrCH type of transport channel position in one frame of CCTrCH: Fixed, Flexible Fixed   enum  
TTI transmission time interval: TTI_10ms, TTI_20ms, TTI_40ms, TTI_80ms TTI_10ms   enum  
PhyCHNum number of physical channels that CCTrCH is mapped to 1 Np int [1, ∞)
DL_PhyCHType downlink physical channel type: DPCH_15kbps_TF0_T2_P4, DPCH_15kbps_TF2_T2_P4, DPCH_30kbps_TF0_T2_P2, DPCH_30kbps_TF2_T2_P2, DPCH_30kbps_TF0_T2_P4, DPCH_30kbps_TF2_T2_P4, DPCH_30kbps_TF0_T2_P8, DPCH_30kbps_TF2_T2_P8, DPCH_60kbps_TF0_T2_P4, DPCH_60kbps_TF2_T2_P4, DPCH_60kbps_TF0_T2_P8, DPCH_60kbps_TF2_T2_P8, DPCH_120kbps_TF8_T4_P8, DPCH_120kbps_TF0_T4_P8, DPCH_240kbps_TF8_T4_P8, DPCH_240kbps_TF0_T4_P8, DPCH_480kbps_TF8_T8_P16, DPCH_480kbps_TF0_T8_P16, DPCH_960kbps_TF8_T8_P16, DPCH_960kbps_TF0_T8_P16, DPCH_1920kbps_TF8_T8_P16, DPCH_1920kbps_TF0_T8_P16, PCCPCH DPCH_30kbps_TF2_T2_P8   enum
UL_DPDCHType uplink dedicated physical data channel type: DPDCH_15kbps, DPDCH_30kbps, DPDCH_60kbps, DPDCH_120kbps, DPDCH_240kbps, DPDCH_480kbps, DPDCH_960kbps DPDCH_30kbps   enum  
TrCHNum number of transport channels to be multiplexed in one CCTrCH 1 Nt int [1, ∞)
TrCHNo current transport channel order number 0   int [0, Nt-1]
TrCHType transport channel type corresponding to maximum bit rate of current transport channel: 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  
† where
TF n = number of transmit format indicator bits
T n = number of transmit power control bits
P n = number of pilot bits
F n = number of feedback indicator bits

Pin Inputs

Pin

Name

Description

Signal Type

1

TFMax

maximum TF of each transport channel

int

2

in

input data of current transport channel

real

3

inSize

input data size

int

4

TFCI

received transport format combination indicator

int

Pin Outputs

Pin

Name

Description

Signal Type

5

out

output data after rate de-matching

real

6

outSize

output data size after rate de-matching

int

Notes/Equations
  1. This model is used for transport channel rate de-matching. The bit number of input data is restored to the bit number of current transport channel. Discontinuous transmission indications are punctured with downlink transport channel fixed positions.
    Each firing, Nb × Sb tokens of out and Nb tokens of outSize are produced when Nt × T tokens of TFMax, Mp × Np × T tokens of in, one token of inSize and T tokens of TFCI are consumed. For uplinks, Mt tokens of out and one token of outSize are produced when Nt tokens of TFMax, Mp × Np tokens of in, one token of inSize and one token of TFCI are consumed. Refer to the following tables for the values of T, Sb, Nb, Mt and Mp.
    Value of T

    TTI

    Frame Number in TTI (T)

    TTI_10 ms

    1

    TTI_20 ms

    2

    TTI_40 ms

    4

    TTI_80 ms

    8


    Values of Sb, Nb, and Mt
    TrCHType TF TTI Downlink Output Data Block Size (Sb) Downlink Output Data Block (Nb) Uplink Output Data Size (Mt)
    DCH_8_kbps 0 10 ms 96 1 312
    1 20 ms 176 1 276
    2 40 ms 336 1 258
    3 80 ms 656 1 252
    DCH_16_kbps 4 10 ms 368 1 552
    5 20 ms 688 1 516
    6 40 ms 1344 1 504
    7 80 ms 2640 1 495
    DCH_32_kbps 8 10 ms 688 1 1032
    9 20 ms 1344 1 1008
    10 40 ms 2640 1 990
    11 80 ms 5256 1 986
    DCH_64_kbps 12 10 ms 1980 1 1980
    13 20 ms 3900 1 1950
    14 40 ms 7740 1 1935
    15 80 ms 7716 2 1929
    DCH_128_kbps 16 10 ms 3900 1 3900
    17 20 ms 7740 1 3870
    18 40 ms 7740 2 3858
    19 80 ms 10269 3 3851
    DCH_256_kbps 20 10 ms 7740 1 7740
    21 20 ms 7740 2 7716
    22 40 ms 10269 3 7702
    23 80 ms 12312 5 7695
    DCH_512_kbps 24 10 ms 7740 2 15432
    25 20 ms 10269 3 15404
    26 40 ms 12312 5 15390
    27 80 ms 13671 9 15380
    DMCH_2_4_kbps 2 40 ms 360 1 105
    DMCH_12_2_kbps 5 20 ms 804 1 495
    DMCH_64_kbps 9 20 ms 3900 1 2295
    DMCH_144_kbps 13 20 ms 8700 1 4700
    DMCH_384_kbps 17 20 ms 11556 2 9525
    DMCH_2048_kbps 21 20 ms     57510
    BCH_11_1_kbps 0 10 ms 270 1  
    BCH_12_3_kbps 5 20 ms 540 1  

    Values of Mp
    Physical Channel Type Bits per Frame (Mp)
    DL_PhyCHType
    DPCH_15kbps_TF0_T2_P4 60
    DPCH_15kbps_TF2_T2_P4 30
    DPCH_30kbps_TF0_T2_P2 240
    DPCH_30kbps_TF2_T2_P2 210
    DPCH_30kbps_TF0_T2_P4 210
    DPCH_30kbps_TF2_T2_P4 180
    DPCH_30kbps_TF0_T2_P8 150
    DPCH_30kbps_TF2_T2_P8 120
    DPCH_60kbps_TF0_T2_P4 510
    DPCH_60kbps_TF2_T2_P4 480
    DPCH_60kbps_TF0_T2_P8 450
    DPCH_60kbps_TF2_T2_P8 420
    DPCH_120kbps_TF8_T4_P8 900
    DPCH_120kbps_TF0_T4_P8 900
    DPCH_240kbps_TF8_T4_P8 2100
    DPCH_240kbps_TF0_T4_P8 2100
    DPCH_480kbps_TF8_T8_P16 4320
    DPCH_480kbps_TF0_T8_P16 4320
    DPCH_960kbps_TF8_T8_P16 9120
    DPCH_960kbps_TF0_T8_P16 9120
    DPCH_1920kbps_TF8_T8_P16 18720
    DPCH_1920kbps_TF0_T8_P16 18720
    PCCPCH 270
    UL_DPDCHType
    DPDCH_15kbps 150
    DPDCH_30kbps 300
    DPDCH_60kbps 600
    DPDCH_120kbps 1200
    DPDCH_240kbps 2400
    DPDCH_480kbps 4800
    DPDCH_960kbps 9600
  2. Model functions
    This model is an inverse process of WCDMA3G_CCTrCHRMatch.
    Notations are as follows:

    Nij for uplink, number of bits in a radio frame after rate matching on transport channel i with transport format combination j; for downlink, an intermediate calculation variable.
    NilTTI (used in downlink only) number of bits in a transmission time interval after rate matching on transport channel i with transport format l.
    Δ Nij for uplink, if positive, number of bits to be punctured in each radio frame on transport channel i with transport format combination j;
    for uplink, if negative, number of bits to be repeated in each radio frame on transport channel i with transport format combination j.
    for downlink, an intermediate calculation variable.
    Δ NilTTI (used in downlink only) if positive, number of bits to be punctured in each transmission time interval on transport channel i with transport format l; if negative, number of bits to be repeated in each transmission time interval on transport channel i with transport format l.
    Fi number of radio frames in transmission time interval of transport channel i.
    ni radio frame number in transmission time interval of transport channel i (0 ≤ ni ≤ Fi).
    q (used in uplink only) average puncturing distance.
    IF ( ni) (used in uplink only) inverse interleaving function of first interleaver.
    S( ni) (used in uplink only) shift of puncturing pattern for radio frame ni.
    TFi (j) transport format of transport channel i for format combination j.
    TFS(i) set of transport format indices l for transport channel i.
    TFCS set of transport format combination indices j.
    N length of data before rate matching
    eini initial value of variable e in rate de-matching pattern determination algorithm.
    eplus increment of variable e in rate de-matching pattern determination algorithm.
    eminus decrement of variable e in rate de-matching pattern determination algorithm.
    X systematic bit in turbo code.
    Y first parity bit in turbo code.
    Y′ second parity bit in turbo code.
    round towards +∞, that is, integer such that
    round towards -∞, that is, integer such that
    absolute value of x

    The o notation is used to replace an index x when the indexed variable Xx does not depend on the index x. In the left wing of an assignment the meaning is that "Xo = Y" is equivalent to "for all x do Xx = Y".
    Because of variable rate source, the data rate of each transport channel can change from one TTI to another. TrCHType corresponds to the maximum bit rate of current transport channel. According to the Values of Sb, Nb, and Mt table, it and TTI determine the output buffer size at the out pin. From input TFCI, the current TF values of all transport channels can be obtained.
  3. Downlink Rate De-Matching
    BCH is mapped to PCCPCH. From the Values of Sb, Nb, and Mt and Values of Mp tables, one frame data size of BCH is equal to that of PCCPCH. So for BCH,  ΔNij = 0. Rate de-matching algorithm in Note 5 is not needed.
    Function DnLk_DeRM_Parameters( ) is used to determine the downlink de-rate matching parameters used in the function DeRMatch_Algorithm( ) in Note 5: N, eini, eplus, eminus. Variable inSize comes from input pin inSize. In downlink, the maximum data size of each transport channel is determined by its maximum TF value from input TFMax according to the Values of Sb, Nb, and Mt table. The current data size of each transport channel NilTTI is based on its TF and TTI values listed in the Values of Sb, Nb, and Mt table.

    NilTTI = Sb*Nb;

    DnLk_DeRM_Parameters(inSize, TFMax, NilTTI, N, eini, eplus, eminus)
    if for fixed positions of transport channels
    then
    if  Δ Ni,oTTI = 0
    then for transport channel i, the output data of the rate de-matching is the same as the input data and the rate de-matching algorithm of Note 5 does not need to be executed.
    else
    if for convolutional codes or  Δ Ni,oTTI > 0 for turbo codes
    then
    // for each transmission time interval of transport channel i with TF l

    Puncturing in WCDMA3G_CCTrCHRMatch if  Δ N < 0, repetition otherwise.
    else // Δ Ni,oTTI < 0 for turbo codes
    // for Y sequence
    // for Y′ sequence, X bits not punctured in WCDMA3G_CCTrCHRMatch.

    // for each transmission time interval of transport channel i with TF l

    Puncturing in WCDMA3G_CCTrCHRMatch if ΔN < 0, repetition otherwise.
    end if
    end if
    else // for flexible positions of transport channels

    if Δ NilTTI = 0
    then for transport channel i, the output data of the rate de-matching is the same as the input data and the rate de-matching algorithm of Note 5 does not need to be executed.
    else
    if for convolutional codes or Δ NilTTI >0 for turbo codes
    then
    // for each transmission time interval of transport channel i with TF l

    Puncturing in WCDMA3G_CCTrCHRMatch if Δ N < 0, repetition otherwise
    else // Δ NilTTI <0 for turbo codes
    // for Y sequence
    // for Y′ sequence, X bits cannot be punctured.

    // for each transmission time interval of transport channel i with TF l

    Puncturing in WCDMA3G_CCTrCHRMatch if Δ N < 0, repetition otherwise
    end if
    end if
    end if
  4. Rate de-matching for uplink
    Function UpLk_DeRM_Parameters( ) is used to determine the uplink de-rate matching parameters used in the function DeRMatch_Algorithm( ) in Note 5: N, eini, eplus, eminus. The value at input pin inSize is the data size of current transport channel after rate matching in WCDMA3G_CCTrCHRMatch. It is equal to (Nij + ΔNij). Because Nij can be obtained according to the Values of Sb, Nb, and Mt table, Δ Nij can be calculated.
    Nij = Mt
    UpLk_DeRM_Parameters (inSize, Nij, N, eini, eplus, eminus)

    if ΔNij = 0
    then the output data of the rate matching is the same as the input data and the de-rate matching algorithm in Note 5 is not needed.
    else
    if for convolutional codes or ΔNi,j >0 for turbo codes
    then
    if q is even
    then // where gcd(q,Fi) means greatest commondivisor of q and Fi
    else

    end if
    for each x = 0 to Fi -1

    end for


    // for each radio frame, calculate the following parameters

    mod a N, if eini = 0 then .


    Puncturing for Δ N <0 in WCDMA3G_CCTrCHRMatch, repeating otherwise
    else // ΔNi,j <0 for turbo codes
    for Y sequence
    for Y′ sequence



    if ( q≤2)

    then for each x = 0 to Fi − 1
    if (Y sequence) ; end if
    if (Y' sequence) ; end if
    end for
    else
    if q is even
    then where gcd(q,Fi) means greatest common divisor of q and Fi
    else q' = q
    end if
    end if
    for each x = 0 to Fi -1

    if (Y sequence) , end if
    if (Y′ sequence) , end if
    end for
    // for each radio frame, calculate the following parameters
    N is as above,


    Puncturing for Δ N <0 in WCDMA3G_CCTrCHRMatch, repeating otherwise
    end if
    end if

  5. Rate de-matching pattern determination
    Function DeRMatch_Algorithm( ) is used to determine the de-rate matching pattern of input data inP. N, eini, eplus, eminus are the parameters given in Note 3 or 4.
    DeRMatch_Algorithm (inP, N, eini, eplus, eminus )
    if puncturing has been performed in WCDMA3G_CCTrCHRMatch

    then // initial error between current and desired puncturing ratio // index of current bit
    do while m<= N
    // update error
    if e<= 0 then // check if bit should be inserted
    insert a neutral data after inP[m]
    // update error
    end if

    end do

    else // repetition has been performed in WCDMA3G_CCTrCHRMatch

    // initial error between current and desired puncturing ratio
    // index of current bit
    do while m<= N
    // update error
    do while e <= 0 // check if bit number m+n should be punctured
    puncture data inP[m+n]
    // update error
    n = n + 1
    end do
    // next bit
    end do

    end if

References
  1. 3GPP Technical Specification TS 25.212 V3.0.0, "Multiplexing and channel coding (FDD)," October 1999
  • No labels