当前位置: 首页 > news >正文

5G学习笔记之BWP

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

参考:《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。

相关文章:

5G学习笔记之BWP

我们只会经历一种人生,我们选择的人生。 参考:《5G NR标准》、《5G无线系统指南:如微见著,赋能数字化时代》 目录 1. 概述2. BWP频域位置3. 初始与专用BWP4. 默认BWP5. 切换BWP 1. 概述 在LTE的设计中,默认所有终端均能处理最大2…...

Spark 介绍

Spark 架构 Spark 是一个基于内存计算的大数据处理框架,相比 Hadoop 的 MapReduce,它能够提供 更高效的迭代计算 和 流式计算能力。Spark 采用 主从架构(Master-Slave),主要包括 Driver、Cluster Manager、Worker、Ex…...

mac Homebrew安装、更新失败

我这边使用brew安装git-lfs 一直报这个错: curl: (35) LibreSSL SSL_connect: SSL_ERROR_SYSCALL更新brew update也是报这个错误。最后使用使用大佬提供的脚本进行操作: /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/mast…...

【实战 ES】实战 Elasticsearch:快速上手与深度实践-2.2.3案例:电商订单日志每秒10万条写入优化

👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 Elasticsearch批量写入性能调优实战:2.2.3 案例:电商订单日志每秒10万条写入优化1. 原始架构与瓶颈分析1.1 初始集群配置1.2 性能瓶颈定位 2. 全链路…...

http的post请求不走http的整个缓存策略吗?

http的post请求不走http的整个缓存策略吗? DeepSeek R1 思考 33 秒 思考过程 嗯,用户问的是HTTP的POST请求是否不遵循整个缓存策略。我需要先回忆一下HTTP缓存的基本机制,然后考虑不同请求方法的缓存处理。 首先,HTTP缓存通常涉…...

c++ 预处理器和iostream 文件

在C中&#xff0c;预处理器和<iostream>头文件各自扮演关键角色&#xff0c;二者协同工作以实现程序的输入输出功能。以下是它们的详细关系和作用&#xff1a; 1. 预处理器的作用 处理预处理指令&#xff1a;预处理器在编译前执行&#xff0c;处理所有以#开头的指令&…...

【前端】前端设计中的响应式设计详解

文章目录 前言一、响应式设计的定义与作用二、响应式设计的原则三、响应式设计的实现四、响应式设计的最佳实践总结 前言 在当今数字化时代&#xff0c;网站和应用程序需要适应各种设备&#xff0c;从桌面电脑到平板电脑和手机。响应式设计应运而生&#xff0c;成为一种可以适…...

探秘基带算法:从原理到5G时代的通信变革【四】Polar 编解码(二)

文章目录 2.3.3 极化编码巴氏参数与信道可靠性比特混合生成矩阵编码举例 2.3.4 极化译码最小单元译码串行抵消译码&#xff08;SC译码&#xff09;算法SCL译码算法 2.3.5 总结**Polar 码的优势****Polar 码的主要问题****Polar 码的应用前景** 2.3.6 **参考文档** 本博客为系列…...

打开 Windows Docker Desktop 出现 Docker Engine Stopped 问题

一、关联文章: 1、Docker Desktop 安装使用教程 2、家庭版 Windows 安装 Docker 没有 Hyper-V 问题 3、安装 Windows Docker Desktop - WSL问题 二、问题解析 打开 Docker Desktop 出现问题,如下: Docker Engine Stopped : Docker引擎停止三、解决方法 1、检查服务是否…...

6.人工智能与机器学习

一、人工智能基本原理 1. 人工智能&#xff08;AI&#xff09;定义与范畴 核心目标&#xff1a;模拟人类智能行为&#xff08;如推理、学习、决策&#xff09;分类&#xff1a; 弱人工智能&#xff08;Narrow AI&#xff09;&#xff1a;专精单一任务&#xff08;如AlphaGo、…...

RabbitMQ怎么实现延时支付?

一、使用“死信队列”消息过期时间 1、原理&#xff1a; 设置消息”存活时间“&#xff0c;如果没有被及时消费&#xff0c;就会被丢弃到一个”死信队列“&#xff0c;然后消费者监听这个死信队列处理消息 2、步骤&#xff1a; 2.1、创建两个队列&#xff1a; 2.1.1、普通队…...

vite-vue3使用web-worker应用指南和报错解决

