【5G PHY】5G BWP(BandWidth Part)介绍

2023-10-07 07:36
文章标签 介绍 part phy 5g bwp bandwidth

本文主要是介绍【5G PHY】5G BWP(BandWidth Part)介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持!
博主链接

本人就职于国际知名终端厂商,负责modem芯片研发。
在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。


博客内容主要围绕:
       5G/6G协议讲解
       算力网络讲解(云计算,边缘计算,端计算)
       高级C语言讲解
       Rust语言讲解



5G BWP(BandWidth Part)介绍

在这里插入图片描述
       在5G NR中,小区带宽预计将比LTE大,但UE的接收和发送带宽不一定要求与小区带宽相同。根据3GPP 38.300规范,UE的接收和发送带宽可以调整为总小区带宽BWP的子集。这种带宽可以在低活动期间缩小以节省电力;带宽位置可以改变以支持不同的服务。通过配置BWP(s)来实现带宽的自适应,告诉终端当前哪个BWP是活动的。

       BWP是在给定载波上的一组连续的物理资源块(PRB,physical resource block),这些RBs是从给定的参数集(u,numerology)的公共资源块的连续子集中选择的,其中定义BWP的u可以有以下三个不同的参数:

  • 子载波间隔(scs);
  • 符号长度;
  • 循环前缀(CP)长度;

请添加图片描述

一、为什么需要BWP

       在LTE中会给UE分配一段固定的带宽,无论UE传输的数据量有多大或者有多小,带宽的大小都不会变,因此会降低带宽利用率,且缺乏灵活性。其次,从射频和基带信号处理的角度来看,宽BW的使用可能意味着更高的空载功耗。为此,5G-NR引入了BWP的新概念,提供了一种可以为UE配置比CBW更小的BW的方法,这使得NR在支持宽带操作的情况下仍然是一种节能的解决方案。

       或者,可以考虑对UE进行调度,使其仅在特定的频率范围内发送或接收。与BWP相比,该方法的不同之处在于,不要求终端在激活BWP配置的频率范围之外发送或接收,这从以下几个方面体现了节电的特点:

  • BWP概念减少了带宽处理要求,以发送或接收窄带宽;
  • BWP使射频基带接口能够以较低的采样率工作;
  • 如果自适应前的载波带宽较大,则UE射频带宽自适应至少可以提供UE省电;

二、BWP的类型

       下图显示了UE可用的不同BWP类型。考虑到典型用例,空闲模式BWP小于连接模式BWP。请添加图片描述
这里有三种BWP类型:

  • 初始BWP:初始BWP用于执行初始接入流程。它包括RMSI(请求的最小系统信息),CORESET和RMSI频率位置、带宽、scs等参数。可设置24~96个不同的RB,RMSI解码后可放宽至更宽的BWP;
  • 激活BWP(UE特定):激活BWP被定义为特定于UE的BWP,也可以用于执行初始接入过程的BWP。这是在RRC配置/重新配置后,UE开始数据传输的第一个BWP。第一个激活BWP应该不同于默认BWP;
  • 默认BWP(UE特定):默认BWP也是UE特定的BWP,并在RRC重新配置期间配置,如果没有配置,则可以假定初始BWP是默认BWP。当BWP定时器到期时,每个UE都会切换回默认的BWP;

三、初始接入过程中的BWP操作

       根据3GPP TS 38.331对于每个服务小区,网络配置至少一个初始BWP,包括下行带宽部分和一个(如果服务小区配置有上行链路)或两个(如果使用补充上行链路 —— SUL)上行带宽部分。此外,网络可以配置额外的上行和下行BWP。

       BWP的配置分为上行链路和下行链路参数,以及通用和专用参数。公共参数(在BWP-UplinkCommon和BWP-DownlinkCommon中)是cell specific,网络确保与其他UE对应的参数进行必要的对齐。PCell的初始BWP的公共参数也通过系统信息提供。对于所有其他服务小区,网络通过专用的信令提供公共参数。

