The three symbol types
In TDD, each OFDM symbol within a slot is one of three types:
Uplink (U): The gNB shall not transmit in uplink symbols. The UE may transmit in uplink symbols.
Flexible (F): May be used for either downlink or uplink. The actual usage is indicated dynamically by DCI or configured by higher layers.
The purpose of Flexible symbols is to allow dynamic TDD — the network can change the DL/UL split on a per-slot basis depending on traffic load. A cell with mostly video downloads can allocate more DL symbols; one serving many IoT devices uploading sensor data can flip to more UL.
TDD configuration — two layers
TDD patterns are configured at two timescales:
Semi-static (RRC) — TDD-UL-DL-ConfigCommon and TDD-UL-DL-ConfigDedicated configure a repeating pattern of D/U/F symbols across a period. This is signalled in SIB1 (for cell-wide) and RRCReconfiguration (per-UE override).
Dynamic (DCI 2_0) — the SFI (Slot Format Indicator) DCI overrides Flexible symbols slot-by-slot. Addressed by SFI-RNTI, monitored in a dedicated Search Space.
Our n78 cell — TDD pattern
// From SIB1 tdd-UL-DL-ConfigurationCommon: referenceSubcarrierSpacing = 30 kHz (μ=1) dl-UL-TransmissionPeriodicity = ms5 ← 5 ms = 10 slots // Pattern 1 (applies to all slots in period): nrofDownlinkSlots = 7 ← slots 0–6: all symbols DL nrofDownlinkSymbols = 6 ← slot 7: first 6 symbols DL nrofUplinkSymbols = 4 ← slot 7: last 4 symbols UL nrofUplinkSlots = 2 ← slots 8–9: all symbols UL // Resulting pattern per 5 ms (10 slots, μ=1): Slot: 0 1 2 3 4 5 6 7 8 9 Type: DL DL DL DL DL DL DL S UL UL // S = Special slot (mixed DL/Guard/UL within one slot) // Special slot 7 symbol breakdown: Symbols 0–5: DL (6 symbols) — PDCCH, PDSCH Symbol 6–9: GP (4 symbols) — Guard Period (silence) Symbols 10–13: UL (4 symbols) — PUCCH, PUSCH, SRS
Guard period — why it exists
Between the last DL symbol and first UL symbol, there must be a silent period called the Guard Period (GP). Without it, the UE's UL signal would arrive at the gNB while the gNB's DL transmission is still ringing in the receive chain — causing self-interference.
The guard period must be long enough to cover the maximum round-trip propagation delay in the cell. For a 5 km cell radius: one-way delay = 5000/3×10⁸ = 16.7 μs, round-trip = 33.3 μs. At 30 kHz SCS each symbol = 35.7 μs. A 1-symbol guard period is marginally sufficient; 2–4 symbols provide more margin.
DL:UL ratio and throughput impact
Our pattern has 7.6 DL slots and 2.4 UL slots per 10-slot period (counting the special slot proportionally). This is roughly a 76:24 DL:UL split — appropriate for a consumer broadband cell where users mostly download.
// From our DL scheduling example: DL throughput per DL slot ≈ 29 Mbps (37 RBs, MCS 20) // DL duty cycle = 7.6 / 10 = 76% DL peak throughput ≈ 29 × 0.76 × 2000 slots/s = ~44 Mbps // If DL:UL ratio changed to 8:2 (more DL): DL peak ≈ 29 × 0.80 × 2000 = ~46 Mbps (+5%) // Dynamic SFI can change Flexible symbols each slot // within the bounds set by the semi-static config