Documentation

This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English verison of the page.

lteDLChannelEstimate

Syntax

• ``````[hest,noisest] = lteDLChannelEstimate(enb,rxgrid)``````
• ``````[hest,noisest] = lteDLChannelEstimate(enb,cec,rxgrid)``````
example
• ``````[hest,noisest] = lteDLChannelEstimate(enb,pdsch,cec,rxgrid)``````
• ``````[hest,noisest] = lteDLChannelEstimate(enb,epdcch,cec,rxgrid)``````

Description

``````[hest,noisest] = lteDLChannelEstimate(enb,rxgrid)``` returns the estimated channel response between each transmit and receive antenna,`hest`, and an estimate of the noise power spectral density on the reference signal subcarriers, `noisest`, given the cell-wide settings structure, `enb`, and the resource grid, `rxgrid`. For more information, see Channel Estimation Processing.```

example

``````[hest,noisest] = lteDLChannelEstimate(enb,cec,rxgrid)``` specifies channel estimation method and parameters in the channel estimator configuration structure `cec`. ```
``````[hest,noisest] = lteDLChannelEstimate(enb,pdsch,cec,rxgrid)``` specifies the Physical Downlink Shared Channel (PDSCH) transmission configuration, `pdsch`.```
``````[hest,noisest] = lteDLChannelEstimate(enb,epdcch,cec,rxgrid)``` specifies the Enhanced Physical Downlink Control Channel (EPDCCH) transmission configuration, `epdcch`.```

Examples

collapse all

Perform channel estimation on an RMC R.12 (4-antenna transmit diversity) waveform.

Initialize a cell-wide configuration strurcture for transmission of RMC R.12.

```rc = 'R.12'; enb = lteRMCDL(rc); ```

Initialize channel estimator configuration (`cec`). The averaging window size is configured in terms of resource elements (REs), time and frequency. Here cubic interpolation will be used with an averaging window of 1-by-1 REs. No noise estimate is required and there is no need for averaging because no noise is added for this example. Therefore, it is acceptable to set the frequency window and time window size to '1'.

```cec.FreqWindow = 1; cec.TimeWindow = 1; cec.InterpType = 'cubic'; cec.PilotAverage = 'UserDefined'; cec.InterpWinSize = 3; cec.InterpWindow = 'Causal'; ```

Use `lteRMCDLTool` and the cell-wide configuration structure to generate a transmit waveform.

```txWaveform = lteRMCDLTool(enb,[1;0;0;1]); ```

Model the propagation channel by combining all transmit antennas onto one receive antenna.

Perform OFDM demodulation.

With the cell parameters defined, channel estimation configured and a received waveform demodulated the channel characteristics for the received resource grid is estimated. Display the size of the channel estimate. `hest` is an M-by-N-by-NRxAnts-by-CellRefP array.

```rxWaveform = sum(txWaveform,2); rxGrid = lteOFDMDemodulate(enb,rxWaveform); hest = lteDLChannelEstimate(enb,cec,rxGrid); size(hest) ```
```ans = 72 140 1 4 ```

Input Arguments

collapse all

eNodeB cell-wide settings, specified as a structure that can contain these parameter fields.

Parameter FieldRequired or OptionalValuesDescription
`NDLRB`Required

Scalar integer from 6 to 110

Number of downlink resource blocks. (${N}_{\text{RB}}^{\text{DL}}$)

`CellRefP`Required

1, 2, 4

Number of cell-specific reference signal (CRS) antenna ports

`NCellID`Required

Integer from 0 to 503

Physical layer cell identity

`NSubframe`Required

0 (default), nonnegative scalar integer

Subframe number

`CyclicPrefix`Optional

`'Normal'` (default), `'Extended'`

Cyclic prefix length

`DuplexMode`Optional

`'FDD'` (default), `'TDD'`

Duplexing mode, specified as:

• `'FDD'` for Frequency Division Duplex or

