As I understand it, I/Q data is the complex representation of any waveform. It enables us to understand two things at any arbitrary point in time:

  1. The projected amplitude of the waveform.
  2. The direction of the waveform.

However, it's still unclear to me what makes I/Q data so special.

Logically, I can discern the direction of a waveform implicitly: If I'm talking (or transmitting), I know a signal is travelling away from me. On the other hand, if I'm listening, I know any signal I hear must have been travelling toward me.

And if I want to know the amplitude of a waveform, I can just wait until I see a peak.

This in mind, what sorts of modulations/demodulations would be impossible with real data instead of I/Q data? Respectfully, I'd appreciate an example based on reality as I understand that I/Q data makes the result of a FFT transform deterministic, but I don't really understand why that's relevant.

  • $\begingroup$ For any layperson (like myself) who happens across this question, you'll likely find this explanation of I/Q data useful for context: whiteboard.ping.se/SDR/IQ $\endgroup$ – Xeyler Oct 25 '20 at 18:45
  • $\begingroup$ You might also want to look into writing about lock-in amplifiers (even just undergrad physics lab manuals), they use the same idea except they're called X and Y instead of I and Q. Might make something click for you $\endgroup$ – llama Oct 26 '20 at 5:06

The main motivation for using quadrature (I/Q) signals is spectral efficiency.

Most signals are naturally baseband: they have no carrier, their energy is concentrated around DC, and they are limited to bandwidth $B$. An example would be an audio signal, which has bandwidth of roughly 20 kilohertz.

To transmit such a signal, often it must be modulated (or "upconverted") using a carrier. For example, in AM broadcasting, the audio signal is first limited to a bandwidth $B=10\,\text{kHz}$, and then upconverted to a frequency of roughly one megahertz.

The issue is that, when upconverted, a signal occupies a bandwidth $2B$, which is double the original bandwidth $B$. So, an AM signal occupies $20\,\text{kHz}$ "on the air". The extra 10 kilohertz do not have any additional information; they are simply a loss of half of the available bandwidth.

Since bandwidth is a very limited and expensive resource, such a waste is unacceptable.

One way around this issue is to use single side-band modulation (SSB), which eliminates the waste. However, SSB signals are more difficult to generate and have other disadvantages.

The most popular solution is to use quadrature signals. This allows transmitting two signals of bandwidth $B$ over a chanel of width $2B$, restoring the average spectral occupancy to $B$ hertz per signal.

To see more of the math behind quadrature transmitters and receivers, see this answer.

  • $\begingroup$ Fascinating! Are there any books on DSP you'd recommend? I think I'm starting to get an inkling, but I'm in way over my head. I'd like to develop a practical understanding and a deep sense of "why" for a lot of the elements of DSP. $\endgroup$ – Xeyler Oct 25 '20 at 22:04
  • $\begingroup$ @Xeyler There are plenty of book recommendations in different answers aroung the site; for example, see dsp.stackexchange.com/q/427/11256 $\endgroup$ – MBaz Oct 25 '20 at 22:25
  • $\begingroup$ @Xeyler Easily, this, but starting here. A note, book has some small errors and it helps if you have a basic background in complex numbers to not be mislead by a few of its descriptions, but that textbook is my go-to for intuitive understanding, and the only one to explain convolution properly. $\endgroup$ – OverLordGoldDragon Oct 26 '20 at 4:38

As I understand it, I/Q data is the complex representation of any waveform.

Yes and no. I/Q data is the result of demodulating an RF signal (i.e. a signal riding on a carrier) with a pair of local oscillator signals that are 90 degrees out of phase. I think you're assuming that I/Q data must be represented as a stream of complex values -- this isn't necessary, it just makes the analysis easy. Instead of having to carry the local oscillator signals around and proving things with trigonometric identities, you just note that I/Q data acts like (not is) complex data, and then you can follow the rules for complex arithmetic.

This in mind, what sorts of modulations/demodulations would be impossible with real data instead of I/Q data?

I/Q data is real data. It's just two real channels that are obtained simultaneously and bear a specific relationship with one another that can be profitably thought of as a single channel of complex data.

So yours is a false dichotomy.


the main advantage of using I and Q data is that you can receive and transmit every kind of analog or digital modulation simply changing amplitude of the I and Q components. Take a look to the Phasor theory to better understand the whole matter. A signal can be seen as a moving vector in the IQ plane from the origin. When the amplitude of the signal I and Q component is the same over time you have ad AM modulation. when a vector of magnitude R move back and forth around an angle you have Phase modulation. If the vector rotate around the center more than 2pi angle you have a frequency modulation. If the amplitude of the two components I and Q are discretised you have digital modulation. For example .. say the I, Q component can assume only the values -1 and 1 you have four points in the IQ plane (-1,-1) (-1,1) (1,1) (1,-1) and so you have 4QAM or 4PSK modulation. There are many other advantages to use IQ representation i.e frequency translation and other mathematical elaboration. The matter is pretty complex to be addressed in a single message, however, should you have any question ask community. I suggest you an introductory text book about Digital Signal Processing.

P.S. Hilbert Filtering is easy with the IQ signal ... it is not using real signals.

Take a look to this introductory video https://youtu.be/h_7d-m1ehoY



I tend to group the advantages of using I/Q into two main categories. These can however be combined depending on the system being implemented:

  1. Exploiting the properties of I/Q for spectral efficiency. This is all about having two signals independently "ride" on their respective in-phase (I) and quadrature (Q) channels. It is possible to transmit two separate signals of bandwidth $B$ within the same channel that supports a bandwidth $2B$.
  2. Exploiting the mathematical properties of complex numbers. This is especially true when a real signal is converted to I/Q, or complex, where the mathematical properties of complex numbers make certain tasks easier and/or more intuitive. There are some real advantages to this as well, such as leveraging an increase in SNR in certain types of systems.

The first revolves around using I/Q with multiple signals of interest with the intent of efficiently transmitting/receiving the signals. The second usually concerns one signal of interest and exploiting the various advantages of complex arithmetic to perform operations on that signal.

I like to break it down like this due to intent. When someone asks the question "Why use I/Q?", the answer can be broken down on whether you're concerned with (1) or (2). Sometimes trying to convolve the two into one answer can be confusing or even misleading when trying to pin it down to a specific application. For example, your comment

As I understand it, I/Q data is the complex representation of any waveform.

Is not an accurate statement. Despite that I/Q modulation/demodulation uses the underlying properties of complex numbers, it is really more appropriate for (2) than it is for (1), where many times we are no-kidding converting a real signal to its complex form. I think your concerns are really with this use of I/Q. The various general advantages of (2) over "real" modulation/demodulation include but are not limited to:

  1. Two ADCs sample each I and Q branch at a lower rate. This can reduce total number of samples collected per branch, reduce decimation requirements, and can save power due to lower clock speeds.

  2. Using I/Q allows us to move signals to be centered around 0 Hz, where we can further reduce sampling requirements exploit other properties.

  3. Immediate recovery of amplitude and phase (and potentially frequency) with manipulation of the I/Q components. This is especially helpful in systems that must be coherent.

  4. Digital signal processing is intuitive in the complex domain. All those nice properties of the Fourier transform and spectrums can be applied directly, such as frequency shifting. Some examples are here where we design a bandpass filter using frequency shifting and perform pulse compression via autocorrelation.

  5. Some algorithms are optimized to perform operations on complex data.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.