Documentation

lteDCIDecode

Downlink control information decoding

Syntax

  • [dcibits,crc_rnti] = lteDCIDecode(dcilen,softbits)
    example
  • [dcibits,crc_rnti] = lteDCIDecode(enb,softbits)
    example
  • [dcibits,crc_rnti] = lteDCIDecode(enb,chs,softbits)
    example

Description

example

[dcibits,crc_rnti] = lteDCIDecode(dcilen,softbits) recovers a downlink control information (DCI) message, given the DCI vector length, dcilen, and a softbits input vector. For more information, see DCI Message Decoding.

example

[dcibits,crc_rnti] = lteDCIDecode(enb,softbits) uses the cell-wide configuration structure, enb. With this syntax, the DCI message length is deduced from enb.DCIFormat and cell-wide settings in enb.

example

[dcibits,crc_rnti] = lteDCIDecode(enb,chs,softbits) uses the UE-specific channel configuration structure, chs. With this syntax, the DCI message length is deduced from chs.DCIFormat, the cell-wide configuration in enb, and the UE-specific channel configuration in chs.

Examples

collapse all

DCI Decoding

Perform DCI decoding of a sample codeword and return the decoded vector, decodedDCIbits, of the length defined for the DCI Format 1 message.

enb.NDLRB = 50;
enb.CellRefP = 1;
enb.DuplexMode = 'FDD';

dciInfo = lteDCIInfo(enb);
dcilen = dciInfo.Format1

ue.PDCCHFormat = 1;
ue.RNTI = 10;
ue.NDLRB = 50;

dciBits = zeros(dcilen,1);
cw = lteDCIEncode(ue,dciBits);

[decodedDCIbits,crcRNTI] = lteDCIDecode(dcilen,cw);

decodedDCIbitslen = size(decodedDCIbits)
crcRNTI
dcilen =

                   31


decodedDCIbitslen =

    31     1


crcRNTI =

          10

The decodedDCIbits length matches the value of dcilen. The crcRNTI output has a value of 10, corresponding to the RNTI values used in CRC masking.

DCI Decoding with ENB Structure

Perform DCI decoding of a sample codeword and return the decoded vector, decodedDCIbits, of the length defined for the DCI Format 1 message. The lteDCIDecode function uses fields in enb to determine DCI length.

enb.NDLRB = 25;
enb.CellRefP = 1;
enb.DuplexMode = 'FDD';

dciInfo = lteDCIInfo(enb);
dcilen = dciInfo.Format1

ue.PDCCHFormat = 1;
ue.RNTI = 7;
ue.NDLRB = 25;

dciBits = zeros(dcilen,1);
cw = lteDCIEncode(ue,dciBits);
dcilen =

                   27

Define the enb configuration structure for recovery of the DCI message and RNTI. Perform DCI decoding using enb.

enb.DCIFormat = 'Format1';

[decodedDCIbits,crcRNTI] = lteDCIDecode(enb,cw);

decodedDCIbitslen = size(decodedDCIbits)
crcRNTI
decodedDCIbitslen =

    27     1


crcRNTI =

           7

The decodedDCIbits length matches the value of dcilen. The crcRNTI value recovered corresponds to and matches ue.RNTI, which is the RNTI value used in the CRC masking.

DCI Decoding Using Channel Structure

Perform DCI decoding of a sample codeword and return the decoded vector, decodedDCIbits, of the length defined for the DCI Format 2A message.

enb.NDLRB = 25;
enb.CellRefP = 1;
enb.DuplexMode = 'FDD';

dciInfo = lteDCIInfo(enb);
dcilen = dciInfo.Format2A

ue.PDCCHFormat = 2;
ue.RNTI = 5;
ue.NDLRB = 25;

dciBits = zeros(dcilen,1);
cw = lteDCIEncode(ue,dciBits);
dcilen =

                   36

Define the ue-specific configuration structure, chs, for recovery of the DCI message and RNTI. Perform DCI decoding using enb and chs.

chs.DCIFormat = 'Format2A';
chs.ControlChannelType  = 'PDCCH';
chs.EnableCarrierIndication  = 'Off';

[decodedDCIbits,crcRNTI] = lteDCIDecode(enb,chs,cw);

decodedDCIbitslen = size(decodedDCIbits)
crcRNTI
decodedDCIbitslen =

    36     1


crcRNTI =

           5

The decodedDCIbits length matches the value of dcilen. The crcRNTI value recovered corresponds to and matches ue.RNTI, which is the RNTI value used in the CRC masking.

Input Arguments

collapse all

dcilen — Length of recovered DCI message vectorinteger

Length of recovered DCI message vector, specified as a positive integer.

Data Types: double

softbits — Floating-point soft bitsvector

Floating-point soft bits, specified as a column vector.

Data Types: double | int8

enb — eNodeB cell-wide settingsstructure

eNodeB cell-wide settings, specified as a structure that can contain these parameter fields.

Parameter FieldRequired or OptionalValuesDescription
NDLRBRequired

Scalar integer (6,...,110). Standard bandwidth values are 6, 15, 25, 50, 75, and 100. NDLRB also accepts the standardized bandwidths in string format from the set {'1.4MHz', '3MHz', '5MHz', '10MHz', '15MHz', '20MHz'}.

Number of downlink (DL) resource blocks (RBs)

NULRBRequired

Positive scalar integer

Number of uplink (UL) resource blocks (RBs).

