MIMO技术
转载说明:
802.11n-MIMO技术简介:https://blog.csdn.net/qq_37117595/article/details/127008332
从双缝干涉到WiFi/4G/5G波束成型和相控阵雷达: https://zhuanlan.zhihu.com/p/439305696?utm_id=0
图解WiFi多天线基本原理,告别Beamforming、CSD傻傻分不清: https://zhuanlan.zhihu.com/p/631823345
第一篇:802.11n-MIMO技术简介
1. 简介
多入多出(MIMO)技术构成了802.11n修正案物理层增强机制的核心。
传统的802.11环境下,多径现象会导致很多麻烦。多径现象是指相同信号通过两条或更多条路径同时或相隔若干时间到达同一接收天线。由于电磁波的天然特性,会产生反射、散射、衍射和折射行为,这些会导致多径现象。有趣的是,在802.11n技术中,多径现象是朋友而不是敌人。
MIMO射频卡利用多条路径发送多路信号至MIMO接收方。如图,三个原始信号的多个拷贝被多副天线接收,MIMO接收方能够利用高级数字信号处理器(DSP)甄别出原始发送信号。
2. 射频链
传统的802.11无线射频卡采用SISO(Single-Input Single-Output,单入单出)系统收发射频信号。SISO系统使用一个射频链。可将射频链定义为一个射频接口与所有配套设备(混频器、放大器、模数转换器等)的集合。
MIMO系统由多条射频链构成,每条射频链都有各自的天线。可以通过射频链使用的发射机与接收机的数量划分MIMO系统的类别。例如,一个2×3 MIMO系统由3条射频链构成,其中发射机的数量为2个,接收机的数量为3个。一个3×3 MIMO系统由3条射频链构成,其中发射机的数量为3个,接收机的数量为3个。第一个数字代表发射机(Tx),第二个数字代表接收机(Rx)。
下图显示了两种MIMO系统,它们分别是2×3与3×3 MIMO系统。需要注意的是,虽然两种系统都由3条射频链构成,但是3×3系统包括3个发射机,而2×3只包括两个发射机。802.11n允许使用最多4条射频链的4×4MIMO系统。每条射频链都需要消耗电力,4×4MIMO系统的耗电量远远大2×2MIMO系统。
3. MIMO空间复用
MIMO无线接口同时发送多路无线信号,每路无线信号通过独立的无线接口与天线传输给接收机。MIMO系统实际上利用了多径效应。每路独立的信号称为空间流,不同无线接口发送的空间流包含不同的数据。
同时发送多路独立的数据(数据各不相同)流能极大提高吞吐量。如果MIMO接入点向MIMO客户端发送两路独立的数据流,且客户端可以成功接收这两路数据流,则吞吐量将增加为原来的两倍。如果MIMO接入点向MIMO客户端发送3路独立的数据流,且客户端可以成功接收这3路数据流,则吞吐量将增加为原来的3倍。
不要混淆数据流的数量与发送机的数量。通常MIMO Radio指的就是各有几个发送和接收射频卡。WIFI厂商一般利用三个数字来描述 MIMO的能力,
第一个是指发送机的数量。
第二个是指接收机的数量。
第三个是指发送和接受的数据流的数量。
例如3×3∶2 MIMO就代表各有三个发送机和接收机,但只有2个数据流。3×3∶3 MIMO 指的是各有三个发送机和接收机,但有3个数据流。从图中可以观察到,一个3×3∶3MIMO接入点向3×3∶3MIMO客户端发送了3路独立的数据流。
3×3∶3 AP与3×3∶3客户端通信时,可以利用三路空间流传输单播数据。但是3×3∶3 AP与2×2∶2客户端通信时,只能利用两路空间流传输单播数据。客户端在加入 BSS 时会通告 AP 其网卡的MIMO能力。802.11n修正案最高支持4×4∶4的MIMO系统。
发送多路空间流时,发射机可采用相同的调制方式,也可以采用不同的调制方式,前者称为平等调制(equal modulation),后者称为非平等调制(unequal modulation)。例如,3×3∶3 MIMO无线接口既可以采用64-QAM发送全部3路数据流,也可以采用64-QAM先发送2路数据流,再采用QPSK发送第3路数据流以提高信噪比。对同样一个3×3∶3MIMO系统而言,采用平等调制可以获得比采用非平等调制更多的吞吐量。
4. MIMO分集
分集(Diversity)技术是指多路彼此独立的传输路径上传送同一信号。也就是说,相同的信号、独立的通道,同一信号经过彼此独立的通道发送出去,显然不能提高通道的利用效率,相反,降低了通道的利用效率。那么,这样做的目的只有一个:提高信息传送的可靠性、正确性。在多条独立路径上传输相同的数据,接收端通过分集合并技术,抵抗信道衰落,提高传输可靠性,降低误码率;
如果用手将一只耳朵捂住,是否能听得更清楚呢答案显然是否定的,因为两只耳朵可以听到更多声音。那么,假如人类有3只或4只耳朵,就能听得更远、更清楚。与之类似,MIMO系统采用先进的天线分集技术,通过多副天线来提高通信质量。
大部分pre-802.1n无线接口采用交换分集(switched diversity),多副天线监听接收信号。到达接收机天线的信号存在多个副本(数据内容相同),但这些副本信号的幅度各不相同。交换分集选择幅度最好的信号,忽略其他信号。
发送信号时也可使用交换分集,不过此时只使用一副天线。在最近一次接收信号的过程中,监听到最强信号的那副天线被选择出来,发射机将使用该天线发送当前的信号。
随着发射机和接收机之间的距离逐渐增大,接收信号幅度将越来越接近本底噪声。信噪比降低会导致数据损坏的概率增加,而监听两副天线可提高接收的成功率,因为至少能监听到一路完好信号。如果采用3副或4副天线对接收信号进行监听,则更可能接收到质高、无损的信号。交换分集系统采用3副或4副天线以提高信号接收的成功率,从而扩大了传输范围。
4.1. 发送分集技术
以MISO为例解释接收分集技术:终端只有单根天线,基站多根天线发出的信号最终在终端处要合成一路信号,所以此时基站多根天线发出的信号都是相同的,这种是发送分集技术。
STBC
空时分组编码(STBC)是指相同信息通过两根或更多天线发送出去,它是一种发送分集技术。STBC 适用于射频链数量大于空间流数量的情况。STBC 通过在多根天线上发送相同的信息,实际上数据传输率并没有增加,但会使接收方的信号检测能力,尤其是对较低 SNR 信号的检测能力提高。也就是说,接收方的信号敏感度增加了。STBC适用于802.11n设备之间。
CSD
循环移位分集(CSD)是另一种802.11n标准定义的传输分集技术。与STBC不同,使用CSD的发送机的传输信号可以被传统的802.1la和802.11g客户端接收。对于802.11n与传统的802.1la、802.11g客户端共存的混合模式下,有必要在传输符号时在多根发送天线上增加传统的 OFDM 帧前导位。CSD在每个传输信号上增加循环延迟,以减少多个信号之间的相关性。
4.2. 接收分集技术
以SIMO为例解释接收分集技术:基站通过两路路径将信号发送到终端,因为终端接收到的两路信号都是来自同一天线,所以数据是一样的,这是一种接收分集技术。
MRC
采用接收分集时,通常最大比合并(MRC)的信号处理技术将多个信号线性合并在一起。最大比合并算法对接收到的多个信号进行分析,并将它们以最优方式合并。通过采用交换分集与最大比合并技术,MIMO系统可以有效提高接收信号的信噪比。如图18-4所示,非MIMO无线接口向MIMO无线接口传输数据时,为避免多径效应,最好采用最大比合并技术。最大比合并算法旨在寻找质量最好的接收信号,不过它也可以用于从嘈杂的信号中提取信息。由于原始数据以更好的方式进行重构,数据损坏的概率将大为降低。
5. 复用和分集对比
复用
复用是多个信号同时通过多条路径送达接收端,好处是收发端吞吐量增大。特点是在保证多路收发信息传送质量的同时,提高某一传送通路资源的利用效率。在数据通信中,复用技术提高了信道传输效率。
分集
分集是一个信号通过多条路径送达接收端,好处是降低信号受到信道衰落而无法识别的可能性。分集技术是用来补偿衰落信道损耗的,它通常利用无线传播环境中同一信号的独立样本之间不相关的特点,使用一定的信号合并技术改善接收信号,来抵抗衰落引起的不良影响。空间分集手段可以克服空间选择性衰落,但是分集接收机之间的距离要满足大于3倍波长的基本条件。在无线传播环境中,无线信号会碰到各种各样的衰落,影响接收机正确地接收信号。通过分集技术,同一信号在彼此独立的不同路径上传送,经历不同的衰落;在接收端把不同路径来的信号合并起来,可以获得分集增益,提高信号接收的正确性
第二篇:从双缝干涉到WiFi/4G/5G波束成型和相控阵雷达
(本文涉及的仿真代码Python/GNU-Octave/Matlab已经放到github:GitHub - JiaoXianjun/sdrfun: SDR is fun. 没有Matlab的可以用GNU-Octave替代)
上图即闻名世界已经200多年的双缝干涉实验,它曾作为光是一种波的完美证明将牛顿的微粒说打的满地找牙,时至今日多少人仍旧为了它的量子力学解释而吵的头秃。它其实和我们现在每天在WiFi/4G/5G里用到的波束成型(beamforming)有着密切联系。
解释波束成型并不需要令人头秃的量子力学,只需要几行Matlab/python代码就能展示波束成型的原理,甚至用代码重现双缝干涉!而且在后面的代码实验中你会看到,小时候看电视用的八木天线其实也是波束成型!
当然,最先进的舰载、机载千里眼:相控阵雷达,基本原理也是波束成型。
首先,什么是波束?
你可以想象手电筒照出来的光柱。抽象一下就是发射的电磁波(接收器对电磁波的敏感性)在某个方向上比较强,其他方向比较弱,这就形成了波束。
按照惯例从“真空中的球型鸡”出发,如果一个波源向四面八方辐射是一模一样,就形成了一个“全向”波束。这就引出了定义波束所需要的两个东西:方向和大小。
为了解释方向和大小,方便起见,用二向箔对“真空中的球型鸡”实施降维打击变为2D,我们来考虑WiFi路由器常用的“棒子”天线在水平方向的波束。
想象从上向下俯视上图那个天线周围的水平面,那么天线在俯视图上就变成了一个小圆圈。如果这个天线在水平各个方向辐射一模一样,那么它在水平面上的波束就是下图的样子:
上图表示0~360度的无线信号强度都是1
其中0到360度一圈即前面图中的theta角指向的各个方向。位于中心的红圈即天线在俯视图中的样子,蓝圈上的数字1说明在各个theta角度方向上辐射都是1。1可以理解为一个理想参考单位(实际上对应增益0dB,然而由于损耗一般达不到0dB,简单起见暂且忽略损耗)。画出上图的命令为(这里以python程序为例,关于Octave/Matlab程序用法见文末):(画图前请先进入本地 sdrfun/beamforming/python/ 目录)
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=2450e6, array_style='linear', num_ant=1, ant_spacing_wavelength=0.5)"
参数含义依次为:2.45GHz载波频率,线性阵列,1天线,天线间距0.5波长。
让我们加入第二根天线,两根天线相距6.1cm即2.45GHz频率电磁波的半波长:
那么这两根天线产生的波束就会如下图:
可以看到在0和180度两个方向上,天线辐射已经加倍,从1变为2(即3dB增益),而在90和270度两个方向上,辐射消失,变为0。波束呈8字形。相应的画图命令(唯一更改的参数即天线数量1变2):
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=2450e6, array_style='linear', num_ant=2, ant_spacing_wavelength=0.5)"
这就有意思了。本来加入多个天线是为了使信号变好,不曾想在一些方向上更差了(蓝8字圈上小于1的那些方向)。看起来WiFi路由器要想用好多个天线是门学问呢,关于WiFi路由器的多天线我们另外找时间说。回到上面的8字波束,其实也很好解释:每根天线自己仍旧是全向辐射的,但由于两个天线辐射出的电磁波在空中的叠加,产生了不同方向上的不同大小。例如在0/180度方向上,来自两个天线的电磁波仍旧保持和离开天线时严格同步,因为这两个方向上每个点到两个天线的距离是相同的,也就是从两个天线出发的电磁波一直保持相位相同。想象两个相位相同的正弦波叠加,那自然是更强了。而在90/270度方向上,每个点到两个天线距离差了半个波长(天线间距),也就是相位差了180度,完全相反了。想象两个相位差180度的正弦波叠加,当然就是抵消没了。而在这两个方向之间的方向上,情况介于两者之间。这个原理其实在学习双缝干涉时已经讲过:
画出上图的命令为(请手工修改脚本中的相位差参数offset_degree):
python3 test_sine_offset_combine.py
它展示了两个正弦波相差依次0度、60度、120度和180度之后叠加的样子。具体可以通过修改脚本test_sine_offset_combine.py中的offset_degree变量来画出不同相位差时的情形。
那么现在问题来了,还用上面这个无线电波波束成型的代码,如果设置为双缝干涉的参数,我们能够再现光的双缝干涉吗?让我们这就开始动手做实验。
双缝干涉常用的红光波长大约620到750纳米,对应的频率为484到400THz,这里取波长700纳米,频率428.6THz。双缝干涉实验一般要求双缝间距小于1mm,这里取0.5mm,即约714倍波长。这里两条缝对应的就是我们模型中的两个天线。将这些参数设置进我们的仿真代码,命令如下:
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=428.6e12, array_style='linear', num_ant=2, ant_spacing_wavelength=714, angle_vec_degree=np.arange(-1, 1, 0.0001))"
最后的参数np.arange(-1, 1, 0.0001))含义为我们仅观察从-1度到+1度范围内的波束(也就是0度附近,光从左向右射向双缝/天线),在-1到+1度范围内观察的角度步进0.0001度。运行上述python程序,得到下图:
上图中向右的蓝色窄带区域内的波束即模拟了光从两个缝射出的样子,那么其中究竟有没有“干涉条纹”呢?为了方便用鼠标在matplotlib绘图中进行缩放操作,我们在平面直角坐标系重画上图:
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=428.6e12, array_style='linear', num_ant=2, ant_spacing_wavelength=714, angle_vec_degree=np.arange(-1, 1, 0.0001), plot_in_polar=False)"
用鼠标进一步手工放大上图,得到下图:
可见此时形成了大量的窄波束。这些很窄的“光波束”打到屏上即是干涉条纹!屏幕距离越远,条纹间距越大。仍旧是正右方(0度方向)最强,因为这个方向上的位置距离两个缝没有路程/相位差。而在偏离0度的一些方向上很快又出现很强的光/波束,因为那些方向上到两个缝的路程/相位差已经足够大,大到刚好是整数倍波长,那么又会叠加增强 -- 想象周期差了整数倍的正弦波,是不是和差0度的情形是一样的。
既然0度方向上增强是因为没有相位差,那么如果我们用一种办法(比如在其中一条缝之前放个特殊的玻璃),使得光从那道缝出去时的相位/延迟比起另一道缝的光多了半个波长,那么0度方向上是不是就叠加抵消了呢?验证这个想法,就是一条命令而已:
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=428.6e12, array_style='linear', num_ant=2, ant_spacing_wavelength=714, angle_vec_degree=np.arange(-1, 1, 0.0001), plot_in_polar=False, beamforming_vec_rad=np.array([0, np.pi]))"
上面命令的最后一个参数即给两条缝的光加入了0和pi的延迟/相位,2*pi为全周期/波长,pi即为半周期/波长。此时波束的分布如下图(手工鼠标放大上面命令绘图的局部):
此时,0度方向(正右方)已经没有波束/条纹,波束/条纹已经偏移到0度两侧一定角度。如果右方有屏幕,会观察到条纹移动了。
既然双缝干涉条纹可以通过改变其中一道缝的光延迟来移动,聪明的你一定想到了,在无线电信号离开天线之前,如果我们能控制信号的延迟/相位,那么就可能使得波束“指哪打哪”。的确,这就是波束成型的基本含义。通过电路对信号的延迟,形成我们想要的波束。下面将0和pi的相位分别施加到前面两根棒子天线的情形,看波束会变成什么样。运行下面的命令:
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=2450e6, array_style='linear', num_ant=2, ant_spacing_wavelength=0.5, beamforming_vec_rad=np.array([0, np.pi]))"
得到下图右,左为原始波束。
和双缝干涉情形类似,此时0度(向右)已经没有信号。
既然可以通过施加到天线的相位来使得波束指向0度和90度,那么施加一些介于两者之间的相位,是不是就能实现波束扫描了?答案是YES。下面的命令就是通过不断改变8天线线性阵列的各天线相位实现波束扫描:
python3 test_linear8_bf_scan.py
详细的各天线相位如何变化,请参见命令中用到的test_linear8_bf_scan.py脚本。它调用的就是前面的程序,只不过在循环里不断给与各天线不同的相位。通过各圈上的数字可以看到,8天线的最大增益已经从2天线的2变成了8,即9dB。
想必你一定发现了,由于线性阵列左右空间的对称性,所以也出现了两个对称的波束。如果我们把8天线线性阵列变为圆形阵列(此时天线间距参数指示的是圆半径而不是间距),那么就可以产生单一扫描波束了。相应的结果和程序为:
python3 test_circular8_bf_scan.py
最后让我们来看看如何用上面的程序来画出八木天线的波束。搜索“八木天线”,可以看到它的工作原理:八木天线_百度百科)。总结下来就是天线间距1/4波长,天线上的信号相位差90度也就是pi/2。不难用如下命令,根据这些参数画出波束:
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=2450e6, array_style='linear', num_ant=8, ant_spacing_wavelength=0.25, beamforming_vec_rad=np.arange(0, 8, 1)*np.pi/2)"
可见,由于巧妙的利用1/4波长间距和pi/2的信号相位差,八木天线实现了向前这一个方向上的高增益,而在向后这个方向完全抵消。
至此,我们用简单的模型和代码将双缝干涉、波束成型/相控阵天线以及八木电视天线联系了起来。
附录:Matlab/Octave/Python程序用法和参数含义。
Python程序的参数是命名自解释的:
ant_array_beam_pattern(freq_hz = None, array_style = None, num_ant = None, ant_spacing_wavelength = None, angle_vec_degree = None, plot_in_polar = None, beamforming_vec_rad = None, pause_interval = None):
文中还未用到/解释的Python参数:
array_style:除了linear,circular之外还支持square(正方形)和customized(定制/不规则)。
ant_spacing_wavelength:当array_style为square时,它表示正方形边长的一半。当array_style为customized时,它需要输入num_ant行2列的矩阵,每一行对应一个天线坐标,第一列为x,第二列为y,单位为m(米)。
array_style square 举例:
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=2450e6, array_style='square', num_ant=8, ant_spacing_wavelength=0.5)"
array_style customized 举例:
python3 -c "from beamforminglib import *; ant_array_beam_pattern(freq_hz=2450e6, array_style='customized', num_ant=5, ant_spacing_wavelength=np.array([[0.01, 0.02], [-0.03, 0.04], [-0.05, -0.06], [0.07, -0.08], [0.09, 0.1]]))"
pause_interval:绘图完毕后等待多少秒(可以是小数,例如0.01)关闭,主要用于动画绘制(例如前述波束扫描)。如果不指定,则无限期等待,需要鼠标关闭图形,结束程序。
对于Matlab/Octave脚本(sdrfun/beamforming/matlab_octave/),不难发现和python程序的用法和参数含义是一一对应的。按照文章python命令出现的先后顺序,相应的Matlab/Octave命令为:
单天线全向波束:
ant_array_beam_pattern(2450e6, 'linear', 1, 0.5);
两天线自然形成的8字波束:
ant_array_beam_pattern(2450e6, 'linear', 2, 0.5);
不同相位正弦波叠加:
test_sine_offset_combine;
双缝干涉(极坐标):
ant_array_beam_pattern(428.6e12, 'linear', 2, 714, -1:0.0001:1);
双缝干涉(直角坐标,为了鼠标缩放):
ant_array_beam_pattern(428.6e12, 'linear', 2, 714, [-1:0.0001:1]');
双缝干涉,其中一条缝加入180度相移:
ant_array_beam_pattern(428.6e12, 'linear', 2, 714, [-1:0.0001:1]', [0, pi]);
两天线,使用0和180度去波束成型:
ant_array_beam_pattern(2450e6, 'linear', 2, 0.5, -180:0.001:180, [0, pi]);
8天线线阵,波束成型扫描:
test_linear8_bf_scan;
8天线圆阵,波束成型扫描:
test_circular8_bf_scan;
八木天线:
ant_array_beam_pattern(2450e6, 'linear', 8, 0.25, [], (0:7).*pi/2);
8天线方形阵列:
ant_array_beam_pattern(2450e6, 'square', 8, 0.5);
5天线任意阵列,天线坐标手工输入:
ant_array_beam_pattern(2450e6, 'customized', 5, [0.01, 0.02; -0.03, 0.04; -0.05, -0.06; 0.07, -0.08; 0.09, 0.1]);
最后再次给出github链接:GitHub - JiaoXianjun/sdrfun: SDR is fun.
第三篇:图解WiFi多天线基本原理,告别Beamforming、CSD傻傻分不清
WiFi中的波束成形beamforming、循环位移分集CSD傻傻分不清?这里用一张图总结常见多天线发射模式及其对比。之后还有对于常见谬误的进一步讨论。
不废话,上图!
上图信息量巨大,建议仔细研读,手工验算。如果你不同意某些结果,先不要着急杠,往下看。
上图是抽象模型,并不对应实现框图,且假设信道为自由空间AWGN信道,这一点勿杠。
前两种情况是平凡的,证明略。
第三种情况双天线beamforming下使用了和第一种情况相同的23dBm总发射功率,但接收端信号却提升了3dB。两种解释(请自选容易接受的):
- 在第一种情况的链路中加入了3dB的阵列增益
- 两天线发射的信号在接收天线处均为-63dBm,他们同频同相相干叠加会获得4倍功率增益即6dB,因此得到-57dBm。如果理解不了,请复习幼儿园学过的功率正比于电压平方,相干叠加意味着电压处处double。(咦?四倍功率?违背能量守恒!别急,看后面)
最后一种情况CSD,仅仅是其中一个天线加入了时延T,接收信号就比第三种情况beamforming弱了3dB。这是因为那个时延T使得两路信号不再相干,在接收端两个-63dBm信号非相干叠加时,总功率即两个功率直接相加,只能提升3dB得到-60dBm。如果不理解非相干叠加,请复习幼儿园物理,概率论与随机过程相关知识。
第三种情况并不违背能量守恒。请注意图中的相干叠加只发生在最强方向上,而其他方向会更弱,甚至完全抵消。要讨论能量守恒,则需要在全空间所有方向积分,它仍然是守恒的。其他类似问题,请知乎或者互联网搜索“两个波相消之后,能量去了哪里?”
关于波束成形、CSD更详细的讨论和仿真代码参见之前文章:
时间、空间、频率、灯塔、波束成型与航空无线电导航 -- 一文带你把时空频分解的明明白白
最后一种情况CSD费了老大的劲只却获得了和第一种情况一样的效果,真是闲的蛋疼,但实际上CSD是一种巧妙的设计,有其存在的价值:
- 有时候两个小功率PA(最后一种情况例子20dBm)比一个大功率PA(第一种情况例子23dBm)更容易保证发射信号质量EVM。这种优势也许在WiFi这种小功率系统上不明显,但某些大功率的场景(雷达、卫星)会采用类似思路。
- 在频率选择性衰落信道下,最后一种情况CSD(WiFi中的循环位移分集,LTE中叫CDD循环延迟分集)会获得分集效果,提高信号稳定性。
- 如果信道很好,没啥频率选择性衰落,CSD退化为和第一种情况类似,也没啥损失。因此这是一种“傻瓜式”的利用多天线的方法,虽然达不到第三种情况beamforming那么强,但在衰落环境中提高信号稳定性比起单根天线还是更好一些。
看起来第三种情况beamforming对于接收信号提升最好?的确如此,但是它只针对特定空间方向如此。即,如果不能调整两个天线的加权系数,保证波束最大增益方向始终对准用户,就达不到那么好的效果,甚至如果误差很大可能反而起到反效果。实际中,一个路由器下可能有多个用户,他们随机散布在不同方向,而且随时可能随机移动,想要对每个用户达到最优的beamforming需要复杂的实时闭环控制和优化。
如果不想用复杂的beamforming,又想要多个发射天线,直接把信号分配到多个天线上是不行的,它会“不经意间”生成特定方向的波束(因为不作任何处理相当于每根天线加权系数为1),导致路由器不同方向上的信号差别巨大。
这时候CSD必须开启,确保路由器各个方向上的信号均匀。