Bit Error Rate (BER) for BPSK modulation
If you're new here, please click here to SUBSCRIBE and receive for FREE articles over email. Thanks for visiting! Happy learning.
In this post, let us derive the equation for bit error probability wit BPSK modulation scheme. With Binary Phase Shift Keying (BPSK), the binary digits 1 and 0 maybe represented by the analog levels and
respectively.

Figure: Simplified block diagram with BPSK transmitter-receiver
Channel Model
The transmitted waveform gets corrupted by noise , typically referred to as Additive White Gaussian Noise (AWGN).
Additive : As the noise gets ‘added’ (and not multiplied) to the received signal
White : The spectrum of the noise if flat for all frequencies.
Gaussian : The values of the noise follows the Gaussian probability distribution function,
with
and
.
Computing the probability of error
Using the derivation provided in Section 5.2.1 of [COMM-PROAKIS] as reference:
The received signal, OR
corresponding to transmitted bit 1 OR 0 respectively. The conditional probability distribution function (PDF) of
for the two cases are:
.

Figure: Conditional probability density function with BPSK modulation
For decoding, a decision rule with threshold as 0 might be optimal i.e.
for received signal and
.
With this threshold, the probability of error given is transmitted is (the area in blue region):
, where
the complementary error function, .
Similarly, the probability of error given is transmitted is (the area in green region):
.
The total probability of bit error,
.
Assuming, and
are equally probable i.e.
, the bit error probability is,
Simulation model
Octave/Matlab source code for computing the bit error probability 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.
Click here to download the script for BPSK Bit error rate.

Figure: Bit error curve for BPSK modulation - theory, simulation
Hope this helps.
Reference:
[DIGITAL COMMUNICATION: PROAKIS] Digital Communications by John Proakis
If you liked this post, you may leave a comment below, or subscribe to the RSS feed.
You may also find these posts relevant...
Comments
Thanks.
I have not checked for FSK modulation. Once I understand, hopefully will be try put together a post.
Thanks a lot, your BPSK BER was very useful, i got to know about the errors i made when i did the code
Dear Krishna,
Your simulation and theory prgram is very usefull and helpfull.
Could you please send me the syntax matlab comand of QPSK modulation for OFDM under multipath (i.e 3 path) fading.
Very thanks in advance.
shareef
Hey,
I found theBit error curve for BPSK modulation - theory, simulation very useful. How do we demodulate , decode and compare it with the input signal
why are we using this term 10^(-Eb_N0_dB(ii)/20) in the code to get the final signal y. why cant we write y=s+n; ???????????????
sorry for my previuos question i got it just after posting my previuos mesg…its coz we want to add the noise to the signal so we need to convert it to dB … right? thnx
hello! i am unable to understand the FOR loop operation in this code kindly explain a bit
thnaks in advance
hi
hope you are doing fine…in the matlab program u have given here, why didnt you use the awgn matlab function to introduce the noise? why have we taken this formula? thanks
yeah ! trying to get hold of things slowly now… i hope u dnt mind me asking foolish and lots of Qz…
about the formula u uzed for awgn … i didnt get how it produces awgn … ![]()
1/sqrt(2)*[randn(1,N) + j*randn(1,N)];
1/sqrt(2) ==> this is the scaling term?
j*randn(1,N) ==> this is to generate complex noise values?
I am thankful to u for helping me
thanks alot … u helped me alot i m very happy to learn all this … thanks once again … and plz keep helping me as i want to learn …
hi i hope you are in good health. Can you please tell me what a fading co-efficient is? and what does it signifies in few lines. I shall be very thankful to you.
thank you but it is not exactly what I’m schearching about :/
I need code for modulation BPSK/PM or only BPSK
thanks a lot code is very useful
even i want a code using upsampling and pulse sampling in BPSK mod and downsampling and pulse sampling in BPSK demod
i m very satisfy to this site, bcause it is very hepful to me to make mmy project. if u have bpsk matlab code then send me .
[...] back in time we discussed the BER (bit error rate) for BPSK modulation in a simple AWGN channel (time stamps states August 2007). Almost an year back! It high time we [...]
[...] our discussion on BER for BPSK modulation in AWGN, we know that probability of bit error [...]


Hey your BPSK theory and simulation is very useful.Do you have it for FSK modulation too?If you don’t mind please send to me. thanks.