Documentation

ltePDCCH

Physical downlink control channel

Syntax

  • [sym,info] = ltePDCCH(enb,cw)
    example
  • [sym,info] = ltePDCCH(enb,cw,NREG)
  • [sym,info] = ltePDCCH(enb,cw,NREG,CCEGAINS)

Description

example

[sym,info] = ltePDCCH(enb,cw) returns an NRE-by-CellRefP complex matrix, sym, of modulation symbols given the input bit vector cw.

The function returns a matrix (sym) of complex modulation symbols generated by the set of Physical Downlink Control Channels (PDCCH) in a subframe. The channel processing includes the stages of scrambling, QPSK modulation, layer mapping and precoding, followed by REG interleaving and cyclic shifting. For a given input bit vector (typically the PDCCH multiplex), the output matrix sym contains the QPSK symbols in column-wise antenna form. Any input bits with value < 0 are turned into <NIL> ('0') symbols. The optional structure info returns control resourcing information about the output symbols (see ltePDCCHInfo for details).

[sym,info] = ltePDCCH(enb,cw,NREG) returns matrix sym. sets the number of output QPSK symbols, NRE, based on the NREG input value (NRE = 4 × NREG) instead of calculating it from the parameters of the enb structure.

[sym,info] = ltePDCCH(enb,cw,NREG,CCEGAINS) returns matrix sym. CCEGAINS allows control of the QPSK symbol gains on a per control channel element (CCE) basis.

Examples

collapse all

Generate PDCCH Symbols

Generate complex modulated symbols for the PDCCH. The PDCCH symbols are QPSK modulated. Each QPSK symbol represents two bits.

Create a cell-wide configuration structure, iniitialized for RMC R.0. Retrieve the PDCCH information.

enb = lteRMCDL('R.0');
pdcchInfo = ltePDCCHInfo(enb)
pdcchInfo = 

        NREG: 113
         NRE: 452
        NCCE: 12
    NREGUsed: 108
     NREUsed: 432
        MTot: 904
    NSymbols: 3

The field pdcch.MTot indicates the maximum number of input bits that can be transmitted on the PDCCH.

Generate a codeword that is MTot bits long. Using the codeword, generate PDCCH symbols.

cw = randi([0,1],pdcchInfo.MTot,1);
[pdcchSym,info] = ltePDCCH(enb,cw);
numCodewordBits = length(cw)
numPDCCHSymbols = length(pdcchSym)
numCodewordBits =

   904


numPDCCHSymbols =

   452

Since there are two bits per symbol, the number of output PDCCH symbols is half length of the codeword bit stream.

Input Arguments

collapse all

enb — Cell-wide settingsscalar structure

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

Parameter FieldRequired or OptionalValuesDescription
CellRefPRequired

1, 2, 4

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

NCellIDRequired

Integer from 0 to 503

Physical layer cell identity.

NSubframeRequired

Integer greater than 0

Subframe number.

NDLRBRequired

Nonnegative scalar integer (6,...,110)

Number of downlink (DL) resource blocks (RBs)

CyclicPrefixOptional

'Normal' (default), 'Extended'

Cyclic prefix length

CFIRequired

1, 2, or 3

Control format indicator value

NgRequired

'Sixth', 'Half', 'One', 'Two'

PHICH group multiplier

DuplexModeOptional

'FDD' (default), 'TDD'

Duplexing mode, specified as:

  • 'FDD' for Frequency Division Duplex or

  • 'TDD' for Time Division Duplex

The following field is required when DuplexMode is set to 'TDD'.
TDDConfigOptional

0 (default), 1, 2, 3, 4, 5, 6

Uplink or downlink configuration

Data Types: struct

cw — Input bit vectorvector

Input bit vector that is 32 elements in length, specified as a vector. If length(cw) < 32, cw is padded with zeros before channel processing. If length(cw) > 32, only the first 32 elements are used.

Example: cw = lteCFI(struct('CFI',1));

Data Types: int8

NREG — Resource element groups (REGs) assigned to PDCCHscalar

Resource element groups (REGs) assigned to PDCCH.

CCEGAINS — Vector that controls the QPSK symbol gains on a per CCE basisvector

Vector that controls the QPSK symbol gains on a per CCE basis. Each CCE (Control Channel Element) is a group of 36 QPSK symbols (72 bits) and is the minimum unit that a single coded DCI can be mapped to. The number of complete CCE, NCCE = floor(NREG/9), is available via the NCCE field in info. Each element of CCEGAINS acts as a linear multiplier to all 36 symbols generated from the associated block of 72 input bits. If CCEGAINS does not cover all the NREG symbols, specifically length(CCEGAINS) < NCCE, then the uncovered CCE receives zero power. All symbols are interleaved before they are output.

Data Types: double
Complex Number Support: Yes

Output Arguments

collapse all

sym — PDCCH modulation symbolscomplex matrix

PDCCH modulation symbols, given the input bit vector cw, returned as a NRE-by-CellRefP complex matrix. NRE is the number of QPSK symbols per antenna and CellRefP is the number of TX antenna ports. NRE corresponds to the number of control region resource elements assigned to the PDCCH given the structure enb.

Data Types: double
Complex Number Support: Yes

info — Information for various PDCCH resourcing quantitiesstructure

Information for various PDCCH resourcing quantities, returned as a structure. It contains fields including NRE, NREG, and MTot.

MTot is the maximum number of input bits that can be transmitted on the NRE symbols (MTot = 2×NRE = 8×NREG). If length(cw)<MTot, the input is padded with (MTot-length(cw)) <NIL> elements which translate to zero valued symbols. Any elements of input vector cw valued < 0 are also treated as <NIL> elements. If length(cw) > MTot then only the first MTot bits are used.

Data Types: struct

Introduced in R2014a

Was this topic helpful?