lteSymbolDemodulate

Demodulation and symbol to bit conversion

Syntax

``out = lteSymbolDemodulate(in,mod)``
``out = lteSymbolDemodulate(in,mod,dec)``

Description

example

````out = lteSymbolDemodulate(in,mod)` returns a column vector containing bits resulting from soft constellation demodulation of complex values in vector `in`. The demodulation algorithm assumes the vector of received symbols are normalized to fall on constellation points as defined by `in`. `lteSymbolModulate` provides an output with the expected constellation scaling.```
````out = lteSymbolDemodulate(in,mod,dec)` allows the decision mode, `dec`, to be specified as either `'Hard'` or `'Soft'`. ```

Examples

collapse all

Demodulate complex-valued symbols, specifying hard decision mode.

`out = lteSymbolDemodulate([0.7 - 0.7i; -0.7 + 0.7i],'QPSK','Hard')`
```out = 4×1 0 1 1 0 ```

Input Arguments

collapse all

Input symbols to demodulate, specified as a column vector of complex numeric values. Demodulation is performed assuming the input constellation power normalization in accordance with TS 36.211, Section 7.1 [2], as follows:

• `1/sqrt(2)` for `'BPSK'` and `'QPSK'`

• `1/sqrt(10)` for `'16QAM'`

• `1/sqrt(42)` for `'64QAM'`

• `1/sqrt(170)` for `'256QAM'`

• `1/sqrt(682)` for `'1024QAM'`

Example: For `'BPSK'` and `'QPSK'` ```[0.707 - 0.707i; -0.707 + 0.707i]```

Data Types: `double`
Complex Number Support: Yes

Modulation format, specified as `'BPSK'`, `'QPSK'`, `'16QAM'`, `'64QAM'`, `'256QAM'`, or `'1024QAM'`.

Data Types: `char` | `string`

Decision mode, specified as `'Hard'` or `'Soft'`.

Data Types: `char` | `string`

Output Arguments

collapse all

Demodulated output bits, returned as a numeric column vector. This argument contains bits resulting from soft constellation demodulation of complex values vector, `in`.

`'Hard'` decision mode results in the output containing the bit sequences corresponding to the closest constellation points to the input.

`'Soft'` decision mode results in the output indicating the bit values using the sign (`-ve` for 0, `+ve` for 1). For `'Soft'` decision mode, the magnitude of the output gives a piecewise linear approximation to the log likelihood ratio (LLR) of the demodulated bits. The algorithm used for the LLR approximation is described in [1]. The returned LLRs are scaled such that for a input signal lying on the constellation points in the preceding description, the output values lie on the points with these magnitudes:

• `1` for `'BPSK'`

• `1/sqrt(2)` for `'QPSK'`

• `[1 3]/sqrt(10)` for `'16QAM'`

• `[1 3 5 7]/sqrt(42)` for `'64QAM'`

• `[1 3 5 7 9 11 13 15]/sqrt(170)` for `'256QAM'`

• `[1:2:31]/sqrt(682)` for `'1024QAM'`

Data Types: `double`

References

[1] Tosato, F., and Bisaglia, P. “Simplified soft-output demapper for binary interleaved COFDM with application to HIPERLAN/2.” IEEE International Conference on Communications (ICC) 2002, Vol. 2. pp. 664-668.

[2] 3GPP TS 36.211. “Evolved Universal Terrestrial Radio Access (E-UTRA); Physical Channels and Modulation.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network. URL: https://www.3gpp.org.

Version History

Introduced in R2014a