5G NR · PDCCH mapping

CCE-to-REG Mapping

How does a logical CCE actually land on physical resources? Through REG bundles and an optional block interleaver. Drive the real TS 38.211 §7.3.2.2 interleaver — bundle size L, interleaver depth R, shift nshift — watch every bundle fly to its physical home, and read the exact permutation in a live table.

2·3·6bundle size L
2·3·6interleaver R
0–274shift index
38.211§7.3.2.2
logical bundles → interleaved physical bundles
1 Two strategies

Localised or distributed

Non-interleaved keeps a CCE's REG bundles contiguous — ideal when the gNB has good CSI and wants a localised, beamformed PDCCH. Interleaved scatters bundles across the whole CORESET for frequency diversity and inter-cell randomisation — the safe default when CSI is stale.

Non-interleaved

Bundle f(x) = x. The CCE occupies consecutive REG bundles. Precoder can be matched to a known channel direction (beamformed PDCCH).

Interleaved

A block interleaver spreads bundles across frequency. One PDCCH samples diverse REs, averaging fading and randomising collisions between cells.

2 The mapping

The block interleaver, live

Logical bundle x maps to physical bundle f(x). Adjust the parameters — the connectors re-route in real time. Note how the shift rotates the whole pattern and how R sets the interleaving depth.

REGs (NREG)
Bundles (NREG/L)
C = NREG/(L·R)
Valid?
38.211 §7.3.2.2f(x) = ( R·c + r + nshift ) mod (NREG/L),   x = C·r + c,   r = 0…R−1,   c = 0…C−1
3 Exact permutation

Bundle-by-bundle table

Every logical bundle, its (r, c) decomposition, and the physical bundle it lands on — computed straight from the formula above.

Logical xr = ⌊x/C⌋c = x mod CR·c + r + shiftPhysical f(x)
4 Precoding granularity

Where the precoder can change

precoderGranularity tells the UE where the gNB may change precoder: sameAsREG-bundle (per bundle — UE estimates per bundle) or allContiguousRBs (one precoder across all contiguous RBs of the CORESET — UE can interpolate widely).

sameAsREG-bundle

Precoder may differ every bundle. Maximum scheduling freedom, but channel estimation is confined to each bundle.

allContiguousRBs

Same precoder across contiguous RBs → the UE interpolates the channel across a wider span for a better estimate.

5 Knowledge check

Test yourself