• `'TDD'` for Time Division Duplex

The following parameters are applicable when `DuplexMode` is set to `'TDD'`.

`TDDConfig`Optional

0 (default), 1, 2, 3, 4, 5, 6

`SSC`Optional

0 (default), 1, 2, 3, 4, 5, 6, 7, 8, 9

Special subframe configuration (SSC)

The following parameters are applicable when `cec``.``Reference` is set to `'CSIRS'`. See footnote 1.

`CSIRefP`Required

1 (default), 2, 4, 8

Array of number of CSI-RS antenna ports

`CSIRSConfig`Required

Scalar integer

Array CSI-RS configuration indices. See TS 36.211, Table 6.10.5.2-1.

`CSIRSPeriod`Optional

`'On'` (default), `'Off'`, `Icsi-rs` (0,...,154), ```[Tcsi-rs Dcsi-rs]```. You can also specify values in a cell array of configurations for each resource.

CSI-RS subframe configuration.

1. CSI-RS-based channel estimation is strictly only valid within the standard for the `'Port7-14'` transmission scheme. For more information, see TS 36.211 [3], Section 6.10.5.3.

Resource element array, specified as a 3-D numeric matrix of size M-by-N-by-`NRxAnts`. The second dimension of `rxgrid` can contain any whole number of subframes worth of OFDM symbols. For a normal cyclic prefix, each subframe contains 14 OFDM symbols; therefore, N is a multiple of 14.

 Note:   To adhere to the estimation method defined in TS 36.104 [1] and TS 36.141 [2], `rxgrid` must contain 10 subframes.

Data Types: `double`
Complex Number Support: Yes

Channel estimator configuration, specified as a structure that can contain the following parameter fields.

Parameter FieldRequired or OptionalValuesDescription
`PilotAverage`Required

`'UserDefined'`(default), `'TestEVM'`

See footnote 1.

Type of pilot averaging

`FreqWindow`Required

Nonnegative scalar integer

Size of window in resource elements used to average over frequency during channel estimation

See `hest` for additional information.

`TimeWindow`Required

Nonnegative scalar integer

Size of window in resource elements used to average over time during channel estimation

See `hest` for additional information.

`InterpType`Required

`'nearest'`, `'linear'`, `'natural'`, `'cubic'`, `'v4'`, `'None'`

See footnote 2.

Type of 2-D interpolation used during interpolation. For details, see `griddata`. Supported choices are shown in the following table.

ValueDescription
`'nearest'`Nearest neighbor interpolation
`'linear'`Linear interpolation
`'natural'`Natural neighbor interpolation
`'cubic'`Cubic interpolation
`'v4'`MATLAB® 4 `griddata` method
`'None'`Disables interpolation

The following parameters are applicable when `InterpType` is not set to `'None'`.

`InterpWindow`Required

`'Causal'`, `'Non-causal'`, `'Centred'`, `'Centered'`

Interpolation window type used during channel estimation. Options `'Centred'` and `'Centered'` are equivalent.

`InterpWinSize`Required

Positive scalar number. If `InterpWindow` is set to `'Causal'` or `'Non-causal'`, all numbers ≥1. If `InterpWindow` is set to `'Centred'` or `'Centered'`, only odd integers ≥1.

Window size across which to interpolate. The interpolation window size is specified in number of subframes.

The following parameters are applicable when EPDCCH channel estimation is requested or `pdsch``.``TxScheme` is set to `'Port5'`, `'Port7-8'`, `'Port8'`, or `'Port7-14'`.

`Reference`Optional

`'DMRS'` (default), `'CSIRS'`, `'CellRS'`, `'EPDCCHDMRS'`

Specifies point of reference (signals to internally generate) for channel estimation