DCIFormatRequired (see syntax descriptions for applicability)

'Format0', 'Format1', 'Format1A', 'Format1B', 'Format1C', 'Format1D', 'Format2', 'Format2A', 'Format2B', 'Format2C', 'Format2D', 'Format3', 'Format3A', 'Format4'

Downlink control information (DCI) format, specified as a string

CellRefPOptional

1 (default), 2, 4

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

DuplexModeOptional

'FDD' (default), 'TDD'

Duplexing mode, specified as:

  • 'FDD' for Frequency Division Duplex or

  • 'TDD' for Time Division Duplex

chs — User-equipment-related channel configurationstructure

User-equipment-related (UE-related) channel configuration, specified as a structure containing these UE-specific fields.

    Note:   All fields in chs are optional. The presence of these optional fields depends on:

    • Whether the transmission of DCI message is in a PDCCH using common search space mapping or in an EPCCH.

    • The release-specific features configured at the destination UE.

    These additional UE-specific bit fields are off by default.

DCIFormat — DCI format name'Format0' | 'Format1' | 'Format1A' | 'Format1B' | 'Format1C' | 'Format1D' | 'Format2' | 'Format2A' | 'Format2B' | 'Format2C' | 'Format2D' | 'Format3' | 'Format3A' | 'Format4'

DCI format name, specified as a string. See syntax descriptions for applicability.

Data Types: char

ChannelControlType — Physical control channel type'PDCCH' (default) | 'EPDCCH' | optional

Physical control channel type used to carry DCI formats, specified as 'PDCCH' or 'EPDCCH'. The setting for ChannelControlType affects the presence of the HARQ-ACK resource offset field and message padding.

Data Types: char

SearchSpace — Search space mapping'UESpecific' (default) | 'Common' | optional

Search space mapping for DCI formats 0/1A/1C, specified as 'UESpecific' or 'Common'. This field is only applicable for PDCCH. None of the additional fields can be present when formats 0 or 1A are mapped into the PDCCH common search space.

Data Types: char

EnableCarrierIndication — Option to enable carrier indication'Off' (default) | 'On' | optional

Option to enable carrier indication field (CIF) in the UE configuration, specified as 'Off' or 'On'. By default, EnableCarrierIndication is disabled. When EnableCarrierIndication is enabled ('On'), the CIF is present in the UE-specific configuration.

Data Types: char

EnableSRSRequest — Option to enable SRS request'Off' (default) | 'On' | optional

Option to enable SRS request in the UE configuration, specified as 'Off' or 'On'. By default, EnableSRSRequest is disabled. When EnableSRSRequest is enabled ('On'), the SRS request field is present in UE-specific formats 0/1A for FDD or TDD and formats 2B/2C/2D for TDD.

Data Types: char

EnableMultipleCSIRequest — Option to enable multiple CSI requests'Off' (default) | 'On' | optional

Option to enable multiple CSI requests in the UE configuration, specified as 'Off' or 'On'. By default, EnableMultipleCSIRequest is disabled. When EnableMultipleCSIRequest is enabled ('On'), the UE is configured to process multiple channel state information (CSI) requests from cells. Enabling multiple CSI requests affects the length of the CSI request field in UE-specific formats 0 and 4.

Data Types: char

NTxAnts — Number of UE transmission antennas1 (default) | 2 | 4 | optional

Number of UE transmission antennas, specified as 1, 2, or 4. The number of UE transmission antennas affects the length of the precoding information field in DCI format 4.

Data Types: double

Data Types: struct

Output Arguments

collapse all

dcibits — Recovered DCI message bit vectorvector

Recovered DCI message bit vector, returned as a column vector. The length of dcibits is defined though structure enb in terms of the DCI message format and the bandwidth.

Data Types: int8

crc_rnti — 16-bit integer result of the CRC decodervector

16-bit integer result of the CRC decoder, returned as a column vector. crc_rnti is equivalent to the RNTI value that would need to mask (XOR) the CRC for no CRC error.

Data Types: uint32

More About

collapse all

DCI Message Decoding

Downlink control information (DCI) message decoding performs the inverse DCI processing operation as specified in TS 36.212 [1], Section 5.3.3. Specifically, lteDCIDecode performs rate recovery, and Viterbi and CRC decoding to recover the DCI message bit vector (dcibits) from an input vector of received soft bits previously coded by the DCI processing. lteDCIDecode also returns the 16-bit integer result of the CRC decoder, crc_rnti, which is equivalent to the RNTI value that would need to mask (XOR) the CRC for no CRC error. Using the RNTI, recovered with no CRC errors, enables the system to match the recovered DCI message with a specific ue.

The length of the DCI information payload to be recovered can be specified

  • Directly by dcilen

  • Determined using the fields in enb that specify the DCI message format (DCIFormat) and bandwidth (either NDLRB or NULRB).

For information on link bandwidth assignment, see Specifying Number of Resource Blocks.

Specifying Number of Resource Blocks

The number of resource blocks specifies the uplink and downlink bandwidth. The LTE System Toolbox™ implementation assumes symmetric link bandwidth unless you specifically assign different values to NULRB and NDLRB. If the number of resource blocks is initialized in only one link direction, then the initialized number of resource blocks (NULRB or NDLRB) is used for both uplink and downlink. When this mapping is used, no warning is displayed. An error occurs if NULRB and NDLRB are both undefined.

References

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

Introduced in R2014a

Was this topic helpful?