Experiment: 7 Object
Experiment: 7 Object
EXPERIMENT : 7
OBJECT:
Simulation of Multiple-Input-Multiple-Output (MIMO) systems, which use multiple antennas at
the transmitter and receiver ends of a wireless communication system.
INTRODUCTION:
This demo introduces Multiple-Input-Multiple-Output (MIMO) systems, which use multiple
antennas at the transmitter and receiver ends of a wireless communication system. MIMO
systems are increasingly being adopted in communication systems for the potential gains in
capacity they realize when using multiple antennas. Multiple antennas use the spatial dimension
in addition to the time and frequency ones, without changing the bandwidth requirements of the
system.
For a generic communications link, this demo focuses on transmit diversity in lieu of traditional
receive diversity. Using the flat-fading Rayleigh channel, it illustrates the concept of Orthogonal
Space-Time Block Coding, which is employable when multiple transmitter antennas are used. It
is assumed here that the channel undergoes independent fading between the multiple transmit-
receive antenna pairs.
For a chosen system, it also provides a measure of the performance degradation when the
channel is imperfectly estimated at the receiver, compared to the case of perfect channel
knowledge at the receiver.
Contents
PART 1: Transmit Diversity vs. Receive Diversity
PART 2: Space-Time Block Coding with Channel Estimation
PART 3: Orthogonal Space-Time Block Coding and Further Explorations
PART 1: Transmit Diversity vs. Receive Diversity
Using diversity reception is a well-known technique to mitigate the effects of fading over a
communications link. However, it has mostly been relegated to the receiver end. In [1], Alamouti
proposes a transmit diversity scheme that offers similar diversity gains, using multiple antennas
at the transmitter. This was conceived to be more practical as, for example, it would only require
multiple antennas at the base station in comparison to multiple antennas for every mobile in a
cellular communications system.
This section highlights this comparison of transmit vs. receive diversity by simulating coherent
binary phase-shift keying (BPSK) modulation over flat-fading Rayleigh channels. For transmit
diversity, we use two transmit antennas and one receive antenna (2x1 notationally), while for
receive diversity we employ one transmit antenna and two receive antennas (1x2 notationally).
The simulation covers an end-to-end system showing the encoded and/or transmitted signal,
channel model, and reception and demodulation of the received signal. It also provides the no-
diversity link (single transmit- receive antenna case) and theoretical performance of second-order
diversity link for comparison. It is assumed here that the channel is known perfectly at the
receiver for all systems. We run the simulation over a range of Eb/No points to generate BER
results that allow us to compare the different systems.
We start by defining some common simulation parameters
frmLen = 100; % frame length
numPackets = 1000; % number of packets
EbNo = 0:2:20; % Eb/No varying to 20 dB
N = 2; % maximum number of Tx antennas
BANSAL INSTITUTE OF SCIENCE AND TECHNOLOGY,BHOPAL
0112EC071102 EC-2 (BIST)
% Received signals
% for uncoded 1x1 system
BANSAL INSTITUTE OF SCIENCE AND TECHNOLOGY,BHOPAL
0112EC071102 EC-2 (BIST)
% Determine errors
error11(packetIdx) = biterr(demod11, data);
error21(packetIdx) = biterr(demod21, data);
error12(packetIdx) = biterr(demod12, data);
end % end of FOR loop for numPackets
% Plot results
semilogy(EbNo(1:idx), BER11(1:idx), 'r*', ...
EbNo(1:idx), BER21(1:idx), 'go', ...
EbNo(1:idx), BER12(1:idx), 'bs', ...
EbNo(1:idx), BERthy2(1:idx), 'm');
legend('No Diversity (1Tx, 1Rx)', 'Alamouti (2Tx, 1Rx)',...
'Maximal-Ratio Combining (1Tx, 2Rx)', ...
'Theoretical 2nd-Order Diversity');
drawnow;
end % end of for loop for EbNo
to every packet [3]. It is assumed that the channel remains unchanged for the length of the packet
(i.e., it undergoes slow fading).
A simulation similar to the one described in the previous section is employed here, which leads
us to estimate the BER performance for a space-time block coded system using two transmit and
two receive antennas.
Again we start by defining the common simulation parameters
frmLen = 100; % frame length
maxNumErrs = 300; % maximum number of errors
maxNumPackets = 3000; % maximum number of packets
EbNo = 0:2:12; % Eb/No varying to 12 dB
N = 2; % number of Tx antennas
M = 2; % number of Rx antennas
pLen = 8; % number of pilot symbols per frame
W = hadamard(pLen);
pilots = W(:, 1:N); % orthogonal set per transmit antenna
and set up the simulation.
% Seed states for repeatability
seed = [98765 12345]; randn('state', seed(1)); rand('state', seed(2));
% Channel Estimation
% For each link => N*M estimates
for n = 1:N
H_e(1, n, :) = (r(1:pLen, :).' * pilots(:, n))./pLen;
end
% assume held constant for the whole frame
H_e = H_e(ones(frmLen, 1), :, :);
% Determine errors
numPackets = numPackets + 1;
totNumErr22_e = totNumErr22_e + biterr(demod22_e, data);
totNumErr22 = totNumErr22 + biterr(demod22, data);
end % end of FOR loop for numPackets
% Plot results
semilogy(EbNo(1:idx), BER22_e(1:idx), 'ro');
semilogy(EbNo(1:idx), BER22(1:idx), 'g*');
legend(['Channel estimated with ' num2str(pLen) ' pilot symbols/frame'],...
'Known channel');
drawnow;
end % end of for loop for EbNo
Since these results take some time to generate, we load the results from a prior simulation. The
functional script OSTBC4M.m is included, which, along with MRC1M.m and OSTBC2M.m,
was used to generate these results. The user is urged to use these scripts as a starting point to
study other codes and systems.
load ostbcRes.mat;
% Plot results
semilogy(EbNo, ber11, 'r*', EbNo, ber41, 'ms', EbNo, ber22, 'c^', ...
EbNo, ber14, 'ko', EbNo, BERthy4, 'g');
legend('No Diversity (1Tx, 1Rx), BPSK', 'OSTBC (4Tx, 1Rx), QPSK', ...
'Alamouti (2Tx, 2Rx), BPSK', 'Maximal-Ratio Combining (1Tx, 4Rx), BPSK', ...
'Theoretical 4th-Order Diversity, QPSK');
RESULT
Simulation of Multiple-Input-Multiple-Output (MIMO) systems, which use multiple antennas at
the transmitter and receiver ends of a wireless communication system. Has been done