Three different detectors for recovering the transmitted data symbols and
evaluate their performance for Rayleigh fading and additive white Gaussian noise.
Matlab coding
Implement the three types of detectors.
Nt = 2; % No. of transmit antennas
Nr = 2; % No. of receive antennas
s = [1 1 -1 -1; 1 -1 1 -1]; % Reference codebook
H = (randn(Nr,Nt) + 1 i*randn(Nr,Nt))/sqrt(2); % Channel coefficients
s = 2*randi([O 1],Nt,1) - 1 ; % Binary transmitted symbols
No = 0.1; % Noise Noiance
noise = sqrt(No/2)*(randn(Nr,1) + 1i*randn(Nr,1)); % AWGN noise
y = H*s + noise; % Inputs to the detectors
disp([' The transmitted symbols are: ',num2str(s' ) ])
% Maximum Likelihood Detector:
mu = zeros(1,4);
for i = 1 :4
mu(i) = sum(abs(y - H*S(:,i)). ^2); % Euclidean distance metric
end
[Min idx] = min(mu);
s_h = S(:,idx);
disp([' The detected symbols using the ML method are: ' ,num2str(s_h' ) ] )
% MMSE Detector:
wl = (H*H• + No*eye(2))A(-l) * H(:,1); % Optimum weight vector 1
w2 = (H*H• + No*eye(2))A(-l) * H(:,2); % Optimum weight vector 2
W = [wl w2];
s_h = W' *Yi
for i = 1 :Nt
if s_h(i) >= 0
s_h(i) = 1;
else
s_h(i) = -1;
end
end
disp([' The detected symbols using the MMSE method are: ',num2str(s_h')])
% Inverse Channel Detector:
s_h = H\y;
for i = 1 :Nt
if s_h(i) >= 0
s_h(i) = 1;
else
s_h(i) = -1;
end
end
disp([' The detected symbols using the ICD method are: ',num2str(s_h' ) ]
Output,
>> Round 1
The transmitted symbols are: 1 1
The detected symbols using the ML method are: 1 1
The detected symbols using the MMSE method are: 1 1
The detected symbols using the ICD method are: 1 1
>> Round 2
The transmitted symbols are: 1 -1
The detected symbols using the ML method are: 1 -1
The detected symbols using the MMSE method are: 1 -1
The detected symbols using the ICD method are: 1 -1
>> Round 3
The transmitted symbols are: -1 1
The detected symbols using the ML method are: -1 1
The detected symbols using the MMSE method are: -1 1
The detected symbols using the ICD method are: -1 1
Reference,
1. <<Contemporary Communication System using MATLAB>> - John G. Proakis