# How to calculate $E_b/N_0$ for a 8-PSK?

How to calculate $$E_b/N_0$$ for a 8PSK? My BER is given. But I don't understand how to calculate $$E_b/N_0$$ as it is inside a Q function.

• Your question is not very clear. Are you saying that you have $$\text{BER} = \beta \text{Q}\left( \sqrt{\alpha \frac{E_b}{N_0} } \right),$$ where you know BER, $\alpha$, and $\beta$, and you want to find $E_b/N_0$? If that is the case, you're looking for Matlab's qfuncinv (or similar in other packages). – MBaz Nov 19 '18 at 16:15
• I have added an image, in the slide I don't understand how to calculate Eb/N0 – Cynthia Nov 19 '18 at 16:28

Assuming that you have the correct formula for the BER (which is probably based on the assumption that a Gray code is used), then - as mentioned by MBaz in a comment - you would have to invert the $$Q$$ function, which is a problem for which no analytic solution exists. You can use numerical methods implemented in Matlab and probably in other software packages, but you can also just estimate the required value of $$E_b/N_0$$ from a graph of the bit error rate. I would assume that the latter is what you're supposed to do if that's a homework problem.

Simple approximations (actually bounds) of the $$Q$$ functions exist, but inverting them will very likely result in very inaccurate estimates of $$E_b/N_0$$.

• Thanks for the reply, but I am not sure how to invert the Q function? – Cynthia Nov 19 '18 at 16:29
• @Cynthia: That's what I tried to explain in my answer, you can't do it analytically. You can use some package (such as Matlab) that does it numerically, or you just estimate it from the graph. – Matt L. Nov 19 '18 at 16:30

The Q function is simply the tail probability for a standard normal distribution (i.e. zero-mean, unit variance Gaussian), defined as: $$Q(x) = 1 - \Phi(x),$$ where $$\Phi(x)$$ is the cumulative distribution function (CDF) for a standard normal.

The function $$1 - \text{CDF}$$, for any distribution, is sometimes referred to as the "complementary cumulative distribution function" (CCDF) or the "survival function" (SF). What we are trying to find is a way of evaluating $$Q^{-1}(x)$$, the inverse survival function (ISF) for the standard normal distribution.

If you don't have access to MATLAB but have a copy of Python/SciPy installed (free), you can use the function norm.isf in the scipy.stats module, documentation found here. This function is the inverse survival function for the normal distribution.

EDIT: Try It Online!