1.完整项目描述和程序获取
>面包多安全交易平台:https://mbd.pub/o/bread/ZJWbkpdv
>如果链接失效,可以直接打开本站店铺搜索相关店铺:
>如果链接失效,程序调试报错或者项目合作也可以加微信或者QQ联系。
2.部分仿真图预览
3.算法概述
MIMO(Multiple-Input Multiple-Output)技术,即多入多出技术,指在发射端和接收端分别使用多个发射天线和接收天线,使信号通过发射端与接收端的多个天线传送和接收,从而改善通信质量。它能充分利用空间资源,通过多个天线实现多发多收,在不增加频谱资源和天线发射功率的情况下,可以成倍的提高系统信道容量,显示出明显的优势、被视为下一代移动通信的核心技术。
在4G通信中,MIMO天线数量较少,多为4个或者8个,天线数量少就限制了4G网络的通信容量。5G在4G研究的基础上,提出了大规模MIMO(massive MIMO)的概念,就是在基站端安装几百根天线(128根、256根或者更多),从而实现几百个天线同时发数据,而理论上的通信容量则是无限的。
大规模MIMO技术指基站天线数目庞大,而用户终端采用单天线接收的通信方式,可作为目前移动通信系统的一种平滑的过渡方式,即不必大面积更新用户的终端设备,通过对基站的改造,提高系统的频谱利用率。
4.部分源码
n=32;
m=64;
SNR_range=[0:2:20];
count=0;
for SNR=SNR_range
for monte=1:5000
[SNR,monte]
H=randn(m,n); %channel matrix
A=7;% size of constellations
u=1*randi([-A,A],n,1);% symbols in users
sigmas2=A*(A+1)/3; % theoretical signal power;
sigma2=sigmas2/((10^(SNR/10))); % noise power
y=H*u+sqrt(sigma2)*randn(m,1); %the received signal
for j=1:3
switch j
case 1 % MMSE
xhat=round(pinv([H;sigma2/sigmas2*eye(n)])*[y;zeros(n,1)]);
x_mmse=xhat;
case 2 % MMSE-AMPT
yp=y-H*x_mmse; %yp is the difference vector
xhat=x_mmse+AMPT(yp,H,.5,.5); % AMP with ternery priors
case 3 % MMSE-AMPG
yp=y-H*x_mmse;
xhat=x_mmse+AMPG(yp,H,sigmas2/20,.5);% AMP with Gaussian priors;the signal power is unknown
end
uhat=max(min(xhat,A*ones(n,1)),-A*ones(n,1));%estimated symbols
ser(j,monte)=sum(u~=uhat)/n; % symbol error rate
end
end
count=count+1;
SER(:,count)=mean(ser,2);
end
figure
semilogy(SNR_range,SER(1,:),'-bs',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.0,0.0]);
hold on;
semilogy(SNR_range,SER(2,:),'-mo',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.5,0.9,0.0]);
hold on;
semilogy(SNR_range,SER(3,:),'-r>',...
'LineWidth',1,...
'MarkerSize',6,...
'MarkerEdgeColor','k',...
'MarkerFaceColor',[0.9,0.9,0.0]);
hold on;
grid on;
legend('MMSE','MMSE-AMPT', 'MMSE-AMPG');
xlabel('SNR/dB');ylabel('SER');
A_426