Skip to main content

OFDM vs SC-OFDM

 

The main difference between OFDM and SC-OFDM is that SC-OFDM transmits the signal using a single carrier, while OFDM uses multiple subcarriers. However, in SC-OFDM, the signal is generated with different sub-bands, but it is transmitted through a single carrier (more technically, through a wideband carrier signal).

Block Diagram of OFDM:

Data → Modulation → Serial-to-Parallel → IFFT → Add CP → Transmit


Received Signal → Remove CP → FFT → Parallel-to-Serial → Demodulation → Data



Block Diagram of SC-OFDM:

Data → Modulation → DFT → IFFT → Add CP → Transmit


Received Signal → Remove CP → FFT → Demodulation → Data 

 

In the case of OFDM, the input modulated data is converted from a serial stream to parallel streams, and different subcarriers are assigned to each chunk. Then, IFFT is applied to these chunks, and a cyclic prefix is added to each one. Each chunk is technically referred to as an OFDM symbol.

Unlike OFDM, SC-OFDM does not perform serial-to-parallel conversion on the modulated input data. Instead, it directly applies DFT (Discrete Fourier Transform) to the data, followed by IFFT. Like OFDM, a cyclic prefix is added before transmission. SC-OFDM uses DFT and IFFT to simulate the multi-frequency behavior of OFDM, but instead of transmitting over multiple subcarriers, the data is transmitted using a single carrier. After IFFT, the data is converted back to the time domain, where it can be transmitted over the channel.

 

MATLAB Code for Comparison of OFDM vs SC-OFDM

 

Output

 

 

Comparison of Steps for OFDM vs SC-OFDM (Baseband)

Here’s a breakdown of the steps involved in both OFDM and SC-OFDM for the baseband signal processing.

1. Input Data (Symbols)

OFDM: The input data is divided into multiple subcarriers. This data is usually modulated using a scheme like QPSK or QAM (e.g., 64-QAM).

SC-OFDM: The input data is also modulated (usually QPSK or QAM), but it's processed in a way that will later simulate single carrier transmission.

2. Mapping to Frequency Domain

OFDM: The symbols are directly mapped to multiple subcarriers. The mapping is done by placing each modulated symbol onto a separate subcarrier, which is orthogonal to the others.

This is typically done using the IFFT (Inverse Fast Fourier Transform).

SC-OFDM: The symbols are processed through DFT (Discrete Fourier Transform) to divide the data into frequency components, but instead of using multiple subcarriers, all frequency components are combined into a single carrier.

3. IFFT (Inverse Fast Fourier Transform)

OFDM: After mapping the symbols to subcarriers, an IFFT is applied to convert the signal from the frequency domain to the time domain. Each subcarrier carries a portion of the data.

SC-OFDM: The DFT is used to convert the data into frequency components, which are then combined using IFFT. The main difference is that the entire signal behaves like a single carrier, even though it’s represented in the frequency domain initially.

4. Cyclic Prefix (CP) Addition

Both OFDM and SC-OFDM: A cyclic prefix (CP) is added to the signal to prevent Inter-Symbol Interference (ISI) caused by multipath fading. The cyclic prefix is a copy of the last few samples of the signal, repeated at the beginning.

5. Baseband Signal

OFDM: The resulting baseband signal after IFFT is spread across multiple subcarriers in the time domain. This allows for parallel data transmission, which is very efficient for high data rates.

SC-OFDM: The baseband signal after IFFT still consists of a single carrier, but it contains frequency components that simulate multiple subcarriers (via the DFT). The signal is similar to traditional single carrier signals but with data distributed over a frequency range.

6. Results (Baseband Signal):

OFDM Baseband: The baseband OFDM signal will show multiple peaks (each corresponding to a subcarrier), and it will look more complex in the time domain due to the presence of multiple subcarriers.

SC-OFDM Baseband: The baseband SC-OFDM signal will show a single peak, representing a single-carrier signal, but its structure is still influenced by multiple frequency components that are DFT-based.
 


Try Interactive Online Simulators


