Pilots built into control
Unlike PDSCH, PDCCH has no separate front-loaded DM-RS symbol — the UE must demodulate it the moment it arrives, before it even knows the DCI is its own. So the pilots are embedded in every REG: three of the twelve REs per REG carry DM-RS, giving a dense, local channel estimate exactly where the control bits sit.
3 per REG
At subcarriers k mod 4 = 1 (i.e. 1, 5, 9 in each RB) — one in four REs is a pilot.
Gold sequence
A QPSK pseudo-random sequence initialised from the slot, symbol and a scrambling ID — so neighbouring cells use different pilots.
Wideband estimate
Precoder bundling lets the UE average pilots across RBs for a cleaner channel estimate — vital at low SNR.
DM-RS in the CORESET
Across the CORESET's RBs and symbols, the DM-RS forms a regular lattice. Toggle the channel-estimation overlay to see how the UE interpolates between pilots to recover the channel on the control REs.
QPSK Gold sequence
Each DM-RS symbol is a QPSK value from a length-31 Gold sequence, initialised per symbol from (slot, symbol, N_ID). N_ID is the configured pdcch-DMRS-ScramblingID (or the physical cell ID by default), so adjacent cells' pilots de-correlate.
Precoder granularity
precoderGranularity tells the UE over how many RBs the gNB keeps the PDCCH precoder constant — and therefore how widely it can average DM-RS for channel estimation.
sameAsREG-bundle
Precoder may change per REG bundle — the UE estimates the channel within each bundle only.
allContiguousRBs
One precoder across all contiguous RBs of the CORESET → the UE averages DM-RS widely for a much better low-SNR estimate.