Skip to main content

BER vs SNR for M-ary QAM, M-ary PSK, QPSK, BPSK, ...(MATLAB Code + Simulator)


Bit Error Rate (BER) & SNR Guide

Analyze communication system performance with our interactive simulators and MATLAB tools.



What is Bit Error Rate (BER)?

The BER indicates how many corrupted bits are received compared to the total number of bits sent. It is the primary figure of merit for any digital communication link.

BER = (number of bits received in error) / (total number of transmitted bits)

What is Signal-to-Noise Ratio (SNR)?

SNR is the ratio of signal power to noise power, typically expressed in decibels (dB) to handle large variations in signal strength.

SNR (dB) = 10 * log10(Signal Power / Noise Power)

Example: An SNR of 3 dB means signal power is 2x stronger than noise.


M-ary PSK: (M = modulation order)
BER ≈ (1 / log₂M) × erfc( √(Es/N0) × sin(Ï€/M) )
M-ary QAM (Square):
BER ≈ [ 2(1 - 1/√M) / log₂M ] × erfc( √( 1.5 × Es/N0 / (M - 1) ) )

Interactive BER Calculator

Calculate theoretical BER for PSK and QAM systems instantly.

M-ary PSK

---

M-ary QAM

---

Performance Comparison

BER vs. SNR Graph
Download MATLAB BER Code →
Technique Bits/Symbol
BPSK1
QPSK2
8-PSK3
16-QAM4
64-QAM6

Modulation Scheme and Bandwidth Requirement

Modulation Bits/Symbol Bandwidth
BPSK 1 Rb
QPSK 2 Rb / 2
8-PSK 3 Rb / 3
16-QAM 4 Rb / 4

Read more about Modulation Scheme & Bandwidth Requirement



Try Interactive Online Simulators


BER Requirements by Application

Technology Typical Modulation Target BER
5G Mobile Data 256-QAM 10-4 to 10-6
Satellite Comms (Deep Space) BPSK / QPSK 10-3 (Pre-FEC)
Fiber Optic Networks Coherent QAM 10-12
Submarine Cables 8-QAM / 16-QAM 10-15

Quick Knowledge Check

If you double the signal power (increase by 3dB), what happens to the SNR?

Theoretical Error Probability of Digital Modulation

Key Concept: The performance of a modulation scheme is measured by how many errors occur for a given signal strength. We distinguish between Bit Error Rate (BER)—the probability of a single bit being wrong—and Symbol Error Rate (SER)—the probability of a group of bits (a symbol) being wrong.

1. Bit Error Rate (BER) Formulas

BER indicates the end-to-end performance of a data link. For higher-order modulation like QAM, we use approximations based on Gray Coding (where adjacent symbols differ by only one bit).

Binary Phase Shift Keying (BPSK)

The baseline for performance; very robust against noise.

\[ P_b = Q\left(\sqrt{\frac{2E_b}{N_0}}\right) \] Quadrature Phase Shift Keying (QPSK)

Carries 2 bits per symbol but maintains the same BER as BPSK.

\[ P_b = Q\left(\sqrt{\frac{2E_b}{N_0}}\right) \] M-ary PSK (e.g., 8-PSK) \[ P_b \approx \frac{2}{\log_2(M)} Q\left( \sqrt{\frac{2E_s}{N_0}} \sin\left(\frac{\pi}{M}\right) \right) \] Rectangular M-ary QAM (16, 64, 256-QAM)

As M increases, the distance between points decreases, making them more sensitive to noise.

16-QAM: \[ P_b \approx \frac{3}{4} Q\left( \sqrt{\frac{4}{5}\frac{E_b}{N_0}} \right) \]

64-QAM: \[ P_b \approx \frac{7}{12} Q\left( \sqrt{\frac{2}{7}\frac{E_b}{N_0}} \right) \]

256-QAM: \[ P_b \approx \frac{15}{32} Q\left( \sqrt{\frac{8}{85}\frac{E_b}{N_0}} \right) \]


