網(wǎng)站下拉菜單seo公司北京
目錄
1.算法仿真效果
2.算法涉及理論知識概要
3.MATLAB核心程序
4.完整算法代碼文件
1.算法仿真效果
matlab2022a仿真結(jié)果如下:
2.算法涉及理論知識概要
? ? ? ? 信道均衡(Channel equalization)是指為了提高衰落信道中的通信系統(tǒng)的傳輸性能而采取的一種抗衰落措施。它主要是為了消除或者是減弱寬帶通信時的多徑時延帶來的碼間串?dāng)_(ISI)問題。其機(jī)理是對信道或整個傳輸系統(tǒng)特性進(jìn)行補(bǔ)償,針對信道恒參或變參特性,數(shù)據(jù)速率大小不同,均衡有多種結(jié)構(gòu)方式。信道均衡技術(shù)(Channel equalization)是指為了提高衰落信道中的通信系統(tǒng)的傳輸性能而采取的一種抗衰落措施。它主要是為了消除或者是減弱寬帶通信時的多徑時延帶來的碼間串?dāng)_(ISI)問題。
? ? ? ?信號經(jīng)由發(fā)射機(jī)發(fā)射,射頻信號在空間中傳播(即無線信道中傳播),經(jīng)散射、折射、反射到達(dá)接收機(jī)后形成多徑傳輸,多徑傳輸信號會在信號接收機(jī)處疊加,接收信號與原信號相比其幅值與相位均會發(fā)生變化,其接收機(jī)信號強(qiáng)度和相位可用符合統(tǒng)計學(xué)分布的信道模型進(jìn)行描述,目前常用的信道模型主要包括:瑞麗信道模型、萊斯信道模型,兩者的定義如下:
1.瑞麗信道模型
? ? ? ?瑞麗信道模型適用于沒有直達(dá)波到達(dá)接收機(jī)的情況,也就是說,接收設(shè)備與發(fā)射設(shè)備之間不共視(視距外),適用于對流層散射等情況,該信道模型的概率分布函數(shù)符合瑞麗分布。
2.萊斯信道模型
? ? ? 與瑞麗模型相反,萊斯信道適用于存在直達(dá)波到達(dá)接收機(jī)的情況,即存在一條主路徑,通過主路徑傳輸過來被接收的信號為一個穩(wěn)定幅度Ak和相位φk,其余多徑傳輸過來的信號仍如“瑞利衰落概率模型”所述。
3.ZF均衡
? ? ? ZF均衡算法是一種根據(jù)峰值失真準(zhǔn)則推導(dǎo)而來的線性均衡算法。將OFDM系統(tǒng)接收端的頻域輸出方程組用矩陣表示為
Y=HX+W
? ? ? ?其中W為加性高斯白噪聲。為了得到發(fā)送端的發(fā)送信號X,最簡單的實現(xiàn)方法是將Y乘以矩陣的 逆,即:
? ? ? ?ZF算法有個很大的缺點,沒有對噪聲進(jìn)行消除,反而會放大噪聲,當(dāng)信噪比比較低時,性能會非常不好。
4. mmse
? ? ? mimo系統(tǒng)通過在不同天線上發(fā)送相互獨立的數(shù)據(jù)流顯著提高系統(tǒng)的頻譜效率,接收端可以采用線性或者非線性的方式進(jìn)行mimo信號的檢測。MMSE能夠最大化檢測后的SINR(Signal to Interference plus Noise Ratio,干擾信噪比,即期望信號與無用噪聲的比值)。即,MMSE檢測是期望最小化噪聲干擾。
3.MATLAB核心程序
.........................................................................%MMSEDFER_dfe = P_s*(U_dfe*U_dfe')+C_w;p_dfe = P_s^2*U_dfe*e_dfe;c_dfe_mmse_ff=R_dfe\p_dfe;c_dfe_mmse_fb = -c_dfe_mmse_ff'*U(:,1:k1);errors = 0;Symbols_dfe_mmse = zeros(Nbits,1);for ii_n = 0:Nbits-1%Decision variableSymbols_dfe_mmse_padded=[zeros(k1,1);Symbols_dfe_mmse]; Z = c_dfe_mmse_fb*Symbols_dfe_mmse_padded(ii_n+1:ii_n+length(c_dfe_mmse_fb),:) + c_dfe_mmse_ff'*Vec_2(1+ii_n*m:L_o+ii_n*m);dist = abs(Constellation - Z);[~,hard_dec] = min(dist);Symbols_dfe_mmse(1+ii_n) = Constellation(hard_dec);if(abs(Symbols_dfe_mmse(1+ii_n)-Vec_1(1+ii_n))==2)errors=errors+1;elseif(abs(Symbols_dfe_mmse(1+ii_n)-Vec_1(1+ii_n))>2)errors=errors+2;endendBER_MMSEDFE(ik) = BER_MMSEDFE(ik) + errors/(2*length(Vec_1));.........................................................................
figure;
semilogy(SNRs,BER_mmse,'-bs',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.0,0.0]);
hold on
semilogy(SNRs,BER_ZFDFE,'-mo',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.5,0.9,0.0]);
hold on
semilogy(SNRs,BER_MMSEDFE,'-r>',...'LineWidth',1,...'MarkerSize',6,...'MarkerEdgeColor','k',...'MarkerFaceColor',[0.9,0.9,0.0]);
grid on
xlabel('SNR (dB)')
ylabel('BER')
legend('MMSE','ZF-DFE','MMSE-DFE');
A535
4.完整算法代碼文件
V