DSPRelated.com
Forums

64QAM Constellation Scaling

Started by jai....@gmail.com October 19, 2007
Hi everyone,
 I'm trying to understand OFDM and 64QAM, and am building some models
in Matlab. There is something I cannot quite understand.

I receive an OFDM Symbol (4us), strip the guard time off it , leaving
me with a 3.2us time-domain signal .I then perform an FFT to get the
64QAM constellation. The problem I'm having is this; the decoded
symbol will only have 48 data points, and some may be overlapping,
meaning I do not get a full 64QAM constellation with one OFDM symbol.
How do I scale my constellation such that I can compare it with a
64QAM constellation and figure out EVM?

 If I use qammod(x,64) in MAtlab, it will generate a constellation
ranging from -7-7j to +7+7j with a distance of 2. What is the proper
way to scale the symbol I receive to match this constellation?

 I have tried using some power averaging techniques, but they do not
work as well as receiving a symbol with the right dimensions, and not
normalizing (eg, receiving a symbol that already goes from -7 to +7).

Any help is appreciated!@

On Oct 19, 2:37 pm, "jai.d...@gmail.com" <jai.d...@gmail.com> wrote:
> Hi everyone, > I'm trying to understand OFDM and 64QAM, and am building some models > in Matlab. There is something I cannot quite understand. > > I receive an OFDM Symbol (4us), strip the guard time off it , leaving > me with a 3.2us time-domain signal .I then perform an FFT to get the > 64QAM constellation. The problem I'm having is this; the decoded > symbol will only have 48 data points, and some may be overlapping, > meaning I do not get a full 64QAM constellation with one OFDM symbol. > How do I scale my constellation such that I can compare it with a > 64QAM constellation and figure out EVM? > > If I use qammod(x,64) in MAtlab, it will generate a constellation > ranging from -7-7j to +7+7j with a distance of 2. What is the proper > way to scale the symbol I receive to match this constellation? > > I have tried using some power averaging techniques, but they do not > work as well as receiving a symbol with the right dimensions, and not > normalizing (eg, receiving a symbol that already goes from -7 to +7). > > Any help is appreciated!@
I think you're thinking of OFDM all wrong. It is not made up one a single QAM signal, but many narrowband QAM signals spaced closely together in frequency, 1/Ts apart. Each point of your FFT represents the output of one of these narrowband signals, so for a 64 point FFT, you have 64 signals (usually not all are implelented, but used as guard bands or pilot tones). Each of these signals can individually be QPSK, BPSK, or any level QAM, but the baud rate of all is the same. Each FFT complex output is the complex value of that signal for that baud time. You might want to look at a text explaining OFDM to get the full story, as I'm sure it could do a better job of explaining than I could.
On Oct 19, 12:15 pm, Dave <dhsch...@gmail.com> wrote:
> On Oct 19, 2:37 pm, "jai.d...@gmail.com" <jai.d...@gmail.com> wrote: > > > > > Hi everyone, > > I'm trying to understand OFDM and 64QAM, and am building some models > > in Matlab. There is something I cannot quite understand. > > > I receive an OFDM Symbol (4us), strip the guard time off it , leaving > > me with a 3.2us time-domain signal .I then perform an FFT to get the > > 64QAM constellation. The problem I'm having is this; the decoded > > symbol will only have 48 data points, and some may be overlapping, > > meaning I do not get a full 64QAM constellation with one OFDM symbol. > > How do I scale my constellation such that I can compare it with a > > 64QAM constellation and figure out EVM? > > > If I use qammod(x,64) in MAtlab, it will generate a constellation > > ranging from -7-7j to +7+7j with a distance of 2. What is the proper > > way to scale the symbol I receive to match this constellation? > > > I have tried using some power averaging techniques, but they do not > > work as well as receiving a symbol with the right dimensions, and not > > normalizing (eg, receiving a symbol that already goes from -7 to +7).
Ok - what you described is correct, I do understand that much about OFDM. I am using WLAN 802.11a standard, so here are my assumptions. We have 48 data carriers, ALL using 64QAM - I'm disregarding pilot tones for now. Using an FFT period of 64, I extract the 48 data carriers that I'm interested in. Since these are all 64QAM, I thought I could get a constellation for this ONE symbol by plotting I/Q components of all 48 carriers - *even though each carrier is really one point of individual symbols*. The other way I could do it is obtain 48 Symbols/FFTs, and for Constellation 1 for example, plot the first Data sub-carrier using the -26 Sub carrier from each of the 48 symbols. This would also yield a constellation. I'm not sure if this distinction is really relevant to my original question of how to scale however... regardless of whether I use one OFDM symbol or 48, I still need to figure out how to scale the constellation properly.
> > > Any help is appreciated!@ > > I think you're thinking of OFDM all wrong. It is not made up one a > single QAM signal, but many narrowband QAM signals spaced closely > together in frequency, 1/Ts apart. Each point of your FFT represents > the output of one of these narrowband signals, so for a 64 point FFT, > you have 64 signals (usually not all are implelented, but used as > guard bands or pilot tones). Each of these signals can individually be > QPSK, BPSK, or any level QAM, but the baud rate of all is the same. > Each FFT complex output is the complex value of that signal for that > baud time. You might want to look at a text explaining OFDM to get the > full story, as I'm sure it could do a better job of explaining than I > could.
On 2007-10-19 12:37:16 -0600, "jai.dhar@gmail.com" <jai.dhar@gmail.com> said:

> The problem I'm having is this; the decoded > symbol will only have 48 data points, and some may be overlapping, > meaning I do not get a full 64QAM constellation with one OFDM symbol.
I don't understand your question. Are you saying that you look at the received constellation and only see 48 data points on it, so you assume that some points may be overalapped? If so, remember that you only have 48 active carriers, so you'll only see _at_most_ 48 distinct constellation points. Maybe I've misunderstood what you've written above.