How to do BPSK modulation using Rayleigh fadding channel?

16 ビュー (過去 30 日間)
sangeet sagar
sangeet sagar 2018 年 5 月 11 日
コメント済み: sangeet sagar 2018 年 5 月 12 日
Given a signal y= h(x) + n where n is AWGN noise and x is binary signal, h is complex channel constant. We need to determine y and then obtain x from it using Cholaski Inverse Method.
clear
N = 10^6 % number of bits or symbols
% Transmitter
ip = rand(1,N)>0.5; % generating 0,1 with equal probability
s = 2*ip-1; % BPSK modulation 0 -> -1; 1 -> 0
Eb_N0_dB = [-3:35]; % multiple Eb/N0 values
for ii = 1:length(Eb_N0_dB)
n = 1/sqrt(2)*[randn(1,N) + j*randn(1,N)]; % white gaussian noise, 0dB variance
h = 1/sqrt(2)*[randn(1,N) + j*randn(1,N)]; % Rayleigh channel
% Channel and noise Noise addition
y = h.*s + 10^(-Eb_N0_dB(ii)/20)*n;
% equalization
yHat = y./h;
% receiver - hard decision decoding
ipHat = real(yHat)>0;
% counting the errors
nErr(ii) = size(find([ip- ipHat]),2);
end
In the line
yHat = y./h;
it is a equalization process done by simple method. I need to do the same using Cholaski Decomposition. Any help will be highly apprecialbe.

回答 (1 件)

possibility
possibility 2018 年 5 月 12 日
I am not sure how this is related to Cholesky decomposition. But let me describe a solution for it.
Assume, y=hs+n where h is the 1-by-N channel vector. If you know the channel at the receiver, you can do the following:
h'y=h'(hs+n)
h'y=h'hs + h'n % Since h'h is a N-by-N square matrix, inverse can be taken now. Multiply both sides with inv(h'h)
inv(h'h) h' y = inv(h'h) h'hs + inv(h'h)h'n
inv(h'h) h' y = s + inv(h'h)h'n = yhat
Hence, multiplying the received signal, y, with inv(h'h) h' results in the noisy version of s.
You can do it as follows:
yhat = inv(h'h)*h'*y
I couldn't see now whether it has to be "transpose" or "conjugate transpose". But this method is well-known as least squares.
  1 件のコメント
sangeet sagar
sangeet sagar 2018 年 5 月 12 日
The noisy signal obtained at the receiving end( as named yHat) is nxn matrix whereas the sinal sent by us over the channel is a 1x n matrix so how can we convert the obtained yHat to 1xn

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeBPSK についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by