Wi-Fi and 5G carry bits on time pulses or on sinusoids — and both fade when the world moves. OTFS carries bits on a stranger object: a pulsone, a pulse train wearing a tone. Here's why that shape refuses to fade.
A signal leaving a base station reaches your phone along a handful of paths: the direct line, a bounce off a building, a bounce off a passing truck. Each path does exactly two things to the signal:
Delay (τ) — a longer path arrives later. Doppler (ν) — a moving reflector shifts the frequency, up if it approaches, down if it recedes.
So instead of describing the channel as a messy time-varying filter, you can plot it as a few clean spikes on a plane whose axes are delay and Doppler. Buildings sit on the ν = 0 line; vehicles sit above or below it. Toggle the reflectors and watch the map:
Left: base station → phone with reflectors. Right: each path becomes one spike at (τᵢ, νᵢ). Stationary reflectors land on the zero-Doppler axis; the two vehicles move in opposite directions, so their Doppler shifts have opposite sign.
TDM puts each symbol on a narrow time pulse — sharp in time, smeared across all frequencies. FDM (the family OFDM belongs to) puts each symbol on a sinusoid — sharp in frequency, smeared across all time. Heisenberg's uncertainty principle says you can't be sharp in both at once… as an ordinary signal.
OTFS sidesteps this by defining its carrier in the DD plane: a single localized pulse at (τ₀, ν₀), repeated periodically with delay period τp and Doppler period νp = 1/τp. Converted to the time domain (via the inverse Zak transform), it becomes the pulsone: a train of pulses spaced τp apart, modulated by a tone of frequency ν₀. It is "effectively" localized in time and frequency — the uncertainty principle is satisfied by the quasi-periodic repetition, not violated.
All three drawn in the time domain. The pulsone inherits the pulse train's time localization and the tone's frequency localization.
Drag the glowing dot in the DD plane below. Moving it along the delay axis slides the pulse train in time; moving it along the Doppler axis retunes the modulating tone. Then pull the τp slider to its extremes: as τp → ∞ the train collapses to a single pulse (OTFS becomes TDM), and as τp → 0 it becomes a pure tone (OTFS becomes FDM). OTFS is a whole family of modulations interpolating between the two.
The DD pulse repeats quasi-periodically (ghost copies outside the fundamental box). In time: pulses at τ₀ + nτp under a tone of frequency ν₀. In frequency: pulses at ν₀ + mνp. Slide τp left → tone (FDM); right → single pulse (TDM).
Everything in this section is computed with the actual discrete Zak transform (M = 32 delay bins × N = 16 Doppler bins, 512 samples per frame). A pilot symbol is placed on the DD grid, converted to time by the inverse DZT (an IDFT along the Doppler axis for each delay bin), pushed sample-by-sample through a three-path doubly-spread channel — exact cyclic delay shifts and Doppler phase ramps — then converted back with the forward DZT.
The third path is yours. Keep its delay under τp (= 32 bins) and every path lands on its own DD cell: the receive grid is the channel estimate, read straight off. Push its delay past 32 and it wraps around the fundamental period — first as delay ambiguity, and if it lands on another path's cell, as genuine superposition: watch the computed power sweep start to ripple.
Dots are the exact 512 samples; the curve is their band-limited (periodic sinc) interpolation. The frame is treated cyclically — the mod-512 wrap is the finite stand-in for the infinite quasi-periodic continuation, the same job a cyclic prefix does for OFDM. True channel: h₁ = 1.0∠0.0 at (Δτ 3, Δν 0); h₂ = 0.8∠0.9 at (Δτ 7, Δν 2); h₃ = 0.7∠2.1 at your setting. The tap readout is estimated purely from the receive grid — compare against those values. Tap phases include the predictable e^(j2πνᵢτ₀) rotation, which shifts with the pilot exactly as the paper's prediction relation says it should. Path 3's Doppler now moves in quarter-bin steps — set it off-integer (say −2.75) to see the scheme's biggest practical headache computed live: an off-grid Doppler smears its tap down the whole Doppler axis.
Fading in TDM happens when two paths share a delay but differ in Doppler: their echoes land on top of each other and interfere, sometimes destructively, depending on when you transmitted. FDM has the mirror problem for paths sharing a Doppler. In the DD plane, echoes only collide if the pulse's periodic replicas alias into each other. That can't happen as long as the box is bigger than the channel:
τp > delay spread and νp > Doppler spread
The paper calls this the crystallization condition. Since τp·νp = 1, it's satisfiable whenever delay spread × Doppler spread < 1 — and a typical cellular channel (≈5 µs × 1000 Hz) sits at 0.005, with room to spare. Try to break it:
The echo cluster fits inside the box: every path is seen separately, received power is flat across all symbols, and tomorrow's response is predictable from today's.
| Channel | TDM | FDM | OTFS (crystalline) |
|---|---|---|---|
| Delay spread only | ✓ fine | ✕ fades | ✓ fine |
| Doppler spread only | ✕ fades | ✓ fine | ✓ fine |
| Doubly spread (the real world in motion) | ✕ fades | ✕ fades | ✓ non-fading, predictable |
(One correction to fold in: CP-OFDM is 4G LTE and 5G NR; 3G was WCDMA, a CDMA system.) The claim is true in two distinct senses. First, as a limiting case: shrink τp → 0 and the pulsone degenerates into a single frequency-domain pulse — a subcarrier. Discretely, collapse the grid to one delay bin and the inverse Zak transform becomes a plain inverse DFT along the frequency axis, which is literally the OFDM modulator. The cyclic prefix is OFDM's substitute for quasi-periodicity: both exist to make delay shifts act circularly, turning the channel into a clean, invertible convolution. Second, as hardware compatibility: the widely studied 2017 variant (MC-OTFS) is deliberately built as a precoder — an inverse symplectic finite Fourier transform feeding a standard CP-OFDM modulator — so multicarrier silicon runs it unchanged. Zak-OTFS (this paper) replaces that two-step approximation with the exact one-step transform.
Continuous recipe: choose the delay period τp, fixing νp = 1/τp; place a pulse at (τ₀, ν₀) inside 𝒟₀; extend it over the whole plane with the quasi-periodic phase rule x(τ+nτp, ν+mνp) = e^(j2πnντp)·x(τ,ν); twisted-convolve with a transmit filter wtx to enforce bandwidth B and duration T; finally apply the inverse Zak transform. Out comes the pulse train modulated by a tone. Discrete recipe — exactly what section 03½ runs — is almost embarrassingly small: put one nonzero entry in an M×N array, then take an inverse DFT along the Doppler axis for each delay bin. That's the whole inverse DZT, O(MN log N). Every one of the MN grid cells generates its own pulsone; a transmitted frame is the sum of all of them, each scaled by its QAM symbol.
Mostly no — and that's a feature. The shape parameters (τp, νp, M, N, the filters) are chosen once so the crystallization condition holds with margin for the worst delay/Doppler spread the deployment will see — the analog of picking a 5G numerology (subcarrier spacing) per band and use case. That's a quasi-static outer knob, adaptable at most slowly, not per-frame feedback. What runs continuously is estimation for the equalizer: embed one pilot pulsone with a small guard region, and the receive DD grid around it directly reads off the channel taps — no correlator banks, no interpolation over a scattered time-frequency pilot lattice. Cadence is where the schemes really diverge. OFDM must re-sound the channel within a phase-coherence time, which at vehicular speed shrinks to sub-millisecond — hence reference signals in every slot. OTFS taps instead drift at the rate the geometry changes: delays and Dopplers of physical reflectors, stable over tens to hundreds of milliseconds. So one pilot per frame suffices, and between soundings the receiver predicts rather than re-measures — each tap's phase evolves by the closed form e^(j2πνᵢ·Δτ₀), so prediction replaces acquisition instead of approximating it.
Seen as a full link, OTFS only changes three things relative to an OFDM modem: the transform in and out of the modulation domain (DZT instead of DFT), where the pilot lives (one DD cell plus a guard, instead of a scattered time-frequency lattice), and what the equalizer inverts (a 2D twisted convolution instead of one tap per subcarrier). Everything else is a standard digital link.
Solid arrows: the per-frame signal path. The short dashed loop is fast but cheap — the estimator reads the pilot cells straight off the receive grid, predicts each tap's phase forward with the closed-form rotation, and hands the equalizer its matrix, once per frame. The long dashed loop is slow — numerology (τp, M, N, filters) and link adaptation move per deployment or per shift in channel statistics, never per frame. That's the full answer to the control-loop question: the fast loop tunes the inverse of the channel; the slow loop tunes the waveform.
A frame of bandwidth B and duration T carries MN ≈ BT orthogonal pulsones — the Nyquist count, exactly the same ceiling as OFDM. So gross rate is B × bits-per-symbol, and OTFS's advantage is not a higher ceiling but how little it surrenders to overhead and fading margin. The calculator picks τp at the geometric-mean point of the crystallization hyperbola, sizes the grid, charges the embedded pilot's guard region against the payload, and compares the net rate with the Shannon bound B·log₂(1+SNR).
Assumes code rate R = 0.75 and the standard embedded-pilot guard (2k_max+1)(4l_max+1) cells. When the net modulated rate exceeds the Shannon line, the link is SNR-limited — back off the constellation. When delay spread × Doppler spread approaches 1, no τp satisfies crystallization and the whole scheme (like any scheme) breaks.
Fractional delay-Doppler is the big one. Real reflectors don't sit on grid points. An off-grid Doppler smears its tap across the entire Doppler axis (try it in section 03½ — quarter-bin steps on path 3), degrading estimation and destroying the sparsity the equalizer and the radar story both bank on. Mitigations — wider filters, windowing, off-grid estimators, larger N — all cost overhead, complexity, or latency.
PAPR. A pulsone is literally a pulse train: most of the energy in brief spikes. Peak-to-average power ratio is high and grows with N, which is hostile to power amplifiers; and the embedded pilot is usually power-boosted above the data, making the worst peak worse. OFDM has its own PAPR problem, but decades of tricks (clipping, tone reservation) are tuned for it, not for this.
Pilot overhead scales with the channel. The guard region grows with delay spread × Doppler spread, so the harshest channels — the ones OTFS is pitched at — are the ones that eat the most payload. The calculator above makes this trade explicit.
Equalizer complexity. The DD channel couples all MN symbols in a frame through a 2D twisted convolution. There is no OFDM-style one-tap-per-bin inversion; you need message passing, block MMSE, or iterative schemes whose cost and convergence depend on the tap count staying small — which loops straight back to the fractional-Doppler problem.
Latency vs Doppler resolution. The receiver must buffer a whole frame before the forward DZT can run, so latency is at least T. But resolving fine Doppler requires long T (resolution = 1/T). Low latency and sharp Doppler pull in opposite directions, and URLLC-style traffic sits on the wrong end of that trade.
Synchronization — genuinely two-sided. The forgiving side: a constant carrier-frequency offset is indistinguishable from one extra common Doppler shift, and a fixed timing offset from one extra common delay, so within the crystallization margin the channel estimator absorbs both for free — where OFDM's subcarrier orthogonality shatters under CFO. The unforgiving side: those offsets are absorbed only if they behave like on-grid channel paths. Fractional CFO leaks exactly like fractional Doppler; oscillator phase noise (severe at mmWave) is a continuously time-varying "Doppler" that smears every tap; and you still need coarse frame-boundary detection before any Zak-domain processing exists to help you.
Acceleration breaks stationarity. The predictability argument assumes each path's ν is constant across the frame. A hard-braking vehicle has ν̇ ≠ 0, which chirps the tap within a single frame — longer frames (chosen for Doppler resolution) make this worse.
Ecosystem gravity. 3GPP evaluated OTFS during 5G NR study phases and kept CP-OFDM; every deployed chip, test rig, and DSP toolchain speaks OFDM. MC-OTFS exists precisely as a bridge over that gap, but bridges cost the performance the exact Zak version was built to reclaim. MIMO and multi-user OTFS are active research rather than settled engineering.
No fading → flat SNR. Every symbol in a packet sees the same effective channel gain, so bit-error performance beats multicarrier waveforms in high-mobility channels — bullet trains, drones, LEO satellites, mmWave vehicles.
Predictable → cheap channel estimation. The DD channel changes at the speed of physics (cars accelerating), not at the speed of phase rotation. Measure it once, predict it forward, re-acquire rarely.
One waveform for comms and radar. The received DD map is a delay-Doppler radar image of the scene — Woodward's 1953 ideal of a radar question with an unambiguous answer. Communication and sensing share a single transmission: the pitch for 6G integrated sensing-and-communication.
The math is one transform. FDM is built on the Fourier transform; Zak-OTFS is built on the Zak transform, which maps a time signal to a quasi-periodic function of (τ, ν). The Fourier transform even factors through it: 𝓕 = 𝒵f⁻¹ ∘ 𝒵t. TDM, FDM and OTFS become one picture — three corners of the same triangle of signal domains, with OTFS parameterized by τp sliding between the other two.