Goal: Simulate discrete-time cyclic-prefixed OFDM communication system. Explain role of IFFT/FFT, cyclic prefix. Simulate M-QPSK / M-QAM based cyclic prefixed OFDM over AWGN channel.
This article is part of the book |
Discrete-time implementation of baseband CP-OFDM
The schematic diagram of a simplified cyclic-prefixed OFDM (CP-OFDM) data transmission system is shown in Figure 1. The basic parameter to describe an OFDM system is to specify the number of subchannels (
The transmission begins by converting the source information stream into
Since this is a baseband discrete-time model, where the signals are represented at symbol sampling instants, the information symbol on each parallel stream is assumed to be modulating a single orthogonal carrier. At this juncture, the modulated symbols
The following generic function implements the modulation mapper (constellation mapping) shown in the Figure 1. The function supports MPSK modulation for
Please refer the book Wireless communication systems using Matlab – for full Matlab code
modulation_mapper.m: Implementing the modulation mapper for MPSK and MQAM
function [X,ref]=modulation_mapper(MOD_TYPE,M,d)
%Modulation mapper for OFDM transmitter
% MOD_TYPE - 'MPSK' or 'MQAM' modulation
% M - modulation order, For BPSK M=2, QPSK M=4, 256-QAM M=256 etc..,
% d - data symbols to be modulated drawn from the set {1,2,...,M}
%returns
% X - modulated symbols
% ref -ideal constellation points that could be used by IQ detector
if strcmpi(MOD_TYPE,'MPSK'),
[X,ref]=mpsk_modulator(M,d);%MPSK modulation
else
if strcmpi(MOD_TYPE,'MQAM'),
[X,ref]=mqam_modulator(M,d);%MQAM modulation
else
error('Invalid Modulation specified');
end
end;end
OFDM signal is a composite signal that contains information from subchannels. Since the modulated symbols
In a time-dispersive channel, the orthogonality of the subcarriers cannot be maintained in a perfect state due to delay distortion. This problem is addressed by adding a cyclic extension (also called cyclic prefix) to the OFDM symbol (reference [1]). A cyclic extension is added by copying the last
Cyclic extension of OFDM symbol converts the linear convolution channel to a channel performing cyclic convolution (view demo here) and this ensures orthogonality of subcarriers in a time-dispersive channel. It also completely eliminates the subcarrier interference as long as the impulse response of the channel is shorter than the cyclic prefix. At the receiver, the added cyclic prefix is simply removed from the received OFDM symbol.
On the receiver side, the demapper for demodulating MPSK and MQAM can be implemented by using a simple IQ detector that uses the minimum euclidean distance metric for demodulation. (discussion and function definitions in section 5.4.4 of chapter 5 (Refer the book Wireless communication systems using Matlab).
Performance of MPSK-CP-OFDM and MQAM-CP-OFDM on AWGN channel
The code (given in the book Wireless communication systems using Matlab) puts together all the functional blocks of an OFDM transmission system, that were described here, to simulate the performance of a CP-OFDM system over an AWGN channel. The code supports two types of underlying modulations for OFDM – MPSK or MQAM. It generates random data symbols, modulates them using the chosen modulation type, converts the modulated symbols to frequency domain using IDFT operation and adds cyclic prefix to form an OFDM symbol. The resulting OFDM symbols are then added with AWGN noise vector that corresponds to the specified
On the receiver side, cyclic prefix is removed from the received OFDM symbol, DFT is performed and then the symbols are sent through a demapper for getting an estimate of the source symbols. The demapper is implemented by using a simple IQ detector that uses the minimum euclidean distance metric for demodulation. Finally, the symbol error rates are computed and compared against the theoretical symbol error rate curves for the respective modulations over AWGN. Simulated performance results are plotted in Figure 3.
Rate this article: Note: There is a rating embedded within this post, please visit this post to rate it.
Reference
Topics in this chapter
Orthogonal Frequency Division Multiplexing (OFDM) ● Introduction ● Understanding the role of cyclic prefix in a CP-OFDM system □ Circular convolution and designing a simple frequency domain equalizer □ Demonstrating the role of cyclic prefix □ Verifying DFT property ● Discrete-time implementation of baseband CP-OFDM ● Performance of MPSK-CP-OFDM and MQAM-CP-OFDM on AWGN channel ● Performance of MPSK-CP-OFDM and MQAM-CP-OFDM on frequency selective Rayleigh channel |
Books by the author
Wireless Communication Systems in Matlab Second Edition(PDF) Note: There is a rating embedded within this post, please visit this post to rate it. | Digital Modulations using Python (PDF ebook) Note: There is a rating embedded within this post, please visit this post to rate it. | Digital Modulations using Matlab (PDF ebook) Note: There is a rating embedded within this post, please visit this post to rate it. |
Hand-picked Best books on Communication Engineering Best books on Signal Processing |