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


WCDMA3G_ViterbiDCC


Description: Viterbi decoder for convolutional code
Library: 3GPPFDD 10-99, Channel Coding
Class: SDFWCDMA3G_ViterbiDCC

Parameters

Name

Description

Default

Type

LinkDir

link direction: Downlink, Uplink

Downlink

enum

CodeType

convolutional code type: rate 1/2 K 9 g0 0561 g1 0753, rate 1/3 K 9 g0 0557 g1 0663 g2 0711

rate 1/2 K 9 g0 0561 g1 0753

enum

TrCHType

transport channel type(8kbps for no coding in downlink): 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 coded block data

real

2

TF

input transport format

int

Pin Outputs

Pin

Name

Description

Signal Type

3

Out

output data after decoding

int

Notes/Equations
  1. This model is used to implement Viterbi decoding for convolutional coding, or hard decision for no coding. Decoding is performed block-by-block.
    Coding schemes are listed in the following table.
    Convolutional Coding Schemes
    TrCHType LinkDir CodeType Coding
    DCH_8_kbps Downlink rate 1/2 K 9 g0 0561 g1 0753 no coding
    Uplink rate 1/3 K 9 g0 0557 g1 0663 g2 0711 rate 1/3 coding
    DCH_16_kbps Downlink rate 1/2 K 9 g0 0561 g1 0753 rate 1/2 coding
    Uplink rate 1/3 K 9 g0 0557 g1 0663 g2 0711 rate 1/3 coding
    DCH_32_kbps Downlink rate 1/2 K 9 g0 0561 g1 0753 rate 1/2 coding
    Uplink rate 1/3 K 9 g0 0557 g1 0663 g2 0711 rate 1/3 coding
    DCH_64_kbps any any zero output
    DCH_128_kbps any any zero output
    DCH_256_kbps any any zero output
    DCH_512_kbps any any zero output
    DMCH_2_4_kpbs any rate 1/3 K 9 g0 0557 g1 0663 g2 0711 rate 1/3 coding
    DMCH_12_2_kpbs any rate 1/3 K 9 g0 0557 g1 0663 g2 0711 rate 1/3 coding
    DMCH_64_kbps any any zero output
    DMCH_144_kbps any any zero output
    DMCH_384_kbps any any zero output
    DMCH_2048_kbps Uplink any zero output
    BCH_11_1_kbps Downlink rate 1/2 K 9 g0 0561 g1 0753 rate 1/2 coding
    BCH_12_3_kbps Downlink rate 1/2 K 9 g0 0561 g1 0753 rate 1/2 coding

    Input and output tokens are listed in the following table.
    Input and Output Tokens
    LinkDir TrCHType TTI No. Input Tokens No. Output Tokens
    Downlink DCH_8_kbps (No Coding) 10 ms 96 96
    20 ms 176 176
    40 ms 336 336
    80 ms 656 656
    Downlink DCH_16_kbps (1/2 CC) 10 ms 368 184
    20 ms 688 344
    40 ms 1344 672
    80 ms 2640 1320
    Downlink DCH_32_kbps (1/2 CC) 10 ms 688 344
    20 ms 1344 672
    40 ms 2640 1320
    80 ms 5256 2628
    Uplink DCH_8_kbps (1/3 CC) 10 ms 312 104
    20 ms 552 184
    40 ms 1032 344
    80 ms 2016 672
    Uplink DCH_16_kbps (1/3 CC) 10 ms 552 184
    20 ms 1032 344
    40 ms 2016 672
    80 ms 3960 1320
    Uplink DCH_32_kbps (1/3 CC) 10 ms 1032 344
    20 ms 2016 672
    40 ms 3960 1320
    80 ms 7884 2628
    Downlink/Uplink DMCH_2_4_kbps (1/3 CC) 40 ms 360 120
    Downlink/Uplink DMCH_12_2_kbps (1/3 CC) 20 ms 804 268
    Downlink BCH_11_1_kbps (1/2 CC) 10 ms 135 270
    Downlink BCH_12_3_kbps (1/2 CC) 20 ms 270 540
  2. Model functions
    Input bits are read from the input buffer.
    The input transport format is read; current block number and valid length of every block is calculated. If no coding is selected, data is output directly with hard decision, otherwise Viterbi decoding is performed to every data block.
    Viterbi decoding
    The initial state of register is used to decode since the initial state of encoder is all 0. Not all states can be reached in the first K-1(K is constraint length of convolutional encoder) steps; this feature can be used to calculate the metrics of every possible state and store the paths.
    The metrics and the survivor paths are calculated until the present decoding bit index equals parameter L(L=5K). In this period no output is given.
    The metrics and the survivor path calculations continue and export the previous L th decoding bit until the present decoding bit is the K th bit to the end of the block.
    Tail bit information is used to decode and export the previous L th decoding bit. Since the last K-1 bits of input block are known as all zeros, not all states can be reached in the last few steps. This feature is used to calculate the metrics of every possible state and the survival paths of those states.
    Decoding of the last bit and exporting of all bits in this block. Since the last state is 0 in this block, there is only one survivor after decoding the last bit. All bits in this path as the decoding bits can then be exported.
    All decoded data is output into the output buffer.

References
  1. 3GPP Technical Specification TS25.212 V3.0.0,"Multiplexing and Channel Coding (FDD)," October 1999.
  2. 3GPP Technical Specification TS25.101 V3.0.0,"UE Radio Transmission and Reception (FDD)," October 1999.
  3. 3GPP Technical Specification TS25.104 V3.0.0,"UTRA(BS) FDD: Transmission and Reception," October 1999.
  • No labels