Sampling Theorem – Bandpass or Intermediate or Under Sampling

1 Star2 Stars3 Stars4 Stars5 Stars (4 votes, average: 4.50 out of 5)

Prerequisite: Sampling theorem – baseband sampling

Intermediate Sampling or Under-Sampling

A signal is a bandpass signal if we can fit all its frequency content inside a bandwidth \(F_b\). Bandwidth is simply the difference between the lowest and the highest frequency present in the signal.

“In order for a faithful reproduction and reconstruction of a bandpass analog signal with bandwidth – \(F_b\), the signal should be sampled at a Sampling frequency (\(F_s\)) that is greater than or equal to twice the maximum bandwidth of the signal.”
$$F_s \geq 2F_b$$

Consider a bandpass signal extending from 150Hz to 200Hz. The bandwidth of this signal is \(F_b=200Hz-150Hz=50Hz\). In order to faithfully represent the above signal in the digital domain the sampling frequency must be \(F_s>=100Hz \;  (2 \times Fb)\). Note that the sampling frequency 100Hz is far below the maximum content of the signal (which is 200Hz). That is why the bandpass sampling is also called “under-sampling”. As long as the sampling frequency is greater than or equal to twice the bandwidth of the signal, the reconstruction back to analog domain will be error free.

Going back to the aliasing zone figure, if the signal of interest is in the zone other than zone 1, it is called a bandpass signal and the sampling operation is called “Intermediate Sampling” or “Harmonic Sampling” or “Under Sampling” or “Bandpass Sampling”.

Folding Frequencies and Aliasing Zones
Folding Frequencies and Aliasing Zones

Note that zone 1 is a mirror image of zone 2 (with frequency reversal). Similarly zone 3 is a mirror image of zone 4 etc.., Also, any signal in zone 1 will be reflected in zone 2 with frequency reversal which inturn will be copied in zone 3 and so on.

Lets say the signal of interest lies in zone 2. This will be copied in all the other zones. Zone 1 also contains the sampled signal with frequency reversal which can be correct by reversing the order of FFT in digital domain.

No matter in which zone the signal of interest lies, zone 1 always contains the signal after sampling operation is performed. If the signal of interest lies in any of the even zones, zone 1 contains the sampled signal with frequency reversal. If the signal of interest lies in any of the odd zones, zone 1 contains the sampled signal without frequency reversal.


Consider an AM signal centered at carrier frequency 1MHz, with two components offset by 10KHz – 0.99 MHz and 1.01 MHz. So the AM signal contains three frequency components at 0.99 MHz, 1 MHz and 1.01 MHz.

Our desire is to sample the AM signal. As with the usual sampling theorem (baseband), we know that if we sample the signal at twice the maximum frequency i.e Fs>=2*1.01MHz=2.02 MHz there should be no problem in representing the analog signal in digital domain.

By the bandpass sampling theorem, we do not need to use a sampler running at Fs>=2.02 MHz. Faster sampler implies more cost. By applying the bandpass sampling theorem, we can use a slower sampler and reduce the cost of the system. The bandwidth of the signal is 1.01MHz-0.99 MHz = 20 KHz. So, just sampling at \(F_s>=2 \times 20KHz=40KHz\) will convert the signal to digital domain properly and we can also avoid using an expensive high rate sampler (if \(F_s >= 2.02 MHz\) used according to baseband sampling theorem).

Lets set the sampling frequency to be \(F_s=120KHz\) (which is 3 times higher than the minimum required sampling rate of 40KHz or oversampling rate =3).

Now we can easily find the position of the spectral components in the sampled output by using the aliasing zone figure as given above. Since \(F_s=120 KHz\), \(F_s/2\) will be 60KHz. So the zone 1 will be from 0 to 60 KHz, zone 2 -> 60-120KHz and so on. The three spectral components at 0.99MHz, 1MHz and 1.01 MHz will fall at zone 17 ( how ? 0.99 MHz/60 KHz = 16.5 , 1MHz/60KHz = 16.67 and 1.01MHz/60KHz = 16.83 , all figures approximating to 17). By the aliasing zone figure, zone 16 contains a copy of zone 17, zone 15 contains a copy of zone 16, zone 14 contains a copy of zone 15 and so on… Finally zone 1 contains the copy of zone 2 (Frequency reversal also exist at even zones). In effect, zone 1 contains a copy of zone 17. Since the original spectral components are at zone 17, which is an odd zone, zone 1 contains the copy of spectral components at zone 17 without frequency reversal.

Since there is no frequency reversal, in zone 1 the three components will be at 30KHz, 40KHz and 50KHz (You can easily figure this out ).

This operation has downconverted our signal from zone 17 to zone 1 without distorting the signal components. The downconverted signal can be further processed by using a filter to select the baseband downconverted components. Following figure illustrates the concept of bandpass sampling.

Bandpass Sampling
Bandpass Sampling

Consider the same AM signal with three components at 0.99MHz, 1MHz and 1.01 MHz. Now we also have an “unwanted” fourth component at 1.2 MHz along with the incoming signal. If we sample the signal at 120 KHz, it will cause aliasing (because the bandwidth of the entire signal is 1.2-0.99 = 0.21 MHz = 210 KHz and the sampling frequency of 120KHz is below twice the bandwidth). In order to avoid anti-aliasing and to discard the unwanted component at 1.2 MHz, an anti-aliasing bandpass filter has to be used to select those desired component before performing the sampling operation at 120KHz. This is also called “pre-filtering”. The following figure illustrates this concept.

