Main Content

ltePBCHDecode

Physical broadcast channel decoding

Description

example

[bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,sym) returns bits, a vector of soft bits, symbols, a vector of received constellation complex symbols, nfmod4, frame number (modulo 4), trblk, decoded BCH information bits, and cellrefp, the number of cell-specific reference signal antenna ports. For more information, see PBCH Decoding.

[bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,sym,hest,noiseest) decodes sym, the complex PBCH symbols, using cell-wide settings enb, channel estimate hest, and noise estimate noiseest. For more information, see PBCH Decoding.

[bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,sym,hest,noiseest,alg) provides control over weighting bits, with channel state information (CSI) calculated during the equalization stage using the algorithmic configuration structure alg. For more information, see PBCH Decoding.

Examples

collapse all

This example shows how to decode the number of cell-specific reference ports from the MIB.

Initialize a cell-wide configuration structure with RMC R.14. Generate the MIB and the broadcast channel bits.

enb = lteRMCDL('R.14');
mib = lteMIB(enb);
bchBits = lteBCH(enb,mib);

The lteBCH function generates bits for a 40 ms period, intended for 4 frames. Since the PBCH is transmitted every frame, encode and transmit only one quarter of these bits each frame.

quarterLen = length(bchBits)/4;

Encode the PBCH for a single frame by mapping and encoding of one quarter of the BCH to PBCH.

pbchSymbols = ltePBCH(enb,bchBits(1:quarterLen));

Decode the PBCH symbols.

[bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,pbchSymbols);

Check that the number of cell-specific reference ports matches number of antenna ports specified in TS 36.101 Annex 3.3.2 for RMC R.14.

cellrefp
cellrefp = uint32
    4

Input Arguments

collapse all

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

Parameter FieldRequired or OptionalValuesDescription
NCellIDRequired

Integer from 0 to 503

Physical layer cell identity

CellRefPOptional

1, 2, 4

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

The default is to establish cellrefp by decoding the input symbols, sym.

CyclicPrefixOptional

'Normal' (default), 'Extended'

Cyclic prefix length

Data Types: struct

Complex modulated PBCH symbols, specified as an NRE-by-NRxAnts numeric matrix. NRE is the number of QPSK symbols per antenna assigned to the PBCH and NRxAnts is the number of receive antennas. This input can contain 1–4 subframes of PBCH data. When you provide multiple subframes, they must be consecutive subframes within the same coded BCH block.

Data Types: double
Complex Number Support: Yes

Channel estimate is a 3-D array of size NRE-by-NRxAnts-by-P, where

  • NRE is the number of PBCH resource elements (frequency and time locations).

  • NRxAnts is the number of receive antennas.

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

Data Types: double
Complex Number Support: Yes

Noise estimate, specified as a numeric scalar. It is an estimate of the noise power spectral density per resource element on the received subframe. This estimate is provided by the lteDLChannelEstimate function.

Data Types: double

Algorithmic configuration, specified as a structure. The structure must have the following field.

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

Decoded PBCH soft bits, returned as a real-valued column vector. If alg.CSI is 'On', bits gets scaled by channel state information (CSI) calculated during the equalization process.

Data Types: double

Received constellation of complex symbols, returned as a complex-valued column vector.

Data Types: double
Complex Number Support: Yes

System frame number modulo 4, mod(NFrame,4), returned as a nonnegative integer. nfmod4 is obtained when determining the scrambling phase of the input PBCH symbols, sym.

Data Types: double

Decoded BCH information bits, returned as a 24-by-1 real-valued column vector.

Data Types: int8

Number of cell-specific signal (CRS) antenna ports, returned as 0, 1, 2, or 4. A value of 0 indicates that the function detects a cyclic redundancy check (CRC) error during the decoding process.

Data Types: uint32

More About

collapse all

PBCH Decoding

TS 36.211 [1], Section 6.6 defines the inverse of Physical Broadcast Channel (PBCH) processing of bits and symbols. TS 36.212 [2], Section 5.3.1 defines the inverse Broadcast Channel (BCH) processing used to decode nfmod4, trblk, and cellrefp.

PBCH Decoding performs the inverse of PBCH processing (deprecoding, symbol demodulation, and descrambling) on the matrix of complex modulated PBCH symbols, sym, given a cell-wide settings structure, enb. It decodes PBCH data scrambled with any scrambling sequence phase. So although the scrambling sequence gets initialized every 40 ms, there is no restriction on the input sym to be aligned at the 40 ms boundary.

After successful synchronization with the scrambling sequence, nfmod4, trblk, and cellrefp are determined. The true number of transmitted cell-specific reference signals is returned in cellrefp, and is searched for by attempting decoding with cellrefp equal to 1, 2, or 4. If provided,enb.CellRefP is attempted first to ensure that symbols contains the expected constellation and bits contains the expected soft bit estimates for the specified value. Under good conditions, successful decoding is possible with a different value of cellrefp, but results in unexpected bits and symbols. If enb.CellRefP is not provided, the search establishes the true number of transmitted cell-specific reference signals and returns it in cellrefp.

For the TxDiversity transmission scheme (cellrefp = 2 or cellrefp = 4), the reception is performed using an OSFBC (Orthogonal Space Frequency Block Code) decoder. For the Port0 transmission scheme (cellrefp = 1), the reception is performed using MMSE equalization.

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.

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

[3] 3GPP TS 36.101. “Evolved Universal Terrestrial Radio Access (E-UTRA); User Equipment (UE) Radio Transmission and Reception.” 3rd Generation Partnership Project; Technical Specification Group Radio Access Network. URL: https://www.3gpp.org.

Version History

Introduced in R2014a