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

5G学习笔记之PRACH

即使是阴天,也要记得出门晒太阳哦

目录

  • 1. 概述
  • 2. PRACH Preamble
  • 3. PRACH Preamble 类型
    • 3.1 长前导码
    • 3.2 短前导码
    • 3.3 前导码格式与小区覆盖
  • 4. PRACH时频资源
    • 4.1 小区所有可用PRACH资源
    • 4.2 SSB和RACH的关系
    • 4.3 PRACH时频资源配置

1. 概述

随机接入前导码,Random Access Preamble,也称为物理随机接入信道,即PRACH。前导码的发送,对应PRACH这个特殊的物理信道。

在SIB1随机接入配置中,提供了:小区可用的Preamble信息, Preamble信息发送功率相关参数,PRACH的时频资源,以及SSB索引到RACH时机的映射等。

2. PRACH Preamble

前导码Preamble是基于ZC序列生成的。
在这里插入图片描述

PRACH ZC序列支持4种长度L:139、839、569、1149,其中569和1149是为了支持非授权频谱,在R16引入的。

  • 长度为L的ZC序列用于基本的NR前导序列(基序列 ),共有L-1个不同的序列,每个对应唯一的根序列索引
  • 基序列通过不同的循环移位,可以生成不同的前导序列。在接收端,只有两个序列的相对循环移位大于序列的接收定时之差才能保持正交性,小区可用循环移位的集合成为零相关域(zeroCorrelationZone)
  • 零相关域参数:在SIB1中配置,零相关域参数对应可用循环移位的集合。
    在这里插入图片描述

一个小区最多有64个不同的前导码,每个前导码用前导码索引来标识,小区可用的前导码由prach-RootSequenceIndex给出。
在这里插入图片描述

  • 对于同一个根序列,经过循环移位生成L/Ncs个Preamble,如果小于64个,则根序列+1后,继续通过循环移位生成Preamble,知道满足64个。如果循环移位配置为0,则直接通过根序列递增的方式,生成64个Preamble
  • 在UE静止或低速移动场景下,不考虑多普勒频移时,循环移位没有限制。在UE高速移动场景下,由于多普勒效应,频偏会导致基站在检测PRACH信道时,时域上出现额外的相关峰,这会影响PRACH检测。因此在高速场景下,针对不同的根序列,要限制某些循环移位来规避这个问题。即配置限制集。

3. PRACH Preamble 类型

NR标准定义了两种类型的前导码:长前导码和短前导码。

3.1 长前导码

长前导码有4种格式,基于L=839生成的,对应特定的参数集,特定的重复次数,以及特定长度的循环前缀。子载波间隔{1.25,5}KHz,仅用于6GHz以下(FR1)。

在这里插入图片描述
在这里插入图片描述

3.2 短前导码

短前导码有9种格式,基于L=139,571,1151生成的,短前导码使用的子载波间隔如下:

  • FR1:15kHz或30kHz
  • FR2:60kHz或120kHz
    在这里插入图片描述
    在这里插入图片描述

3.3 前导码格式与小区覆盖

RACH Preamble Time domain structure

在这里插入图片描述

根据PRACH信道格式分析小区支持的最大覆盖半径,需要考虑用户间干扰和符号间干抗。

  • 用户间干扰:基站接收到的小区最远用户的PRACH最后时域位置,不能和下一个上下行资源冲突。PRACH信道GAP和时长可以保护用户间干扰
  • 符号间干扰:小区最远用户的PRACH发送信号经过空中无线信道多径传输后,符号之间的干扰不能超过CP时长保护的范围,CP时长也可以用来保护用户间干扰。这个和空口信道摸型相关,通常按照通用模型计算。

小区中循环移位的大小Ncs和小区最大覆盖半径之间也有关系。通常情况下,是根据PRACH格式和规划的小区覆盖半径,来规划Ncs的大小,不是用Ncs的值来限定小区最大覆盖半径。

4. PRACH时频资源

4.1 小区所有可用PRACH资源

在这里插入图片描述

小区内所有可用的PRACH时频资源由以下几个要素决定:

  • RACH周期,范围:10ms ~ 160ms,即1个帧~16个帧。
  • RACH周期内的RACH时隙集合,范围:1 ~ 8。注:都在同一个特定帧上。
  • RACH频域资源:PRACH第一个频域资源位置,频域上RACH时机数目。

RACH时隙:RACH slot

RACH时机:RACH Occasion,一个RACH时隙中可能存在多个RACH时机,包含K×M个连续的资源块。M表示RACH时机的频域大小,取决于前导码类型(长前导/短前导)。K表示频域上RACH时机的数目,由此可以看出,一个RACH时隙最多可以支持来自不同UE的K个前导码频分复用。

4.2 SSB和RACH的关系