步骤阶段DL BWPUL BWP过程
0PSS和SSS解码DL同步
1MIB解码UE解码MIB并获取COESET #0配置信息
2RMSI解码CORESET #0从解码的RMSI中获取初始DL BWP以及初始UL BWP的设置
3Msg1 -->gNB初始UL BWP向gNB发生随机接入请求
4gNB–>Msg2CORESET #0RAR
5Msg–>gNB初始 UL BWPRRC connection request
6gNB–>Msg4CORESET #0RRC connection setup,配置终端专用BWP(默认/1st Active/其他)BWP,如果没有配置,仍然使用初始BWP
7Msg5–>gNB1st Active BWP1st Active BWPRRC connection setup completed,如果Msg4中没有附加配置,初始BWP是1st Active BWP

四、BWP的激活/去激活和切换

       一个激活的数据会话中的流量模式可能会频繁变化,因为数据速率可能会根据服务类型或用户行为(例如访问互联网和接听电话)增加或减少。在不同BWP之间快速切换以管理不同数据速率下的不同功耗变得非常重要。

根据38.321-5.15 BWP操作,BWP选择(或者BWP切换)可以通过以下几种不同的方式完成:

  • 专用的RRC信令:由于RRC消息的处理需要额外的时间,延迟可达10 msec,因此更适合于半静态情况。由于更长的切换延迟和信令开销,基于RRC的方法可用于在呼叫的任何阶段配置BWP集,或用于在同一数据会话中资源分配不会快速变化的慢适应类型服务(如语音);
  • 通过PDCCH的DCI下发:它基于PDCCH通道,可以通过DCI 0_1(UL Grant)和DCI 1_1 (DL Scheduling)的BWP indicator 激活特定的BWP。这种方法更适合动态BWP切换,因为使用这种方法延迟低至2毫秒。然而,这种方法需要额外考虑错误处理,因为UE可能无法解码包含BWP激活/去激活命令的DCI;
  • 通过BWP-inactivityTimer(位于ServingCellConfig.bwp 中的InactivityTimer):如果在定时器超时前,没有显式地为终端调度BWP,则会自动切换到默认的BWP;
  • 通过MAC CE:这是在随机接入过程中使用;

       虽然基于DCI的机制比基于MAC CE的机制更及时,但需要额外考虑错误情况的处理,即当UE无法解码包含BWP激活/去激活命令的DCI时。为了解决这种DCI丢失的情况,引入了一个bwp-inactivitytimer定时器,来激活/去激活DL BWP(或在非对称频谱下DL/UL BWP对)。使用这种机制,如果UE在一定时间内没有被调度,即定时器过期,UE将其激活的DL BWP(或DL/UL BWP对)切换为默认的BWP。

       在初始接入期间,UE会有一个初始激活BWP,新的BWP会在RRC连接建立期间或之后明确配置。初始激活的BWP是默认的BWP,除非另外配置。

       根据3GPP R15,对于一个UE,最多有一个活动DL BWP和最多一个活动UL BWP。当UE的激活BWP被切换时,支持跨不同BWP的HARQ重传。

五、BWP总结

  • UE的下行链路和上行链路最多可配置4个BWP,但在给定时间点,下行链路和上行链路只能各激活一个BWP;
  • BWP概念使终端能够在窄带宽下运行,当用户需要更多数据(突发流量)时,它可以通知gNB启用更宽的带宽;
  • 当gNB配置BWP时,它包括以下参数:BWP参数集(u)、BWP带宽大小频率位置(NR-ARFCN)、CORESET(控制资源集);
  • 对于下行链路,UE不会接收位于激活BWP外的PDSCH、PDCCH、CSI-RS或TRS;
  • 每个DL BWP包括至少一个具有特定UE搜索空间(USS)的CORESET,而主载波至少一个configured DL BWP中包含一个公共搜索空间(CSS)的CORESET;
  • 对于上行链路,UE不会在激活的BWP之外发送PUSCH或PUCCH;
  • 通常情况下UE只能在激活BWP的频率范围内接收和发送。然而,也有例外。UE可以在测量间隙在其激活的BWP之外执行无线电资源管理(RRM)测量或发送探测参考信号(SRS)。


