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 前导码格式与小区覆盖


根据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输出࿱…...
【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 读取/写入 指定单元格的内容
方法如下: 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(类似PostgreSQL)常用命令和注意事项1. 连接到GaussDB数据库2. 查看当前数据库中的所有Schema3. 进入指定的Schema4. 查看Schema下的表、序列、视图5. 查看Schema下所有的表6. 查看表结构7. 开始事务8. 查询表字段注释9. 注意事项&a…...
【HM-React】02. React基础-下
React表单控制 受控绑定 概念:使用React组件的状态(useState)控制表单的状态 function App(){const [value, setValue] useState()return (<input type"text" value{value} onChange{e > setValue(e.target.value)}/>) …...
【力扣热题100】—— Day3.反转链表
你不会永远顺遂,更不会一直年轻,你太安静了,是时候出发了 —— 24.12.2 206. 反转链表 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出&…...
【k8s深入学习之 event 记录】初步了解 k8s event 记录机制
event 事件记录初始化 一般在控制器都会有如下的初始化函数,初始化 event 记录器等参数 1. 创建 EventBroadcaster record.NewBroadcaster(): 创建事件广播器,用于记录和分发事件。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:一个用于构建神经网络的灵活和高效库 在深度学习领域,TensorFlow 和 PyTorch 作为主流的框架,已被广泛使用。不过,Flax 作为一个较新的库,近年来得到了越来越多的关注。Flax 是一个由Google Research团队…...
Nginx auth_request详解
网上看到多篇先关文章,觉得很不错,这里合并记录一下,仅供学习参考。 模块 nginx-auth-request-module 该模块是nginx一个安装模块,使用配置都比较简单,只要作用是实现权限控制拦截作用。默认高版本nginx(比…...
基于Java Springboot个人财务APP且微信小程序
一、作品包含 源码数据库设计文档万字PPT全套环境和工具资源部署教程 二、项目技术 前端技术:Html、Css、Js、Vue、Element-ui 数据库:MySQL 后端技术:Java、Spring Boot、MyBatis 三、运行环境 开发工具:IDEA/eclipse 微信…...
vue3图片报错转换为空白不显示的方法
vue3图片报错转换为空白不显示的方法 直接上代码: <el-table-column label"领料人" align"center"><template #default"scope"><el-imagev-if"scope.row.receiver":src"scope.row.receiver"style…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...
stm32wle5 lpuart DMA数据不接收
配置波特率9600时,需要使用外部低速晶振...
Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
在 Kubernetes 集群中,如何在保障应用高可用的同时有效地管理资源,一直是运维人员和开发者关注的重点。随着微服务架构的普及,集群内各个服务的负载波动日趋明显,传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...
Qt的学习(一)
1.什么是Qt Qt特指用来进行桌面应用开发(电脑上写的程序)涉及到的一套技术Qt无法开发网页前端,也不能开发移动应用。 客户端开发的重要任务:编写和用户交互的界面。一般来说和用户交互的界面,有两种典型风格&…...
路由基础-路由表
本篇将会向读者介绍路由的基本概念。 前言 在一个典型的数据通信网络中,往往存在多个不同的IP网段,数据在不同的IP网段之间交互是需要借助三层设备的,这些设备具备路由能力,能够实现数据的跨网段转发。 路由是数据通信网络中最基…...
RabbitMQ 各类交换机
为什么要用交换机? 交换机用来路由消息。如果直发队列,这个消息就被处理消失了,那别的队列也需要这个消息怎么办?那就要用到交换机 交换机类型 1,fanout:广播 特点 广播所有消息:将消息…...
spring中的@KafkaListener 注解详解
KafkaListener 是 Spring Kafka 提供的一个核心注解,用于标记一个方法作为 Kafka 消息的消费者。下面是对该注解的详细解析: 基本用法 KafkaListener(topics "myTopic", groupId "myGroup") public void listen(String message)…...
