WHAT IS THE USE OF THIS FUNCTION IN THIS OFDMA SIMULATION CODE "ofdma_mapping"
Afficher commentaires plus anciens
PLEASE TELL ME THE USE AND HOW TO BUILd THE FUNCTION, "ofdma_mapping",in this code, THAT CAN DO THE WORK OF "q_out=ofdma_mapping(y,ylen)"
Here is the code. Please help and So many thanks in advance.
% Number of Subcarriers
NS=512;
% Input Generation
x=rand(1,NS)>0.5;
fftlength=512;
nd=6;
BW=5e6;
FS=2*BW;%Sampling Frequency
% Conversion of data from serial to parallel
p=series2parallel(x,NS);
% M-ary Modulaton of PSK & QAM
M=2;
X=0;
for Count1=2:1:7;
if(M==2||M==4||M==16||M==64)
M=M+X
%M-ary modulation for producing y
if(M<=8)
%Modulation for PSK
y=modulate(modem.pskmod(M),p);
else
%Moodulation for QAM
end
ylen=length(y);
%Applying Mapping
q_out=ofdma_mapping(y,ylen);
%Apply IFFT operation
outifft=ifft(q_out);
%Cyclic Prefix Addition
cp(count1,:)=cyclicpad(outifft,64);
%Length of CP
cplength=length(cp);
%Conversion of data from parallel to serial
out=reshape(cp(count1,:),1,cplength);
%Signal transmits through AWGN channel
ynoisy=awgn(out,100,'measured');
%Addition of relay fading
c=rayleighchan(1/1000,100,[0 2e-5],[0 -9]);
rf=filter(c,ynoisy);
%Conversion of data from serial to parallel
p2=series2parallel(rf,cplength);
re_par=real(p2);
%Remove cyclic prefix
rcp(count1,:)=decyclicpad(p2,64);
rcplength=length(rcp);
%FFT
zzfft=fft(rcp(count1,:),fftlength);
%Apply Demapping
qq_out=ofdma_demapping(zzfft,fftlength);
outfft=qq_out;
%%Applung IFFT
%zfft=ifft(qq_out);
if(M<=8)
%Demodulation of PSK at Reciever
z=demodulate(modem.pskdemod(M),outfft);
else
%Demodulation of QAM at reciever
z=demodulate(modem.qamdemod(M),outfft);
end
%conversion of data from parallel to serial
xdash=reshape(z,1,NS)
berr=0;
for a=1:1:NS;
if(xdash(:,a)==x(:,a))
berr=0;
else
berr=berr+1;
end
end
tberr(count1,:)=berr;
Eb_No=0:1:NS-1;
Eb_No=0.4*Eb_No;
if(M<=8)
ber(count1,:)=berawgn(Eb_No,'psk',M,'nondiff');
Pe(count1,:)=erfc(sqrt(0.9*Eb_No)*sin(pi/M));
else
ber1(count1,:)=berawgn(0.9*Eb_No,'qam',M);
Pe(count1,:)=2*((1-(1/sqrt(M)))*erfc(sqrt((1.5*Eb_No)/(M-1))));
end
for init=1:1:32
switch M
end
end
end
M=2^count1;
end
figure()
%Plot SNR and BER
semilogy(Eb_No,ber(2,:),'k',Eb_No,ber(3,:),'g',Eb_No,ber1(5,:),'b',Eb_No,ber1(7,:),'r');
axis([ 25 0.0001 1]);
xlabel('SNR[dB]')
ylabel('BER')
legend('BPSK','QPSK','16-QAM','64-QAM')
figure()
%Plot Error Probability
semilogy(Eb_No,Pe(2,:),'k',Eb_No,Pe(3,:),'r',Eb_No,Pe(5,:),'b',Eb_No,Pe(7,:),'g');
axis([0 50 0.0001 1]);
xlabel('SNR[dB]')
ylabel('Probability of Error')
legend('BPSK','QPSK','16-QAM','64-QAM')
title('OFDMA')
h=spectrum.periodogram;
figure()
HS=psd(h,outifft,'SpectrumType','twosided','NFFT',NS,'FS',FS);
plot(HS)
xlabel('Sampling Frequency (2 * BW)in MHz')
ylabel('Power Spectral Density [dBm/Hz]')
title('OFDMA')
grid off;
Réponses (1)
Walter Roberson
le 4 Mai 2013
0 votes
6 commentaires
Walter Roberson
le 18 Juin 2013
They appear to be having a temporary problem with that system.
Look for OFDM_mapping.rar such as at http://www.pudn.com/downloads54/sourcecode/math/detail187754.html
ali azan
le 9 Déc 2015
in this mapping function how i can use ylen parameter
Walter Roberson
le 10 Déc 2015
I only see the source at pudn.com now, and that site requires a paid membership to download from. I do not know what the routine is intended to do.
fikri aslama
le 16 Mar 2018
how to download this file?
Eduardo Chancay
le 9 Déc 2020
The mapping function on pudn has other parameter. How can I use in the code?
Catégories
En savoir plus sur Propagation and Channel Models dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!