Please tell me is this correct.. To add precoding block in between interleaver and modulator in OFDM? Serial to parallel transmission in OFDM?
2 views (last 30 days)
Show older comments
This is the code. I have tried to do linear precoding...
%input
msg = round(rand(1,nBitPerSym*nSym));
% trellis
trel = poly2trellis(3,[7 5]);
% % % convolution encoder
code = convenc(message,trel);
% state
st2 = 4831;
inter1 = randintrlv(code,st2);
%precoding
N=nSym ;
x = zeros(2,N);
x1 = reshape(inter1,2,length(inter1)/2);
x2 =[conj(double(x1(2,:))); conj(double(x1(1,:)))];
x=[x1;x2]
[rowSize, colSize] = size(x);
% Converting two rows into one concatenated row.
p_Data = reshape(x,rowSize*colSize,1);
p_Data = sqrt(2) * p_Data;
y1=inter1./p_Data';
Then this y1 is QAM modulated and further OFDM is done...
Please tell me whether this is correct
Also serial to parallel conversion in ofdm is
for ii = 1:length(EbN0dB)
% Transmitter
% MODULATE
h1 = modem.qammod(16);
qm1 = modulate(h1, inter);
%ipBit1 = inter1(1:length(msg)) ;
% MODULATE
%ipMod1 = 2*ipBit1-1;
h2 = modem.qammod(16);
qm = modulate(h2, inter1);
% % combine
ipMod1=qm;
ipMod = reshape(ipMod1,nBitPerSym,2*nSym).'; % group into multiple streams
.
.
end
does this reshaping is the actual serial to parallel transmission block in OFDM?
0 Comments
Answers (0)
See Also
Categories
Find more on OFDM in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!