Downlink control information decoding
[
recovers
a downlink control information (DCI) message, given the DCI vector
length, dcibits
,crc_rnti
]
= lteDCIDecode(dcilen
,softbits
)dcilen
, and a softbits
input
vector. For more information, see DCI Message 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
dcilen = uint64
31
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)
decodedDCIbitslen = 1×2
31 1
crcRNTI
crcRNTI = uint32
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.
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
dcilen = uint64
27
ue.PDCCHFormat = 1; ue.RNTI = 7; ue.NDLRB = 25; dciBits = zeros(dcilen,1); cw = lteDCIEncode(ue,dciBits);
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)
decodedDCIbitslen = 1×2
27 1
crcRNTI
crcRNTI = uint32
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.
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
dcilen = uint64
36
ue.PDCCHFormat = 2; ue.RNTI = 5; ue.NDLRB = 25; dciBits = zeros(dcilen,1); cw = lteDCIEncode(ue,dciBits);
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)
decodedDCIbitslen = 1×2
36 1
crcRNTI
crcRNTI = uint32
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.
dcilen
— Length of recovered DCI message vectorLength of recovered DCI message vector, specified as a positive integer.
Data Types: double
softbits
— Floating-point soft bitsFloating-point soft bits, specified as a column vector.
Data Types: double
| int8
enb
— eNodeB cell-wide settingseNodeB cell-wide settings, specified as a structure containing these parameter fields.
Parameter Field | Required or Optional | Values | Description |
---|---|---|---|
NDLRB | Required | Scalar integer from 6 to 110 | Number of downlink resource blocks. () |
NULRB | Required | Scalar integer from 6 to 110 | Number of uplink resource blocks. () |
DCIFormat | Required (see syntax descriptions for applicability) |
| Downlink control information (DCI) format |
CellRefP | Optional | 1 (default), 2, 4 | Number of cell-specific reference signal (CRS) antenna ports |
DuplexMode | Optional |
| Duplexing mode, specified as:
|
chs
— User-equipment-related channel configurationUser-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 EPDCCH.
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'
| 'Format5'
'Format5A'
DCI format name, specified as a character vector or string scalar. For string scalar, use double quotes. See syntax descriptions for applicability.
Data Types: char
| string
ChannelControlType
— Physical control channel type'PDCCH'
(default) | 'EPDCCH'
| optionalPhysical 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
| string
SearchSpace
— Search space mapping'UESpecific'
(default) | 'Common'
| optionalSearch 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
| string
EnableCarrierIndication
— Option to enable carrier indication'Off'
(default) | 'On'
| optionalOption 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
| string
EnableSRSRequest
— Option to enable SRS request'Off'
(default) | 'On'
| optionalOption 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
| string
EnableMultipleCSIRequest
— Option to enable multiple CSI requests'Off'
(default) | 'On'
| optionalOption 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
| string
NTxAnts
— Number of UE transmission antennasNumber 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
PSSCHNSubchannels
— Number of sub-channels in V2X PSSCH poolNumber of sub-channels in V2X PSSCH pool, specified as an integer scalar from 1 to 110. It affects the length of RIV in format 5A
Data Types: double
Data Types: struct
dcibits
— Recovered DCI message bit vectorRecovered 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 decoder16-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
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.
The number of resource blocks specifies the
uplink and downlink bandwidth. The LTE 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.
[1] 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.
lteDCI
| lteDCIEncode
| lteDCIInfo
| lteDCIResourceAllocation
| ltePDCCHDecode
You have a modified version of this example. Do you want to open this example with your edits?