Main Content

ltePCFICHDecode

Physical control format indicator channel decoding

Description

[bits,symbols] = ltePCFICHDecode(enb,sym) performs the inverse of Physical Control Format Indicator Channel (PCFICH) processing on the matrix of complex modulated PCFICH symbols, sym, using cell-wide settings structure, enb. It returns a column vector of soft bits, bits, and received constellation of complex symbol vector, symbols. The channel inverse processing includes deprecoding, symbol demodulation, and descrambling. See TS 36.211, Section 6.7 [1] or ltePCFICH for details.

The input argument, sym, must be a matrix of NRE-by-NRxAnts complex modulated PCFICH symbols. NRE is the number of QPSK symbols per antenna assigned to the PCFICH (16) and NRxAnts is the number of receive antennas.

example

[bits,symbols] = ltePCFICHDecode(enb,sym,hest,noiseest) decodes the complex PCFICH symbols, sym, using cell-wide settings, enb, the channel estimate, hest, and the noise estimate, noiseest. For the 'TxDiversity' transmission scheme, when CellRefP is 2 or 4, the reception is performed using an orthogonal space frequency block code (OSFBC) decoder. For the 'Port0' transmission scheme, when CellRefP is 1, the reception is performed using MMSE equalization.

hest is a 3-D NRE-by-NRxAnts-by-enb.CellRefP array. NRE contains the frequency and time locations corresponding to the PCFICH RE positions for a total of NRE positions. NRxAnts is the number of receive antennas, and enb.CellRefP is the number of cell-specific reference signal antennas.

noiseest is an estimate of the noise power spectral density per RE in the received subframe. The lteDLChannelEstimate function produces this estimate.

[bits,symbols] = ltePCFICHDecode(enb,sym,hest,noiseest,alg) same as prior except this syntax provides control over weighting the output soft bits, bits. If alg.CSI is 'On', bits get scaled by the channel state information (CSI) calculated during the equalization stage.

Examples

collapse all

This example shows decoding of symbols to recover CFI value.

Initialize a cell wide configuration structure, enb. Encode a CFI value and perform physical channel coding to create a vector of symbols, pcfichSym.

enb.NCellID = 0;
enb.NSubframe = 0;
enb.CellRefP = 1;
enb.CFI = 3;
cw = lteCFI(enb);
pcfichSym = ltePCFICH(enb,cw);

Demodulate and decode the symbols to recover the CFI value

cfiSoftBits = ltePCFICHDecode(enb,pcfichSym);
rxCFI = lteCFIDecode(cfiSoftBits)
rxCFI = int32

3

Confirm recovered CFI value matches the setting in enb

enb.CFI
ans = 
3

Input Arguments

collapse all

Cell-wide settings, specified as a scalar structure. enb contains the following fields.

Parameter FieldRequired or OptionalValuesDescription
NCellIDRequired

Integer from 0 to 503

Physical layer cell identity

CellRefPRequired

1, 2, 4

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

NSubframeRequired

0 (default), nonnegative scalar integer

Subframe number

Data Types: struct

Complex modulated PCFICH symbols, specified as a numeric matrix of size NRE-by-NRxAnts. NRE is the number of QPSK symbols per antenna assigned to the PCFICH (16). NRxAnts is the number of receive antennas.

Data Types: double
Complex Number Support: Yes

Channel estimate, specified as a 3-D numeric array of size NRE-by-NRxAnts-by-enb.CellRefP, where:

  • NRE contains the frequency and time locations corresponding to the PCFICH RE positions (a total of NRE positions).

  • NRxAnts is the number of receive antennas.

  • enb.CellRefP is the number of cell-specific reference signal antennas.

Data Types: double
Complex Number Support: Yes

Estimate of the noise power spectral density per RE on received subframe. Such an estimate is provided by the lteDLChannelEstimate function.

Data Types: double

Algorithmic configuration, specified as a structure. It contains the following fields.

Parameter FieldRequired or OptionalValuesDescription
CSIOptional

'On' (default), 'Off'

Flag provides control over weighting the soft values that are used to determine the output values with the channel state information (CSI) calculated during the equalization process. If 'On', soft values are weighted by CSI.

Data Types: struct

Output Arguments

collapse all

Soft bits, returned as a numeric column vector. If the input alg.CSI field is 'On', bits gets scaled by channel state information (CSI) calculated during the equalization process.

Data Types: double

Received constellation symbols, returned as a complex numeric column vector.

Data Types: double
Complex Number Support: Yes

References

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