NR初始接入支持波束管理,其实现机制是:

  • 一个SSB突发集内有多个 SSB,每个SSB关联到 MIB/PBCH 中广播的SSB时间索引。不同的 SSB ,对应 SSB 发送的不同下行波束。只有当SSB的波束扫描信号覆盖到UE时,UE才有机会发送PRACH随机接入。

  • 将SSB时间索引和RACH时机以及特定的前导码集合进行关联。这个由SIB1中的RACH配置指定。
    在这里插入图片描述

  • 基站基于接收到的前导码来确定UE位于哪个下行波束,这个波束可以用作给终端后续下行传输的初始波束。

4.3 PRACH时频资源配置

在这里插入图片描述

相关文章:

5G学习笔记之PRACH

即使是阴天,也要记得出门晒太阳哦 目录 1. 概述 2. PRACH Preamble 3. PRACH Preamble 类型 3.1 长前导码 3.2 短前导码 3.3 前导码格式与小区覆盖 4. PRACH时频资源 4.1 小区所有可用PRACH资源 4.2 SSB和RACH的关系 4.3 PRACH时频资源配置 1. 概述 随机接入…...

Ubuntu24.04配置DINO-Tracker

一、引言 记录 Ubuntu 配置的第一个代码过程 二、更改conda虚拟环境的默认安装路径 鉴于不久前由于磁盘空间不足引发的重装系统的惨痛经历,在新系统装好后当然要先更改虚拟环境的默认安装路径。 输入指令: conda info可能因为我原本就没有把 Anacod…...

抓包之查看websocket内容

写在前面 本文看下websocket抓包相关内容。 1:正文 websocket基础环境搭建参考这篇文章。 启动后,先看chrome的network抓包,这里我们直接使用is:running来过滤出websocket的请求: 可以清晰的看到发送的内容以及响应的内容。在…...

【Leetcode Top 100】21. 合并两个有序链表

问题背景 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 数据约束 两个链表的节点数目范围是 [ 0 , 50 ] [0, 50] [0,50] − 100 ≤ N o d e . v a l ≤ 100 -100 \le Node.val \le 100 −100≤Node.val≤100 l 1 l_1 …...

账本模型

05-账本模型 1 账本模型 1.1 传统线性增长模型 传统的 MySQL 等系统采用线性增长的日志模型,通过一个 Leader 和多个 Follower 进行状态同步。这种方式有单点的带宽瓶颈问题。 1.2 区块链共享账本模型 共享账本:树形增长。在去中心化网络中,…...

openwrt利用nftables在校园网环境下开启nat6 (ipv6 nat)

年初写过一篇openwrt在校园网环境下开启ipv6 nat的文章,利用ip6tables控制ipv6的流量。然而从OpenWrt22版本开始,系统内置的防火墙变为nftables,因此配置方法有所改变。本文主要参考了OpenWRT使用nftables实现IPv6 NAT 这篇文章。 友情提示 …...

24.12.02 Element

import { createApp } from vue // 引入elementPlus js库 css库 import ElementPlus from element-plus import element-plus/dist/index.css //中文语言包 import zhCn from element-plus/es/locale/lang/zh-cn //图标库 import * as ElementPlusIconsVue from element-plus/i…...

记录QT5迁移到QT6.8上的一些问题

经常看到有的同学说网上的教程都是假的,巴拉巴拉,看看人家发布时间,Qt官方的API都会有所变动,多搜索,多总结,再修改记录。 下次遇到问题多这样搜索 QT 4/5/6 xxx document,对比一下就知道…...

清理Linux/CentOS7根目录的思路

在使用Linux服务器过程中,经常会遇到磁盘空间不足的问题,好多应用默认安装在根目录下,记录一下如何找到问题所在,清理根目录(/) 1. 检查空间使用情况 1.1 查看分区占用: df -h输出&#xff1…...

【LInux】kvm添加u盘启动引导

前提:要有一个u盘的启动盘 1、查看u盘设备信息 # lsusb ....忽略其他设备信息,查看到u盘设备 Bus 005 Device 005: ID 0951:1666 Kingston Technology DataTraveler 100 G3/G4/SE9 G2## 主要记住ID 0951:1666确认id为ID 0951:1666 2、修改配置文件 如…...

.net XSSFWorkbook 读取/写入 指定单元格的内容

方法如下&#xff1a; using NPOI.SS.Formula.Functions;using NPOI.SS.UserModel;using OfficeOpenXml.FormulaParsing.Excel.Functions.DateTime;using OfficeOpenXml.FormulaParsing.Excel.Functions.Numeric;/// <summary>/// 读取Excel指定单元格内容/// </summa…...

GaussDB(类似PostgreSQL)常用命令和注意事项

文章目录 前言GaussDB&#xff08;类似PostgreSQL&#xff09;常用命令和注意事项1. 连接到GaussDB数据库2. 查看当前数据库中的所有Schema3. 进入指定的Schema4. 查看Schema下的表、序列、视图5. 查看Schema下所有的表6. 查看表结构7. 开始事务8. 查询表字段注释9. 注意事项&a…...

