For the past couple weeks, I have been wrestling with a question: To what are the waves compared when using OFDM and QAM? This took me on a long journey that ended in a simple question: nothing. Here is how I got there.
For those of you who are long time readers, you will remember when I talked about types of digital modulation. At the end of said blog, the additional reading lead to quadrature amplitude modulation. Recently, I was explaining phase shift keying to someone and got to thinking, “When using phase shift keying, the signal is compared to itself in the past.” (admittedly, I was wrong, but bear with me.) So how does an 802.11 radio compare all the subcarriers in an OFDM signal? And to what are they compared?!
Edit 2016.10.05: Since writing this blog, I have done further research and found that the waves are compared to their ideals. This means, the receiver knows how many peaks and valleys there should be in a sine wave at a certain frequency. Therefore, the receiver compares what is hears to the ideal and then plots from there.
For a starting point orthogonal frequency division multiplexing is the mechanism that 802.11a/g/n/ac uses to spread the data across a bandwidth and make it more robust to interference. Consider the following:
When sending a chunk of data, 104MB, you can send it in one of two basic ways: send the whole chunk in order over one stream (generally as fast as you can) or split it up into smaller chunks (52 small pieces) and send them over different streams (generally slower rate per stream).
OFDM (and most wireless communication) uses the second way. By splitting up the data and sending over multiple streams that are spaced from each other, narrowband interference doesn’t hurt the data stream as much. You can also use slower data rates (read: more robust encoding schemes) which guarantee the data arrives unharmed (slower rates also generally have more error correction, but that’s for a different post). The point is, that instead of using one wave, 802.11a/g/n/ac uses at least 64 different waves (52 data and 4 pilot) to send data.
On to QAM. For those of you who continued reading after my previous blog, quadrature amplitude modulation expands on the idea of phase shift keying by adding amplitude modulation. This means that instead of being stuck to the unit circle (as with PSK) you can encode more data for the same phase points as shown below.
So what happens when you want to send data with an 802.11a/g/n/ac (also note, I am not including 802.11b, because it uses HR-DSSS)? Well thats easy! The transmitting device breaks down the data into 8-bit pieces (assuming we are using 256-QAM, which is only available on 802.11ac) and maps them to the 234 subcarriers (again, 802.11ac numbers). Each individual subcarrier is then modulated according to the bits it carriers. All of the subcarriers are then combined and run through an inverse fast Fourier transform. At the destination, this is all reversed and you get a transfer of data. (Below is a cool visualization of an FFT)
In my head, I was getting confused as to what the signals were getting compared. How would the receiver know that I sent a 180 degree phase shift? My first thought was that maybe the pilot carriers were the answer! There are (in a 20MHz channel) 4 pilot carriers that don’t send data. They are constant and can be used for comparison to map the waves to the constellation. Wrong. By it’s very nature you cannot compare different subcarriers to each other, they are offset by 90 degrees (also known as… orthogonal).
Then, after a little more searching, I found that my PSK door scenario was slightly wrong. Instead of merely changing positions of a door, transmitters are sending different waves. Consider the following:
I want to send a 0, so I send a sine wave. I want to send a 1, so I send a wave 90 degrees out of phase, or I send, a cosine wave.
This is what I needed to know. I was stuck thinking that the receiver must compare the current wave to a past wave, but as long as it is listening at t=0, then the receiver knows where the wave started relative to a sine wave. Therefore, the waves are compared to nothing. There is no need for past data!
Anyway, I wrote this blog in hopes it can help some of you out there get through any issues with understanding OFDM or QAM or both. Getting into the PHY level is certainly a deep rabbit hole. It is very easy to get stuck down there when searching for an answer.
See you next time!