5G学习笔记之BWP

news2025/4/12 12:41:42

我们只会经历一种人生,我们选择的人生。

参考:《5G NR标准》、《5G无线系统指南:如微见著,赋能数字化时代》

目录

  • 1. 概述
  • 2. BWP频域位置
  • 3. 初始与专用BWP
  • 4. 默认BWP
  • 5. 切换BWP

1. 概述

在LTE的设计中,默认所有终端均能处理最大20MHz的整个载波带宽。在NR的设计中,NR支持非常大的载波带宽,让所有终端都可以接收整个载波带宽是不合理的。因此,NR设计需要考虑如下:

  • 如果不要求所有终端都具备接收整个载波带宽的能力,那么需要为如何处理不同带宽能力的终端而特别设计;
  • 如果要求所有终端都可以接收整个载波带宽,终端接收大带宽信号所引起的功耗增加是一个非常重要的问题。为了解决这个问题,引入了接收带宽自适应技术。通过接收带宽自适应技术,终端只在较小的带宽上监听下行控制信道,以接收少量的下行数据传输。当终端有大量的数据接收时,则打开整个带宽进行接收

为了支持没有能力处理整个载波带宽的终端和接收带宽自适应这两个功能,定义了部分带宽(Bandwidth Part,BWP):从公共资源块的某个起始位置开始,一组连续的资源块。每个部分带宽都对应一种参数集(子载波间隔和CP长度)。

对于每个服务小区,至少配置一个初始下行 BWP,一个(服务小区只配置了一个UL)或者两个((配置了Supplementary Uplink,即SUL)初始上行BWP,初始BWP ID为0;还可以配置上行专用BWP下行专用BWP,专用BWP ID为1~4。在同一时间内,只有1个下行BWP和1个上行BWP处于激活状态(包括初始BWP和专用 BWP),UE不应在BWP之外接收和发送数据。

每个BWP包含公共(common)参数和专用(dedicated)参数,所有BWP的公共参数都属于小区级,所有BWP的专用参数都属于UE级。

2. BWP频域位置

UE获取BWP频域位置的步骤如下:

  • UE盲检测得出SSB位置;
  • MIB:UE通过MIB参数 pdcch-ConfigSIB1,可获得CORESET0相对于特定CRB的偏移offset,得出CORESET0COntrol REsource SET,控制资源集)的位置;
  • SIB1:在CORESET0上盲检调度 SIB1的DCI1_0,检测到DCI1_0后进一步解析;
  • 通过PBCH参数Kssb和SIB1参数 offsetToPointA,得出 pointA 的位置;
  • 通过 SIB1参数 scs-SpecifcCarrierList(offsetToCarrier 和 carrierBandwidth)得到下行载波的起始位置和带宽;
  • 通过SIB1参数,可获得BWP0的频域范围;
  • 通过BWP参数locationAndBandwidbh得出BWP的起始位置和大小

在这里插入图片描述

3. 初始与专用BWP

(1)初始BWP
PCell通过SIB1和RRC信令配置初始BWP;PSCell 和 SCell通过RRC重配消息配置。

对于PCell,初始BWP的公共参数通过SIB1下发;初始BWP的专用参数可以配置,也可以不配置,取决于厂商策略,若配置,通过RRC Setup或RRC Reconfiguration

对于PSCeIl和SCell,初始BWP的公共参数通过RRC Reconfiguration下发;初始BWP的专用参数可以配置,也可以不配置,取决于厂商策略,若配置,依然是通过RRC Reconfiguration。

(2)专用BWP

专用BWP都是通过RRC Reconfiguration配置的。对于一个UE,在每个服务小区最多可以配置4个专用BWP,每个专用BWP可以配置专用参数(UE级)和公共参数(小区级)。