【HM-React】02. React基础-下

React表单控制 受控绑定 概念&#xff1a;使用React组件的状态&#xff08;useState&#xff09;控制表单的状态 function App(){const [value, setValue] useState()return (<input type"text" value{value} onChange{e > setValue(e.target.value)}/>) …...

【力扣热题100】—— Day3.反转链表

你不会永远顺遂&#xff0c;更不会一直年轻&#xff0c;你太安静了&#xff0c;是时候出发了 —— 24.12.2 206. 反转链表 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5] 输出&…...

【k8s深入学习之 event 记录】初步了解 k8s event 记录机制

event 事件记录初始化 一般在控制器都会有如下的初始化函数&#xff0c;初始化 event 记录器等参数 1. 创建 EventBroadcaster record.NewBroadcaster(): 创建事件广播器&#xff0c;用于记录和分发事件。StartLogging(klog.Infof): 将事件以日志的形式输出。StartRecording…...

redhat 7.9配置阿里云yum源

1、mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup/ 2、添加dns vim/etc/resolv.conf nameserver 8.8.8.8 nameserver 8.8.4.4 nameserver 114.114.114.114 #配置完先检查下通不通 3、vi /etc/yum/pluginconf.d/subscription-manager.conf # 将 “enabled1” 改为 “ena…...

深入探索Flax:一个用于构建神经网络的灵活和高效库

深入探索Flax&#xff1a;一个用于构建神经网络的灵活和高效库 在深度学习领域&#xff0c;TensorFlow 和 PyTorch 作为主流的框架&#xff0c;已被广泛使用。不过&#xff0c;Flax 作为一个较新的库&#xff0c;近年来得到了越来越多的关注。Flax 是一个由Google Research团队…...

Nginx auth_request详解

网上看到多篇先关文章&#xff0c;觉得很不错&#xff0c;这里合并记录一下&#xff0c;仅供学习参考。 模块 nginx-auth-request-module 该模块是nginx一个安装模块&#xff0c;使用配置都比较简单&#xff0c;只要作用是实现权限控制拦截作用。默认高版本nginx&#xff08;比…...

基于Java Springboot个人财务APP且微信小程序

一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术&#xff1a;Html、Css、Js、Vue、Element-ui 数据库&#xff1a;MySQL 后端技术&#xff1a;Java、Spring Boot、MyBatis 三、运行环境 开发工具&#xff1a;IDEA/eclipse 微信…...

vue3图片报错转换为空白不显示的方法

vue3图片报错转换为空白不显示的方法 直接上代码&#xff1a; <el-table-column label"领料人" align"center"><template #default"scope"><el-imagev-if"scope.row.receiver":src"scope.row.receiver"style…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

vscode里如何用git

打开vs终端执行如下&#xff1a; 1 初始化 Git 仓库&#xff08;如果尚未初始化&#xff09; git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建

制造业采购供应链管理是企业运营的核心环节&#xff0c;供应链协同管理在供应链上下游企业之间建立紧密的合作关系&#xff0c;通过信息共享、资源整合、业务协同等方式&#xff0c;实现供应链的全面管理和优化&#xff0c;提高供应链的效率和透明度&#xff0c;降低供应链的成…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

C++ 求圆面积的程序(Program to find area of a circle)

给定半径r&#xff0c;求圆的面积。圆的面积应精确到小数点后5位。 例子&#xff1a; 输入&#xff1a;r 5 输出&#xff1a;78.53982 解释&#xff1a;由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982&#xff0c;因为我们只保留小数点后 5 位数字。 输…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包&#xff08;Closure&#xff09;&#xff1f;闭包有什么应用场景和潜在问题&#xff1f;2.解释 JavaScript 的作用域链&#xff08;Scope Chain&#xff09; 二、原型与继承3.原型链是什么&#xff1f;如何实现继承&a…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中&#xff0c;新增了一个本地验证码接口 /code&#xff0c;使用函数式路由&#xff08;RouterFunction&#xff09;和 Hutool 的 Circle…...

MySQL 8.0 事务全面讲解

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

数据库正常,但后端收不到数据原因及解决

从代码和日志来看&#xff0c;后端SQL查询确实返回了数据&#xff0c;但最终user对象却为null。这表明查询结果没有正确映射到User对象上。 在前后端分离&#xff0c;并且ai辅助开发的时候&#xff0c;很容易出现前后端变量名不一致情况&#xff0c;还不报错&#xff0c;只是单…...

【1】跨越技术栈鸿沟:字节跳动开源TRAE AI编程IDE的实战体验

2024年初&#xff0c;人工智能编程工具领域发生了一次静默的变革。当字节跳动宣布退出其TRAE项目&#xff08;一款融合大型语言模型能力的云端AI编程IDE&#xff09;时&#xff0c;技术社区曾短暂叹息。然而这一退场并非终点——通过开源社区的接力&#xff0c;TRAE在WayToAGI等…...