# LTE OFDM Demodulator

Demodulate time-domain OFDM samples and return LTE resource grid

• Library:
• Wireless HDL Toolbox / Modulation

## Description

The LTE OFDM Demodulator block implements an algorithm for demodulating LTE signals specified by LTE standard TS 36.212 [1]. The block returns the LTE resource grid that is used for cell ID detection, master information block (MIB) recovery, system information block (SIB)1 recovery, and further decoding.

You can select the number of downlink resource blocks (NDLRB) and choose either normal or extended cyclic prefix (CP), as described in the LTE standard. The block implements a CP fraction to support windowed LTE transmission and provides a parameter to configure the location of prefix removal.

The block provides an interface and architecture suitable for HDL code generation and hardware deployment.

The block accepts input data either at maximum rate of 30.72 MHz, or at a sample rate corresponding to NDLRB. The input sampling rates for NDLRB 6, 15, 25, 50, 75, and 100 are 1.92 MHz, 3.84 MHz, 7.68 MHz, 15.36 MHz, 30.72 MHz, and 30.72 MHz, respectively. The block uses a 2048-point fast fourier transform (FFT) for all values of NDLRB and returns the number of resource grid samples needed for the selected NDLRB. By default, the block excludes the direct current (DC) carrier.

The latency from the first input sample to the first output sample depends on your selection of the NDLRB and type of cyclic prefix, as shown in this table.

Maximum Sample RateCorresponding to NDLRB Sample Rate
NDLRBLatency — Normal CPLatency — Extended CPLatency — Normal CPLatency — Extended CP
65295564766546676
155241559365206564
255181553366606748
505031538367006876
754881523369307282
1004731508367807132

## Ports

### Input

expand all

Input data, specified as a signed real or complex number.

`double` and `single` data types are supported for simulation, but not for HDL code generation.

Data Types: `single` | `double` | `int8` | `int16` | `int32` | `signed fixed point`
Complex Number Support: Yes

Control signal that indicates when the sample from the data input port is valid. When this value is `1` (true), the block captures the values on the data input port. When this value is `0` (false), the block ignores the input data samples.

Data Types: `Boolean`

Number of downlink resource blocks, specified as `6`, `15`, `25`, `50`, `75`, or `100`. NDLRB must be one of these six values specified by LTE standard TS 36.212 [1]. The block samples this port at the start of each subframe and ignores any changes within a subframe.

#### Dependencies

To enable this port, set the NDLRB source parameter to `Input port`.

Data Types: `uint8` | `uint16` | `uint32` | `fixdt(0,K,0), K >= 7` | `single` | `double`

Type of CP, specified as a `Boolean` scalar. When this value is `0` (false), the block selects normal CP. When this value is `1` (true), the block selects extended CP. The block samples this port at the start of each subframe and ignores any changes within a subframe.

#### Dependencies

To enable this port, set the Cyclic prefix source parameter to `Input port`.

Data Types: `Boolean`

Clears internal state, specified as a `Boolean` scalar. When this value is `1` (true), the block stops the current calculation and clears all internal states. When this value is `0` (false), and the valid input value is `1` (true), the block begins a new subframe.

#### Dependencies

To enable this port, select the Enable reset input port parameter.

Data Types: `Boolean`

### Output

expand all

Output data, returned as a signed real or complex number. The data type is the same as the data type of the input data port. When you clear the Divide butterfly outputs by two parameter, the output word length increases by 11 bits to avoid overflow.

Data Types: `single` | `double` | `int8` | `int16` | `int32` | `signed fixed point`
Complex Number Support: Yes

Control signal that indicates when the data output port is valid. The block sets this value to `1` (true) when the resource grid samples are available on the data output port. When Remove DC subcarrier is selected, this value is set to `0` (false) at the center of the output samples to exclude the DC carrier.

Data Types: `Boolean`

Control signal that indicates when the block is ready for new input data. When this value is `1` (true), the block accepts input data in the next time step. When this value is `0` (false), the block ignores input data in the next time step.

#### Dependencies

To enable this port, set the Input data sample rate parameter to ```Match input data sample rate to NDLRB```.

Data Types: `Boolean`

## Parameters

expand all

### Main

You can set NDLRB with an input port or by selecting a value for the parameter. To enable the NDLRB parameter, select `Property`. To enable the NDLRB port, select ```Input port```.