Further Reading

  1.  Single Carrier OFDM (SC‑OFDM): Benefits over OFDM in LTE/5G Uplink
  2. DFTs-OFDM vs OFDM: Why DFT-Spread OFDM Reduces PAPR Effectively (with MATLAB Code)
  3. DFTs-OFDM Radar using Zadoff-Chu Sequence for Radar-Communication Integration


Contact Us

Name

Email *

Message *

Popular Posts

Design of CMOS Flip-Flops (SR, D, JK)

Design of CMOS Flip-Flops (SR, D, JK) A flip-flop or latch is a circuit with two stable states, used to store state information. It is the basic storage element in sequential logic and a fundamental building block in digital electronics systems, including computers and communication devices. Flip-flops and latches act as data storage elements for states, pulse counting, and synchronization of variably-timed input signals to a reference clock. Flip-flops can be transparent/opaque (latches) or clocked (synchronous, edge-triggered). Latches are level-sensitive, while flip-flops are edge-sensitive. In sequential logic, the output depends on current inputs and previous states. Fig.1 shows a sequential circuit combining a combinational block and a memory element. ...

FFT Butterfly Method Explained (with Simulations)

4-Point FFT Using Butterfly Method Given: x[n] = {0, 1, 2, 3} Step 1: Split into Even & Odd Even indices: x e = {x[0], x[2]} = {0, 2} Odd indices: x o = {x[1], x[3]} = {1, 3} Step 2: 2-point DFT For any {a, b}: DFT = {a + b, a - b} Even Part (E): {0+2, 0-2} = {2, -2} Odd Part (O): {1+3, 1-3} = {4, -2} Step 3: Combine Using Butterfly X[k] = E[k] + W 4 k O[k] X[k + 2] = E[k] - W 4 k O[k] Twiddle Factors (N=4): W 4 0 = 1, W 4 1 = -j Final Calculations: X[0] = E[0] + W 4 0 O[0] = 2 + (1)(4) = 6 X[2] = E[0] - W 4 0 O[0] = 2 - (1)(4) = -2 X[1] = E[1] + W 4 1 O[1] = -2 + (-j)(-2) = -2 + 2j X[3] = E[1] - W 4 1 O[1] = -2 - (-j)(-2) = -2 - 2j Final Answer: X[k] = {6, -2 + 2j, -2, -2 - 2j} 8-Point FFT Using Butterfly Method Given: x[n] = {0,1,2,3,4,5,6,7} Step 1: Split into Bit-Reversed Order To perform DIT-FFT, split the 8 points into pairs of two: Group A: {x[0], x[4]} = {0, 4}...

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. 📘 Theory 🧮 Simulators 💻 MATLAB Code 📚 Resources BER Definition SNR Formula BER Calculator MATLAB Comparison 📂 Explore M-ary QAM, PSK, and QPSK Topics ▼ 🧮 Constellation Simulator: M-ary QAM 🧮 Constellation Simulator: M-ary PSK 🧮 BER calculation for ASK, FSK, and PSK 🧮 Approaches to BER vs SNR Calculation 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 figur...

Pulse Amplitude Modulation and Demodulation

📘 Overview & Theory of Pulse Amplitude Moduation (PAM) 🧮 Pulse Amplitude Demoduation 🧮 MATLAB Code for PAM 📚 Further Reading 📂 Other Topics on Pulse Amplitude Modulation ... 🧮 Simulation results for comparison of PAM, PWM, PPM, DM, and PCM 🧮 Other Pulse Modulation Techniques (e.g., PWM, PPM, DM, and PCM) 🧮 MATLAB Code for Pulse Amplitude Modulation and Demodulation of an Analog Signal (2) 🧮 MATLAB Code for Pulse Amplitude Modulation and Demodulation of Digital data  Pulse Amplitude Modulation (PAM) Sampling allow us to represent real world continuous signal, such as audio or video, in a format suitable for digital processing and storage. This sampled discrete-time signal is inherently digital. A digital signal is a discrete-time signal that is further quantized in amplitude. Pulse Amplitude modulation (PAM) is the modulation technique in which amplitude of carrier pulses is...

