Physical downlink shared channel decoding

- example
`[cws,symbols] = ltePDSCHDecode(enb,chs,sym)`

`[cws,symbols] = ltePDSCHDecode(enb,chs,sym,hest,noiseest)`

`[cws,symbols] = ltePDSCHDecode(enb,chs,rxgrid,hest,noiseest)`

`[`

performs
the inverse of physical downlink shared channel (PDSCH) processing
on the matrix of complex modulated PDSCH symbols, `cws`

,`symbols`

]
= ltePDSCHDecode(`enb`

,`chs`

,`sym`

)`sym`

,
using cell-wide settings structure, `enb`

, and
channel-specific configuration structure, `chs`

.
The channel inverse processing includes inverting the channel precoding,
layer demapping and codeword separation, soft demodulation, and descrambling.
Inverting the precoding is accomplished by matrix pseudoinversion
of the precoding matrices. It returns a cell array, `cws`

,
of soft bit vectors, or codewords, and a cell array, `symbols`

,
of received constellation symbol vectors resulting from performing
the inverse of Physical Downlink Shared Channel (PDSCH) processing.
For details, see section 6.4 of [1] and `ltePDSCH`

. `cws`

is optionally
scaled by channel state information (CSI) calculated during the equalization
process.

`[`

performs
the decoding of the complex modulated PDSCH symbols `cws`

,`symbols`

]
= ltePDSCHDecode(`enb`

,`chs`

,`sym`

,`hest`

,`noiseest`

)`sym`

using
cell-wide settings, `enb`

, channel-specific configuration, `chs`

,
channel estimate, `hest`

, and the noise estimate, `noiseest`

.

The behavior varies based on the `chs`

`.`

`TxScheme`

setting.
For the `TxDiversity`

transmission scheme, the precoding
inversion is performed using an orthogonal space frequency block code
(OSFBC) decoder. For the `SpatialMux`

, `CDD`

,
and `MultiUser`

transmission schemes, the precoding
inversion is performed using a multiple-input, multiple-output (MIMO)
minimum mean square error (MMSE) equalizer, equalizing between transmitted
and received layers. For the `'Port0'`

, `'Port5'`

, `'Port7-8'`

, `'Port8'`

,
and `'Port7-14'`

transmission schemes, the reception
is performed using MMSE equalization. The input channel estimate, `hest`

,
is assumed to be with reference to the transmission layers, using
the UE-specific reference signals, so the MMSE equalization will produce
MMSE equalized layers.

`noiseest`

is an estimate of the noise power
spectral density per RE on the received subframe. This estimate is
provided by the `lteDLChannelEstimate`

function.

`[`

accepts
the full received resource grid, `cws`

,`symbols`

]
= ltePDSCHDecode(`enb`

,`chs`

,`rxgrid`

,`hest`

,`noiseest`

)`rxgrid`

, for
one subframe, in place of the `sym`

input; the
decoder will internally extract the PDSCH REs to obtain the complex
modulated PDSCH symbols. `rxgrid`

is a 3-D *M*-by-*N*-by-`NRxAnts`

array
of resource elements, where *M* and *N* are
the number of subcarriers and symbols for one subframe for cell-wide
settings `enb`

and `NRxAnts`

is
the number of receive antennas. In this case, `hest`

is
a 4-D *M*-by-*N*-by-`NRxAnts`

-by-`CellRefP`

array
where *M* and *N* are the number
of subcarriers and symbols for one subframe for cell-wide settings `enb`

, `NRxAnts`

is
the number of receive antennas, and `CellRefP`

is
the number of cell-specific reference signal antenna ports, given
by `enb`

`.`

`CellRefP`

. `hest`

is
processed to extract the channel estimates relevant to the PDSCH,
those in the time and frequency locations corresponding to the PDSCH
REs in `rxgrid`

.

[1] 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.

Was this topic helpful?