(3)BWP配置选择

  • BWP0没有专用配置:如果UE只支持一个BWP,那么除了BWP0,还可以配置BWP1;如果UE支持多个BWP,那么最多还可以配置4个专用BWP,UE不能通过DCI切回到 BWP0
    在这里插入图片描述
  • )BWP0有专用配置:如果UE只支持一个BWP,那么只能配置为BWP0;如果UE支持多个BWP,那么最多还可以配置3个专用BWP,UE可以在这些BWP之间通过DCI来回切换。
    在这里插入图片描述

4. 默认BWP

对于一个服务小区,UE可以通过参数 ServingCellConfig->defaultDownlinkBWP-Id,在所有配置的下行BWP内配置一个默认下行BWP。如果没有配置defaultDownlinkBWP-Id,则初始下行BWP为默认下行 BWP。

如果UE配置了ServingCellConfig->bwp-InactivityTimer,则该定时器超时,UE回落到默认下行 BWP;如果收到RRC消息,但是没有配置bwp-InactivityTimer,且此时存在运行的 bwp-InactivityTimer,则停止该定时器。

defaultDownlinkBWP-Id和bwp-InactivityTimer都属于UE的服务小区级参数,不属于BWP 级参数。

若配置了 bwp-InactivityTimer,启动或者重启bwp-InactivityTimer定时器的两种情况:

  • 以下3个条件同时成立:

    • 当前激活的下行BWP不是默认下行BWP(配置了defaultDownlinkBWP-Id)或者不是初始下行BWP(没有配置 defaultDownlinkBWP-Id);
    • 当前激活 BWP 收到了C-RNTI/CS-RNTI加扰的DCI0或DCI1(包括CA的跨载波调度),或者在配置的授权上发送或收到了MACPDU;
    • 没有正在进行的RA过程(SCell发生的RA过程,对SpCell也认为存在RA过程)
  • 如果收到了指示下行BWP切换的DCI,并且指示切换到的BWP不是默认下行BWP(配置了 defaultDownlinkBWP-Id)或者不是初始下行 BWP( 没有配置 defaultDownlinkBWPId )

停止bwp-InactivityTimer定时器的情况

  • 在SpCell 发起RA;
  • 在SCell发起 RA过程时
  • 收到RRC消息,但是没有配置bwp-InactivityTimer

5. 切换BWP

BWP切换:激活一个非激活态的BWP,同时去激活一个激活的BWP。BWP切换有4种方式:

  • DCI指示:基站可以通过DC1_1或 DCI0_1的Bandwidth part indicator字段指示来切换 BWP。若UE不支持通过 DCI切换BWP,则忽略该字段。

    • 下行BWP:当 UE 接收到 DC1_1,若包含 Bandwidth part indicator 字段,并且字段指示的不是当前激活的下行BWP时,则UE切换到指示的下行BWP
    • 上行BWP:当 UE 接收到 DC0_1,若包含 Bandwidth part indicator 字段,并且字段指示的不是当前激活的上行BWP时,则UE切换到指示的上行BWP
  • bwp-inactivityTimer 超时:UE 的定时器 bwp-InactivityTimer(RRC 配置,单位为ms)超时后,UE回落到默认下行BWP。(how about uplink bwp???)

  • 通过RRC信令
    在这里插入图片描述

  • RA过程:发起RA时,当前使用的BWP没有配置RACH资源,则切回到初始BWP。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2309077.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(十一)基于vue3+mapbox-GL实现模拟高德实时导航轨迹播放

要在 Vue 3 项目中结合 Mapbox GL 实现类似高德地图的实时导航轨迹功能,您可以按照以下步骤进行: 安装依赖: 首先,安装 mapbox-gl 和 @turf/turf 这两个必要的库: npm install mapbox-gl @turf/turf引入 Mapbox GL: 在组件中引入 mapbox-gl 并初始化地图实例: <templ…

【Transformer模型学习】第三篇:位置编码