1. The `'UserDefined'` pilot averaging uses a rectangular kernel of size `cec.FreqWindow`-by-`cec.TimeWindow` and performs a 2-D filtering operation upon the pilots. Pilots near the edge of the resource grid are averaged less as they have no neighbors outside of the grid. For `cec.FreqWindow` = 12 × X (that is, any multiple of 12) and `cec.TimeWindow` = 1, the estimator enters a special case where an averaging window of (12 × X)-in-frequency is used to average the pilot estimates. For this special case, the averaging is always applied across (12 × X) subcarriers, even at the upper and lower band edges; therefore the first (6 × X) symbols at the upper and lower band edge have the same channel estimate. This operation ensures that averaging is always done on 12 (or a multiple of 12) symbols. This provides the appropriate despreading operation required for the case multi-antenna transmission where the DRS signals associated with each antenna occupy the same time/frequency locations but use different orthogonal cover codes to allow them to be differentiated at the receiver. The `'TestEVM'` pilot averaging ignores other structure fields in `cec`, and follows the method described in TS 36.104/141, Annex E/F for the purposes of transmitter EVM testing.

2. For `cec.InterpType` = `'None'`, no interpolation is performed between pilot symbols and no virtual pilots are created. `hest` will contain channel estimates in the locations of transmitted reference symbols for each received antenna and all other elements of `hest` are zero. The averaging of pilot symbols estimates described by `cec.TimeWindow` and `cec.FreqWindow` are still performed.

PDSCH-specific channel transmission configuration, specified as a structure that can contain these parameter fields.

Parameter FieldRequired or OptionalValuesDescription
`TxScheme`Required

`'Port0'`, `'TxDiversity'`, `'CDD'`, `'SpatialMux'`, `'MultiUser'`, `'Port5'`, `'Port7-8'`, `'Port8'`, `'Port7-14'`.

PDSCH transmission scheme, specified as one of the following options.

Transmission schemeDescription
`'Port0'`Single antenna port, port 0
`'TxDiversity'`Transmit diversity
`'CDD'`Large delay cyclic delay diversity scheme
`'SpatialMux'`Closed loop spatial multiplexing
`'MultiUser'`Multi-user MIMO
`'Port5'`Single-antenna port, port 5
`'Port7-8'`Single-antenna port, port 7, when `NLayers` = 1. Dual layer transmission, ports 7 and 8, when `NLayers` = 2.
`'Port8'`Single-antenna port, port 8
`'Port7-14'`Up to eight layer transmission, ports 7–14

`PRBSet`Required

Integer column vector or two-column matrix

Zero-based physical resource block (PRB) indices corresponding to the slot wise resource allocations for this PDSCH. `PRBSet` can be assigned as:

• a column vector, the resource allocation is the same in both slots of the subframe,

• a two-column matrix, this parameter specifies different PRBs for each slot in a subframe,

• a cell array of length 10 (corresponding to a frame, if the allocated physical resource blocks vary across subframes).

PRBSet varies per subframe for the RMCs `'R.25'`(TDD), `'R.26'`(TDD), `'R.27'`(TDD), `'R.43'`(FDD), `'R.44'`, `'R.45'`, `'R.48'`, `'R.50'`, and `'R.51'`.

`RNTI`Required

0 (default), scalar integer

Radio network temporary identifier (RNTI) value (16 bits)

The following parameters are applicable when `pdsch``.``TxScheme` is set to `'Port5'`, `'Port7-8'`, `'Port8'`, or `'Port7-14'`.

`NLayers`Required1,2,3,4Number of transmission layers

EPDCCH-specific channel transmission configuration, specified as a structure that can contain the following parameter fields.

Parameter FieldRequired or OptionalValuesDescription
`EPDCCHType`Required'Localized', 'Distributed'

EPDCCH transmission type.

`EPDCCHPRBSet`Required

Vector of zero-based indices for the PRB pairs corresponding to the EPDCCH PRB set. The number of PRB pair indices must be a power of 2.

If no transmission is required, leave this parameter empty.

EPDCCH PRB pair indices

`EPDCCHNID`Required

Nonnegative integer

EPDCCH nID parameter for scrambling sequence initialization

