Downlink channel estimation
[hest,noisest]
= lteDLChannelEstimate(enb,rxgrid)
[hest,noisest]
= lteDLChannelEstimate(enb,cec,rxgrid)
[hest,noisest]
= lteDLChannelEstimate(enb,pdsch,cec,rxgrid)
[hest,noisest]
= lteDLChannelEstimate(enb,epdcch,cec,rxgrid)
[
returns
the estimated channel response between each transmit and receive antenna,hest
,noisest
]
= lteDLChannelEstimate(enb
,rxgrid
)hest
,
and an estimate of the noise power spectral density on the reference
signal subcarriers, noisest
, given the cellwide
settings structure, enb
, and the resource grid, rxgrid
.
For more information, see Channel Estimation Processing.
Perform channel estimation on an RMC R.12 (4antenna transmit diversity) waveform.
Initialize a cellwide 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 1by1 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 cellwide 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 MbyNbyNRxAntsbyCellRefP array.
rxWaveform = sum(txWaveform,2); rxGrid = lteOFDMDemodulate(enb,rxWaveform); hest = lteDLChannelEstimate(enb,cec,rxGrid); size(hest)
ans = 72 140 1 4
enb
— eNodeB cellwide settingsstructureeNodeB cellwide settings, specified as a structure that can contain these parameter fields.
Parameter Field  Required or Optional  Values  Description 

NDLRB  Required  Scalar integer (6,...,110). Standard bandwidth values are 6,
15, 25, 50, 75, and 100.  Number of downlink (DL) resource blocks (RBs) 
CellRefP  Required  1, 2, 4  Number of cellspecific reference signal (CRS) antenna ports 
NCellID  Required  Integer from 0 to 503  Physical layer cell identity. 
NSubframe  Required  Nonnegative integer  Subframe number. 
CyclicPrefix  Optional 
 Cyclic prefix length 
DuplexMode  Optional 
 Duplexing mode, specified as:

The following parameters
are applicable when  
TDDConfig  Optional  0 (default), 1, 2, 3, 4, 5, 6  Uplink or downlink configuration 
SSC  Optional  0 (default), 1, 2, 3, 4, 5, 6, 7, 8, 9  Special subframe configuration (SSC) 
The following parameters
are applicable when  
CSIRefP  Required  1 (default), 2, 4, 8  Array of number of CSIRS antenna ports 
CSIRSConfig  Required  scalar integer  Array CSIRS configuration indices. See TS 36.211, Table 6.10.5.21. 
CSIRSPeriod  Optional 
 CSIRS subframe configuration. 

rxgrid
— Resource element array3D numeric matrixResource element array, specified as a 3D numeric matrix of
size MbyNbyNRxAnts
.
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], 
Data Types: double
Complex Number Support: Yes
cec
— Channel estimator configurationstructureChannel estimator configuration, specified as a structure that can contain the following parameter fields.
Parameter Field  Required or Optional  Values  Description  

PilotAverage  Required 
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  
TimeWindow  Required  Nonnegative scalar integer  Size of window in resource elements used to average over time during channel estimation See  
InterpType  Required 
See footnote 2.  Type of 2D interpolation used during interpolation. For details,
see
 
The following parameters
are applicable when  
InterpWindow  Required 
 Interpolation window type used during channel estimation. Options  
InterpWinSize  Required  Positive scalar number. If  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  
Reference  Optional 
 Specifies point of reference (signals to internally generate) for channel estimation  

pdsch
— PDSCHspecific channel transmission configurationstructurePDSCHspecific channel transmission configuration, specified as a structure that can contain these parameter fields.
Parameter Field  Required or Optional  Values  Description 

TxScheme  Required  Default  Transmission scheme, specified as one of the following options.

PRBSet  Required  Integer column vector or twocolumn matrix  Zerobased physical resource block (PRB) indices corresponding
to the slot wise resource allocations for this PDSCH.
PRBSet varies per subframe for the RMCs 
RNTI  Required  Scalar integer  Radio network temporary identifier (RNTI) value (16 bits) 
The following parameters
are applicable when  
NLayers  Required  1,2,3,4  Number of transmission layers 
epdcch
— EPDCCHspecific channel transmission configurationstructureEPDCCHspecific channel transmission configuration, specified as a structure that can contain the following parameter fields.
Parameter Field  Required or Optional  Values  Description 

EPDCCHType  Required  'Localized', 'Distributed'  EPDCCH transmission type. 
EPDCCHPRBSet  Required  Vector of zerobased 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.51:
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.
hest
— Estimated channel between transmit and receive antennas4D numeric arrayEstimated channel between transmit and receive antennas, returned
as a 4D numeric array. The reference signals used for channel estimation
depends on the settings for pdsch
.
TxScheme
and cec
.
Reference
.
Options include cellspecific reference signals (default), PDSCH DMRS,
CSIRS, or EPDCCH DMRS.
The fourth dimension of the output channel estimate array varies based on the reference signal option chosen.
Reference signal used for channel estimation  Output array dimensions (See footnote 1)  RSspecific dimension  Transmission scheme 

Cellspecific reference signal  MbyNby 


PDSCH DMRS  MbyNby 


CSIRS  MbyNby 


EPDCCH DMRS  MbyNby  Estimate across all four possible EPDCCH ports (p=107...110),
which ensures consistency with the indexing used by  — 

When TxScheme
is
set to 'Port78'
or 'Port714'
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 UERS ports or CSIRS ports which
occupy the same time/frequency locations but use different orthogonal
covers to allow them to be differentiated at the receiver.
For the CSIRS with any number of configured enb
.
CSIRefP
ports,
the pilot REs occur in one pair per subframe. The CSIRS pilot RE
pairs require averaging with cec
.
TimeWindow
=
2, and result in a single estimate per subframe.
For the UERS with pdsch
.
NLayers
from
1 through 4 layers, the pilot REs occur in pairs, repeated in each
slot. The UERS 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.
Data Types: double
Complex Number Support: Yes
noisest
— Power spectral density estimate on reference signal subcarriersnumeric scalarPower spectral density estimate on reference signal subcarriers, returned as a realvalued 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.
Data Types: double
Steps associated with the channel estimation processing include:
Extract the reference signals, or pilot symbols, for a transmitreceive antenna pair from the received grid. Use the reference signals to calculate the leastsquares estimates of the channel response at the pilot symbol positions within a received grid.
The leastsquares estimates of the reference signals are obtained by dividing the received pilot symbols by their expected value. Any system noise affects the leastsquares 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.
Average the leastsquares estimates to reduce any unwanted noise from the pilot symbols.
Using the cleaned pilot symbol estimates, interpolate to obtain an estimate of the channel for the entire number of subframes passed into the function.
To minimize the effects of noise on the pilot symbol estimates,
the leastsquares 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 
The algorithm differs from the implementation described in
TS 36.141 [2] due to the
number of subframes across which timeaveraging 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 2D
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 subframe window can be
specified to be causal
, noncausal
,
or centered
, depending on the data available.
[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 (EUTRA). 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 (EUTRA). 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 (EUTRA). URL: http://www.3gpp.org.
griddata
 lteDLPerfectChannelEstimate
 lteEqualizeMIMO
 lteEqualizeMMSE
 lteEqualizeZF
 lteOFDMDemodulate
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
You can also select a location from the following list: