Skip to content

Bandpass sampling

Sample a high band far below twice its top edge, list the allowed rate islands, and pick a safe rate in the middle of one.

Before thisSampling & aliasing (10.1)

1 more before it

Complex exponentials & phasors (3.4)

Before this10.1 · 1 more
Chapter 10 · Lesson 5 of 5

First, the picture

Take a signal that lives only between 17.5 MHz and 22.5 MHz, such as one radio channel. Watch the copies of its spectrum as the sample rate slides down from 50 MHz to 10 MHz, and note each rate where they stop overlapping.

Allowed rates come in islands

A band from 17.5 to 22.5 MHz (BW = 5 MHz).

Sample rate 50 MHz, more than twice the top edge: the copies are clear of each other.

sample rate f_s
50.00 MHz
copies
clear
0.00 / 20.00 s
Describe this picture

Two parts. The upper one is a frequency strip: solid copies of the band, and hatched copies of its mirror; where one lies over the other the overlap is cross-hatched and labelled “overlap”. An outlined stretch from 0 to fs/2f_s/2, labelled “0 to f_N: what the samples show”, is everything the samples can show. The clip slides fsf_s down from 50 MHz to 10 MHz. The readouts are “sample rate f_s” and “copies”, which says “clear” or “overlapping”. The lower part is a chart with “f_H ÷ BW” across and “f_s ÷ BW” up. A vertical line at 4.5, labelled “this band”, is where the signal sits, and each rate the clip passes leaves a mark on it: a filled circle for “clear”, a cross for “overlap”. When the clip ends, the allowed wedges fade in, labelled “m = 1” to “m = 4”. After that the sample rate can be dragged between 10 and 50 MHz.

Twice the top edge is not the rule

The sampling theorem (10.2) asked for fs>2fmaxf_s>2f_\text{max}. The channel’s top edge is 22.5 MHz, so that rule asks for more than 45 MHz. But the rule was a shortcut for something else: the copies of the spectrum must not overlap. This signal has nothing from 0 to 17.5 MHz, so copies can sit in that gap.

I call the band’s lower and upper edges fLf_L and fHf_H, and its bandwidth BW=fH−fL\mathrm{BW}=f_H-f_L. Here that is BW=5\mathrm{BW}=5 MHz, and fH/BW=4.5f_H/\mathrm{BW}=4.5.

A real signal has a second half. Its spectrum is mirrored at negative frequency, from −fH-f_H to −fL-f_L (a cosine is a pair of arrows, one at +f+f and one at −f-f, as in Complex exponentials (3.4), and From series to transform (8.1) says the same of every real signal). Sampling copies both halves to every multiple of fsf_s. The mirror’s copy of a frequency ff lands at kfs−fkf_s-f, which is the fold from Sampling and aliasing (10.1). So there are two sets of copies, and a rate is allowed when none of them overlap.

I made the band lopsided: its spectrum rises from fLf_L to fHf_H, so the mirror falls, and you can tell which way round a copy is.

Allowed rates come in islands

Go back to the picture at the top of the page and drag the sample rate yourself, between 10 and 50 MHz. The solid copies are the band and the hatched ones its mirror, and the chart under them keeps a mark for each rate you visit. Notice that 30 MHz and 16 MHz work, while 40 MHz and 20 MHz do not.

Below 45 MHz the copies collide, but at 35 MHz they slip apart again. Allowed rates come in islands: 45 MHz and up, 22.5 to 35, 15 to 17.5, and 11.25 to 11.67 MHz. Between them the copies overlap.

Where the islands come from

Mark the multiples of the Nyquist frequency fN=fs/2f_N=f_s/2: 0, fN, 2fN, …0,\,f_N,\,2f_N,\,\dots. Between two neighbours lies a stretch, and I number the stretches m=1,2,3,…m=1,2,3,\dots, so stretch mm runs from (m−1)fN(m-1)f_N to mfNmf_N. The rule from 10.1 moves a whole stretch into 0 to fNf_N as one piece, either shifted or turned over. A band that fits inside one stretch is moved as one piece, so its copy and its mirror’s copy do not touch. A band that straddles a multiple of fNf_N is folded onto itself.

So the condition is (m−1)fN≤fL(m-1)f_N\le f_L and fH≤mfNf_H\le mf_N. With fN=fs/2f_N=f_s/2 it becomes the rule for an allowed zone:

2fHm≤fs≤2fLm−1.\frac{2f_H}{m}\le f_s\le\frac{2f_L}{m-1}.

For m=1m=1 there is no upper limit, and the rule is 10.2’s fs≥2fHf_s\ge2f_H. An island exists only if 2fH/m≤2fL/(m−1)2f_H/m\le2f_L/(m-1). That simplifies to m BW≤fHm\,\mathrm{BW}\le f_H, so mm runs up to the largest whole number not above fH/BWf_H/\mathrm{BW}. Here that is m=1m=1 to 44.

Zone mmAllowed fsf_s (MHz)Width (MHz)Band arrives
145 and upnoneupright
222.5 to 3512.5flipped
315 to 17.52.5upright
411.25 to 11.6670.417flipped

Check it against the clip. 30 MHz is in zone 2 and 16 MHz is in zone 3, so both work. 40 MHz lies between 35 and 45, and 20 MHz between 17.5 and 22.5, so neither is in any zone.

The band can arrive flipped

Inside stretch mm, 10.1’s rule gives a simple landing place. If mm is odd, a frequency ff lands at f−(m−1)fNf-(m-1)f_N, shifted down and still in order. If mm is even, it lands at mfN−fmf_N-f, turned over, so the order is reversed. That is why the table alternates.

Take fs=16f_s=16 MHz, so fN=8f_N=8 MHz and the band is in zone 3. It lands at 17.5−16=1.517.5-16=1.5 MHz up to 22.5−16=6.522.5-16=6.5 MHz, with the same rise. Take fs=30f_s=30 MHz, so fN=15f_N=15 MHz and the band is in zone 2. Now 22.5 MHz lands at 30−22.5=7.530-22.5=7.5 MHz and 17.5 MHz lands at 30−17.5=12.530-17.5=12.5 MHz.

f_s = 16 MHz: upright01.56.58f_s = 30 MHz: flipped07.512.515frequency (MHz), 0 to f_s/2
Fig. In some islands the band arrives mirrored: what was its top edge sits lowest. That matters whenever the band is not symmetric.

If the band were symmetric, a flip would not show. A lopsided spectrum is different: you must know whether the zone you chose is odd or even before you read the spectrum back.

Stay away from the edges

An island’s edge is allowed, but only just. Take fs=15f_s=15 MHz, the lower edge of zone 3. The mirror’s copy, from 3×15−22.5=22.53\times15-22.5=22.5 MHz to 3×15−17.5=27.53\times15-17.5=27.5 MHz, touches the band at 22.5 MHz. Now let the clock run 1 % slow, to 14.85 MHz. The mirror’s copy sits at 3×14.85−22.5=22.053\times14.85-22.5=22.05 MHz to 27.0527.05 MHz, which is 0.45 MHz inside the band.

The copy moves by three times the clock’s error because it is the third copy. A copy of higher number moves more, so a high zone needs a better clock.

f_s = 15 MHzbandmirror17.522.527.5f_s = 14.85 MHz (1 % slow)overlap17.522.527.05frequency (MHz)
Fig. At an island’s edge a 1 % clock error pushes a copy 0.45 MHz into the band. Pick the middle: 16.25 MHz leaves 1.25 MHz either way.

So pick the middle of an island. Zone 3 runs from 15 to 17.5 MHz, whose middle is 16.25 MHz, and from there both edges are 1.25 MHz away. The band’s own edges also need care. The gap from 0 to 17.5 MHz must be truly empty, so a filter has to remove everything outside the band before the sampler, as in Anti-aliasing and practical converters (10.4).

How low can the rate go? Never below 2 BW2\,\mathrm{BW}, which is 10 MHz here: the lowest edge of any zone is 2fH/m2f_H/m with m≤fH/BWm\le f_H/\mathrm{BW}, and that is at least 2 BW2\,\mathrm{BW}. The rate 2 BW2\,\mathrm{BW} itself is reached only when fH/BWf_H/\mathrm{BW} is a whole number. Then the island has no width at all, so there is no margin. Our band has fH/BW=4.5f_H/\mathrm{BW}=4.5, so its lowest rate is 11.25 MHz, not 10 MHz.

Worked example

  1. Zones for 17.5 to 22.5 MHz, from 2fH/m≤fs≤2fL/(m−1)2f_H/m\le f_s\le2f_L/(m-1). m=1m=1: fs≥45f_s\ge45. m=2m=2: 22.5 to 35 (flipped). m=3m=3: 15 to 17.5 (upright). m=4m=4: 11.25 to 11.667, only 0.417 MHz wide (flipped).
  2. Where the band appears. At fs=16f_s=16 MHz: 1.5 to 6.5 MHz, upright. At fs=30f_s=30 MHz: 7.5 to 12.5 MHz, flipped, with 17.5→12.517.5\to12.5 and 22.5→7.522.5\to7.5.
  3. Guard. At 14.85 MHz the zone-3 mirror copy spans 22.05 to 27.05 MHz, overlapping the band by 0.45 MHz. At the island’s middle, 16.25 MHz, the margins are 1.25 MHz.
  4. Whole-number ratio. Take a band from 20 to 25 MHz, so fH/BW=5f_H/\mathrm{BW}=5. Zone m=5m=5 gives exactly fs=10f_s=10 MHz =2 BW=2\,\mathrm{BW}, from 2×25/5=102\times25/5=10 to 2×20/4=102\times20/4=10, an island of zero width.
  5. A slow replica. Sample 60 Hz mains at 19.9 Hz. Three times the sample rate is 3×19.9=59.73\times19.9=59.7 Hz, so the tone lands at 60−59.7=0.360-59.7=0.3 Hz: the same waveform, played 60/0.3=20060/0.3=200 times slower.

Where you’ll meet this

A software radio can sample a high band directly, at a rate set by the bandwidth instead of by the top edge, and then do the rest in numbers. The islands tell the designer which rates are legal, and the margin rule tells which one to pick. The same idea runs through Amplitude modulation (27.1), where a signal rides on a carrier, and through The Hilbert transform and the analytic signal (27.2), which handles the band without its mirror half.

The maths behind it · stroboscopic sampling

A stroboscope and a sampling oscilloscope both watch a repeating signal slowly by sampling it slightly off its own rate. Each sample comes from a later cycle, at a slightly later point, which is the 60 Hz example above.

Reference card

QuantityFormulaNotes
BandfLf_L to fHf_H, BW=fH−fL\mathrm{BW}=f_H-f_LBW\mathrm{BW}, never BB
Allowed zones2fHm≤fs≤2fLm−1\dfrac{2f_H}{m}\le f_s\le\dfrac{2f_L}{m-1}m=1,2,…,⌊fH/BW⌋m=1,2,\dots,\lfloor f_H/\mathrm{BW}\rfloor
Landing placeodd mm: f−(m−1)fNf-(m-1)f_N; even mm: mfN−fmf_N-ffN=fs/2f_N=f_s/2
Inversioneven mm: flippedmatters for lopsided bands
Lowest rate2 BW2\,\mathrm{BW}only if fH/BWf_H/\mathrm{BW} is whole; no margin
Marginchoose the middle of an islandclock and filter errors

End of lesson 10.5

Where to go next.

Phasorium
LibraryEvery lesson, in order

Parts

About Phasorium
Look