文章目录 0. 前言1. 为什么需要位置编码&#xff1f;2. 如何进行位置编码&#xff1f;3. 正弦和余弦位置编码4. 举个例子4.1 参数设置4.2 计算分母项4.3 计算位置编码4.4 位置编码矩阵 5. 相对位置信息6. 改进的位置编码方式——RoPE6.1 RoPE的核心思想6.2 RoPE的优势 7. 总结 …

(十 六)趣学设计模式 之 责任链模式!

目录 一、 啥是责任链模式&#xff1f;二、 为什么要用责任链模式&#xff1f;三、 责任链模式的实现方式四、 责任链模式的优缺点五、 责任链模式的应用场景六、 总结 &#x1f31f;我的其他文章也讲解的比较有趣&#x1f601;&#xff0c;如果喜欢博主的讲解方式&#xff0c;…

20250225-代码笔记03-class CVRPModel AND other class

文章目录 前言一、class CVRPModel(nn.Module):__init__(self, **model_params)函数功能函数代码 二、class CVRPModel(nn.Module):pre_forward(self, reset_state)函数功能函数代码 三、class CVRPModel(nn.Module):forward(self, state)函数功能函数代码 四、def _get_encodi…

面试常问的压力测试问题

性能测试作为软件开发中的关键环节&#xff0c;确保系统在高负载下仍能高效运行。压力测试作为性能测试的重要类型&#xff0c;旨在通过施加超出正常负载的压力&#xff0c;观察系统在极端条件下的表现。面试中&#xff0c;相关问题常被问及&#xff0c;包括定义、重要性、与负…

使用Java构建高效的Web服务架构

使用Java构建高效的Web服务架构 随着互联网技术的飞速发展&#xff0c;Web服务在现代应用中扮演着至关重要的角色。尤其是在企业级应用中&#xff0c;如何构建一个高效、可扩展且易维护的Web服务架构&#xff0c;成为了开发者和架构师面临的一项重要挑战。Java作为一种成熟、稳…

《Python实战进阶》No 10:基于Flask案例的Web 安全性:防止 SQL 注入、XSS 和 CSRF 攻击

第10集&#xff1a;Web 安全性&#xff1a;防止 SQL 注入、XSS 和 CSRF 攻击 在现代 Web 开发中&#xff0c;安全性是至关重要的。无论是用户数据的保护&#xff0c;还是系统稳定性的维护&#xff0c;开发者都需要对常见的 Web 安全威胁有深刻的理解&#xff0c;并采取有效的防…

蓝桥备赛(六)- C/C++输入输出

一、OJ题目输入情况汇总 OJ&#xff08;online judge&#xff09; 接下来会有例题 &#xff0c; 根据一下题目 &#xff0c; 对这些情况进行分析 1.1 单组测试用例 单在 --> 程序运行一次 &#xff0c; 就处理一组 练习一&#xff1a;计算 (ab)/c 的值 B2009 计算 (ab)/c …

企微审批中MySQL字段TEXT类型被截断的排查与修复实践

在MySQL中&#xff0c;TEXT类型字段常用于存储较大的文本数据&#xff0c;但在一些应用场景中&#xff0c;当文本内容较大时&#xff0c;TEXT类型字段可能无法满足需求&#xff0c;导致数据截断或插入失败。为了避免这种问题&#xff0c;了解不同文本类型&#xff08;如TEXT、M…

[ISP] AE 自动曝光

相机通过不同曝光参数&#xff08;档位快门时间 x 感光度 x 光圈大小&#xff09;控制进光量来完成恰当的曝光。 自动曝光流程大概分为三部分&#xff1a; 1. 测光&#xff1a;点测光、中心测光、全局测光等&#xff1b;通过调整曝光档位使sensor曝光在合理的阈值内&#xff0…

小程序画带圆角的圆形进度条