在这里插入图片描述

这篇关于【5G PHY】5G BWP(BandWidth Part)介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/156974

相关文章

MySQL中慢SQL优化的不同方式介绍

《MySQL中慢SQL优化的不同方式介绍》慢SQL的优化,主要从两个方面考虑,SQL语句本身的优化,以及数据库设计的优化,下面小编就来给大家介绍一下有哪些方式可以优化慢SQL吧... 目录避免不必要的列分页优化索引优化JOIN 的优化排序优化UNION 优化慢 SQL 的优化,主要从两个方面考虑,SQL 语

C++中函数模板与类模板的简单使用及区别介绍

《C++中函数模板与类模板的简单使用及区别介绍》这篇文章介绍了C++中的模板机制,包括函数模板和类模板的概念、语法和实际应用,函数模板通过类型参数实现泛型操作,而类模板允许创建可处理多种数据类型的类,... 目录一、函数模板定义语法真实示例二、类模板三、关键区别四、注意事项 ‌在C++中,模板是实现泛型编程

Python实现html转png的完美方案介绍

《Python实现html转png的完美方案介绍》这篇文章主要为大家详细介绍了如何使用Python实现html转png功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 1.增强稳定性与错误处理建议使用三层异常捕获结构:try: with sync_playwright(

Java使用多线程处理未知任务数的方案介绍

《Java使用多线程处理未知任务数的方案介绍》这篇文章主要为大家详细介绍了Java如何使用多线程实现处理未知任务数,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 知道任务个数,你可以定义好线程数规则,生成线程数去跑代码说明:1.虚拟线程池:使用 Executors.newVir

4G/5G全网通! FiberHome烽火5G CPE Air路由器拆机评测

《4G/5G全网通!FiberHome烽火5GCPEAir路由器拆机评测》烽火5GCPE已经使用一段时间了,很多朋友想要知道这款路由器怎么样?今天我们就来看看拆机测评... 我想大家都听说过、了解过5G。 5G是具有高速率、低时延和大连接特点的新一代宽带移动通信技术,5G通讯设施是实现人机物互联的网络基础设

JAVA SE包装类和泛型详细介绍及说明方法

《JAVASE包装类和泛型详细介绍及说明方法》:本文主要介绍JAVASE包装类和泛型的相关资料,包括基本数据类型与包装类的对应关系,以及装箱和拆箱的概念,并重点讲解了自动装箱和自动拆箱的机制,文... 目录1. 包装类1.1 基本数据类型和对应的包装类1.2 装箱和拆箱1.3 自动装箱和自动拆箱2. 泛型2

四种Flutter子页面向父组件传递数据的方法介绍

《四种Flutter子页面向父组件传递数据的方法介绍》在Flutter中,如果父组件需要调用子组件的方法,可以通过常用的四种方式实现,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录方法 1:使用 GlobalKey 和 State 调用子组件方法方法 2:通过回调函数(Callb

Python进阶之Excel基本操作介绍

《Python进阶之Excel基本操作介绍》在现实中,很多工作都需要与数据打交道,Excel作为常用的数据处理工具,一直备受人们的青睐,本文主要为大家介绍了一些Python中Excel的基本操作,希望... 目录概述写入使用 xlwt使用 XlsxWriter读取修改概述在现实中,很多工作都需要与数据打交

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.

Python实现NLP的完整流程介绍

《Python实现NLP的完整流程介绍》这篇文章主要为大家详细介绍了Python实现NLP的完整流程,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 编程安装和导入必要的库2. 文本数据准备3. 文本预处理3.1 小写化3.2 分词(Tokenizatio