初识MIMO(四):MIMO的接收端检测技术及其仿真
初识MIMO(四):MIMO的接收端检测技术及其仿真
零 代码地址
https://github.com/liu-zongxi/MIMO_simulation
请大家看完觉得有用别忘了点赞收藏,github项目给star哦
一. 接收端检测技术概念
我们之前的仿真已经包含了SISO,MISO,SIMO,而检测技术就是MIMO中非常重要的一个技术,他的目的是从接收端提取出每一根发射天线的信号,此时,别的信号成为了干扰,也就第一次有了信干噪比的概念。
二. 仿真
1.代码展示
%------------------ZF和MMSE检测算法----------------%
%-----------------------author:lzx-------------------------%
%-----------------------date:17点18分-----------------%
%% 参数设置
NT = 4;
NR = 4; % 天线数
L_frame = 100; %帧长度
N_iter = 1000; % 循环次数
SNRs_dB = 3:1:20; % 信噪比
SNRs = 10.^(SNRs_dB./10);
N_SNR = length(SNRs);
Nmod = 2; % QPSK
N_case = 3; % 不同类型
BERs = zeros(N_case, N_SNR);
gss = ["-kx" "-^" "-ro" "-b>" "-g<" "-m+"]; % 画图图像,注意使用双引号
%% 主函数
for icase = 1:N_casegs = gss(icase);if icase == 1W_formula = @(Hiid, sigma, NT) Hiid'*inv(Hiid*Hiid');elseif icase == 2W_formula = @(Hiid, sigma, NT) Hiid'*inv(Hiid*Hiid'+2*sigma.^2*diag(ones(1,NT)));elseif icase == 3W_formula = @(Hiid, sigma, NT) inv(Hiid);endfor isnr = 1:N_SNRSNR = SNRs(isnr);n_biterror = 0;for iiter = 1:N_iter% 生成数据frame_origin = randi([0,1],L_frame,Nmod*NT);% QPSK调制frame_mod=QPSKMod(frame_origin,L_frame, NT);% 生成信道,SIMO有NR个信道Hiid = (randn(NR,NT)+1j*randn(NR,NT))./sqrt(2);% AWGN噪声sigma = sqrt(1/(2*SNR));noise = sigma*(randn(L_frame, NR) + 1j*randn(L_frame, NR));% 接收信号y = frame_mod*Hiid+noise;% 信号检测W = W_formula(Hiid, sigma, NT);x_tilde = y*W;% 解调frame_demod = QPSKDemod(x_tilde,L_frame,NT);% 计算误码率n_biterror_tmp = sum(sum(abs(frame_demod - frame_origin)))n_biterror = n_biterror + n_biterror_tmp;endBERs(icase, isnr) = n_biterror/(N_iter*L_frame*Nmod*2);semilogy(SNRs_dB,BERs(icase,:),gs);hold on;axis([SNRs_dB([1 end]) 1e-6 1e0])end
end
2.一些思考
- ZF和MMSE的目的是什么?
这个问题是绕了我很久的,直接×H的逆矩阵不就完了
后来我明白了ZF检测其实就是乘以了一个逆矩阵,不过他是“伪逆矩阵”
我在《通信新读》中看到了对ZF和MMSE的不同理解
可以看到MCR的目标是最大化MCR,ZF的目标是最大化SIR,MMSE的目标是最大化SINR
- 对于MIMO如何处理矩阵问题
这也是我在这个仿真中发现的,不能再借用所谓的.*了,会把逻辑搞的很混乱,后面会改为标准的矩阵运算
三.补充
检测算法是很博大精深的,后面有机会在补充别的算法
初识MIMO(四):MIMO的接收端检测技术及其仿真相关推荐
- m基于matlab的协作mimo分布式空时编码技术的仿真
目录 1.算法描述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法描述 基于matlab的协作mimo分布式空时编码技术的仿真,包括规则LDPC级联D-STBC,M ...
- 【分布式空时编码+LDPC】协作MIMO中分布式空时编码和LDPC编译码技术的仿真
1.软件版本 matlab2013b 2.部分源码 clc; close all; clear all; warning off;Frame_Length = 120; %每次仿真数据个数 Error ...
- 恶意软件检测技术综述
2018体系结构安全大作业 申明:转载请注明出处 恶意软件检测技术综述 摘要 本文介绍了恶意软件.恶意软件探测技术和探测器的定义,以及研究它们的现实意义.概述了恶意软件探测技术的具体分类和各个类别的研 ...
- 初识MIMO(三):天线分集技术及其仿真
初识MIMO(三):天线分集技术及其仿真 零 代码地址 https://github.com/liu-zongxi/MIMO_simulation 请大家看完觉得有用别忘了点赞收藏,github项目给 ...
- [系统安全] 四十四.APT系列(9)Metasploit技术之基础用法万字详解及防御机理
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- [系统安全] 三十三.恶意代码检测(3)基于机器学习的恶意代码检测技术
您可能之前看到过我写的类似文章,为什么还要重复撰写呢?只是想更好地帮助初学者了解病毒逆向分析和系统安全,更加成体系且不破坏之前的系列.因此,我重新开设了这个专栏,准备系统整理和深入学习系统安全.逆向分 ...
- 我在旷视研究院做检测 | 技术头条
作者 | 俞刚,旷视研究院Detection组负责人.2014年博士毕业于新加坡南洋理工大学,加入旷视.主要负责检测,分割,跟踪,骨架,动作行为等方面的研究以及算法落地工作.俞刚博士带队参加 2017 ...
- AOI光学自动检测技术 | 基本原理与设备构成
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 一,引言: AOI(automatically optical i ...
- 基于深度学习的目标检测技术的演进:从R-CNN到Faster R-CNN
导语 什么是Objection Detection?就是在给定的图片中精确的找到物体所在位置,并且标注出物体的类别.目标检测要解决的问题就是物体在哪里?是什么?这样的问题.然而,这个问题并不是那么容易 ...
最新文章
- GitHub上线Trending功能,帮你轻松找到有潜力的开源项目
- 此异常最初是在此调用堆栈中引发的:_【8】进大厂必须掌握的面试题Java面试异常和线程...
- 登陆xp系统,无法显示桌面
- day43,使用朋友pyMySQL连接数据库
- 踩了无数个坑,才写出稿费1000的文章
- Linux 离奇磁盘爆满,如何解决? | 原力计划
- vue 安装element_vue实战开发007:vue引入Element-UI并配置路由
- 解决Tomcat闪退
- 读书笔记——实时渲染(一)
- python 删除word 某一章节_聊聊python 办公自动化之 Word(中)
- MySQL事物和事物回滚
- 结合运动流的时间先验在微创手术视频中的器械分割
- 温商机器人企业_4家温商企业跻身2018年中国500强
- Win10取消文件默认打开方式
- Genymotion 各对应版本
- 【软件工程习题(含参考答案)】软件系统分析-五道题
- 电脑c盘哪些文件可以删除_c盘满了怎么清理垃圾而不误删(答案在这里)
- http1,http2,http3
- JD按关键词搜索商品接口调用展示
- excel取消工作表保护,获取原始密码