2. Symbol Error Rate (SER) Formulas

SER is useful for designing the physical layer and hardware. One symbol error usually results in only one bit error if Gray Coding is used.

BPSK & QPSK

BPSK: \[ P_s = Q\left(\sqrt{\frac{2E_b}{N_0}}\right) \]

QPSK: \[ P_s \approx 2Q\left(\sqrt{\frac{2E_b}{N_0}}\right) \]

General M-QAM Symbol Error Rate

A symbol is "lost" if the noise pushes it outside its decision boundary.

16-QAM: \[ P_s \approx 3Q\left( \sqrt{\frac{4}{5}\frac{E_b}{N_0}} \right) \]

64-QAM: \[ P_s \approx \frac{7}{2} Q\left( \sqrt{\frac{2}{7}\frac{E_b}{N_0}} \right) \]


Summary of Parameters

  • \(E_b\): Energy required to send one bit.
  • \(E_s\): Energy required to send one symbol (\(E_s = E_b \cdot \log_2 M\)).
  • \(N_0\): Noise power density.
  • AWGN Channel: These formulas assume a static environment with only Gaussian noise (no fading).
  • Gray Coding: A technique where adjacent constellation points differ by only one bit to minimize BER.

📚 Also Read About

Frequently Asked Questions

What is a good BER for wireless communication?

For voice transmission, a BER of 10^-3 is often acceptable. For high-speed data services, a BER of 10^-6 or lower is typically required.

How does SNR affect BER?

As SNR increases, the signal becomes clearer relative to the noise, resulting in a significantly lower Bit Error Rate.

Contact Us

Name

Email *

Message *

Popular Posts

Online Simulator for ASK, FSK, and PSK

Interactive Digital Signal Processing (DSP) Tutorial and Simulator for ASK, FSK, and BPSK modulation techniques. Try our new Digital Signal Processing Simulator!   •   Interactive ASK, FSK, and BPSK tools updated for 2025. Start Now Digital Modulation Visualizer: ASK, FSK, & BPSK Simulator Learn and visualize binary modulation techniques (ASK, FSK, BPSK) in real-time with adjustable carrier and sampling parameters. Perfect for DSP students and engineers. 📡 ASK Simulator 📶 FSK Simulator 🎚️ BPSK Simulator 📚 More Topics ASK Modulator FSK Modulator BPSK Modulator More Topics 1. ASK (Amplitude Shift Keying) Simulato...

UGC NET Electronic Science Previous Year Question Papers

Home / Engineering & Other Exams / UGC NET 2022 PYQ 📥 Download UGC NET Electronics PDFs Complete collection of previous year question papers, answer keys and explanations for Subject Code 88. Start Downloading UGC-NET (Electronics Science, Subject code: 88) Subject_Code : 88; Department : Electronic Science; 📂 View All Question Papers Q. UGC Net Electronic Science Question Paper [June 2025] A. UGC Net Electronic Science Question Paper With Answer Key Download Pdf [June 2025] with full explanation Q. UGC Net Electronic Science Question Paper [December 2024] A. UGC Net Electronic Science Question Paper With Answer Key Download Pdf [December 2024] Q. UGC Net Electronic Science Question Paper [Aug 2024] A. UGC Net Electronic Scien...

MATLAB code for BER vs SNR for M-QAM, M-PSK, QPSk, BPSK, ...(with Online Simulator)

