Interview Preparation5G Air Interface and Top Interview Questions

5G NR Resource Blocks and Bandwidth Parts: CRB, BWP, PRB and VRB Finally Untangled

Four kinds of resource block, one coordinate system: how Point A, common resource blocks, bandwidth parts, physical and virtual resource blocks fit together, and why NR needed all four.

By Manas·14 min read·Updated 2026-09-07

Why there are four names for "a block of 12 subcarriers"

Every resource block is 12 consecutive subcarriers. What differs is the coordinate system in which it is numbered:

NameNumbered relative toWho uses the number
Common RB (CRB)Point A, the absolute reference of the carrierRRC configuration (where things are on the carrier)
Physical RB (PRB)the start of the active bandwidth partthe UE's receiver (what it actually processes)
Virtual RB (VRB)a logical index inside the allocationthe DCI (what the scheduler says)
Resource block group / PRGgroupings of PRBsallocation bitmaps and precoding

Think of a very long strip of graph paper (the carrier). CRBs are the squares printed on it with absolute numbers. A bandwidth part is a picture frame you lay over part of the strip; PRBs are the squares counted from the frame's left edge. VRBs are stickers the scheduler writes numbers on and then places into the frame — either in order (localised) or shuffled (interleaved).

Point A and common resource blocks

Point A is the anchor of the entire frequency grid for a carrier. It is defined as the centre of subcarrier 0 of CRB 0 — and this holds for every numerology: CRB 0 at 15 kHz, CRB 0 at 30 kHz and CRB 0 at 60 kHz all start at Point A. Above Point A the grids diverge (a 30 kHz CRB is twice as wide as a 15 kHz one), so CRB n at one SCS does not generally align with CRB n at another, except at n = 0.

Common resource blocks are numbered from Point A across the carrier; a bandwidth part is a window on that grid, and physical resource blocks are numbered from the start of the window.

How the UE learns where Point A is:

  • During initial access: SIB1 carries offsetToPointA — the number of RBs (at 15 kHz in FR1, 60 kHz in FR2) from Point A up to the lowest RB overlapping the SSB. Together with k_SSB from the MIB, that pins the SSB onto the CRB grid.
  • Once connected: absoluteFrequencyPointA (an ARFCN) gives Point A directly.

