请教各位高手帮忙翻译一下matlab程序!!!关于alamouti仿真的

请教各位高手帮忙翻译一下matlab程序!!!关于alamouti仿真的,第1张

h0=sqrt(0.5).*(randn(1,k/2)+j.*randn(1,k/2))

h1=sqrt(0.5).*(randn(1,k/2)+j.*randn(1,k/2))

% 以上两行:h0和h1为信道参数,是个瑞利衰落。

s0=(pskmod(S0,2))/sqrt(2)

s1=(pskmod(S1,2))/sqrt(2)

% 以上两行:对基带信号进行BPSK调制

R0=h0.*s0+h1.*s1

% MIMO发送端发出信号,发送天线0发出的信号

R1=-conj(s1).*h0+h1.*conj(s0)

% MIMO发送端发出信号,发送天线1发出的信号

for i=1:length(SNRindB)

i

snr=10^(SNRindB(i)/10)

sgma=sqrt(1/snr/2)

% 计算噪声的标准差

r0=(R0+sgma.*(randn(1,k/2)+j*randn(1,k/2)))

r1=(R1+sgma.*(randn(1,k/2)+j*randn(1,k/2)))

% r0 和 r1 为接收端接收加性白噪声的信号。

s_0=conj(h0).*r0+h1.*conj(r1)

s_1=conj(h1).*r0-h0.*conj(r1)

% 恢复出两个发送天线的发送信号

m0=pskdemod(s_0,2)

m1=pskdemod(s_1,2)

% 对两路信号进行BPSK解调

er0(i)=nnz(S0-m0)

er1(i)=nnz(S1-m1)

err(i)=er0(i)+er1(i)

% 求误码个数

end

semilogy(SNRindB,err/k, '-r+')

% 半对数轴画出误码率

grid on

xlabel('SNR, dB')

ylabel('BER')

hold on

阵列天线,可以提升无线通信系统的信噪比,这个不管是应用在发射端,还是在接收端都是如此

下面在一个散射环境下,分别将LOS环境,多径环境做了一些仿真比对

使用BPSK调制解调,SISO环境的性能图如下

下面仿真单发多收,LOS场景,接收天线是4天线ULA模型

可以看到性能增益大致是6dB左右,约等于10*log10(4),这个即阵列增益

下面仿真多发单收,LOS场景,发射天线是4天线ULA模型

一样的可以得到6dB = 10*log10(4)左右的增益,其中基站总功率保持和单天线发射一致

直接利用Beamforming的阵列增益,散射体只有1个

下面仿真4*4 MIMO场景的性能增益

可以看到,增益相比SISO大致为12dB = 10*log(4*4)

在多散射体环境中,信道会是多径的

仿真假设最大时延扩展较小,由多径带来的影响可见

采用4天线ULA接收,此时多径环境的性能变为

可以看到SIMO系统在多径环境下,不仅信噪比更好,而且下降趋势也不同,这个增益是来自于分集增益,

Alamouti 空时编码可以达到上面图的效果,当信道条件未知,空时编码可以最大化分集增益

可以看到MISO系统性能差于SIMO,这是仿真假定发射功率在多径分散,并且接收只有一个的结果,注意上图不是最优的情况

MIMO多径环境的仿真,常用富散射环境来表示,即散射体的数量大于发射端,接收端的阵列天线数目

利用MIMO的分集增益,可以得到

可以看到MIMO的性能,比SIMO稍微好点,因为这已经是接近4收系统的上限了,并且MIMO系统发射是使用的主径

基于此,MIMO系统可以通过增加流的数目,发射多层,空间复用最大传输4 Layer数据,最大化信道矩阵的秩


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/11421620.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存