Q-function in BER vs SNR Calculation (with Simulation)

Q-function in BER vs. SNR Calculation In digital communications and signal processing, the Q-function plays a significant role in predicting system reliability. It allows engineers to quantify the probability that Gaussian noise will exceed a specific threshold, causing a bit error. What is the Q-function? The Q-function is a mathematical function representing the tail probability of the standard normal (Gaussian) distribution. It is the complementary cumulative distribution function (CCDF) of a standard Gaussian distribution. Q(x) = (1 / √(2Ï€)) ∫â‚“∞ e^(-t² / 2) dt The Role of the Q-function in BER vs. SNR The Q-function is the standard tool for calculating BER in systems like BPSK or QPSK over AWGN (Additive White Gaussian Noise) channels. For BPSK: In BPSK, we transmit +√E b (bit 1) and -√E b (bit 0). The decision boundary is set at 0 . If -√E b was sent, an error occurs if noise r > √...

Channel Impulse Response (CIR) (with MATLAB + Simulator)

📘 Overview & Theory 📘 How CIR Affects the Signal 🧮 Online Channel Impulse Response Simulator 🧮 MATLAB Codes 📚 Further Reading What is the Channel Impulse Response (CIR)? The Channel Impulse Response (CIR) is a concept primarily used in the field of telecommunications and signal processing. It provides information about how a communication channel responds to an impulse signal. It describes the behavior of a communication channel in response to an impulse signal. In signal processing, an impulse signal has zero amplitude at all other times and amplitude ∞ at time 0 for the signal. Using a Dirac Delta function, we can approximate this. Fig: Dirac Delta Function The result of this calculation is that all frequencies are responded to equally by δ(t) . This is crucial since we never know which frequenci...

MATLAB Code for BER performance of QPSK with BPSK, 4-QAM, 16-QAM, 64-QAM, 256-QAM, etc

📘 Overview 🧮 MATLAB Codes 🧮 Online Simulator for Calculating BER of M-ary PSK and QAM 🧮 QPSK vs BPSK and QAM: A Comparison of Modulation Schemes in Wireless Communication 🧮 Are QPSK and 4-PSK same? 📚 Further Reading   QPSK offers double the data rate of BPSK while maintaining a similar bit error rate at low SNR when Gray coding is used. It shares spectral efficiency with 4-QAM and can outperform 4-QAM or 16-QAM in very noisy channels. QPSK is widely used in practical wireless systems, often alongside QAM in adaptive modulation schemes [Read more...] What is the Gray Code? Gray Code: Gray code is a binary numeral system where two successive values differ in only one bit. This property is called the single-bit difference or unit distance code. It is also known as reflected binary code. Let's convert binary 111 to Gray code: Binary bits: B = 1 1 1 Apply the rule: G[0] = B[0] = 1...

MATLAB Code for QPSK Modulation and Demodulation

📘 Overview 🧮 MATLAB Codes 🧮 Theory 🧮 BER performance of QPSK with BPSK, 4-QAM, 16-QAM, 64-QAM, 256-QAM, etc 📚 Further Reading QPSK Passband Signal Generation Spectral Efficiency in QPSK   Quadrature Phase Shift Keying (QPSK) is a digital modulation scheme that conveys two bits per symbol by changing the phase of the carrier signal. Each pair of bits is mapped to one of four possible phase shifts: 0°, 90°, 180°, or 270° 00  ===> 0 degree phase shift of carrier signal 01  ===> 90 degree 11  ===> 180 degree 10  ===> 270 degree   MATLAB Script clc; clear all; close all; clc; M = 4; data = randi([0 (M-1)], 1000, 1); Phase = 0; modData=pskmod(data,M,Phase); figure(1); scatterplot(modData); channelAWGN = 15; rxData2 = awgn(modData, channelAWGN); figure(2); scatterplot(rxData2); demodData = pskdemod(rxData2,M,Phase);   Result data 1 0 2 2 0 2 1 . . . modData -1.0...