Issue 38 Β· Pick 01 AI / ML β read
Radio-Frequency Convolutional Neural Networks
TL;DR: Every wireless radio contains a frequency mixer, a passive component that multiplies two signals in time β and by the convolution theorem, multiplication in time is correlation in frequency, which is exactly what a convolutional layer computes. This paper takes that correspondence literally: encode a CNN's input as tones on one radio waveform, receive the weights over the air as tones on another, feed both into the mixer, and the output spectrum is the convolution β every kernel position and every input-channel sum, in one analog pass. On a software-defined-radio testbed the authors run real, deep CNNs this way (up to 9 layers and 26.4M parameters, including an InfoGAN face generator) at ~5-bit precision, close to full-precision accuracy, with edge-side energy down to 0.72 fJ per multiply-accumulate β about two orders of magnitude below a digital edge accelerator. The energy accounting is generous and the throughput is currently tiny, but the core idea β that deployed communication hardware is already a convolution engine β is genuinely new and worth understanding.
The problem: compute you can't carry
Edge devices β phones, wearables, drones, sensors β increasingly want to run neural networks locally, for latency, privacy, and bandwidth reasons. The standard answer is to add a dedicated accelerator: a digital NPU, an analog in-memory-computing chip, a photonic processor. Every one of these adds silicon, power draw, and cost to a device that is defined by its budgets for exactly those things. And two energy costs dominate digital edge inference regardless of how clever the MAC units are: fetching weights from memory, and the arithmetic itself, roughly ~100 fJ per MAC on a good modern digital processor.
There's a long line of work trying to compute with the wireless stack instead β over-the-air aggregation, intelligent surfaces configured to emulate layers, RF circuits repurposed as matrix multipliers. But those approaches either engineer the propagation environment (fragile), demonstrate single layers, or cast everything as a generic matrix-vector multiply β throwing away the weight sharing and locality that make convolution efficient in the first place.
The aha: a mixer is a convolution engine, natively
Here's the physics fact the whole paper rests on. A passive frequency mixer β a handful of diodes, present in every radio front end to shift signals between frequency bands β outputs the product of its two input waveforms:
where the conjugate appears when the mixer is used for down-conversion. Multiplication in the time domain is, by the convolution theorem, convolution in the frequency domain β and with the conjugate, it's cross-correlation. So if you place a sequence of complex numbers \mathbf{S}_x on evenly spaced frequency tones of one waveform (amplitude and phase per tone, like OFDM subcarriers), and another sequence \mathbf{S}_w on the tones of the second waveform, then the spectrum of the mixer's output contains, tone by tone, the cross-correlation \mathbf{S}_x \star \mathbf{S}_w.
A convolutional layer is a cross-correlation of input with kernel. The mixer doesn't emulate the operation; it performs it, as a consequence of diode physics. Nothing about the hardware needs to change β only how you use it. The entire method reduces to one question: how do you arrange a multi-channel, 2-D convolution β a 3-D input tensor against a 4-D weight tensor β on a one-dimensional line of frequency tones so that a single 1-D cross-correlation computes it?
Tone mapping: flattening a conv2d onto a frequency axis
The answer is the tone-mapping algorithm, and it's elegant enough to sketch from memory. Take a conv2d layer with C input channels, image size I \times I, kernel K \times K.
Within one channel: unroll the image row by row onto tones, inserting (K-1)/2 zero-valued guard tones between rows. The guard tones play the role of zero-padding: when the kernel's correlation window slides across a row boundary, the products it picks up there are zero, so rows don't bleed into each other. The kernel is laid out on its own tone series with matching row spacing. A 1-D correlation of these two series then reproduces the full 2-D sliding-window correlation β all I^2 output positions at once.
Across channels β where the mapping pays off: stack the C input channels of \mathbf{X} into C adjacent frequency sub-bands, and align the corresponding channels of the weight tensor in C sub-bands of the weight waveform. Now every aligned channel pair deposits its correlation products onto the same output tones. The sum over input channels β the reduction that a digital accelerator spends most of its MACs on β is performed by the mixing itself, for free, as spectral superposition. One pass of the mixer accumulates K^2 \cdot C products per output element, which at C = 1024 is roughly 10^4 analog accumulations per output value in a single shot. Repeat the pass once per output channel (same \mathbf{X}, different weight waveform), C times total, and the layer is done.
The system architecture follows directly: a central radio (a base station or access point) broadcasts the weight waveforms over the air. The edge device runs an IFFT to turn its local input tensor into a time-domain waveform, transmits it through its DAC into the mixer against the received weights, samples the (much narrower-bandwidth) output with its ADC, and runs an FFT to read off \mathbf{Y}. Nonlinearities (ReLU, batch-norm, pooling) happen digitally between layers, and the output is re-encoded as the next layer's input.
The energy accounting β read the fine print
The headline number, 0.72 fJ/MAC, depends entirely on what gets counted, and the authors are reasonably upfront about it. Three cost categories:
- Weight delivery. Weights arrive over the air; the edge device never stores or fetches them. Weight movement β the dominant cost in digital inference β is displaced to grid-powered infrastructure and amortized over every listening device. Not counted.
- Analog RF hardware. The mixer is passive; oscillators and amplifiers are "already powered for communication." Not counted.
- The digital boundary. What remains is e = e_{\text{enc}} + e_{\text{dac}} + e_{\text{adc}} + e_{\text{dec}}: the IFFT encoding, the transmit energy through the DAC (accounted as transmit power Γ waveform time), the ADC sampling, and the FFT decoding. This is the reported number.
The reason the counted terms get so small is structural. All four scale as 1/K^2, because a single mixer pass covers every kernel position β the same waveform samples serve K^2 sliding-window offsets. Three of the four also shrink with channel count C, because encoding cost is amortized over the C-way channel accumulation the mixer does for free, and the output bandwidth (hence ADC rate) is only B/C. The minimum energy for 4-bit precision follows \mathcal{O}\!\left(\frac{1}{K^2}\cdot\frac{\log C}{C}\right), measured down to 0.551 fJ/MAC at C=256. The remaining knob is the input's transmit power spectral density p_x: more transmit power buys more SNR buys more effective bits, so accuracy and energy trade against each other through a single runtime parameter, no retraining needed.
You should be skeptical of pieces of this. The DAC term charges only radiated energy P_x \cdot T, not the converter's own electronics; the digital FFT terms assume a nominal 100 fJ/MAC and 100 fJ/sample rather than measured device power; and calling amplifier and oscillator power "already spent on communication" is fair only when the radio would genuinely be on anyway β during inference it is occupied and not communicating. The honest framing, which the discussion section itself adopts, is that this is an advantage of disaggregation: the edge device's marginal energy is tiny because everything expensive moved to the infrastructure side.
Does it actually work? Deep networks, end to end
The single-layer result β ~5 effective bits (ENOB), stable from 1 up to 1,024 channels β would be a curiosity on its own. The substantive experimental claim is that errors don't compound across depth. They run complete networks on a USRP testbed with a real over-the-air link (915 MHz ISM band, ~25 MHz bandwidth, ~1 m link):
The gaps (2β4 points) are sustained through as many as eight consecutive analog conv layers, and the confusion matrices show the errors are the model's errors β QPSK/PSK/QAM confusions on DeepSig, the usual CIFAR confusions β not new analog failure modes.
The generative results are the more stringent test, since every pixel is produced by analog hardware and structured error would be visible directly. An InfoGAN face generator (7 layers, 26.4M parameters, 5.2 billion analog MACs per face) produces recognizable CelebA faces at FID 189.10 vs. a digital baseline of 112.55, at 1.56 fJ/MAC. More interesting than the FID: the disentangled latent structure survives. The class label still controls what is generated, and sweeping the 2-D latent code still smoothly tilts digit slant or shifts face framing without disturbing identity β five billion 5-bit analog MACs preserve not just images but the geometry of the learned latent space.
Two implementation details buried in the supplement matter for judging robustness. First, PAPR (peak-to-average power ratio): nonnegative post-ReLU activations create a huge DC spike after the IFFT, which saturates the DAC. The fix is a Zadoff-Chu phase ramp across input channels (with inverse phases on the weights, so the math is unchanged) that spreads energy in time β a genuinely nice reuse of a classic communications trick. Second, and less flattering: not every layer survives analog execution. The first conv layer of the DeepSig model (single input channel, so the Zadoff-Chu trick can't apply) and the final conv layer of the CelebA generator had unacceptable error and are computed digitally in full precision. These are small fractions of total MACs, but "runs deep CNNs end to end in analog" comes with an asterisk.
What to be skeptical about
Throughput is the elephant. The testbed achieves ~0.9 GOPS. A single CIFAR-10 inference (611M MACs, Γ4 for complex-valued real MACs) takes on the order of seconds. Throughput scales as \Lambda \approx 4K^2 B with bandwidth B, and the demo uses one RF chain over ~25 MHz; the authors point to mmWave bandwidths and MIMO mixer arrays for orders-of-magnitude headroom, but that's extrapolation, not demonstration.
The weight channel is doing a lot of work. Weights are re-broadcast for every inference, once per output channel, over a calibrated ~1 m directional link with per-packet phase/timing estimation via preambles and an MMSE-fit channel model. Multipath, mobility, interference, and multiple devices sharing spectrum are all untested. Occupying licensed spectrum continuously to stream weights is a real system cost the energy accounting doesn't see. The paper also flags, correctly, that broadcasting model weights in the clear raises confidentiality questions.
Precision ceils at ~5 bits, limited by mixer nonidealities rather than noise. That's enough for the quantization-tolerant tasks shown, and the whole quantized-inference literature says classification survives at 4β5 bits β but it closes the door on tasks needing more, and the per-layer backoff-coefficient tuning (\alpha, balancing saturation against quantization noise) is a manual, per-model calibration step today.
Complex-valued models trained for the purpose. All six networks are complex-valued (natural for the tone encoding) and custom-trained; you can't yet drop a pretrained real-valued ResNet onto this hardware without conversion.
Why it's worth your attention anyway
Set aside the exact femtojoule count and the demo scale. The framing is the contribution: correspondences between what deployed hardware already does and what a computation requires can be found rather than engineered. Analog computing efforts almost always build bespoke devices and then fight to make them behave like the math; here the math of the CNN and the physics of a component in billions of existing devices coincide exactly, and the only invention needed is a data layout (the tone mapping) plus standard communications engineering (calibration, PAPR mitigation). The channel-summation-for-free property is the kind of structural win β a whole reduction axis absorbed into superposition β that made analog in-memory computing attractive, obtained here without any new fabrication.
If the throughput scaling holds via bandwidth and mixer arrays, the picture is a base station that alternates between serving data and serving models, with edge devices running inference at near-zero marginal energy on hardware they already carry. Even if it doesn't, the paper is a clean existence proof that 9-layer, multi-billion-MAC analog inference through a commodity passive mixer is stable, and it invites the obvious next question the authors themselves raise: which other structured linear operations (attention's QK products come to mind) have a native radio-physics implementation?
Where to spend your reading time: the "Convolution by frequency mixing" section plus Supplementary Sections AβB for the tone-mapping construction (it's short and fully rigorous), and Supplementary Sections E and K for the PAPR/Zadoff-Chu material β that's where you learn what actually breaks in analog and how it was patched, including which layers had to retreat to digital.