1
$\begingroup$

I am trying to simulate an OFDM based system in MATLAB where the estimated channel in the reciever is fed back to transmitter. As a proof of concept I wanted to return the ideal channel. I used the following barebones code (not considering pilots, nulls or gaurdbands etc.,)

pathGains = 10.^(-(0:2:19)/10); % 10 taps channel
g = (randn(1,10) + 1i*randn(1,10)).*sqrt(pathGains*0.5); % Rayleigh
Xf = complex(randn(1,16),randn(1,16)); % random input for the ofdm
xt = ifft(ifftshift(Xf),16); 
yt = conv(g,xt); % really not sure about this
Yf = fftshift(fft(xt,16));
H = Yf./Xf; % estimated channel
G = fftshift(fft(g,16)); % ideal channel

My question is whether the above approach is correct. Especially regarding the convolution since fft essentially implies circular convolution. (When running the above code I get an all ones for H while G is different. Hence my doubt about the correctness.)

The above channel model assumes no doppler (the channel is LTI). If considering doppler I understand that each sample will have varying values for the taps (An $n\times 16$ matrix, $n$ being the number of samples). The channel output would be a superposition over the corrresponding input values. How would I consider the ideal channel for this case? (from the above $n\times 16$ matrix)

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.