For EPDCCH channel estimation, `cec``.``Reference` must be set to `'EPDCCHDMRS'`. Channel estimation is only performed in the PRB pairs indicated by `EPDCCHPRBSet`, but is performed for all EPDCCH candidate locations within those PRB pairs. In other PRBs the channel estimate is interpolated according to `cec``.``InterpType`. As indicated in TS 36.211 [3], Table 6.8A.5-1:

• For `EPDCCHType` = `'Localized'`, channel estimation is performed in the set of antenna ports p=107...110, p=107,109 or p=107,108 depending on the cell configuration.

• For `EPDCCHType` = `'Distributed'`, channel estimation is performed in the pair of EPDCCH antenna ports used for EPDCCH transmission (p=107,109 for normal cyclic prefix and p=107,108 for extended cyclic prefix).

• In other EPDCCH antenna ports, the channel estimate is zero.

For 'UserDefined' pilot averaging, if `cec``.``TimeWindow`=2 and `cec``.``FreqWindow`=1, the "despreading" pilot averaging behaviour described for the PDSCH is used because the EPDCCH DMRS and PDSCH DMRS resource element arrangement and use of cover codes is the same.

Output Arguments

collapse all

Estimated channel between transmit and receive antennas, returned as a 4-D numeric array. The reference signals used for channel estimation depends on the settings for `pdsch``.``TxScheme` and `cec``.``Reference`. Options include cell-specific reference signals (default), PDSCH DM-RS, CSI-RS, or EPDCCH DM-RS.

The fourth dimension of the output channel estimate array varies based on the reference signal option chosen.

Reference signal used for channel estimationOutput array dimensions

(See footnote 1)

RS-specific dimensionTransmission scheme

Cell-specific reference signal

M-by-N-by-`NRxAnts`-by-`CellRefP`

`CellRefP` is the number of cell-specific reference signal antenna ports.

`'SpatialMux'`, `'Port0'`, `'TxDiversity'`, `'CDD'`, `'MultiUser'`, `'Port5'`, `'Port7-8'`, `'Port8'`, `'Port7-14'`

PDSCH DM-RS

M-by-N-by-`NRxAnts`-by-`NLayers`

`NLayers` is the number of transmission layers.

`'Port5'`, `'Port7-8'`, `'Port8'`, and `'Port7-14'`

CSI-RS

M-by-N-by-`NRxAnts`-by-`CSIRefP`

`CSIRefP` is the number of CSI-RS antenna ports.

`'Port5'`, `'Port7-8'`, `'Port8'`, and `'Port7-14'`

EPDCCH DM-RS

M-by-N-by-`NRxAnts`-by-`4`

Estimate across all four possible EPDCCH ports (p=107...110), which ensures consistency with the indexing used by `lteEPDCCHDMRSIndices` and `lteEPDCCHIndices`

1. Output array dimensions

• M is the number of subcarriers.

• N is the number of OFDM symbols.

• `NRxAnts` is the number of receive antennas.

When `TxScheme` is set to `'Port7-8'` or `'Port7-14'` and `cec``.``PilotAverage` is set to `'UserDefined'`, if `cec``.``TimeWindow` is 2 or 4 and `cec``.``FreqWindow` is 1, the estimator enters a special case where an averaging window of two or four pilots in time is used to average the pilot estimates. For this configuration, averaging is always applied across two or four pilots, regardless of their separation in OFDM symbols. Applying the averaging across two or four pilots provides the appropriate "despreading" operation required for the case of UE-RS ports or CSI-RS ports which occupy the same time/frequency locations but use different orthogonal covers to allow them to be differentiated at the receiver.

• For the CSI-RS with any number of configured `enb``.``CSIRefP` ports, the pilot REs occur in one pair per subframe. The CSI-RS pilot RE pairs require averaging with `cec``.``TimeWindow` = 2, and result in a single estimate per subframe.