🧮 MATLAB Code for BPSK, M-ary PSK, and M-ary QAM Together 🧮 MATLAB Code for M-ary QAM 🧮 MATLAB Code for M-ary PSK 📚 Further Reading MATLAB Script for BER vs. SNR for M-QAM, M-PSK, QPSK, BPSK % Written by Salim Wireless clc; clear; close all; snr_db = -5:2:25; psk_orders = [2, 4, 8, 16, 32]; qam_orders = [4, 16, 64, 256]; ber_psk_results = zeros(length(psk_orders), length(snr_db)); ber_qam_results = zeros(length(qam_orders), length(snr_db)); for i = 1:length(psk_orders) ber_psk_results(i, :) = berawgn(snr_db, 'psk', psk_orders(i), 'nondiff'); end for i = 1:length(qam_orders) ber_qam_results(i, :) = berawgn(snr_db, 'qam', qam_orders(i)); end figure; semilogy(snr_db, ber_psk_results(1, :), 'o-', 'LineWidth', 1.5, 'DisplayName', 'BPSK'); hold on; for i = 2:length(psk_orders) semilogy(snr_db, ber_psk_results(i, :), 'o-', 'DisplayName', sprintf('%d-PSK', psk_or...

Constellation Diagrams of ASK, PSK, and FSK (with MATLAB Code + Simulator)

Constellation Diagrams: ASK, FSK, and PSK Comprehensive guide to signal space representation, including interactive simulators and MATLAB implementations. 📘 Overview 🧮 Simulator ⚖️ Theory 📚 Resources Definitions Constellation Tool Key Points MATLAB Code 📂 Other Topics: M-ary PSK & QAM Diagrams ▼ 🧮 Simulator for M-ary PSK Constellation 🧮 Simulator for M-ary QAM Constellation BASK (Binary ASK) Modulation Transmits one of two signals: 0 or -√Eb, where Eb​ is the energy per bit. These signals represent binary 0 and 1. BFSK (Binary FSK) Modulation Transmits one...

DFTs-OFDM vs OFDM: Why DFT-Spread OFDM Reduces PAPR Effectively (with MATLAB Code)

Understanding PAPR in DFT-spread OFDM vs. Standard OFDM In modern wireless communications like 4G LTE and 5G NR, managing the Peak-to-Average Power Ratio (PAPR) is critical for hardware efficiency. While OFDM is the gold standard for high-speed data, its high PAPR poses significant challenges for mobile devices. This is where DFTs-OFDM (also known as SC-FDMA) comes in. DFT-spread OFDM (DFTs-OFDM) has lower Peak-to-Average Power Ratio (PAPR) because it "spreads" the data in the frequency domain before applying IFFT, making the time-domain signal behave more like a single-carrier signal rather than a multi-carrier one like OFDM. Deeper Explanation: Aspect OFDM DFTs-OFDM Signal Type Multi-carrier Single-carrier-like Process IFFT of QAM directly QAM → DFT → IFFT PAPR Level High (due to many...

MIMO, massive MIMO, and Beamforming

Introduction to MIMO Systems The term Multiple Input Multiple Output (MIMO) refers to wireless communication systems that use multiple antennas at both the transmitter (Tx) and receiver (Rx). MIMO is a core technology in modern standards such as Wi-Fi 4/5/6, LTE, and 5G . The main purpose of MIMO is to increase channel capacity and improve link reliability by transmitting multiple independent data streams over the same frequency band. These simultaneous data streams are spatially multiplexed and transmitted through distinct propagation paths. When properly decoded, this orthogonal multiplexing minimizes interference among data streams and enhances throughput. In Massive MIMO —a key concept in 5G systems—hundreds of antennas are used at the base station to achieve very high capacity and to enable beamforming or directional transmission. 1. Essential Characteristics of a MIMO System 1.1 Spatial Division Multiple Access (SD...

MATLAB Code for ASK, FSK, and PSK (with Online Simulator)

MATLAB Code for ASK, FSK, and PSK Comprehensive implementation of digital modulation and demodulation techniques with simulation results. 📘 Theory 📡 ASK Code 📶 FSK Code 🎚️ PSK Code 🕹️ Simulator 📚 Further Reading Amplitude Shift Frequency Shift Phase Shift Live Simulator ASK, FSK & PSK HomePage MATLAB Code MATLAB Code for ASK Modulation and Demodulation COPY % The code is written by SalimWireless.Com clc; clear all; close all; % Parameters Tb = 1; fc = 10; N_bits = 10; Fs = 100 * fc; Ts = 1/Fs; samples_per_bit = Fs * Tb; rng(10); binar...