您现在的位置:首页 >> 通信 >> 内容

基于大规模MIMO的MMSE-AMPT信号检测算法的误码率仿真

时间:2023/2/27 23:06:10 点击:

  核心提示:A426,包括程序操作录像...

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

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168