Rate matching for LDPC

This module matches the encoded bits to number of target bits. Its consists of two modules:

  • Bit Selection

  • Bit Interleaver

The details about these modules are provided in following sections:

The parameters required to configure the LDPC rate matching can be generated using following module.

class toolkit5G.Ratematcher.LDPC.RatematchParameters(numTargetBits, numLDPCout, numCodeBlocks, numLayers, modOrder, baseGraph, liftingFactor, rvID, enableLBRM=False, tbSize=None)[source]

This class returns the Parameters of Rate Matching for LDPC

Parameters:
  • numTargetBits (int) – Number of Target Bits. It takes integer values (>0).

  • numLDPCout (int) – Number of LDPC Coded bits.

  • numCodeBlocks (int) – Number of Code Blocks. It takes integer values (>0).

  • numLayers (int) – Number of Layers. It takes integer values \(\in \{1,2,3,4\}\).

  • modOrder (int) – Modulation order. It takes integer values \(\in \{1, 2, 4, 6, 8, 10\}\).

  • baseGraph (str) – LDPC Base Graph takes values from the set \(\in \{\) “BG1”, “BG2” \(\}\).

  • liftingFactor (int) – Lifting Factor. It should be a positive scalar or numpy integer. Please refer to 3GPP TS 38.211 Table 5.3.2-1.

  • rvID (int) – Redundancy Version ID. It takes integer values \(\in \{0,1,2,3\}\).

  • enableLBRM (bool) – Enable / Disable Limited Buffer Rate Matching.

Output:
  • numGroups, numCBinGroups, numBitinGroups, k0

  • Number of Groups (int)

  • Number of Code blocks with the groups (int)

  • Number of Rate Matched Output bits of the corresponding group (int)

  • Starting index (int)

Raises:

ValueError – Invalid values/ Invalid datatype are passed

property baseGraph

LDPC Base Graph

property enableLBRM

Enabling / Disabling Limited Buffer Rate Matching

property k0

Starting Index for different redundancy versions

property liftingFactor

Lifting Factor

property modOrder

Modulation Order

property numCodeBlocks

Number of Code Blocks

property numCodedBits

Number of Target Bits

property numLayers

Number of Layers

property rvID

Redundancy version ID

property tbSize

Transport Block Size