Physical Downlink Control Channel (PDCCH)
This module maps the Physical Control Channel (PDCCH) payload onto the resource grid as per control resource set configurations. The demodulation reference signal (DMRS) for PDCCH is filled in resource grid to equalizing information at the receiver. [3GPPTS38211PDCCHRM]
- class toolkit5G.ResourceMapping.ResourceMappingPDCCH(numerology, frequencyDomainResources, duration, monitoringSymbolsWithinSlot)[source]
Generates the resource grid loaded with PDCCH as per Section 7.3.2.5 of [3GPPTS38211_PDCCHRM]. The DMRS are automatically loaded into the resource grid as per the configurations.
- Parameters:
numerology (int) – Specifies the numerology (mu) or sub-carrier spacing (SCS) in 5G-NR. Must be a positive int and defaults to 0. i.e., with a SCS of 15 KHz. Supported numerology are {0,1,2,3}, which correspond to a SCS of {15,30,60,120} KHz respectively.
frequencyDomainResources (numpy.ndarray of int with size (45,)) – Defines frequency domain resources which must be a 45 length array whose each bit allocates 6 contiguous RBs, with grouping starting from PRB 0, to CORESET within the bandwidth part within which the CORESET is configured. The 0th entry points to the lowest RB in the configured BWP. The number of RBs allocated to CORESET/PDCCH is given by \(\text{N}_\text{RB}\) = 6*np.sum(frequencyDomainResources)
duration (int) – Defines the contiguous number of OFDM symbols allocated to CORESET.
monitoringSymbolsWithinSlot (numpy.ndarray of int with size (14,), i.e, the number of ofdm symbols with in a slot.) – Defines the timing of CORESET region. It is a function of coreset duration. The start symbol of CORESET is calculated using this higher layer parameter.
- Input:
pdcchPayload ((numPDCCHBits,1), int) – Defines the payload bits to be loaded in the configured CORESET. The number of PDCCH bits,
numPDCCHBits
= \(0.75 \times \text{N}_\text{RB} \times 12 \times \text{duration}\). The 0.75 of the total PDCCH resources are occupied by the payload and the remaining 1/4 resources are used by DMRS.interleaverType (str) – Define CCE-to-REG mapping type \(\in \{\text{"interleaved"}, \text{"non-interleaved"}\}\).
L (int) – Define REG Bundle Size \(\in \{2,3,4\}\).
R (int) – Define Interleaver Size \(\in \{2,3,4\}\).
nshift (int) – Define resource block offset \(\in \{0,1,\dots,\text{N}_\text{RB}-1\}\).
slotNumber (int) – Defines the slot number within a frame where PDCCH is loadedS \(n_{s,f}^{\mu} \in \{0,1,2,\) \(\dots,10*2^{\mu}-1\}\) where \({\mu = \frac{\Delta f}{15 kHz}}\).
scramblingID (int) – Defines the scramblingID \(\in \{0,1,\dots,4095\}\).
chosenCCEindices (np.ndarray of int) – Specifies the contiguous cce indices (of size equal to AL) chosen for a given aggregation level AL. Defaults to None.
- Output:
[14, numSubcarriers], np.complex64 where numSubcarriers =
frequencyDomainResources.size
\(\times 6\times 12\). – Physical downlink control channel (PDCCH) resource Grid.- Raises:
ValueError – [Error in resourceMappingPDCCH]:
duration
must be 1, 2 or 3!ValueError – [Error in resourceMappingPDCCH]:
frequencyDomainResources
must be a binary integer array of size 45!ValueError – [Error in resourceMappingPDCCH]:
monitoringSymbolsWithinSlot
must be a binary integer array of size 14!
- References:
- [3GPPTS38211PDCCHRM]
(3GPP TS 38.211 version 17.1.0 Release 17) 5G;NR;Physical channels and modulation ‘5.2.2 Low-PAPR sequence generation type 1’