当前位置: 首页 > 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 全…...

跨平台终端与进程控制:从原理到实践

跨平台终端与进程控制&#xff1a;从原理到实践 【免费下载链接】node-pty Fork pseudoterminals in Node.JS 项目地址: https://gitcode.com/gh_mirrors/no/node-pty 在现代软件开发中&#xff0c;终端交互和进程管理是不可或缺的核心能力。无论是构建IDE、开发自动化工…...

别再花冤枉钱!和腰突颈椎病斗了 3 年,我终于踩中了康复的捷径

有没有和我一样的打工人&#xff0c;每天久坐 8 小时起步&#xff0c;下班就低头刷手机&#xff0c;年纪轻轻颈椎腰椎先 “垮了”&#xff1f; 从最开始的脖子发酸、腰部发僵&#xff0c;到后来疼到睡不着觉、手麻到握不住鼠标&#xff0c;甚至走路都直不起腰&#xff0c;这 3…...

If、switch选择结构

if单选结构package 选择结构;import java.util.Scanner;public class If单选择结构 {public static void main(String[] args) {Scanner scanner new Scanner(System.in);System.out.println("请输入内容&#xff1a;");String sscanner.nextLine();//equals&#x…...

高效突破:Cursor Pro功能优化与多场景应用指南

高效突破&#xff1a;Cursor Pro功能优化与多场景应用指南 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached your trial requ…...

运算放大器入门难?这篇超详细运算放大器原理与应用指南帮你轻松上手!

1. 运算放大器到底是什么&#xff1f; 第一次接触运算放大器时&#xff0c;我也被这个专业名词吓到了。但后来发现&#xff0c;它其实就是个"超级放大镜"——能把微弱的电信号放大成千上万倍。想象一下医生用的听诊器&#xff0c;它能将微弱的心跳声放大到清晰可闻&a…...

告别手动!用Python+GDAL批量处理GlobeLand30影像:下载、去黑边、镶嵌裁剪全自动

用PythonGDAL打造GlobeLand30全自动处理流水线 遥感影像处理一直是地理信息科学领域的核心工作之一。对于需要处理大范围GlobeLand30数据的科研人员和开发者来说&#xff0c;传统的手动操作不仅效率低下&#xff0c;还容易引入人为错误。想象一下&#xff0c;当你需要处理覆盖整…...

7天掌握Driver Store Explorer:Windows驱动管理的完整指南

7天掌握Driver Store Explorer&#xff1a;Windows驱动管理的完整指南 【免费下载链接】DriverStoreExplorer Driver Store Explorer [RAPR] 项目地址: https://gitcode.com/gh_mirrors/dr/DriverStoreExplorer Driver Store Explorer&#xff08;简称RAPR&#xff09;是…...

Swiper动画进阶:手把手教你用Swiper Animate制作节日主题动画(2023最新版)

Swiper动画进阶&#xff1a;手把手教你用Swiper Animate制作节日主题动画&#xff08;2023最新版&#xff09; 当节日氛围遇上交互设计&#xff0c;如何让静态页面"活"起来&#xff1f;Swiper Animate作为Swiper生态中的动画引擎&#xff0c;能通过简单的类名配置实现…...

小米智能家居与Home Assistant深度整合方案

小米智能家居与Home Assistant深度整合方案 【免费下载链接】ha_xiaomi_home Xiaomi Home Integration for Home Assistant 项目地址: https://gitcode.com/GitHub_Trending/ha/ha_xiaomi_home 小米智能家居与Home Assistant的深度整合为用户提供了全面的智能设备控制解…...

百度地图API实战:5分钟搞定JS坐标系转换(wgs84转bd09ll避坑指南)

百度地图坐标系转换实战&#xff1a;从原理到避坑的全方位指南 第一次在项目里集成百度地图时&#xff0c;我盯着屏幕上偏移了500多米的标记点愣了半天——明明从GPS设备获取的经纬度坐标完全正确&#xff0c;为什么在地图上显示的位置却差之千里&#xff1f;这个困扰无数开发者…...