# nrRateMatchPolar

Polar rate matching

## Syntax

``rm = nrRateMatchPolar(enc,K,E)``
``rm = nrRateMatchPolar(enc,K,E,ibil)``

## Description

example

````rm = nrRateMatchPolar(enc,K,E)` returns the rate-matched output of length `E` for the polar-encoded input `enc` and information block length `K`, as specified in TS 38.212 Section 5.4.1 [1]. In this syntax, coded-bit interleaving is disabled. Use this syntax for downlink (DL) configuration.```
````rm = nrRateMatchPolar(enc,K,E,ibil)` controls coded-bit interleaving. To enable coded-bit interleaving, set `ibil` to `true`. Use this syntax for uplink (UL) configuration with coded-bit interleaving enabled.```

## Examples

collapse all

Create a polar encoded random block of 512 bits and perform polar rate matching. Specify an information block of 56 bits and a rate-matched output of 864 bits.

```N = 2^9; K = 56; E = 864; in = randi([0 1],N,1); out = nrRateMatchPolar(in,K,E)```
```out = 864×1 1 1 0 1 1 0 0 1 1 1 ⋮ ```

## Input Arguments

collapse all

Polar-encoded message, specified as a column vector of binary values.

The length of the polar-encoded message, `N`, is a power of two. For more information, see TS 38.212 Section 5.3.1.

• For DL configuration, `N` ≤ 512.

• For UL configuration, `N` ≤ 1024.

Data Types: `double` | `int8`

Length of information block in bits, specified as a positive integer. `K` includes the CRC bits if applicable.

Data Types: `double`

Rate-matched output length in bits, specified as a positive integer.

• If 18 ≤ `K` ≤ 25, `E` must be in the range `K` + 3 < `E` ≤ 8192.

• If `K` > 30, `E` must be in the range `K` < `E` ≤ 8192.

Data Types: `double`

Coded-bit interleaving, specified as `false` or `true`.

• For DL configuration, specify `false`.

• For UL configuration, specify `true`.

Data Types: `logical`

## Output Arguments

collapse all

Rate-matched output data, returned as an `E`-by-1 column vector of binary values. `rm` inherits its data type from the encoded message `enc`.

Data Types: `double` | `int8`

## References

[1] 3GPP TS 38.212. “NR; Multiplexing and channel coding.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network.

## Version History

Introduced in R2018b