Number of downlink resource blocks, specified as `6`, `15`, `25`, `50`, `75`, or `100`. NDLRB must be one of these six values specified by LTE standard TS 36.212 [1].

#### Dependencies

To enable this parameter, set the NDLRB source parameter to `Property`.

You can set the cyclic prefix by selecting a parameter value or using an input port. To enable the Cyclic prefix type parameter, select `Property`. To enable the cyclicPrefixType port, select `Input port`.

Type of cyclic prefix, specified as `Normal` or `Extended`.

#### Dependencies

To enable this parameter, set the Cyclic prefix source parameter to `Property`.

Cyclic prefix fraction, specified as a value from 0 to 1, inclusive. This parameter specifies the percentage of CP samples that the block removes from the start of the OFDM symbol. The block shifts the remaining CP samples to the end of the OFDM symbol.

When this parameter is `0.55`, the block removes 55% of the CP from the beginning of the symbol, and shifts 45% to the end of the symbol. When you set this parameter to `1`, the block removes 100% of the CP from the start of the OFDM symbol, and does not shift any samples to the end.

CP fraction provides windowed LTE transmission support. When a transmitter applies windowing, symbols are cyclically extended and overlapped. In a receiver design, the best location to remove the prefix and extract the symbol depends on windowing settings at the transmitter. For more information on windowing for an LTE transmitter, see the Algorithms section of `lteOFDMModulate` (LTE Toolbox) function.

When you select this parameter, the block excludes the DC subcarrier in the resource grid output. The DC subcarrier is present at the center of the 12×NDLRB subcarriers. The block excludes the DC subcarrier by setting the valid signal low (`false`) for the center cycle of the output subcarriers.

Select this parameter to enable the reset port on the block icon.

This parameter specifies the type of sample rate to select for the input data.

• To provide an input data sample rate of 30.72 MHz, select ```Use maximum input data sample rate```.

• To provide an input data sample rate based on the NDLRB parameter, select ```Match input data sample rate to NDLRB```. The input sampling rates for NDLRB values `6`, `15`, `25`, `50`, `75`, and `100` are 1.92 MHz, 3.84 MHz, 7.68 MHz, 15.36 MHz, 30.72 MHz, and 30.72 MHz, respectively.

### FFT Parameters

This parameter controls the scaling option of the FFT block inside the LTE OFDM Demodulator.

When you select this parameter, the FFT implements an overall 1/N scale factor by dividing the output of each butterfly multiplication by two. This adjustment keeps the output of the FFT in the same amplitude range as its input. If you disable this parameter, the block avoids overflow by increasing the word length by one bit after each butterfly multiplication.

This parameter specifies the type of rounding mode for internal fixed-point calculations. For more information about rounding modes, see Rounding Modes. When the input is any integer data type or fixed-point data type, the FFT algorithm uses fixed-point arithmetic for internal calculations. This parameter does not apply when the input is of data type `single` or `double`. Rounding applies to twiddle-factor multiplication and scaling operations.

## Algorithms

expand all

The LTE OFDM Demodulator block operation sequence is carried over using these blocks: Data Rate Controller, CP Prefix Removal, Sample Repeater, FFT Shift, FFT, and Resource Grid Selection. The Data Rate Controller block helps in controlling the input data rate by generating a ready signal. The CP Removal block removes the part of the CP at the start of a symbol and the remainder of the CP at the end of the symbol. The Sample Repeater block repeats the samples based on the NDLRB values. The block repeats the samples until they form 2048 samples and converts the input data rate to the maximum rate supported by LTE. The FFT Shift block performs a time-domain FFT shift. The FFT block converts the frequency-domain signal to a time-domain signal. The Resource Grid Selection block extracts the resource grid elements based on the NDLRB and the input data sample rate, and provides the demodulated output. The parameters shown in this figure configure the behavior of the block.

## References

[1] 3GPP TS 36.212. "Multiplexing and channel coding." 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). URL: https://www.3gpp.org.

[2] Sesia, S., I. Toufik, and M. Baker, eds. LTE - The UMTS Long Term Evolution : From Theory to Practice. Hoboken, NJ: John Wiley & Sons Ltd., 2009.

## Version History

Introduced in R2018a