Bandwidth Part

Posted 梦之未来

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Bandwidth Part相关的知识,希望对你有一定的参考价值。


 

相比于LTE,NR的带宽很大,而UE用于收发的部分可能用不到cell的全部带宽,但是UE如果一直工作在小区的全带宽上,耗电会大大增加,因而引出BWP 的概念,简单的说就是根据业务类型动态调整UE的工作带宽,进而实现节能。

38.300 6.10 Bandwidth Adaptation

针对UE 业务不同,BWP 的带宽可以调整,例如UE在不活跃的时间段,可以降低带宽省电。为增加调度的灵活性,BWP的频域范围可以变化。根据不同的业务,BWP可以动态调整。当然BWP 对应的带宽必须是小区带宽的子集,不能超过小区带宽范围。当配置了多个BWP时,网络端需要告知UE当前要激活哪个BWP。

 

下图对应的是配置3个不同BWP的场景,其中 BWP1 SCS 15khz 带宽40MHZ;BWP2 SCS 15khz 带宽10MHZ;BWP3 SCS 60khz 带宽20MHZ。

看下38.331 BWP 配置参数

  

 

offsetToCarrier:指Point A和该载波上的最低可用子载波之间的频域偏移量。

BWP的配置包含几个参数  :

1  SCS, CyclePrefix 和locationAndBandwidth。

BWP频域起始位置N_start_BWP=Ocarrier+RBstart,其中Ocarrier 由RRC层参数offsetToCarrier决定。

locationAndBandwidth 根据RIV可以计算出RBstart和 BWP的频域长度Lrb(通过RIV计算时N_size_BWP要先设置为275再计算)。 由此可以确定BWP 的频域位置。N_size_BWP=Lrb

2 配置的DL/UL BWP要带BWP-Id

3 BWP-common 和BWP-dedicated 的set参照38.331中的结构这里不再赘述。

 

38.211   4.4.5    Bandwidth part

 

BWP 就是频域上连续的RB资源,N_start_BWP 代表BWP的频域起始位置,BWP 的起始位置和配置的RB范围应该在当前carrier的带宽范围之内,不能超越carrier对应的带宽范围。

根据上面的描述,BWP相对于carrier的带宽图示如下

UE 最多可以配置4个UL/DL BWP,但是DL/UL 分别只能激活一个。如果UE 有配置SUL的话,可以对SUL额外配置最多4个BWP,但也是只能激活其中一个。

38.213 

BWP-Downlink/initialDownlinkBWP中只能最多配置4个BWP。

对应UL也是同样的道理,BWP-Uplink/initialUplinkBWP中只能最多配置4个BWP。

TDD 下,DL/UL的bwp-id保持一致,且DL/UL BWP的中心频率应该相同。

initialDownlinkBWP可以不配置,不配置时由CORESET0决定,SCS 等参数也跟随CORESET0,CORESET0 的信息在MIB subcarrierSpacingCommon 和PDCCHconfig-SIB1中配置;initialUplinkBWP则一定会配置。initial BWP在SIB1中配置,initial access就是在initial BWP上进行。

UE 配置SUL时,也是通过initialUplinkBWP下发initial UL BWP信息。

 

没有配置defaultDownlinkBWP-id时,default DL BWP 就是initial DL BWP。

 

BWP 切换

38.321

NR支持BWPswitch方式包括:

1 通过RRC信令重配

2 基于bwp-InactiveTimer的BWP切换

3 基于RACH的BWP切换

4 还可以通过DCI bandwidth part indicator field 进行BWP切换。在上下行调度时切换BWP

 

下面开始分别介绍

1 通过RRC信令重配firstActiveDownlinkBWP-Id(firstActiveUplinkBWP-Id)

 

firstActiveDownlinkBWP-Id: 对于Spcell,在执行RRC重配置时,这个参数会指定要激活的DL BWP的ID,缺省状态下RRC 重配置不会强制要求BWP switch。

对于SCell,这个参数会指定在SCell激活后的 DL BWP id。对于initial BWP,其BWP-ID=0。

reconfigurationWithSync场景,网络端需要将firstActiveDownlinkBWP-Id和firstActiveUplinkBWP-Id 配置成相同的值。

firstActiveUplinkBWP-Id:Spcell,在执行RRC重配置时,这个参数会指定要激活的DL BWP的ID,缺省状态下RRC 重配置不会强制要求BWP switch。

Scell,这个参数会指定在SCell激活后的 DL BWP id。对于initial BWP,其BWP-ID=0。

PCell,当UE配置有dedicated BWP时,可以通过firstActiveDownlinkBWP-Id和firstActiveUplinkBWP-Id分别指定第一个要激活的BWP信息。

在进行RA的时候收到RRC 重配置的BWP切换,UE 要先停止RA ,执行BWP切换成功后再重新开始RA 过程。

举个例子:SIB1中配置

initialUplinkBWP/initialDownlinkBWP 根据规定其BWP-ID=0。之后注册过程也一直在initial BWP上。 

之后RRCReconfiguration 中将initialBWP release ,新增加了一个BWP-id 1,通过firstActiveDownlinkBWP-Id(firstActiveUplinkBWP-Id) 将BWP-id 1激活。

