摘要:多输入多输出技术是指在发射端和接收端分别使用多个发射天线和接收天线,使信号通过发射端与接收端的多个天线传送和接收,从而改善通信质量。

本文作者|历天一

多输入多输出技术是指在发射端和接收端分别使用多个发射天线和接收天线,使信号通过发射端与接收端的多个天线传送和接收,从而改善通信质量。它能充分利用空间资源,通过多个天线实现多发多收,在不增加频谱资源和天线发射功率的情况下,可以成倍的提高系统信道容量,显示出明显的优势、广泛应用于第四代移动通信。

多输入多输出技术不断发展,由最初的最多8根天线拓展到最多可达256根天线,就形成了大规模多输入多输出技术(LS-MIMO),最早由美国贝尔实验室研究人员提出,研究发现,当小区的基站天线数目趋于无穷大时,加性高斯白噪声和瑞利衰落等负面影响全都可以忽略不计,数据传输速率能得到极大提高,是第五代移动通信技术中提高系统容量和频谱利用率的关键技术。让我们先从如下两方面来做下简单直观的理解:

(1)天线数量

传统的时分双工网络的天线基本是2天线、4天线或8天线,而大规模多输入多输出技术指的是通道数达到64/128/256个。

(2)信号覆盖的维度

传统的大规模多输入多输出技术称之为2D-MIMO,以8天线为例,实际信号在做覆盖时,只能在水平方向移动,垂直方向是不动的,信号类似一个平面发射出去,而大规模多输入多输出技术,是信号水平维度空间基础上引入垂直维度的空域进行利用,信号的辐射状是个电磁波束。所以也称为3D-MIMO,这一点在后面会详细讲述。

每一项技术的实现都要靠相应的硬件来支撑,我们很容易知道需要在基站侧配置更大规模的天线阵列,当然,这也将耗费更多电能,无论是基站,还是用户端。

大规模多输入多输出技术在第五代移动通信技术上应用较为成熟,让我们一起来探究一下。

5G可以使用低于6GHz的低频频段,但低频频段的资源有限,而5G对带宽的需求量又很大,因此大部分5G网络会部署在高频频段,即毫米波频段。在为5G寻找合适的技术时,这一特征很关键。

从无线电波的物理特征来看,如果我们使用低频频段或者中频频段,我们可以实现天线的全向收发,至少也可以在一个很宽的扇面上收发。但是,当使用高频频段(如毫米波频段)时,我们别无选择,只能使用包括了很多天线的天线阵列。使用多天线阵列的结果是,波束变得非常窄。那么回到刚才,为什么在毫米波频段,我们只能使用多天线阵列呢?

根据功率传输方程,考虑到攻防技术的极限限制以及国家无线管委会的规定,无法增大无线发射功率Pt,受限于材料和物理规律,无法直接无线提高天线增益Gt、Gr,而缩短手机与基站距离R,意味着修建更多基站,从运营商的角度来说不可行,而增加波长λ意味着使用资源有限的低频段,这对带宽需求很大的5G来说不可行,要提高我们想要的接收天线功率Pr似乎无路可走。

唯一可行的解决方案是:增加发射天线和接收天线的数量,即设计一个多天线阵列。事实证明效果提升显著,很有趣地是这个现象构成了黑格尔辩证法的一个关键哲学原则的完美例子,即“量变导致质变”。

这也是大规模多输入多输出技术的基础,相比于传统单天线通信方式,大规模多输入多输出技术下,基站侧有多根天线,通过波束赋形自动调节各个天线发射信号的相位,使其在接收端形成电磁波的有效叠加,产生更强的信号增益来克服损耗,从而达到提高接受信号强度的目的,根据特定场景自适应调整天线阵列的辐射图,相比于传统的大面积覆盖,波束赋形可以智能地汇集能量到目标上,并可以根据目标数量构造专门的传输通道。这里需要强调的是系统必须用非常复杂的算法来找到目标的准确位置,否则就不能精准地将波束对准这个目标。因此,我们可以知道波束管理和波束控制对大规模多输入多输出技术是非常重要的。

实验研究显示,天线的数目越多,规模越大,波束赋形作用越明显,天线阵列从一维扩展到二维,波束赋形发展成了多面手,可以同时控制天线方向图在水平方向和垂直方向的形状,演进为3D波束赋形,将信号更加精准地指向目标用户,并能跟随目标移动,保证信号稳定性。

通过大规模天线阵列在发射端和接收端将更多天线聚合进行密集组合,3D波束赋形将每个信号引导到终端接收器的最佳路径上,提高信号强度,减少干扰。让我们回到上面提到的功率传输方程,基于波束赋形技术的大规模多输入多输出技术通过整理天线波束来提高发射天线增益Gt,达到了提高接收信号强度Pr的目的,从而保证了跟随目标的同时,信号强度的稳定。实际应用中,发现在追求高速移动数据速率和大信道容量的5G时代效果很好,可达到更好的性能。

点击关注,第一时间了解华为云新鲜技术~

