Documentation

ltePBCHDecode

Physical broadcast channel decoding

Syntax

  • [bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,sym)
    example
  • [bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,sym,hest,noiseest)
  • [bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,sym,hest,noiseest,alg)

Description

example

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

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

[bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,sym,hest,noiseest,alg) provides control over weighting the output soft bits, 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

Decode CellRefP from MIB

This example shows use of ltePBCHDecode to decode the number of cell-specific reference ports from the Master Information Block (MIB):

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

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

lteBCH generates bits for a 40ms period, intended for 4 frames. Since PBCH is transmitted every frame, one quarter of these bits are encoded and transmitted each frame. In this example we encode the PBCH for a single frame. So, we only map and encode one quarter of the bchbits to PBCH. We then decode the PBCH symbols specifying cellrefp as an output. Looking at the number of cell-specific reference ports, cellrefp, we see it matches number of antenna ports specified in TS 36.101 Annex 3.3.2 for RMC R.14

quarterLen = length(bchBits)/4;
pbchSymbols = ltePBCH(enb,bchBits(1:quarterLen));
[bits,symbols,nfmod4,trblk,cellrefp] = ltePBCHDecode(enb,pbchSymbols);

cellrefp
cellrefp =

           4

Input Arguments

collapse all

enb — Cell-wide settingsstructure

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

sym — Complex modulated PBCH symbolsnumeric matrix

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. sym can contain 1–4 subframes with PBCH data.

Data Types: double
Complex Number Support: Yes

hest — Channel estimate3-D array

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

noiseest — Noise estimatenumeric scalar

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

alg — Algorithmic configurationstructure

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

bits — Decoded PBCH soft bitsnumeric column vector

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

Data Types: double

symbols — Received constellation of complex symbolscomplex numeric column vector

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

Data Types: double
Complex Number Support: Yes

nfmod4 — System frame number modulo 4integer scalar

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

Data Types: double

trblk — Decoded BCH information bits24-by-1 numeric column vector

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

Data Types: int8

cellrefp — Number of cell-specific reference signal antenna portsoptional | 1 | 2 | 4

Number of cell-specific signal antenna ports, returned as 1, 2, or 4 as determined during the BCH decoding.

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. "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.

[2] 3GPP TS 36.212. "Multiplexing and channel coding." 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.101. "User Equipment (UE) 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.

Introduced in R2014a

Was this topic helpful?