MMSE法用于MIMO系统
生活随笔
收集整理的這篇文章主要介紹了
MMSE法用于MIMO系统
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
MMSE法用于MIMO系統
- MMSE方法用于MIMO系統程序如下:
之前講到過迫零響應法(ZF)在MIMO系統中的應用,而另外一種均衡方法也常常用在不理想傳輸信道中,這就是最小誤差法(Minimum Mean Square Error,簡稱MMSE)。
MMSE方法用于MIMO系統程序如下:
去博客設置頁面,選擇一款你喜歡的代碼片高亮樣式,下面展示同樣高亮的 代碼片.
clear all; close all; SNR_dB=0:2:20; K=4; %發射天線數量 L=4; %接收天線數量 Es=1; %把信號能量設置為1 len_SNR=length(SNR_dB); N0_dB=10*log10(K*Es)-SNR_dB; %信噪比用對數形式表示時,SNR_dB=S_dB-N_dB,注意這里的信號功率要乘以K,因為有K路發射信號 N0=10.^(N0_dB/10); %實際噪聲功率 count=zeros(1,len_SNR); %錯誤接受碼元計數 BER=zeros(1,len_SNR); %誤碼率 N_block=5000; %信道最大塊數 N_sym0=100; %每根天線處理的QPSK符號數 N_err=2000; %最小錯誤碼元數 n_init=1; %信噪比指針 while (n_init<=len_SNR)&&(count(len_SNR)<N_block)H=sqrt(0.5)*(randn(L,K)+1i*randn(L,K)); %產生L、K路QPSK信號,H信道沖激響應Dt=round(rand(K,N_sym0)+1i*rand(K,N_sym0)); %發送K路QPSK信號modDt=sqrt(Es/2)*(Dt*2-(1+1i));HS=H*modDt; %接收端信號Noise=sqrt(0.5)*(randn(L,N_sym0)+1i*randn(L,N_sym0)); %L路接收端的噪聲for n=n_init:len_SNRcount(n)=count(n)+1n0=N0(n);RxDt=HS+sqrt(n0)*Noise; %接收信號(考慮L路噪聲影響)W=inv(H'*H+n0*eye(K))*H'; %最小均方誤差法求逆矩陣zt=W*RxDt;estDt=(sign(real(zt))+1i*sign(imag(zt))+1+1i)/2;err=abs(round(Dt-estDt)).^2;BER(n)=BER(n)+sum(sum(err));end; if mean(BER(n_init))>=N_err n_init=n_init+1;end; end; format short e; %format short e格式控制指令,表示5字長浮點數 BER=BER./(2*K*N_sym0*count); semilogy(SNR_dB, BER, '-*'); strtitle=['MMSE for a ',num2str(K),'x',num2str(L),' QPSK System']; %strtitle表示字符標題 title(strtitle); xlabel('Rx SNR per antenna (dB)'); ylabel('BER'); grid on;總結
以上是生活随笔為你收集整理的MMSE法用于MIMO系统的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Adobe illustrator 调整
- 下一篇: 牛客网题目——不用四则运算符号,计算两个