Adding AWGN noise with a correct noise power to the signal I would like to add AWGN noise to my BPSK and QPSK signal. So assume the BPSK signal is x1 and QPSK signal is x2. The EbN0 is $10\textrm{ dB}$. Therefore I will first convert the EbN0 from $\textrm{dB}$ to linear scale. Assume Eb=1 and Es=1. 


I would like to know can anyone explain to me, should the noise power be N0 or N0/2? 


I am really confused since according to this link
N0 is used to add noise to one dimensional noise and N0/2 is used to add noise to two dimensional signal. Therefore if Eb=1 and EbN0=10 $\textrm{dB}$



Eb=1;
N=1e6;

EbN0=10;
EbN0_lin=10^(EBN0/10);
N0=Eb/EBN0_lin;
noise=sqrt(N0)*randn(1,length(x1))

or should it be 

noise=sqrt(N0/2)*randn(1,length(x1))


The same thing for QPSK, is it 



Es=1;
EsN0=10;
EsN0_lin=10^(EsN0/10);
N0=Es/EsN0_lin;
noise=sqrt(N0)*randn(1,length(x2))

or 

noise=sqrt(N0/2)*randn(1,length(x2))


I was thinking that according to convention the N0 is sigma^2/2 however the link above is saying different things. 


Can anyone explain the correct way of calibrating the noise? 
And explain if the above reference is incorrect or not?
The kind of AWGN channel you're simulating is sometimes called a "discrete time" channel. That means that you're going to simulate the bit error rate at the output of a decision device, the input to which is produced by a correlator. This is more easily explained by looking into the transmission and reception of a single bit. I'll assume BPSK.

Let's say that you transmit the physical signal $a_0p(t)$, where $a_0$ is either $A$ or $-A$, and $p(t)$ is a pulse of unit energy. To make things easier we'll assume $p(t)$ is symmetrical, that is, $p(t)=p(-t)$ (this is true for all practical systems I know). Note that, in this scenario, the bit energy is $E_b=A^2$.

Assuming that there is no noise, the received signal is $r(t)=a_0p(t)$. The receiver correlates $r(t)$ with the transmitted pulse $p(t)$. The output of the correlator is $$\int_{-\infty}^\infty a_0 p(t)p(t)\,dt=a_0,$$ where I've used the fact that the pulse has unit energy.

Now assume that the input to the correlator is pure Gaussian white noise $n(t)$ with PSD $N_0/2$ and zero mean. Then, the correlator's output is $$n=\int_{-\infty}^\infty n(t)p(t).$$ By the Wiener-Khinchine theorem, $n$ is a zero-mean Gaussian random variable with variance $\sigma_n^2=N_0/2$.

In the case of having signal plus noise at the receiver's input, the output will be $$r=a_0+n$$ because the correlator is linear. Using the value of $r$, a decision can be made on whether $A$ or $-A$ was transmitted.

We define the SNR at the correlator's output as the bit energy divided by the noise variance: $$\text{SNR}=\frac{a_0^2}{\sigma_n^2}=\frac{2E_b}{N_0}=\frac{2A^2}{N_0}.$$

Notes:


When you plot the BER, you'll likely use $E_b/N_0$ in the horizontal axis. The reason is that in quadrature modulations, the total noise power is $N_0$, not $N_0/2$.
Practical systems use a matched filter instead of a correlator. The results are exactly the same.
In a practical system there will be delay, you transmit multiple pulses instead of only one, etc. Those details are not essential to understanding how the SNR is measured in your simulation.