5G多输入多输出技术,到底是个啥东东?的更多相关文章

  1. C++_IO与文件5-文件的输入与输出

    大多数计算机程序都使用了文件.文件本身是存储在某种设备上的一系列字节. 通常,操作系统管理文件,跟踪它们的位置.大小.创建时间等. 除非在操作系统级别上编程,否则通常不必担心这些事情. 真正需要的是将 ...

  2. Hinton等人最新研究:大幅提升模型准确率,标签平滑技术到底怎么用?

    Hinton等人最新研究:大幅提升模型准确率,标签平滑技术到底怎么用? 2019年07月06日 19:30:55 AI科技大本营 阅读数 675   版权声明:本文为博主原创文章,遵循CC 4.0 B ...

  3. 从URL输入到页面展现到底发生什么?

    目录 前言 一.URL 到底是啥 二.域名解析(DNS) 1.IP 地址 2.什么是域名解析 3. 浏览器如何通过域名去查询 URL 对应的 IP 呢 4. 小结 三.TCP 三次握手 1.TCP 三 ...

  4. [总结] I/O输入,输出

    I/O输入,输出第一:先判断到底是输入还是输出,站在程序的立场第二:判断是传递字节,还是字符,决定管道粗细,字节流是最基本的数据输出管道.字符类型管道专门用来传送文本数据.Java流的四大父类:1.字 ...

  5. C++——输入、输出和文件

    一.C++输入和输出概述 1.1.流和缓冲区 C++程序把输入和输出看作字节流.输入时,程序从输入流中抽取字节:输出时,程序将字节插入到输出流中.对于面相文本的程序,每个字节代表一个字符,更通俗地说, ...

  6. Haskell 输入和输出

    我们已经说明了 Haskell 是一个纯粹函数式语言.虽说在命令式语言中我们习惯给电脑执行一连串指令,在函数式语言中我们是用定义东西的方式进行.在 Haskell 中,一个函数不能改变状态,像是改变一 ...

  7. Java:文件字符流和字节流的输入和输出

    最近在学习Java,所以就总结一篇文件字节流和字符流的输入和输出. 总的来说,IO流分类如下: 输入输出方向:     输入流(从外设读取到内存)和输出流(从内存输出到外设) 数据的操作方式: 字节流 ...

  8. 输入和输出(read,recv,recvmsg...和write,writev,writemsg)

    每一个TCP套接口有一个发送缓冲区,可以用SO_SNDBUF套接口选项来改变这个缓冲区的大小. 应用进程调用 write时,内核从应用进程的缓冲区中拷贝所有数据到套接口的发送缓冲区.如果套接口的发送缓 ...

  9. Python基础系列----环境的搭建及简单输入、输出

    1.Python                                                                                         以下信 ...

  10. Python的输入和输出问题详解

    输出用print()在括号中加上字符串,就可以向屏幕上输出指定的文字.比如输出'hello, world',用代码实现如下: >>> print('hello, world') pr ...

随机推荐

  1. C++ STL标准容器的特点和典型的使用场景

    概念和作用 C++标准模板库(Standard Template Library,STL)提供了一组通用的模板类和函数,用于处理常见的数据结构和算法.STL中的标准容器是其中的重要组成部分,它们提供了 ...

  2. 16.2 ARP 主机探测技术

    ARP (Address Resolution Protocol,地址解析协议),是一种用于将 IP 地址转换为物理地址(MAC地址)的协议.它在 TCP/IP 协议栈中处于链路层,为了在局域网中能够 ...

  3. DFS(深度优先搜索)洛谷P1162

    看大佬们dfs一遍就出结果,蒟蒻的我dfs了三遍,当然这题也可以用bfs做,但是dfs不用队列代码短一些. #include <iostream> #include <vector& ...

  4. Python 模块:创建、导入和使用

    什么是模块? 将模块视为代码库.模块是一个包含一组函数的文件,您想要在应用程序中包含这些函数. 创建一个模块 要创建一个模块,只需将要包含在其中的代码保存在扩展名为 .py 的文件中: 示例:将以下代 ...

  5. 工控机中部署Ubuntu 22.04 系统

    1.下载Ubuntu系统服务器版本 获取Ubuntu服务器版 | Ubuntu 2.下载启动盘制作工具 UltralSO(试用就可以) 文件 > 打开(Ubuntu.ISO) > 启动 & ...

  6. [Python急救站课程]绘制蜡笔小新图案

    可爱的蜡笔小新想要吗?画起来 import turtle as t '''设置''' t.setup(800, 500) # 创建画布并使其位于屏幕中心 t.pensize(2) # 画笔粗细 t.c ...

  7. 怎样阅读 h2 数据库源码

    阅读 h2 数据库的源码是一项复杂的任务,需要对数据库原理.Java 语言和操作系统有深入的理解.可以从以下几方面入手来完成. 环境准备 首先,你需要在你的机器上安装和配置好开发环境,包括 JDK.M ...

  8. css面试题随笔

    之前在前端群有个汉纸聊到他面试别人时问到:margin塌陷和margin合并问题如何解决? 然后我自己也懵逼了哈哈,因为只是遇到过并不知道这叫塌陷.合并哈哈哈················那我们一起 ...

  9. Reactor实战,创建一个简单的单线程Reactor(理解了就相当于理解了多线程的Reactor)

    单线程Reactor package org.example.utils.echo.single; import java.io.IOException; import java.net.InetSo ...

  10. C++ Qt开发:如何使用信号与槽

    在Qt中,信号与槽(Signal and Slot)是一种用于对象之间通信的机制.是Qt框架引以为傲的一项机制,它带来了许多优势,使得Qt成为一个强大且灵活的开发框架之一.信号与槽的关联通过QObje ...