資源描述:
《LTE下行鏈路OFDM系統(tǒng)的MATLAB實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、.clearall;%%%%%%%%%參數(shù)設置部分%%%%%%%%%%Nsp=52;%系統(tǒng)子載波數(shù)(不包括直流載波)Nfft=64;%FFT長度Ncp=16;%循環(huán)前綴長度Ns=Nfft+Ncp;%一個完整OFDM符號長度noc=53;%包含直流載波的總的子載波數(shù)Nd=6;%每幀包含的完整的OFDM符號數(shù)(不包括訓練符號)M1=4;%QPSKM2=16;%16-QAM調(diào)制sr=250000;%OFDM符號速率EbN0=0:2:30;%歸一化信噪比Nfrm=100;%每種信噪比下的仿真幀數(shù)ts=1/sr/Ns;%OFDM符號抽樣時間間隔t=0
2、:ts:(Ns*(Nd+1)*Nfrm-1)*ts;%抽樣時刻fd=100;%最大多普勒頻移h=rayleigh(fd,t);%生成單徑Rayleigh衰落信道*%訓練符號頻域數(shù)據(jù),采用802.11a中的長訓練符號數(shù)據(jù)Preamble=[11-1-111-11-1111111-1-111-11-11111...1-1-111-11-11-1-1-1-1-111-1-11-11-11111];Preamble1=zeros(1,Nfft);Preamble1(2:27)=Preamble(27:end);%訓練符號重排后的數(shù)據(jù)Preamble
3、1(39:end)=Preamble(1:26);preamble1=ifft(Preamble1);%訓練符號時域數(shù)據(jù)..preamble1=[Preamble1(Nfft-Ncp+1:end)preamble1];%加入循環(huán)前綴%%%%%%%%%%仿真循環(huán)%%%%%%%%%%forii=1:length(EbN0)%********************發(fā)射機部分*******************msg1=randsrc(Nsp,Nd*Nfrm,[0:M1-1]);%QPSK信息數(shù)據(jù)msg2=randsrc(Nsp,Nd*Nfrm
4、,[0:M2-1]);%16-QAM信息數(shù)據(jù)data1=pskmod(msg1,M1,pi/4);%QPSK調(diào)制data2=qammod(msg2,M2)/sqrt(10);%16-QAM調(diào)制并歸一化data3=zeros(Nfft,Nd*Nfrm);%根據(jù)FFT要求,對數(shù)據(jù)重排data4=zeros(Nfft,Nd*Nfrm);data3(2:27,:)=data1(27:end,:);data3(39:end,:)=data1(1:26,:);data4(2:27,:)=data2(27:end,:);data4(39:end,:)=d
5、ata2(1:26,:);cleardata1data2;%清除不需要的臨時變量data3=ifft(data3);%IFFT變換data4=ifft(data4);data3=[data3(Nfft-Ncp+1:end,:);data3];%加入循環(huán)前綴data4=[data4(Nfft-Ncp+1:end,:);data4];..spow1=norm(data3,'fro').^2/(Nsp*Nd*Nfrm);%計算數(shù)據(jù)符號能量spow2=norm(data4,'fro').^2/(Nsp*Nd*Nfrm);data5=zeros(Ns
6、,(Nd+1)*Nfrm);%加入訓練符號data6=data5;forindx=1:Nfrmdata5(:,(indx-1)*(Nd+1)+1)=preamble1.';data5(:,(indx-1)*(Nd+1)+2:indx*(Nd+1))=data3(:,(indx-1)*Nd+1:indx*Nd);data6(:,(indx-1)*(Nd+1)+1)=preamble1.';data6(:,(indx-1)*(Nd+1)+2:indx*(Nd+1))=data4(:,(indx-1)*Nd+1:indx*Nd);endclear
7、data3data4;data5=reshape(data5,1,Ns*(Nd+1)*Nfrm);%并串轉換data6=reshape(data6,1,Ns*(Nd+1)*Nfrm);sigma1=sqrt(1/2*spow1/log2(M1)*10.^(-EbN0(ii)/10));%根據(jù)EbN0計算噪聲標準差sigma2=sqrt(1/2*spow2/log2(M2)*10.^(-EbN0(ii)/10));forindx=1:Nfrmdd1=data5((indx-1)*Ns*(Nd+1)+1:indx*Ns*(Nd+1));%當前幀
8、的發(fā)射數(shù)據(jù)dd2=data6((indx-1)*Ns*(Nd+1)+1:indx*Ns*(Nd+1));hh=h((indx-1)*Ns*(Nd+1)+1:indx*Ns*(Nd