主线程&#xff1a;初始化worker和监听子线程的消息 let worker: any; const salesConfigData ref<any[]>([]); // 显示非上架 const showNotList ref(false);// /src/views/ceshi/salesConfig/worker.js worker new Worker(new URL("/src/views/ceshi/salesConf…...

校园快递助手小程序毕业系统设计

系统功能介绍 管理员端 1&#xff09;登录&#xff1a;输入账号密码进行登录 2&#xff09;用户管理&#xff1a;查看编辑添加删除 学生信息 3&#xff09;寄件包裹管理&#xff1a;查看所有的包裹信息&#xff0c;及物流信息 4&#xff09;待取件信息&#xff1a;查看已到达的…...

python量化交易——金融数据管理最佳实践——使用qteasy管理本地数据源

文章目录 统一定义的金融历史数据表最重要的数据表数据表的定义交易日历表的定义&#xff1a;交易日历表: trade_calendar qteasy是一个功能全面且易用的量化交易策略框架&#xff0c; Github地址在这里。使用它&#xff0c;能轻松地获取历史数据&#xff0c;创建交易策略并完…...

BIO、NIO、AIO、Netty从简单理解到使用

Java编程中BIO、NIO、AIO是三种不同的I/O&#xff08;输入/输出&#xff09;模型&#xff0c;它们代表了不同的I/O处理方式。 Netty就是基于Java的NIO&#xff08;New Input/Output&#xff09;类库编写的一个高性能、异步事件驱动的网络应用程序框架&#xff0c;用于快速开发可…...

计算机毕业设计SpringBoot+Vue.js工厂车间管理系统源码+文档+PPT+讲解)

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…...

一、图形图像的基本概念

文章目录 一、分辨率概念二、图形图像的区别三、位图和矢量图的区别 一、分辨率概念 图形显示计数中的分辨率概念有三种&#xff0c;即屏幕分辨率、显示分辨率和显卡分辨率。它们既有区别又有着密切的联系&#xff0c;对图形显示的处理有极大的影响。 1.屏幕分辨率 显示器分辨…...

前端跨域问题初探:理解跨域及其解决方案概览

在当今的Web开发中&#xff0c;跨域问题是一个常见且棘手的挑战 随着前端技术的不断进步&#xff0c;越来越多的应用需要从不同的域名、协议或端口获取资源 然而&#xff0c;浏览器的同源策略&#xff08;Same-Origin Policy&#xff09;限制了这种跨域请求&#xff0c;以确保…...

SQL分组问题

下列为电商公司用户访问时间数据 统计某个用户连续的访问记录&#xff0c;如果时间间隔小于60s&#xff0c;就分为一组 id ts 1001 17523641234 1001 17523641256 1002 17523641278 1001 17523641334 1002 17523641434 1001 17523641534 1001 17523641544 1002 17523…...

Oracle 数据库基础入门(二):深入理解表的约束

在 Oracle 数据库的学习进程中&#xff0c;表的约束是构建健壮、准确且高效数据库的关键要素。约束如同数据库的 “规则守护者”&#xff0c;它通过对数据的限制&#xff0c;确保了数据的完整性和一致性&#xff0c;就如同交通规则保障道路上车辆行驶的有序性一样。对于 Java 全…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join

纯 Java 项目&#xff08;非 SpringBoot&#xff09;集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...

MySQL 8.0 事务全面讲解

以下是一个结合两次回答的 MySQL 8.0 事务全面讲解&#xff0c;涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容&#xff0c;并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念&#xff08;ACID&#xff09; 事务是…...

给网站添加live2d看板娘

给网站添加live2d看板娘 参考文献&#xff1a; stevenjoezhang/live2d-widget: 把萌萌哒的看板娘抱回家 (ノ≧∇≦)ノ | Live2D widget for web platformEikanya/Live2d-model: Live2d model collectionzenghongtu/live2d-model-assets 前言 网站环境如下&#xff0c;文章也主…...

关于easyexcel动态下拉选问题处理

前些日子突然碰到一个问题&#xff0c;说是客户的导入文件模版想支持部分导入内容的下拉选&#xff0c;于是我就找了easyexcel官网寻找解决方案&#xff0c;并没有找到合适的方案&#xff0c;没办法只能自己动手并分享出来&#xff0c;针对Java生成Excel下拉菜单时因选项过多导…...

Qt 事件处理中 return 的深入解析

Qt 事件处理中 return 的深入解析 在 Qt 事件处理中&#xff0c;return 语句的使用是另一个关键概念&#xff0c;它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别&#xff1a;不同层级的事件处理 方…...