• For the UE-RS with `pdsch``.``NLayers` from 1 through 4 layers, the pilot REs occur in pairs, repeated in each slot. The UE-RS pilot RE pairs require averaging with `cec``.``TimeWindow` = 2, and result in two estimates per subframe, one for each slot.

• When configured to use from 5 through 8 layers, the pairs are distinct between the slots of the subframe and the required averaging is `cec``.``TimeWindow` = 4, resulting in one estimate per subframe. In these cases, `rxgrid` must contain only one subframe because only a single subframe can be estimated.

Power spectral density estimate on reference signal subcarriers, returned as a real-valued numeric scalar. An estimate of the power spectral density of the noise present on the estimated channel response coefficients is computed using the reference signals.

collapse all

Channel Estimation Processing

Steps associated with the channel estimation processing include:

1. Extract the reference signals, or pilot symbols, for a transmit-receive antenna pair from the received grid. Use the reference signals to calculate the least-squares estimates of the channel response at the pilot symbol positions within a received grid.

• The least-squares estimates of the reference signals are obtained by dividing the received pilot symbols by their expected value. Any system noise affects the least-squares estimates. Remove or reduce the noise to achieve a reasonable estimation of the channel at pilot symbol locations. For more information, see Noise Reduction and Interpolation.

2. Average the least-squares estimates to reduce any unwanted noise from the pilot symbols.

3. Using the cleaned pilot symbol estimates, interpolate to obtain an estimate of the channel for the entire number of subframes passed into the function.

Noise Reduction and Interpolation

To minimize the effects of noise on the pilot symbol estimates, the least-squares estimates are averaged using an averaging window. This simple method produces a substantial reduction in the level of noise found on the pilot symbols. The two pilot symbol averaging methods, which also define the interpolation method performed to obtain the channel estimate, are `'TestEVM'` and `'UserDefined'`.

• `'TestEVM'` — follows the method described in TS 36.141 [2], Annex F.3.4. Time averaging is performed across each pilot symbol carrying subcarrier, resulting in a column vector containing the time averaged estimates of the channel. Frequency averaging is then performed using a moving window, maximum size 19. Linear interpolation is used to estimate the values between the pilot symbols. The estimated vector is then replicated and used as the entire channel estimate.

 Note:   For `'TestEVM'`, there are no user-defined parameters. Estimation behaves as described in TS 36.141 [2].

The algorithm differs from the implementation described in TS 36.141 [2] due to the number of subframes across which time-averaging is performed. In TS 36.141 [2], the method requires 10 subframes to be used. The function `lteDLChannelEstimate` performs time averaging across the total number of subframes contained in `rxgrid`.

• `'UserDefined'` — uses an averaging window defined by you. The averaging window size is in resource elements. Any pilot symbols located within the window are used to average the value of the pilot symbol found at the center of the window. The averaged pilot symbol estimates are then used to perform a 2-D interpolation across a window of subframes. The location of pilot symbols within the subframe is not ideally suited to interpolation. To account for this, virtual pilots are created and placed outside the area of the current subframe. This approach allows complete and accurate interpolation to be performed. The `InterpWindow` field defines the causal nature of the available data. Valid settings for `InterpWindow` are `'Causal'`, `'Non-causal'`, or `'Centered'`.

Use the `InterpWindow` setting:

• `'Causal'` when using past data.

• `'Non-causal'` when using future data. It is the opposite of `'Causal'`. Relying only on future data is commonly referred to as an anti-causal method of interpolation.

• `'Centered'` or `'Centred'` when using a combination of past, present, and future data.

References

[1] 3GPP TS 36.104. "Base Station (BS) radio transmission and reception." 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). URL: http://www.3gpp.org.

[2] 3GPP TS 36.141. "Base Station (BS) conformance testing." 3rd Generation Partnership Project; Technical Specification Group Radio Access Network; Evolved Universal Terrestrial Radio Access (E-UTRA). URL: http://www.3gpp.org.

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