# Is there a closed form for the average energy of a QAM constellation?

I'm trying to come up with a formula for the average energy of the signals in a M-QAM constellation. If $b$ is the number of bits represented by each point in the constellation, such that $M=2^b$. For $b$ even, I know the formula is:

$$\bar{E} = \frac{(M-1)d^2}{6}$$ where $d$ is the distance between two points in the constellation.

This can be easily verified using the average of all QAM constellation points generated by MATLAB, whose default value for $d$ is $2$:

b=4;
M=2^b;
sum(abs(qammod([0:M-1],M,0,'gray')).^2)/M


Is there a formula for the average energy in a QAM constellation with $b$ odd?

From $\bar{E}=\frac{(M-1)d^2}{6}$ as the average energy in $M$-QAM, $M$ a perfect square and a square constellation, we have that the total energy is $$E_{\operatorname{tot}} = M\frac{(M-1)d^2}{6}$$ Now, since the $M$-QAM signal is the sum of two orthogonal $\sqrt{M}$-PAM signals of equal energy, then, writing $N$ instead of $\sqrt{M}$, we have each of the orthogonal signals carrying a total energy of $$\displaystyle \frac{1}{2}\frac{M(M-1)d^2}{6} = \frac{N^2(N^2-1)d^2}{12}.$$ Since there are $M = N^2$ constellation points, the average energy of a $N$-PAM signal with spacing $d$ is $\displaystyle \frac{(N^2-1)d^2}{12}$.

Now, if $b$ is odd, a $2^b$-QAM signal constellation is a rectangular grid with $2^{(b-1)/2}$ points in one direction and $2^{(b+1)/2}$ points in the other. Thus, the $2^b$ points contribute an average of $$\frac{(2^{b-1}-1)d^2}{12} + \frac{(2^{b+1}-1)d^2}{12} = \frac{(2.5M-2)d^2}{12}$$

Note that it is possible to use constellations other than rectangular when $b$ is odd. For example, the $32$-CROSS constellation is a (rotated) version of a $36$-AM square constellation with the corner points deleted. Rotation does not change the energy and so we can get the answer for $32$-CROSS by finding the total energy for a $36$-QAM square constellation, subtracting off the energy of the $4$ corner points, and dividing what is left by $32$.

I found an answer for odd constellation at J. Cioffi's DSP class handouts.

For odd constellations:

$$\bar{E} = \left( \frac{31}{32}M - 1 \right)\frac{d^2}{6}$$

See Equation 1.259 at http://www.stanford.edu/group/cioffi/book/chap1.pdf

• That formula is for cross constellations, whereas the OP seems to be looking for rectangular QAM constellations. Commented Jun 23, 2013 at 1:55
• Thank you, @DilipSarwate. I was seeking for those cross constellations, although I didn't notice that before. The reason is because I am using "qammod" function on MATLAB, which generates cross constellations by default. Commented Jun 23, 2013 at 21:18