老的API <canvas id"{{canvasId}}" canvas-id"{{canvasId}}" style"opacity: 0;" class"canvas"/> startDraw() {const { canvasId } this.dataconst query this.createSelectorQuery()query.select(#${canvasId}).bounding…

16. LangChain实战项目2——易速鲜花内部问答系统

需求简介 易束鲜花企业内部知识库如下&#xff1a; 本实战项目设计一个内部问答系统&#xff0c;基于这些内部知识&#xff0c;回答内部员工的提问。 在前面课程的基础上&#xff0c;需要安装的依赖包如下&#xff1a; pip install docx2txt pip install qdrant-client pip i…

FPGA开发,使用Deepseek V3还是R1(8):FPGA的全流程(简略版)

以下都是Deepseek生成的答案 FPGA开发&#xff0c;使用Deepseek V3还是R1&#xff08;1&#xff09;&#xff1a;应用场景 FPGA开发&#xff0c;使用Deepseek V3还是R1&#xff08;2&#xff09;&#xff1a;V3和R1的区别 FPGA开发&#xff0c;使用Deepseek V3还是R1&#x…

微服务学习(1):RabbitMQ的安装与简单应用

目录 RabbitMQ是什么 为什么要使用RabbitMQ RabbitMQ的安装 RabbitMQ架构及其对应概念 队列的主要作用 交换机的主要作用 RabbitMQ的应用 通过控制面板操作&#xff08;实现收发消息&#xff09; RabbitMQ是什么 RabbitMQ是一个开源的消息队列软件&#xff08;消息代理…

Starrocks入门(二)

1、背景&#xff1a;考虑到Starrocks入门这篇文章&#xff0c;安装的是3.0.1版本的SR&#xff0c;参考&#xff1a;Starrocks入门-CSDN博客 但是官网的文档&#xff0c;没有对应3.0.x版本的资料&#xff0c;却有3.2或者3.3或者3.4或者3.1或者2.5版本的资料&#xff0c;不要用较…

【北京迅为】itop-3568 开发板openharmony鸿蒙烧写及测试-第1章 体验OpenHarmony—烧写镜像

瑞芯微RK3568芯片是一款定位中高端的通用型SOC&#xff0c;采用22nm制程工艺&#xff0c;搭载一颗四核Cortex-A55处理器和Mali G52 2EE 图形处理器。RK3568 支持4K 解码和 1080P 编码&#xff0c;支持SATA/PCIE/USB3.0 外围接口。RK3568内置独立NPU&#xff0c;可用于轻量级人工…

Electron一小时快速上手

1. 什么是 Electron? Electron 是一个跨平台桌面应用开发框架&#xff0c;开发者可以使用 HTML、CSS、JavaScript 等 Web 技术来构建桌面应用程序。它的本质是结合了 Chromium 和 Node.js&#xff0c;现在广泛用于桌面应用程序开发。例如&#xff0c;以下桌面应用都使用了 El…

算法004——盛最多水的容器

力扣——盛最多水的容器点击即可跳转 当我们选择1号线和8号线时&#xff0c;下标为 1 和 8 形成容器的容积的高度是由 较矮的决定的&#xff0c;即下标为 8 的位置&#xff1b; 而宽度则是 1到8 之间的距离&#xff0c;为 8-17&#xff0c;此时容器的容积为 7 * 7 49。 当我…

Java Web-Filter

Filter 在 Java Web 开发中&#xff0c;Filter&#xff08;过滤器&#xff09;是 Servlet 规范中的一个重要组件&#xff0c;它可以对客户端与服务器之间的请求和响应进行预处理和后处理。以下从多个方面详细介绍 Java Web 中的 Filter&#xff1a; 一、概念和作用 概念&…

DeepSeek-R1训练时采用的GRPO算法数学原理及算法过程浅析

先来简单看下PPO和GRPO的区别&#xff1a; PPO&#xff1a;通过奖励和一个“评判者”模型&#xff08;critic 模型&#xff09;评估每个行为的“好坏”&#xff08;价值&#xff09;&#xff0c;然后小步调整策略&#xff0c;确保改进稳定。 GRPO&#xff1a;通过让模型自己生…