在国家新型基础设施建设(简称:新基建)的浪潮中,5g 基站建设首当其冲。而在 5g基站建设中,业界普遍判断小基站将起到举足轻重的作用。这主要有两个方面的原因:
1. 小基站契合 5g 的覆盖和容量需求
相比于 4g 通信,5g 更加注重室内应用场景。5g 系统具备的大带宽、低时延、高可靠性等新特性正演化出工业物联网等大批 5g tob 新业务,催生了一批室内/园区 5g 网络方案。小基站因具有超密组网、穿透覆盖、部署方便、结合边缘计算等方面的优势,被认为是 5g 网络的重要成员。
2. 小基站技术的持续发展
以 oran、小基站联盟(scf)等为代表的组织致力于推进硬件白盒化、软件平台化/开源化/api 化,并推出统一的接口标准。这些努力大大降低了 5g 小基站的开发难度和复杂度,为5g新基建引入了更多新生力量。
那 matlab 又能在哪些方面帮助大家研发 5g 小基站呢?
(一) 通过 matlab 学习和校验 5g 标准
为了简洁高效,3gpp 5g 标准大多采用抽象的数学公式来表达,尽管如此篇幅仍然较长。对于广大工程师来说,标准里的矩阵公式可能有些晦涩,想在有限的上班时间内看明白并正确实现有相当大的挑战。
2018 年 matlab 发布了 5g toolbox,提供符合标准的函数和参考示例,用于对 5g nr 通信系统进行建模、仿真和验证。该工具箱支持链路级仿真、黄金参考验证、一致性测试以及测试波形生成。
你可以把它视作可运行的5g标准,能帮助你学习 5g 标准,或者作为第三方的 5g 标准校验工具。举个例子:小基站发射的下行 pdsch 中 dm-rs 信号(demodulation reference signal,用于估计无线信道)生成包含序列生成和空口无线资源块映射2步。
3gpp 标准中关于如何映射到无线资源块的部分节选如下:
(p.s. 喜欢知难而上的同学可以找几篇标准研究研究 https://www.3gpp.org/ftp/specs/latest,将来加入大厂 3gpp 标准组,在国际舞台上叱咤风云)matlab 提供函数 nrpdschdmrs,通过配置参数即可得到符合 3gpp 标准的 dm-rs 信号和映射,节选例子 nr pdsch resource allocation and dm-rs and pt-rs reference signals 代码如下:https://ww2.mathworks.cn/help/5g/ug/nr-pdsch-resource-allocation-and-dmrs-and-ptrs-reference-signals.html
% set the parameters that control the frequency resources of dm-rs
pdsch.dmrs.dmrsconfigurationtype = 1; % 1 or 2
pdsch.dmrs.dmrsportset = 0;
pdsch.dmrs.numcdmgroupswithoutdata = 1; % 1 corresponds tocdm group number 0
% set the parameters that only control the dm-rs sequence generation
pdsch.dmrs.nidnscid = 1; % use empty to set it to ncellid of thecarrier
pdsch.dmrs.nscid = 0; % 0 or 1
% generate dm-rssymbols
pdsch.numlayers =numel(pdsch.dmrs.dmrsportset);
dmrssymbols =nrpdschdmrs(carrier,pdsch);
除了使用简便,5g toolbox 还有 2 个很有用的特性:
1) 5g toolbox 的实现是白盒。你可以看到 matlab 的函数是如何实现的,以更好的帮助理解标准。甚至可以修改代码,用于仿真私有 5g 协议或者研究 6g 通信。2) 5g toolbox 的算法能够自动生成 c 代码。生成的 c 源代码可以部署到小基站的白盒硬件中。
◆ ◆ ◆ ◆
(二) 无线信号发射和evm测量
对于基站射频测试,3gpp 5g nr 标准定义了一组 nr- tm 波形。对于用户设备(ue)测试,标准定义了一组frc波形。在 ts 38.141-1 中定义了频率范围1 (fr1)的 nr-tm 和 frc,而在 ts 38.141-2 中定义了频率范围2 (fr2)的 nr-tm 和 frc。matlab 提供无线信号生成 app,通过图形化的界面配置参数即可生成符合标准的 nr、lte 和 wlan 等标准测试波形。生成波形后,还可通过 app 上的 transmitter 页面连接仪器设备,将波形用 rf 信号发生器发射出去。
无线信号生成 app 使用可参考例子:app-based 5g waveform generationhttps://ww2.mathworks.cn/help/5g/ug/app-based-5g-waveform-generation.html
除了信号生成与发射,matlab 还提供软件实现 5g nr 上行 pusch 和下行 pdsch 的 evm 测量,信号处理链路如下图(参考例子 evm measurement of 5g nr pdsch waveforms):https://www.mathworks.com/help/releases/r2021a/5g/ug/evm-measurement-of-5g-nr-pdsch-waveforms.html
射频损伤(如相位噪声、非线性)可以用数学统计模型,也可以用 rf blockset 搭建高保真射频仿真模型。经过信号同步和解调后,计算并绘图展示每个 ofdm 符号、slot 和子载波的均方根值和峰值 evm。
(三) 波束成型设计
大规模天线阵列和波束成型是 5g 的关键技术之一。
3.1 波束扫描
以 5g nr 系统初始接入时发送端(gnb)和接收端(ue)的波束扫描过程为例,下图展示了 gnb 4 个发射波束和 ue 4 个接收波束在方位面上的波束扫描图。图下部是收发双扫描所花费的时间,其中 gnb 的每个波束扫描间隔对应 ssb(synchronization signal blocks), ue 的每个波束扫描间隔对应 ss 突发(ss burst)。
例子 nr ssb beam sweeping 的节选代码展示了如何设置天线阵列,计算波束指向系数,以及对发射信号波束赋形等。在收发双端波束扫描和测量完成后,根据 rsrp 测量值确定最佳波束对链路。https://www.mathworks.com/help/releases/r2021a/5g/ug/nr-ssb-beam-sweeping.html
prm.txarraysize = [8 8]; % transmit array size, [rows cols]
prm.rxarraysize = [2 2]; %receive array size, [rows cols]
% uniform rectangular array
arraytx =phased.ura(prm.txarraysize,0.5*lambda, 。..
‘element’,phased.isotropicantennaelement(‘backbaffled’,true));
% uniform rectangular array
arrayrx = phased.ura(prm.rxarraysize,0.5*lambda,‘element’,phased.isotropicantennaelement);
% for evaluating transmit-side steering weights
steervectx = phased.steeringvector(‘sensorarray’,arraytx,‘propagationspeed’,c);
% generate weights for steered direction
wt = steervectx(prm.centerfreq,txbeamang(:,ssb));
% apply weights per transmit element to ssb
strtxwaveform(startssbind:endssbind,:)= ssbwaveform.*(wt‘);
3.2 利用经过 5g 信道的参考信号计算波束成形
除了用波束扫描来确定最佳波束,也可以测量经过信道后的5g参考信号来计算波束成型系数。例子 tdd reciprocity-based pdsch beamforming using srs 展示了如何利用信道互易来计算 tdd 场景中的物理下行共享信道(pdsch)波束形成权值。波束形成权值计算基于上行探测参考信号(srs)的信道估计,将相同的信道用于下行 pdsch 传输。https://ww2.mathworks.cn/help/5g/ug/tdd-reciprocity-based-pdsch-beamforming-using-srs.html
以下节选代码展示了如何在 matlab 中定义 5g nr cdl信道及接收和发射多天线。nrcdlchannel 支持 3gpp 标准定义的 massive mimo 天线阵列[m n p mg ng], 其中:
m 和 n 分别为天线阵的行数和列数。
p 是极化数(1或2)。
mg 和 ng 分别为阵列面板的行数和列数。
bsantsize = [4 4]; %number of rows and columns in rectangular array (base station)
ueantsize = [2 2]; %number of rows and columns in rectangular array (ue)。
% create the cdl channel model object. this object is bidirectional andcan model both dl and ul directions.
channel =nrcdlchannel;
channel.delayprofile= ’cdl-a‘;
channel.delayspread =300e-9;
channel.carrierfrequency= fc;
channel.maximumdopplershift= 100;
channel.samplerate =ofdminfo.samplerate;
% set the antenna arrays. initially, the channel operates in the dl direction,therefore the transmit antenna array corresponds to the bs, while the receiveantenna array corresponds to the ue.
channel.transmitantennaarray.size = [bsantsize 1 1 1]; % assume only 1polarization and 1 panel of arrays
channel.receiveantennaarray.size = [ueantsize 1 1 1]; % assume only 1 polarization and 1 panel ofarrays
基站发射端的信道展示图,包含阵列配置、单元辐射图和簇路径方向:
整体工作步骤包括:uplink 时隙:
利用信道互易交换发射和接收天线
生成并通过通道发送 srs
使用奇异值分解(svd)进行信道估计和波束形成权值计算
downlink 时隙:
使用最新 ul 时隙中计算的权重波束赋形 pdsch
发送这个信号通过衰落信道,接收端解码
计算吞吐率
3.3 射频数字混合波束成形
由于 massive mimo 天线数量很多,可能超过 100 个,为降低成本和功耗,一个 tr 组件常用于多个天线元件。在这种配置中,不再可能对每个天线元件施加数字权重,数字权重只能应用于每个射频链路。在天线阵元级,信号由模拟移相器调整。因此,预编码或组合实际上是在两个阶段完成的。
由于这种方法在数字和模拟领域都能实现波束形成,因此被称为混合波束形成。混合波束形成常常被设计成 3d 波束成形。更多信息请点击“阅读原文”,参考白皮书:大规模 mimo 相控阵系统的混合波束成形。
苹果公司的新发明:一种基于磁传感器的近距离感应结构
魅族16sPro评测 到底怎么样
剖析verilog2005的骚操作之对数函数
华为P20系列的设计与研发有着怎样不为人知的故事?
谷歌眼镜/Apple Watch等可穿戴设备里程碑产品你知道几个?
MATLAB能在哪些方面帮助大家研发5G小基站呢?
探讨汽车驱动电机扁线绕组换位技术
可穿戴设备电源设计难?
比亚迪电子助力荣耀70打造出精致温润的玻璃后盖
汽车LED驱动电路的设计方案
什么是变频器中的制动?制动电阻在变频器中有什么用?
汽车传感器应用及PSI5硅验证设置简介
挂架组装机及挡圈压装机构的结构和工作原理
天能动力注重环保 投资2亿建设电池回收厂
关于广汽传祺GE3纯电动SUV的设计理念解说
一加 12 Pop-up快闪活动来袭,十城联动火爆开启
FPGA为什么要做直方图均衡化
基于RISC-V的电机控制专用MCU及交钥匙解决方案
特斯拉推出选装升级包 仅适用于双电机的Model 3版本
星闪技术与蓝牙技术区别是什么