- DSP log - http://www.dsplog.com -

Bit Error Rate (BER) for BPSK modulation

Posted By Krishna Sankar On August 5, 2007 @ 8:17 pm In Modulation | 473 Comments

In this post, we will derive the theoretical equation for bit error rate (BER) with Binary Phase Shift Keying (BPSK) modulation scheme in Additive White Gaussian Noise (AWGN) channel. The BER results obtained using Matlab/Octave simulation scripts show good agreement with the derived theoretical results.

With Binary Phase Shift Keying (BPSK), the binary digits 1 and 0 maybe represented by the analog levels $+\sqrt{E_b}$ and$-\sqrt{E_b}$ respectively. The system model is as shown in the Figure below.

Figure: Simplified block diagram with BPSK transmitter-receiver

## Channel Model

The transmitted waveform gets corrupted by noise $n$, typically referred to as Additive White Gaussian Noise (AWGN).

White : The spectrum of the noise if flat for all frequencies.

Gaussian : The values of the noise $n$ follows the Gaussian probability distribution function, $p(x) = \frac{1}{\sqrt{2\pi\sigma^2}}e^{\frac{-(x-\mu)^2}{2\sigma^2}$ with $\mu=0$ and $\sigma^2 = \frac{N_0}{2}$.

## Computing the probability of error

Using the derivation provided in Section 5.2.1 of [COMM-PROAKIS] [1] as reference:

$y=s_1 + n$ when bit 1 is transmitted and

$y=s_0 + n$when bit 0 is transmitted.

The conditional probability distribution function (PDF) of $y$for the two cases are:

$p(y|s_0) = \frac{1}{\sqrt{\pi N_0}}e^{\frac{-(y+\sqrt{E_b})^2}{N_0}$

$p(y|s_1) = \frac{1}{\sqrt{\pi N_0}}e^{\frac{-(y-\sqrt{E_b})^2}{N_0}$ .

Figure: Conditional probability density function with BPSK modulation

Assuming that $s_1$ and $s_0$ are equally probable i.e. $p(s_1) = p(s_0)=1/2$, the threshold 0 forms the optimal decision boundary.

• if the received signal is $y$ is greater than 0, then the receiver assumes $s_1$ was transmitted.
• if the received signal is $y$ is less than or equal to 0, then the receiver assumes $s_0$ was transmitted.

i.e.

$y>0 \Rightarrow s_1$ and

$y\le 0 \Rightarrow s_0$ .

### Probability of error given $s_1$ was transmitted

With this threshold, the probability of error given $s_1$ is transmitted is (the area in blue region):

$p(e|s_1) = \frac{1}{\sqrt{\pi N_0}}\int_{-\infty}^0e^{\frac{-(y-\sqrt{E_b})^2}{N_0}}dy=\frac{1}{\sqrt{\pi}}\int_{\sqrt{\frac{E_b}{N_0}}}^\infty e^{-z^2}dz=\frac{1}{2}erfc\left({\sqrt{\frac{E_b}{N_0}}}\right)$,

where,

$erfc(x) = \frac{2}{\sqrt{\pi}}\int_x^\infty e^{-x^2}dx$ isĀ  the complementary error function.

### Probability of error given $s_0$ was transmitted

Similarly the probability of error given $s_0$ is transmitted is (the area in green region):

$p(e|s_0) = \frac{1}{\sqrt{\pi N_0}}\int^{\infty}_0e^{\frac{-(y+\sqrt{E_b})^2}{N_0}}dy=\frac{1}{\sqrt{\pi}}\int_{\sqrt{\frac{E_b}{N_0}}}^\infty e^{-z^2}dz=\frac{1}{2}erfc\left({\sqrt{\frac{E_b}{N_0}}}\right)$.

### Total probability of bit error

$P_b=p(s_1)p(e|s_1)+p(s_0)p(e|s_0)$.

Given that we assumed that $s_1$ and $s_0$ are equally probable i.e. $p(s_1) = p(s_0)=1/2$, the bit error probability is,

$P_b=\frac{1}{2}erfc\left({\sqrt{\frac{E_b}{N_0}}}\right)$.

## Simulation model

Matlab/Octave source code for computing the bit error rate with BPSK modulation from theory and simulation. The code performs the following:

(a) Generation of random BPSK modulated symbols +1′s and -1′s

(b) Passing them through Additive White Gaussian Noise channel

(c) Demodulation of the received symbol based on the location in the constellation

(d) Counting the number of errors

(e) Repeating the same for multiple Eb/No value.

Figure: Bit error rate (BER) curve for BPSK modulation – theory, simulation

## Reference

URL to article: http://www.dsplog.com/2007/08/05/bit-error-probability-for-bpsk-modulation/

URLs in this post: