Downlink Control Processing and Procedures

This example describes the blind search decoding of the physical downlink control channel (PDCCH) instance for 5G New Radio communications system. Building on the tutorial Modeling Downlink Control Information, it introduces the concept of a control resource set (CORESET), its generic specification and shows how a PDCCH instance is mapped to one of several possible candidates. At the receiver, the example performs a blind search over the same set of candidates to recover the transmitted control information.

System Parameters

Set system parameters corresponding to the bandwidth part, CORESET and PDCCH instances respectively.

This example assumes single slot processing, using a single bandwidth part with a single PDCCH transmission for an associated coreset. It supports non-interleaved CCE-to-REG mapping with no resource block offsets with respect to the bandwidth part and CORESET. Refer to the Downlink Carrier Waveform Generation example for details on other parameters described therein.

PDCCH Bit Capacity

The bit capacity for a PDCCH instance is determined based on the number of Control Channel Elements (CCE) configured for the PDCCH. A CCE consists of six resource element groups (REGs) where a resource-element group equals one resource block (RB) during one OFDM symbol.

% Number of bits for PDCCH resources and possible candidates
[E,candidates] = hPDCCHSpace(bwp,coreset,pdcch);

Based on the specified monitoring opportunity for the first symbol of each CORESET in a slot (coreset.AllocatedSymbols), the corresponding physical resource block (PRB) allocation (coreset.AllocatedPRB) and symbol duration (coreset.Duration), all possible candidates are determined for the PDCCH instance over the whole bandwidth part. Each of the candidates represent the possible resource element indexes for the PDCCH symbols within the slot. The PDCCH DM-RS resource element indices are excluded from these sets.

DCI Encoding

The DCI message bits based on a downlink format are encoded using the nrDCIEncode function, which includes the stages of CRC attachment, polar encoding and rate matching. The codeword is rate-matched to the PDCCH bit capacity E.

PDCCH Symbol Generation and Mapping

The encoded DCI bits are mapped onto the physical downlink control channel (PDCCH) using the nrPDCCH function which generates the scrambled, QPSK-modulated symbols. The scrambling accounts for the user-specific parameters.

nID = pdcch.NID;
sym = nrPDCCH(dciCW,nID,rnti);

For NR, the PDCCH symbols are then mapped to one of the candidates (resource element sets) within an OFDM grid which also has PDSCH, PBCH and other reference signal elements. These are followed by OFDM modulation and transmission over a channel. For simplicity, only the PDCCH symbols are mapped here to a candidate location within the grid. This example supports the normal cyclic prefix only.

Blind PDCCH and DCI Decoding

As the UE does not have information about the detailed control channel structure, it needs to blindly decode the PDCCH received symbols. It does this by monitoring the set of PDCCH candidates for each slot, using the UE's RNTI to identify the right candidate.

The received symbols per candidate are demodulated with known user-specific parameters and channel noise variance using the nrPDCCHDecode function.

For an instance of the received PDCCH codeword, the nrDCIDecode function includes the stages of rate recovery, polar decoding and CRC decoding.

If the output mask matches the RNTI used for the PDCCH, the UE has successfully decoded the PDCCH and can process the decoded DCI message.

In this example, the receiver assumes knowledge of the DCI format (i.e. K is assumed known at the receiver). In practice, even this would be searched for in an outer loop over all supported formats with respective bit lengths per format.