5G/NR 学习笔记: RAR随机接入过程
*本文如果没有特别说明,指的都是36;如果是38,则会明确指出。
随机接入的目的
在小区搜索过程之后,UE已经与小区取得了下行同步,因此UE能够接收下行数据。但UE只有与小区取得上行同步,才能进行上行传输。UE通过随机接入过程(Random Access Procedure)与小区建立连接并取得上行同步。
随机接入的主要目的:(1)获得上行同步;(2)为UE分配一个唯一的标识C-RNTI。
随机接入的原因(触发条件)
随机接入过程通常由以下6类事件之一触发:(见36.300的10.1.5节)
- 初始接入时建立无线连接:UE会从RRC_IDLE态到RRC_CONNECTED态;
- RRC连接重建过程(RRC Connection Re-establishment procedure):以便UE在无线链路失败(Radio Link Failure)后重建无线连接。
- 切换(handover):此时UE需要与新的小区建立上行同步。
- RRC_CONNECTED态下,下行数据到达(此时需要回复ACK/NACK)时,上行处于“不同步”状态;
- RRC_CONNECTED态下,上行数据到达(例:需要上报测量报告或发送用户数据)时,上行处于“不同步”状态或没有可用的PUCCH资源用于SR传输(此时允许已经处于上行同步状态的UE使用RACH来替代SR的作用);
- RRC_CONNECTED态下,为了定位UE,需要timing advance。
但是38.300另外添加了三件事情:
- 从RRC_INACTIVE状态的变化
- 需要其他心痛信息SI
- beam失败恢复
随机接入的方式
随机接入过程有2种不同的方式:
- 基于竞争(Contention based):应用于之前介绍的前5种事件;
- 基于非竞争(Non-Contention based或Contention-Free based):只应用于之前介绍的36系列的 (3)、(4) 、(6)三种事件。
随机接入的步骤
步骤一 UE发送preamble
随机接入过程的步骤一就是UE发送random access preamble。Preamble的主要作用是告诉eNodeB有一个随机接入请求,并使得eNodeB能估计其与UE之间的传输时延,以便eNodeB校准uplink timing并将校准信息通过timing advance command告知UE。
(Preamable 是个复杂的过程,以后有机会再整理)一些重要性结论如下:
- preamble由2部分组成:循环前缀(CP)和preamble序列(如36.211的Figure 5.7.1-1所示)。
- Preamble在PRACH上传输。eNodeB会通过广播系统信息SIB2来通知所有的UE,允许在哪些时频资源上传输preamble。(由prach-ConfigIndex和prach-FreqOffset字段决定,详见36.211的5.7节)
- 每个小区有64个可用的preamble序列,UE会选择其中一个(或由eNodeB指定)在PRACH上传输。这些序列可以分成两部分,一部分用于基于竞争的随机接入,另一部分用于基于非竞争的随机接入。用于基于竞争的随机接入的preamble序列又可分为两组:group A和group B(group B可能不存在)
- (关于preamble的选择:详见36.321的5.1.2节)Group A/B中的preamble序列本身并没有太大区别,只有它们的划分才是有意义的,用于告诉eNodeB后续的资源需求。
- 如果UE进行的是基于非竞争的随机接入,例如handover,使用的preamble是由eNodeB直接指定的(见36.331的RACH-ConfigDedicated,以及36.212的5.3.3.1.3节中关于PDCCH order的介绍)。为了避免冲突,此时使用的preamble是除group A和group B外的预留preamble。
- PRACH用于传输random access preamble。
- PRACH在频域上占6个连续的RB。
- 简单地说:eNodeB通过广播SIB2发送RACH-ConfigCommon,告诉UE preamble的分组、Msg3大小的阈值、功率配置等信息。UE发起随机接入时,根据可能的Msg3大小以及pathloss等,选择合适的preamble。
步骤二 eNodeB发送Random Access Response
UE发送了preamble之后,将在RAR时间窗(RA Response window)内监听PDCCH,以接收对应RA-RNTI的RAR(此时不考虑可能出现的measurement gap)。如果在此RAR时间窗内没有接收到eNodeB回复的RAR,则认为此次随机接入过程失败。
RAR时间窗起始于发送preamble的子帧(如果preamble在时域上跨多个子帧,则以最后一个子帧计算) + 3个子帧,并持续ra-ResponseWindowSize个子帧。
步骤三 UE发送Msg3
基于非竞争的随机接入, preamble是某个UE专用的,所以不存在冲突;又因为该UE已经拥有在接入小区内的唯一标志C-RNTI,所以也不需要eNodeB给它分配C-RNTI。因此,只有基于竞争的随机接入才需要步骤三和步骤四。
注:(1)使用基于非竞争的随机接入的UE必定原本处于RRC_CONNECTED态;(2)handover时,UE在目标小区使用的C-RNTI是通过RRCConnectionReconfiguration中的MobilityControlInfo的newUE-Identity来配置的。
之所以将第3条消息称为Msg3而不是某一条具体消息的原因在于,根据UE状态的不同和应用场景的不同,这条消息也可能不同,因此统称为Msg3,即第3条消息。
RAR与对应的Msg3之间的timing关系可参见12.2.4.4节的介绍。
Msg3在UL-SCH上传输,使用HARQ,且RAR中带的UL grant指定的用于Msg3的TB大小至少为80比特。(见36.300的10.1.5.1节)
Msg3中需要包含一个重要信息:每个UE唯一的标志。该标志将用于步骤四的冲突解决。
步骤四:eNodeB发送contention resolution
在步骤三中已经介绍过,UE会在Msg3有携带自己唯一的标志: C-RNTI或来自核心网的UE标志(S-TMSI或一个随机数)。eNodeB在冲突解决机制中,会在Msg4(我们把步骤四的消息称为Msg4)中携带该唯一的标志以指定胜出的UE。而其它没有在冲突解决中胜出的UE将重新发起随机接入。
5G/NR 学习笔记: RAR随机接入过程相关推荐
- 5G/NR 学习笔记 - RAR随机接入过程
5G/NR 学习笔记 - RAR随机接入过程 随机接入的目的 在小区搜索过程之后,UE已经与小区取得了下行同步,因此UE能够接收下行数据.但UE只有与小区取得上行同步,才能进行上行传输.UE通过随机接 ...
- 5G/NR 学习笔记:波束赋形 / beam 管理
5G/NR 学习笔记:波束赋形 / beam 管理 What beam 是对于整列天线电磁波传播的一种样式. 一个天线的时候,电磁波的辐射方向是360度传播的,但是一个天线阵列可以实现电磁波单方向传 ...
- 5G NR学习笔记:帧结构和物理资源
5G NR学习笔记:帧结构和物理资源 参数集(numerology) 与LTE的参数集(子载波间隔和符号长度)不同,NR支持不同的子载波间隔(Sub-Carrier Spacing, SCS),所有的 ...
- 5G/NR学习笔记:3GPP 38.211- Carrier Bandwith Part, BWP-载波带宽部分
概念 38.211中是这样定义Carrier Bandwith Part的 A bandwidth part is a subset of contiguous common resource blo ...
- 5G/NR 学习笔记: 基本问答 RACH PRACH
What is the functionality or purpose of RACH process? RACH (Random Access Channel) looks over-compli ...
- 5G NR学习理解系列——MATLAB5G信源的生成之SSB参数配置
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 5G NR学习理解系列--MATLAB5G信源的生成之SSB参数配置 前言 SSB参数的位置 SSB参数详细解释 信号时频图 总结 前 ...
- 5G NR学习理解系列——利用matlab工具生成5G NR信源
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 5G NR学习理解系列--利用matlab工具生成5G NR信源 前言 NR工具箱的使用 直接使用代码 前言 既然发现了4G LTE ...
- Hadoop学习笔记—10.Shuffle过程那点事儿
Hadoop学习笔记-10.Shuffle过程那点事儿 一.回顾Reduce阶段三大步骤 在第四篇博文<初识MapReduce>中,我们认识了MapReduce的八大步骤,其中在Reduc ...
- 5G NR学习理解系列——时频结构及相关概念
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 5G NR学习理解系列--时频结构 频段 工作带宽 信道带宽 子载波间隔(SCS) SLOT长度 OFDM符号时长 采样点时长 无线帧 ...
最新文章
- Dalvik与JVM区别
- addslashes 及 其他 清除空格的方法是不安全的
- 安装secureCRT提示sorry的解决办法
- 有了Unicode为啥还需要UTF-8
- RxJava + Java8 + Java EE 7 + Arquillian =幸福
- 还驾驭不了4核? 别人已模拟出百万核心上的并行
- 两个html之间传递对象,解决微信警告:该链接含有无法解析的地址链接-两个html之间的传值(JSON数据)...
- 越烧钱越上瘾,年轻人为何沉迷「白色鸦片」?
- insert时调用本身字段_java中子类调用父类构造方法注意事项
- c中的结构体嵌套问题_C中的结构
- springamqp_SpringAMQP
- 大型互联网网站架构心得之一:任务拆分
- android 像素密度,屏幕密度,values-sw480dp
- 区块链技术与应用(北大公开课,肖臻)- 课程总结
- Android之JNI① AS3.0以下DNK下载配置和第一个JNI程序
- Chromium DevTools-frontend 源码构建流程-Windows系统
- FleaPHP 学习笔记2
- MVC设计模式的总结
- string类型--字符串常用取值操作
- linux常用命令,自己总结