【多载波系统】基于多载波系统分析等比合并EGC,最大比合并MRC,正交恢复合并ORC以及最小均方误差合并MMSE的matlab仿真
1.軟件版本
MATLAB2019a
2.本算法理論知識
在傳統的多址接入方式中,常用的技術是FDM,即頻分多址技術。其主要功能就是將整個帶寬分為多個頻率互不重疊的子信道,然后單獨對每個信號進行獨立的調制。這種技術的特點是頻率上的互不重疊從而防止了信道間干擾,但這降低了頻譜利用率,浪費了大量的帶寬資源。針對這個問題,為了提高頻譜的利用率,可以考慮將頻譜進行重疊,但是為了防止互相干擾,必須讓每個子信道之間是正交的。從而發展處了OFDM技術,這就是多載波調制技術,即OFDM技術。
? ? ? ?在OFDM中,整個帶寬被分為N個正交子載波,每一個子載波的數據傳輸波特率為1/Ts,此外,相鄰兩個子載波之間的中心頻率間隔也為1/Ts,這就實現了子載波的正交性要求。同時,使用OFDM技術,其是將N個子載波進行同時傳輸,即并行傳輸的,這樣就能降低每個子載波的傳輸速率。所以OFDM技術可以將高速率傳輸變為N個低速率傳輸。這樣還大大降低了系統接收機的實現復雜性。此外,OFDM技術也是多載波CDMA技術的基礎,因此,在這里首先介紹OFDM技術。
?
? ? ? ?OFDM技術在接收端進行和發送相反的操作,將接收到的OFDM信號通過FFT傅里葉變換將其變為為頻域信號,子載波的幅度和相位被采集出來并轉換回數字信號。完整的OFDM系統的物理結構框圖如圖2.2所示:
?
??? 多載波CDMA技術的發送和接收原理框圖如下所示:
圖2 多載波CDMA發送框圖
圖3 多載波CDMA接收框圖
3.部分核心代碼
function ber=MRC(snr) Nt = 1; Nr = 1; p = 1; no_bit_sym = 1; no_it_x_SNR = 10000; tot_err_m1 = 0;for i=1:no_it_x_SNRX=(2*round(rand(Nt,1))-1);H=Cor_H(Nr,Nt,p);sig=sqrt(0.5/(10^(snr/10)));n=sig*(randn(Nr,Nt)+j*randn(Nr,Nt));R=H*X+n;s0=0;for n=1:Nrs0=conj(H(n,1))*R(n,1)+s0;endif(real(s0)>0)decoded=1;elsedecoded=-1;enderr_m1=sum(round(X')~=round(decoded));tot_err_m1=err_m1+tot_err_m1;end ber=tot_err_m1/(no_it_x_SNR); function ber = mc_cdma(snr,num_user,num_data)N = 512; % number of symbols in a single OFDM symbol GI = 80; % guard interval Mt = 1; % number of Tx antennas Mr = 1; % number of Rx antennas M = 8; % max constellation bit number num_subc = 8; % number of subcarriersmod_level = 2; spreadLength=8;% snr=0; en = 10^(snr/10); sigma = 1/sqrt(2*en);cSpread=[1 1 1 1 1 1 1 1;1 -1 1 -1 1 -1 1 -1;...1 1 -1 -1 1 1 -1 -1;1 -1 -1 1 1 -1 -1 1;...1 1 1 1 -1 -1 -1 -1;1 -1 1 -1 -1 1 -1 1;...1 1 -1 -1 -1 -1 1 1;1 -1 -1 1 -1 1 1 -1];multipath = [sqrt(0.1897) 0 sqrt(0.3785) 0 0 sqrt(0.2388) 0 0 0 0 sqrt(0.0951) 0 0 0 0 sqrt(0.06) 0 0 0 0 0 0 sqrt(0.0379)]; %% power multipath_channel0 = zeros(1,length(multipath));signal_tx = zeros(num_data*spreadLength/N,N + GI);for loop_user=1:num_usermsg = rand(num_data,1)>=0.5;code1 = [];trel = poly2trellis(6,[53 75]);code1 = [code1 convenc(msg,trel)];code = code1';if loop_user == 1msg_user1 = msg;code_user1 = code1;endnum_data1 = 2*num_data;[iout,qout] = qpsk(code,1,num_data1,mod_level);inputData = iout+i*qout; %???[S] = mc_spreading(inputData,1,num_data,cSpread(loop_user,:),spreadLength);for m=1:num_data*spreadLength/Nofdm_symbol((m-1)*(N+GI)+1:m*(N+GI)) = ifft_cp_tx_blk(S((m-1)*N+1:m*N),N,GI)*sqrt(N);endfor p = 1:(num_data*spreadLength/N) multipath_channel(p,:) = multipath.*(randn(1,length(multipath_channel0))+j*randn(1,length(multipath_channel0)))*sqrt(0.5);if loop_user==1multipath_channel_user1(p,:) = multipath_channel(p,:);endsignal_tx_p = filter(multipath_channel(p,:),[1],ofdm_symbol((N+GI)*(p-1)+1:(N+GI)*p));% passing through the multipath channelsignal_tx_loop(p,:) = signal_tx_p;endsignal_tx = signal_tx + signal_tx_loop; endnoise = sigma*(randn(num_data*spreadLength/N,N+GI) + j*randn(num_data*spreadLength/N,N+GI)); signal_rx = signal_tx + noise; y2 = []; for q =1:(num_data*spreadLength/N)rec_symbol = [];rec_symbol = [rec_symbol; fft_cp_rx_blk(signal_rx(q,:),N,GI)/sqrt(N)];rec_symbol2 = reshape(rec_symbol,Mt*N,1);h = [multipath_channel_user1(q,:),zeros(1,N+GI-length(multipath))];Hf1 = fft(h,N);for n = 1:N/spreadLengthy1=0;for m = 1:spreadLengthy1 = y1 + cSpread(1,m)*conj(Hf1((n-1)*spreadLength+m))*rec_symbol2((n-1)*spreadLength+m);endtemp(n) = y1;endy2 = [y2,temp]; endy = reshape(y2,1,num_data); idata = real(y); qdata = imag(y); y_demod = deqpsk(idata,qdata,1,num_data,mod_level); y_demod = y_demod'; tblen = 10; decoded1 = vitdec(y_demod,trel,tblen,'cont','hard'); [n1,r1] = biterr(decoded1(tblen+1:end),msg_user1(1:end-tblen,1)); ber = r1;4.仿真結論
圖.7 三種方式的誤碼率對比
??? 通過上面的討論分析,這里采用MMSE方式作為單用戶檢測方式。由此說明,在相同SNR的條件下,MMSE具有較好的性能,因此,在進行單用戶檢測的時候,采用MMSE均衡算法。
5.參考文獻
[1]Wenfeng Lin,Chen He.A low-complexity receiver for iterative parallel interference cancellation and decoding in MIMO–OFDM systems.AEU-International Journal of Electronics and Comm- unications, 2008,62(1,2):68-71.
[2]Merahi Bouziani,Ali Djebbari,Ahmed B.Djebbar,Mohammed F.Belbachir,Jean M.Rouvaen. MC-CDMA with exponential power profile in Nakagami fading channel.AEU-International Journal of Electronics and Communications,2005,59(6):359-361.
[3]Jinfang Zhang,Jon W.Mark,Xuemin(Sherman)Shen.An adaptive handoff priority scheme for wireless MC-CDMA cellular networks supporting real-time multimedia applications.Computer Communications,2005,28(10):1240-1250.
A01-34
總結
以上是生活随笔為你收集整理的【多载波系统】基于多载波系统分析等比合并EGC,最大比合并MRC,正交恢复合并ORC以及最小均方误差合并MMSE的matlab仿真的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql数据库角色的使用
- 下一篇: RBAC角色访问控制