Web Simulation 

 

 

 

 

5G NR SRS Resource Grid Visualizer 

This interactive tool visualizes SRS (Sounding Reference Signal) resource-element mapping on a grid of 4 Resource Blocks (48 subcarriers) × 14 OFDM symbols per slot, according to 3GPP TS 38.211 Section 6.4.1.4 and Table 6.4.1.4.3-1.

Mathematical foundation: SRS is not a continuous block; it uses a comb structure in frequency. Only every KTC-th subcarrier is used (KTC = 2 or 4), with offset TC. The subcarrier index is k = k0 + KTC·k′ + TC, where k0 is the starting subcarrier. In time, SRS occupies nrofSymbols consecutive OFDM symbols starting at l0 (configured via RRC).

Frequency hopping: The starting subcarrier k0 depends on the frequency group index nb(nSRS) at each level b = 0,1,2,3. When bhop < BSRS, hopping is enabled: nb is a function of the transmission instance nSRS via Fb(nSRS) (38.211). Changing nSRS shifts the red SRS blocks vertically on the grid.

Bandwidth configuration: CSRS (0–63) and BSRS (0–3) select a row in Table 6.4.1.4.3-1, giving mSRS,b (number of RBs at level b) and Nb (number of frequency hops). These define the SRS bandwidth and hopping pattern.

Views: Magnified View shows 4 RBs × 14 symbols with an I/Q unit-circle subplot and Sequence Data table (Index n, Real, Imag, Angle) that update on hover over the grid. Full Band View shows 272 RBs × 14 symbols; use Animate Hopping (and a Hopping Preset or b_hop < B_SRS with visible branches) to see the SRS block move in frequency. The RRC panel shows Hopping (on/off) and Hopping Visibility (Visible, Static, or N/A).

0
0
1
0
0
0
0
3
frequencyDomainPosition 0
freqDomainShift 0
transmissionComb 2
startPosition 0
c-SRS 0
b-SRS 3
b-hop 0
SRS Transmission (n_SRS) 0
Hopping
Hopping Visibility
I/Q
ParamValue
Index (n)-
Real (I)-
Imag (Q)-
Angle-
Antenna 1
Antenna 2
k0=0, n0=0, m_SRS,b=4 (PRBs), #PRBs=4
SRS RE Empty
Antenna 1
Antenna 2

38.211 Table 6.4.1.4.3-1: SRS bandwidth configuration

CSRS BSRS=0 BSRS=1 BSRS=2 BSRS=3
mSRS,0N0 mSRS,1N1 mSRS,2N2 mSRS,3N3

3GPP 38.211 §6.4.1.4: SRS sequence-to-RE mapping. Selected CSRS row and BSRS cells are highlighted. Comb KTC, TC, and cyclic shift ncs control sequence phase; nSRS drives frequency hopping when b_hop < B_SRS and visibility is not Static.

 

Usage

Use the controls to explore SRS RE mapping:

  1. K_TC (transmission comb): 2 = SRS on every 2nd subcarrier; 4 = every 4th. The comb "teeth" get wider when you increase K_TC.
  2. k̄_TC (comb offset): Which comb line is used (0 to K_TC−1). Change it to see the red pattern shift by one subcarrier.
  3. n_cs (cyclic shift): Controls phase rotation of the SRS sequence (0–7 for K_TC=2, 0–11 for K_TC=4). With n_cs > 0, the I/Q subplot shows different angles as you hover across subcarriers and symbols.
  4. nrofSymbols and l_offset: Number of consecutive OFDM symbols (1, 2, or 4) and the offset from slot end (0–5). Phase can vary per symbol when nrofSymbols > 1.
  5. n_RRC (freqDomainPosition): RRC parameter 0–67; shifts the frequency allocation.
  6. n_SRS: Time-domain transmission instance. When hopping is enabled (b_hop < B_SRS) and visible (N_b product > 1), changing n_SRS moves the SRS blocks in frequency. Animate Hopping cycles n_SRS and switches to Full Band View; the button is disabled when Hopping is off or Hopping Visibility is Static.
  7. b_hop: Hopping threshold (0–3). If b_hop ≥ B_SRS, hopping is off; otherwise n_b depends on n_SRS.
  8. C_SRS and B_SRS: Select a row and column in Table 6.4.1.4.3-1 (C_SRS 0–63). The highlighted row/cells show mSRS,b and Nb. Hopping Preset: choose a preset below the Animate button to apply hopping-on, visible configurations (e.g. 2 or 4 branches). Changing b_hop, B_SRS, or C_SRS manually resets the preset to Custom.
  9. Magnified View: 4 RBs × 14 symbols; RB0 at bottom. Hover over the grid to update the I/Q unit circle and Sequence Data table (Index n, Real, Imag, Angle). Full Band View: 272 RBs × 14 symbols; same orientation.

Parameters

  • Comb: RE (k, l) carries SRS if l is in [l0−nrofSymbols+1, l0] and (k−k0) mod K_TC = k̄_TC. k0 is computed from n_shift, n_b(n_SRS), and the table mSRS,b, Nb.
  • n_b(n_SRS): For b ≤ b_hop, n_b = ⌊4·n_RRC⁄mSRS,b⌋ mod N_b. For b > b_hop, n_b includes F_b(n_SRS) (38.211). Hopping is visible only when the product of N_b from level b_hop+1 to B_SRS is > 1.
  • Bandwidth: SRS spans mSRS,b PRBs (from the selected C_SRS, B_SRS). Total subcarriers = mSRS,b×12; only every K_TC-th with offset k̄_TC are filled.
  • Phase / n_cs: Sequence phase uses cyclic shift n_cs (and symbol index l′ within the SRS resource) so I/Q values can differ across symbols when nrofSymbols > 1.
  • Grid axes: Vertical = frequency (RB0 at bottom); horizontal = symbol l (0–13). Same in both Magnified and Full Band views.