1.算法仿真效果
matlab2022a仿真結(jié)果如下:
2.算法涉及理論知識(shí)概要
MIMO(Multiple-Input Multiple-Out-put)系統(tǒng)是一項(xiàng)運(yùn)用于802.11n的核心技術(shù)勺爱。802.11n是IEEE繼802.11bag后全新的無線局域網(wǎng)技術(shù)葛作,速度可達(dá)600Mbps祟偷。同時(shí)讥耗,專有MIMO技術(shù)可改進(jìn)已有802.11a/b/g網(wǎng)絡(luò)的性能。該技術(shù)最早是由Marconi于1908年提出的妻枕,它利用多天線來抑制信道衰落僻族。根據(jù)收發(fā)兩端天線數(shù)量粘驰,相對于普通的SISO(Single-Input Single-Output)系統(tǒng)屡谐,MIMO還可以包括SIMO(Single-Input Multi-ple-Output)系統(tǒng)和MISO(Multiple-Input Single-Output)系統(tǒng)述么。
MIMO 表示多輸入多輸出。讀/maimo/或/mimo/愕掏,通常美國人前者度秘,英國人讀后者,國際上研究這一領(lǐng)域的專家較多的都讀讀/maimo/饵撑。通常用于 IEEE 802.11n剑梳,但也可以用于其他 802.11 技術(shù)。MIMO 有時(shí)被稱作空間多樣滑潘,因?yàn)樗褂枚嗫臻g通道傳送和接收數(shù)據(jù)垢乙。只有站點(diǎn)(移動(dòng)設(shè)備)或接入點(diǎn)(AP)支持 MIMO 時(shí)才能部署 MIMO。
2.1Alamouti
Alamouti編碼的基礎(chǔ)場景是兩根發(fā)射天線语卤,一根接收天線追逮,并且發(fā)射機(jī)不知道信道,那么該如何發(fā)射粹舵。實(shí)現(xiàn)方式:一次性發(fā)送兩個(gè)數(shù)據(jù)钮孵。因?yàn)橹挥幸桓邮仗炀€,所以要再發(fā)送一次眼滤,接收端才能正常接收巴席。
兩個(gè)信號(hào)都分別經(jīng)過了兩個(gè)信道,獲得了分集的效果诅需。方程改寫為:
Alamouti編碼的巧妙之處在于不知道信道的情況下漾唉,將信道矩陣正交化。下面再解方程:
Alamouti編碼在空時(shí)編碼STC領(lǐng)域廣泛應(yīng)用堰塌,Alamouti編碼也叫做STBC(空時(shí)塊碼)
2.2MRC
最大比合并(Maximal Ratio Combining赵刑,MRC)是分集合并技術(shù)中的最優(yōu)選擇,相對于選擇合并和等增益合并可以獲得最好的性能蔫仙,其性能提升是由陣列增益( 陣列增益即發(fā)射的信號(hào)的功率增益料睛,是通過發(fā)送機(jī)和/或接收機(jī)的多個(gè)天線而實(shí)現(xiàn)功率增益的,一般在LTE中摇邦,增加一個(gè)天線會(huì)有3db的增益)帶來的更高的信噪比恤煞,進(jìn)而帶來更好的誤碼率特性。
3.MATLAB核心程序
snr21=0:2:20;
Nr=2;
p=1;
for i=1:length(snr21)
ber_m1_mrc21(i)=MRRC1xNr_Cor(snr21(i),Nr,p);
end
semilogy(snr21,ber_m1_mrc21,'-ro',...
'LineWidth',2,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.0,0.9,0.0]);
hold on
Nr=2;
p=0.95;
for i=1:length(snr21)
ber_m1_mrc21(i)=MRRC1xNr_Cor(snr21(i),Nr,p);
end
semilogy(snr21,ber_m1_mrc21,'-bs',...
'LineWidth',2,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.2,0.0]);
hold on
Nr=2;
p=0.8;
for i=1:length(snr21)
ber_m1_mrc21(i)=MRRC1xNr_Cor(snr21(i),Nr,p);
end
semilogy(snr21,ber_m1_mrc21,'-m^',...
'LineWidth',2,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.0,0.9,0.0]);
hold on
Nr=2;
p=0.6;
for i=1:length(snr21)
ber_m1_mrc21(i)=MRRC1xNr_Cor(snr21(i),Nr,p);
end
semilogy(snr21,ber_m1_mrc21,'-gx',...
'LineWidth',2,...
'MarkerSize',7,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.5,0.0]);
xlabel('SNR(dB)');
ylabel('BER');
legend('Nr=2 p=1','Nr=2 p=0.95','Nr=2 p=0.8','Nr=2 p=0.6');
hold off