Point A does not have to be inside the carrier; it is just a coordinate origin (it usually sits at the carrier's lowest edge). The carrier itself is then described per SCS by SCS-SpecificCarrier: offsetToCarrier (CRBs from Point A to the first usable RB) and carrierBandwidth (number of RBs). A carrier can have at most 275 RBs (3300 subcarriers) at any SCS.

Bandwidth parts: why NR needed them

An LTE UE always received the whole carrier bandwidth. That was fine at 20 MHz. At 100 MHz (or 400 MHz in FR2), three things go wrong:

  1. Power: a phone that only needs to receive a paging message or a keep-alive should not run its RF front end and FFT at 100 MHz.
  2. Cheap devices: an IoT or RedCap device may not support 100 MHz at all, but it should still be able to live on a 100 MHz carrier.
  3. Mixed services: eMBB might want 30 kHz; a URLLC slice on the same carrier might want 60 kHz. One carrier, two numerologies.

A bandwidth part (BWP) solves all three: it is a contiguous set of CRBs, with one numerology, within which the UE actually operates. The carrier stays wide; the UE looks at a window.

The rules

  • A UE can be configured with up to 4 downlink and 4 uplink BWPs per serving cell (IDs 0–3), but only one DL and one UL BWP is active at a time (paired together in TDD).
  • Each BWP has its own SCS, CP, location and size (locationAndBandwidth, a RIV encoding of start CRB and length), and its own PDCCH/PDSCH/PUCCH/PUSCH configuration.
  • BWPs may overlap in frequency and may have different numerologies.
  • The UE only monitors PDCCH, receives PDSCH and measures CSI-RS inside the active BWP.

The three roles a BWP can play

RoleHow definedPurpose
Initial BWP (BWP 0)From CORESET#0 (MIB) during initial access; refined by SIB1 (initialDownlinkBWP)Where the UE camps, reads SI, does random access and paging
Default BWPdefaultDownlinkBWP-Id (if absent, the initial BWP is the default)Where the UE falls back when bwp-InactivityTimer expires — typically narrow, to save power
Dedicated / active BWPfirstActiveDownlinkBWP-Id and the BWP list in dedicated RRCThe wide BWP for high-throughput operation

Initial bandwidth part for access, dedicated bandwidth parts for data, and a default bandwidth part the UE falls back to on inactivity.

How the active BWP changes

  • DCI: the bandwidth part indicator field (up to 2 bits) in DCI 1_1 / 0_1 both schedules data and switches BWP in one message. Switching takes a UE-capability-dependent delay (a few slots) during which the UE is not expected to receive or transmit.
  • Timer: bwp-InactivityTimer (2 ms to 2.56 s). No scheduling for that long → UE returns to the default BWP.
  • RRC reconfiguration: slower, used when the BWP set itself changes.
  • Random access: falls back to the initial BWP if the current one has no RACH resources.

This DCI-plus-timer design mirrors how a phone screen dims: expand on demand, shrink automatically.

Physical resource blocks: the UE's view

Within the active BWP, RBs are numbered PRB 0 … N_BWP,size − 1. The relationship to the common grid is simply

n_CRB = n_PRB + N_BWP,start

where N_BWP,start is the BWP's first CRB. Almost everything the UE does day to day — decoding a DCI's frequency allocation, mapping DM-RS, measuring CSI-RS — is in PRBs. Two consequences:

  • PRB 0 is almost never CRB 0. When someone quotes an RB index, ask "in which coordinate system?".
  • When the active BWP changes, the meaning of every PRB index changes with it, which is why the UE needs the switching delay.

A frequent implementation bug: the RB_start decoded from locationAndBandwidth is measured from the first CRB of the carrier for that SCS (i.e. offsetToCarrier), not from Point A.

Virtual resource blocks: the scheduler's view

A DCI describes an allocation in VRBs. For resource allocation type 0 (RBG bitmap) VRB and PRB are identical. For type 1 (contiguous RIV), the DCI's 1-bit VRB-to-PRB mapping field chooses:

  • Non-interleaved (localised): VRB n → PRB n. The allocation is where the DCI says. Best when the gNB has good CSI and deliberately picks strong RBs.
  • Interleaved (distributed): VRBs are grouped into bundles of L = 2 or 4 RBs (vrb-ToPRB-Interleaver) and passed through a 2-row block interleaver across the BWP, so consecutive VRBs land on non-adjacent PRBs. Best when the gNB has no reliable CSI (fallback scheduling, mobile UEs, SIB1) and wants frequency diversity rather than frequency selectivity.

The interleaving is confined to the BWP; it never spreads an allocation outside the active window.

Putting the four together

Point A
│ CRB 0   CRB 1  …            CRB 100 … CRB 200 …             CRB 272
│ ├──────────────── carrier (offsetToCarrier, carrierBandwidth) ───────┤
│              ┌──── active BWP (start = CRB 100, size = 100) ────┐
│              PRB 0                                          PRB 99
│              DCI says: VRB 10–19 (RIV)          interleaved → PRB 10,11,58,59,… 

Read any NR frequency configuration by walking down this ladder: Point A → carrier → BWP → PRB → (via VRB) what the DCI meant.

Common confusions

  • "Point A is the carrier centre." It is the lowest reference of the CRB grid, normally at or below the carrier's lower edge.
  • "A UE has one BWP." Up to four per direction configured; one active.
  • "The SSB must be inside the active BWP." It need not be — but if it is not, the UE cannot measure it without measurement gaps, so operators usually keep the SSB inside the initial and default BWPs.
  • "BWP switching is only for power saving." It is also how NR handles numerology changes and narrow-band devices on wide carriers.
  • "Interleaved VRB mapping spreads across the carrier." Only within the BWP.
  • "PRB index in a log = CRB index." Only if the BWP starts at CRB 0.

Spec pointers

  • TS 38.211 §4.4.2 — Point A, CRBs; §4.4.3 — PRBs; §4.4.4 — VRBs and BWP definition
  • TS 38.211 §7.3.1.6 — VRB-to-PRB mapping (interleaver)
  • TS 38.213 §12 — BWP operation and switching; TS 38.133 §8.6 — switching delay
  • TS 38.214 §5.1.2.2 — resource allocation types 0/1
  • TS 38.331 — BWP, BWP-Downlink, SCS-SpecificCarrier, offsetToPointA, absoluteFrequencyPointA, bwp-InactivityTimer

Recap

One physical thing (12 subcarriers), four coordinate systems. CRBs are absolute, anchored at Point A for every numerology. A BWP is the window the UE works in — up to four configured, one active, switched by DCI, timer, RRC or RACH — giving power saving, narrow-band device support and mixed numerologies. PRBs are counted from the BWP start; VRBs are what the DCI names, mapped to PRBs either directly or interleaved for diversity.


Interview questions

The questions below are drawn from this topic and phrased the way they tend to come up. Try each one out loud before revealing the answer.

19 questions

5GNRphysical layerair interfaceInterview Prep