这个过程就是通过RRC重配置的BWP 切换。 

2 基于bwp-inactivityTimer的BWP切换

bwp-InactivityTimer:超时后UE要返回default BWP;如果网络release掉这个timer的配置,UE就停止timer,保持在目前激活的BWP上,不用切换到default BWP。 

如果收到激活目标BWP,DCI 上下行调度或半静态调度时的上下行接收发送或没有RACH 随机接入流程触发或RACH 随机接入流程走完后,UE启动或重启BWP-InactivityTimer 定时器。

如果bwp-InactivityTimer expiry,从当前激活BWP返回到default DL BWP(有配置defaultDownlinkBWP-id时)或者返回initialDownlinkBWP。

bwp-InactivityTimer 在正常run的过程中,UE要在FR1 子帧结束或FR2 half子帧结束位置对Timer 值进行递减。

3 动态BWP切换---通过DCI 的bandwidth part indicator字段切换BWP。

DL/UL最多只能配置4个BWP,所以2bits足以表示。

R16 针对URLLC业务增加了几个DCI format,但是对于bandwidth part indicator,没有实质改变。

DCI 0_1/0_2

DCI 1_1/1_2

如38.212中所示,值得注意的是DCI 0_0/1_0 是初级DCI 是没有bandwidth part indicator。所以如果手机支持基于DCI的BWP 切换,且有配置高级DCI时,才可能进行基于DCI 的BWP切换。

下面先看下38.331中关于BWP的一个概念。

First option:只配置 BWP-DownlinkCommon and BWP-UplinkCommon in ServingCellConfigCommon,不配置 dedicated configurations in BWP-DownlinkDedicated or BWP-UplinkDedicated in ServingCellConfig.    这种不是RRC 配置的BWP

Second option:既有common配置 也有dedicated 配置  的BWP 叫做RRC 配置的BWP

 

由于common的配置 一般只配置的DCI 1_0/0_0的初级功能,不支持DCI based的BWP 切换,

因此 对于First option中的情况,只能基于RRC 配置进行BWP 切换。

但是RRC 配置的BWP,既有BWP-common 配置也有BWP-dedicated 配置,一般BWP-dedicated中已经有配置高级DCI ,所以可以进行基于DCI 进行BWP 切换。

UE 支持基于DCI 的BWP切换,当DCI 中的information field 指定的UL/DL BWP 与激活的UL/DL BWP不一样时,

要先进DCI information field size的对齐,再进行DCI decode 执行BWP的切换。

因为BWP的带宽不同,在时频域分配上所需要的DCI bit 长度就可能不一样,因此网络端需要对DCI进行对齐操作。

如果当前接收到DCI 的字段长度小于目标BWP DCI 字段长度(例如小带宽BWP切换到大带宽BWP),UE首先在DCI 信息字段高位补0,达到目标BWP的DCI 信息字段长度后,再进行DCI 解析;

如果当前接收到的DCI 字段长度大于目标BWP的DCI 字段长度(例如大带宽BWP切换到小带宽BWP),UE在DCI 信息字段 仅用其中的低位一部分,进行DCI 解析;

通过DCI切换下行/上行BWP时,UE在接收到DCI 时隙的第三个符号结束位置开始,就不再收发接,直到切换到目标BWP后的对应接收/发送时隙后再恢复收发。

通过DCI切换下行/上行BWP时,PDCCH只能位于时隙内的前三个符号。

当在进行RA 过程中收到DCI BWP切换信息时,UE 可以忽略该切换命令,也可以执行。

如果要执行BWP切换:UE 在CBRA 没有完成时 收到DCI BWP切换消息,应该先执行BWP 切换,成功之后再重新进行RA 过程。

如果忽略切换命令时,就继续进行RA 过程。

4 基于RACH的BWP切换

翻看38.321 只找到了上面这段话,如果active UL BWP没有配置PRACH资源的话,需要切换到initial UL BWP发起RACH;或者在RA过程发生BWP切换的话,应该也算RACH 引起的BWP切换。

最后看下BWP的相关能力,毕竟能否支持所有的切换方式,还是靠能力说话。

bwp-SameNumerology:指示通过DCI或BWP-InactivityTime进行BWP切换时,UE支持的SCS相同的最大BWP个数。

bwp-DiffNumerology:指示通过DCI或bwp-Inactivitytimer进行BWP切换时,UE支持的不同SCS的最大BWP个数。

bwp-WithoutRestriction:指示UE是否支持无限制带宽的BWP 操作。

要是UE不上报任何BWP相关的配置,那就只能通过RRC配置的方式进行BWP切换,这也算是最基本的能力。

协议中还有规定切换时延的问题,这里就不介绍了。另外关于R16 dormant BWP的内容,等整理好再说。

 

微信同步更新欢迎关注“modem协议笔记”

 

 

 

 

 

 

 

 

 

以上是关于Bandwidth Part的主要内容,如果未能解决你的问题,请参考以下文章

装载指示器

uva 140 bandwidth (好题) ——yhx

[2016-02-20][UVA][140][Bandwidth]

UVA140-Bandwidth(搜索剪枝)

Uva 140 Bandwidth

Hadoop fs -put bandwidth 暴力版