Bandpass sampling with pre-filtering
Bandpass sampling with pre-filtering

See also:

[1] Oversampling, ADC – DAC Conversion,pulse shaping and Matched Filter
[2] Sampling Theorem Basics and Baseband Sampling

Recommended Books:

More Recommended Books at our Integrated Book Store

External Resources:

[1] Video Lectures on Signals and Systems, Filter Design and Transforms
[2] A Guide on Frequency Analysis and Manipulation using MATLAB
[3] A short presentation on Quantization
[4] Useful Matlab Functions and Scripts for Audio Signals and Systems
[5] Mathworks – Designing a Sigma-Delta ADC from Behavioral Model to Verilog and VHDL
[6] Anti-aliasing and quantization of audio signals and digital images using Matlab


    thank you , nicely explained can you tell me how these three component 30KHz, 40KHz and 50KHz appeared from 0.99 MHz, 1 MHz and 1.01 MHz ?

    • For Fs=120KHz, Fs/2 will be 60KHz. Then the zone 1 will be from 0 to 60 KHz.

      As explained in the post, the actual frequencies, 0.99M, 1M, 1.01M falls will fall in zone 17
      Since the bandwidth of each zone is 60KHz, the ratios of these frequencies to the BW are
      [0.99M/60K, 1M/60K, 1.01M/60K ] = [16.5, 16.67, 16.83 ]

      the frequency 0.99M is 0.5 away from the beginning of zone 17
      the frequency 1M is 0.67 away from the beginning of zone 17
      the frequency 1.01M is 0.83 away from the beginning of zone 17

      Translating this to zone 1 frequencies (exact values – calculated by multiplying the ratios and the max frequency in zone 1)
      0.5*60KHz = 30 KHz,
      0.67*60KHz = 40.2 KHz
      0.83*60KHz = 49.8 KHz

      I approximated them as 30KHz, 40KHz and 50KHz

      • ali hassan

        dear Mr Mathuranathan I want you to help in my wife project how can contact you please it is so urgent .

  • Pingback: Calculating power and energy content of a signal in MATLAB | GaussianWaves()

  • Pingback: Relation between Eb/N0 and SNR » GaussianWaves()

  • ArrozConCostra

    I wish I had been explained these topics in the easy and intuitive way you do. This Fmax vs BW thing has always been in my head and I have never been able to figure out why sometimes Fs was 2*Fmax and some other was 2*BW. Now it all makes sense. Thanks!

  • Malik Mehbob

    Why the frequency of carrier wave
    is always kept at least 10 times higher then the highest frequency of base band

    • The carrier frequency should be greater than the message frequency, but not necessarily 10 times.
      The signal quality will be good if the carrier frequency is far greater than the message frequency. Meaning that the signal quality (distinguishable at the receiver) for 10x carrier frequency will be better compared to the signal quality with 2x carrier frequency.

  • Pingback: Estimation of Impulse Response of a LTI System | GaussianWaves()

  • Pingback: Sampling Theorem – Baseband Sampling | GaussianWaves()

  • yasser

    an interview question asked to me was given a signal of BW 500 HZ and Fmax is 600 Hz what is min sampling rate ? 1000 or 1200

    • Hint for you to solve : Sampling Theorem specifies how to compute the sampling rate for given bandwidth NOT from maximum frequency.

      Why do we consider bandwidth and not maximum frequency ? Practical example below.

      In P-GSM-900, the frequency range for uplink is 890.0–915.0 MHz. If I go with maximum frequency, the sampling rate would be 2*915 MHz = 1830 MHz = 1.83 GSPS. Is it possible to have an Analog to Digital Converter (ADC) with such a fast sampler at cheaper cost?. Even if we have such a high speed sampler, the cost will be prohibitive. The solution is to sample the signal with respect to given bandwidth (Thanks to Nyquist Shannon Theorem). This gives the minimum sampling as 2*(915-890) = 2*25Mhz = 50MSPS only. (GSPS = Giga Samples Per Second, MSPS – Mega Samples Per Second)

      Note: The above sample is for illustrative purpose only. For actual sampling rate employed in the devices, please consult respective technology manual. High speed ADCs (>1 GSPS) are available in the market. Some here:

  • vutq

    oversampling analog signal

    Dear all

    I have Nsample OFDM which i received from DAC such as

    -0.26405059224367516 0.06408994957370756 0.12561630116446681 -0.25892339627777855 -0.24354180838008874 0.11023471326677702 0.1051075173008804 0.1051075173008804


    I would like to oversampling these samples by matlab code for suitable with matrix sie in optisystem (the signal will be transmit to optisystem for simulation…

    Because the sampling rate DAC is only 4 GSPS, but the sampling rate in optisystem is 16 GSPS.

    After transmit over fiber, i receive the signal after photodectector, i would like to downsample these samples, how can i downsample them to receive the orginal sample?

    Many thanks for your support

  • Pingback: Colored Noise Generation in Matlab | GaussianWaves()

  • Pingback: Natural Binary Codes and Gray Codes | GaussianWaves()

  • Pingback: Oversampling, ADC – DAC Conversion,pulse shaping and Matched Filter | GaussianWaves()