首页 > 其他分享 >NR PRACH(五) type1 RA(4-step)基本过程

NR PRACH(五) type1 RA(4-step)基本过程

时间:2024-10-11 21:22:02浏览次数:8  
标签:接入 PRACH 发送 step RAR RA UE RNTI

无线通信,最重要的前提是建立接收端和发射端之间的时间同步。NR中,DL同步一般在小区搜索过程通过decode PSS SSS PBCH(MIB),之后根据协议规定CORESET和 search space 去找SIB1,完成小区驻留的过程完成;这个过程可以获得小区信息,系统帧号,initial Rach参数等必要的信息,进而完成下行同步过程。 而随机接入过程的作用是完成上行同步,进而向网络端发送data 。随机接入包含CBRA 和CFRA两种方式。下面简单说明下两者的区别。典型的Contention Based RACH Procedure 如下 :

i) UE --> NW : RACH Preamble (RA-RNTI)msg1

ii)UE<--NW : Random Access Response (Timing Advance, T_C-RNTI, UL grant for L2/L3 message) msg2

iii) UE --> NW : L2/L3 message(UE ID)msg3

iv) Msg4 for early contention resolutionmsg4

假如两个UE 具有相同的RA-RNTI 且发送了相同的preamble 给网络,之后网络端在第二步又给UE发送了相同的msg2 (T-C-RNTI 和UL grant),两个UE会在相同的时频域资源发送msg3 ,至此对于网络端来说是一个冲突问题,两台UE用相同的资源和网络端通信显然是不能发生的,因此这时候就需要第三和四步,通过UE ID解解决这个冲突问题,确定网络端到底和哪一个UE进行进一步交流。这就是CBRA基本过程及其必要性。

对于CFRA,网络端会提前给配置UE preamble 等专用资源,这里就确保了不可能出现多台UE 拥有相同资源的情况,因而可以省去解决冲突的过程,过程也相对简单。CFRA基本过程:

i) UE<--NW:RACH Preamble (PRACH) Assignment

ii) UE-->NW : RACH Preamble (RA-RNTI)

iii)UE<--NW : Random Access Response (Timing Advance, C-RNTI, UL grant for L2/L3 message)

RA触发场景

RA具体过程主要是在38.321 5.1。如上是38.300中有关会引起RA过程的event总结,截止至R17,引起RA过程的event如上。

在NR R16 版本中,引入了2-step随机接入(2-step RACH),因此从NR 16开始,有两种类型的随机接入:

4-step RACH,也称为 Type-1 random access procedure

2-step RACH,也称为 Type-2 random access procedure

这两种类型的随机接入都支持:基于竞争的随机接入(CBRA)和基于非竞争的随机接入(CFRA)的2 step RACH接入。

对于同一个BWP,网络侧不能同时配置2-step和4-step的CFRA资源,另外只有handover场景支持CFRA 2-step RA。

UE在随机接入过程启动时要根据网络配置选择随机接入类型:

(1)当未配置CFRA资源时,UE使用RSRP threshold在2-step RA和4-step RA之间进行选择(在下一篇再详细贴出这步具体协议内容);

(2)当配置了4-step RA的CFRA资源时,UE以4-step RA执行随机接入;

(3)当配置了 2-step RA的CFRA资源时,UE 使用2-step RA执行随机接入。

4-step RA的MSG1由一个PRACH preamble组成。 MSG1 传输后,UE 在配置的RAR window内监视来自网络下发的RAR。 对于CFRA,MSG1传输会用网络端分配的dedicated preamble,然后在从网络接收到RAR后就结束随机接入过程。 对于CBRA,收到RAR后,UE 使用RAR中调度的UL grant 发送MSG3,并监听 Contention Resolution。 如果在 MSG3(重新)传输后Contention Resolution未成功,则UE重新进行MSG1的传输。

PRACH 资源的选择

UE获得随机接入所需配置后,可以发起初始随机接入流程,RA初始化完成后(设置完相关参数后),首先要选择Preamble资源

UE初始接入时:

(1)选择一个满足RSRP-Threshold要求的SSB,发起接入,如果都不满足RSRP-Threshold,则选择任意一个SSB。

(2)如果MSG3没有发送过,则根据潜在MSG3大小与ra-Msg3SizeGroupA判定是选择Group A还是Group B的Preamble资源;

(3)如果MSG3重传,则选择第一次传输时所用Group 的Preamble资源

(4)从当前SSB的Preamble Group中等概率的随机选择RA-PreambleIndex,这里也是进行CBRA的源头,如果有网络侧分配的dedicated preamble就会直接进行CFRA。

PRACH 资源的选择

UE获得随机接入所需配置后,可以发起初始随机接入流程,RA初始化完成后(设置完相关参数后),首先要选择Preamble资源

UE初始接入时:

(1)选择一个满足RSRP-Threshold要求的SSB,发起接入,如果都不满足RSRP-Threshold,则选择任意一个SSB。

(2)如果MSG3没有发送过,则根据潜在MSG3大小与ra-Msg3SizeGroupA判定是选择Group A还是Group B的Preamble资源;

(3)如果MSG3重传,则选择第一次传输时所用Group 的Preamble资源

(4)从当前SSB的Preamble Group中等概率的随机选择RA-PreambleIndex,这里也是进行CBRA的源头,如果有网络侧分配的dedicated preamble就会直接进行CFRA。

如上是CBRA的基本过程,下面以CBRA为例进行介绍

Msg1 - PRACH Preamble

PRACH power control

Msg1 的发送功率如上述,而Msg 3的发送要用到PUSCH power control。其中PREAMBLE_RECEIVED_TARGET_POWER=preambleReceivedTargetPower + DELTA_PREAMBLE + (PREAMBLE_POWER_RAMPING_COUNTER – 1) × PREAMBLE_POWER_RAMPING_STEP,这些参数都在SIB1中配置。

而Frequency domain location (resource) for PRACH Preamle由RRC parameter msg1-FDM 和 msg1-FrequencyStart决定,Time domain location (resource) for PRACH Preamle由 RRC parameter prach-ConfigurationIndex 决定。

DELTA_PREAMBLE 的确定

RA-RNTI 的计算

UE发送完Msg1,就需要用RA-RNTI去PDCCH上接收RAR相关的DCI 1_0,上图就是RA-RNTI的计算:

s_id 是PRACH 的起始符号索引(0<=s_id<14;t_id是系统帧内 PRACH occasion的起始slot 的索引(0<=t_id<80);f_id 是PRACH 频域位置索引(0<=f_id<80)

ul_carrier_id是Msg1 发送的上行载波指示(0 for NUL carrier, and 1 for SUL carrier)。

如果UE没有在RA-ResponseWindow 内成功接收到Msg2/在ra-ContentionResolutionTimer expiry前没有收到Msg4 /收到的Msg2的RAPID和Msg1不匹配/Msg4携带的UE ID(或加扰的C-RNTI)和Msg3不匹配,都是RA失败,会再次进行RA资源选择,重新发送Msg1(Preamble)。

Msg 1重传时会进行功率抬升PREAMBLE_POWER_RAMPING_STEP ++,当超过 preambleTransMax 时,会向RRC 报Random Access problem引起的RLF。

Msg 2 - RAR (PDCCH/PDSCH )

UE送完Msg1,紧接着就要收RAR。

1 gNB发送用RA-RNTI加扰的DCI给UE。

2 UE 尝试在RAR-window period内用RA-RNTI 检测 PDCCH (DCI) 接收RAR,DCI 1_0 。

3 Msg2 PDSCH Resource Allocation Type 是Resource Allocation Type 1。

4 PDSCH Time Domain Resource Allocation 由 DCI format 1_0(RA RNTI)和PDSCH-ConfigCommon K0,SLIV 决定,如上表所示。

5 SIB1 中会在 initialDownlinkBWP 中配置RA-SearchSpace 时频域资源用于RAR 的接收;

6 RAR-Window 由SIB1 中的IE rar-WindowLength 配置;

7 UE 成功decode PDCCH ,就可收到PDSCH 上的RAR;

8 收到RAR后, UE会检测RAR 中的RAPID in RAR 是否与UE RAPID一致。

RAR由DCI 1_0 调度,频域用resource allocation type 1;当使用DCI 1_1时,如果RRC 层参数pdsch-Config中 resourceAllocation 设置为dynamicswtich,这由收到的DCI 中的Frequency domain resource assignment 决定用resource allocation type 0 还是type 1;其他情况就参照resourceAllocation 中的设置,采用对应的type。

pdsch-Config(BWP级别配置)中 配置resourceAllocation,多出现在RRC Setup和RRCReconfiguration;在idle->connected 的RACH 情况,SIB1 配置小区级参数PDSCH-ConfigCommon,并不会配置resourceAllocation,一般使用DCI 1_0 调度,所以应用黄色字体部分用resource allocation type 1。

UE发送MSG1后,开始ra-ResponseWindow窗口,在窗口内检测RAR的调度

RAR包含三种MAC subPDU

(1)a MAC subheader with Backoff Indicator only;

(2)a MAC subheader with RAPID only(i.e. acknowledement for SI request);

(3)a MAC subheader with RAPID and MAC RAR.

其结构如上。

Backoff indicator

RA fail且RAR 中带有BI ,但RA过程还没有结束时,会进行BI 的设置,从[0,preamble_backoff] 均匀分布中选取一值,作为BI;如果在backoff 期间UE根据提供的Dedicated Preamble CFRA ,比如相关的Dedicated Preamble的SSB波束满足RSRP门限,忽略BI 直接进行RA资源选择;否则等BI超时后再进行下一次RA 过程。

MAC payload for Random Access Response

RAR 最重要的参数就是TA UL Grant 及TC-RNTI,上面TPC command主要涉及到Msg3 的PUSCH 功控 。

收到RAR 后 需不需要发送HARQ_ACK?

根据协议收到RAR后不需要发送HARQ ACK/NACK,实际中,如果UE没有再次发送PRACH ,则gNB认为UE 收到了RAR;否则,UE 会再次发送PRACH。

Step (3) : Msg3 (PUSCH)

发送 Msg3之前,GroupA GroupB 的选择:

(1)如果MSG3没有发送过,则根据潜在MSG3大小与ra-Msg3SizeGroupA判定是选择Group A还是Group B的Preamble资源;有配置Group B,Msg3 size 大于ra-Msg3SizeGroupA 时,就选择GroupB发送 ,否则选Group A;没有配置GroupB 就选择GroupA发送。

(2)如果MSG3重传,则选择第一次传输时所用Group 的Preamble资源

UE根据根据RRC参数msg3-transformPrecoder决定是否对Msg3应用transform precoding;之后UE在PUSCH 上发送 Msg3 携带UE ID。

如上分别是两本spec中msg3的定义,38.300中 说MSG3 是RA过程中的UE的第一次调度传输,而38.321中的描述则显得更为具体,Msg3是RA过程的一部分,msg3会在UL-SCH上传输,msg3中会包含C-RNTI MAC CE或CCCH SDU。这里的CCCH SDU主要是以上消息,都是由idle mode进入到connected mode时,UE侧发起的比较常见消息,只是要结合场景区分要发哪个消息。

NR中,如果UE处于RRC IDLE状态,UE标识是ng-5G-S-TMSI-part1或随机数(39位),如果UE处于RRC INACTIVE状态,UE标识是resume Identity(24位或40位)。具体规定如上图。

协议中规定,UE 收到RAR后根据UL grant 发送PUSCH data时,应该使用RV 0。Msg3 PUSCH 重传(有的话),要用TC-RNTI 加扰DCI 0_0 发送。在收到RAR 至发送PUSCH 之间的时隙间隔 为n+k2+ Δ。

RAR 与之后RAR UL grant 的PUSCH传输的符号间隔 为N_T,1+N_T,2+0.5 ms。

Step (4): Msg4 - Contention Resolution (PDCCH/PDSCH)

发送完Msg3后:开启ra-ContentionResolutionTimer;监听TC-RNTI 加扰的DCI;如果对应DCI 成功decode,之后解析出MAC CE,基站在MSG4通过UE Contention Resolution Identity MAC CE(48位)携带UE ID(如果长度超过48位,只取前48位),如果MSG4和MSG3携带的UE标识相同,UE认为竞争解决,随机接入成功。并将TC-RNTI 升级为C-RNTI......

Step (5) : HARQ ACK for Msg4

一旦成功解析Msg4,UE要在PDSCH 上发送对应的HARQ ACK,此时PDSCH的最后一个符号与HARQ-ACK的第一个PUCCH符号的间隔为N_T,1+0.5ms。

在LTE 时,UE发送MSG1 后,在随机接入响应窗口 RA-ResponseWindow范围内没有收到RAR,

UE需要重发MSG1,重发时,要进行功率攀升(Ramping)

38.321 5.1.2 RA 资源选择章节中 并没有找到针对CBRA Msg1失败后应该怎么做的描述;从5.1.3 章节中有看到一句如上描述,应该是在重传Msg1时,可能会重新选择SSB,当继续使用之前的SSB 时,需要进行功率攀升

如果切换了SSB ,则就不需要进行功率攀升。

标签:接入,PRACH,发送,step,RAR,RA,UE,RNTI
From: https://blog.csdn.net/ModemProtocol/article/details/142795244

相关文章

  • [The 3rd Ucup. Stage 10 West Lake] Generated String
    题意维护一个字符串集合,支持动态插入,动态删除,查询同时具有前缀\(s_1\)与后缀\(s_2\)的串的个数,所有字符串用如下方式给出:先给定一个全局模板串\(S\),每一个字符串都是\(S\)的若干个下标区间对应的字符串拼接而成的。即给出若干个区间\([l_1,r_1],[l_2,r_2],\dots,[l_k,r_k......
  • [Paper Reading] HPT: Scaling Proprioceptive-Visual Learning with Heterogeneous P
    目录ScalingProprioceptive-VisualLearningwithHeterogeneousPre-trainedTransformersTL;DRMethodStemTrunkLossHeadExperiment训练资源效果可视化总结与发散相关链接资料查询ScalingProprioceptive-VisualLearningwithHeterogeneousPre-trainedTransformersScaling......
  • ORB-SLAM2 ---- ORBextractor::ComputeKeyPointsOctTree
    文章目录一、函数作用二、源码及注释三、函数的讲解1.遍历金字塔的每一层,将其分成30*30的网格单元,并给每一层添加图像边界2.遍历每个单元格,提取特征点3.调用DistributeOctTree()函数分配特征点4.计算所有保留下来的特征点的方向信息一、函数作用ORB-SLAM2----......
  • 3.6 使用Ultralytics YOLO进行模型基准测试
    3.6使用UltralyticsYOLO进行模型基准测试UltralyticsYOLO生态系统及其集成引言当您的模型完成训练和验证后,下一步就是评估其在各种现实场景中的表现。UltralyticsYOLO11的基准测试模式通过提供一个强大的框架,用于评估模型在各种导出格式下的速度和准确性。观看视频:Ult......
  • Communication-Efficient Learning of Deep Networks from Decentralized Data论文阅
    联邦学习开山之作Communication-EfficientLearningofDeepNetworksfromDecentralizedDataabstractIntroductionTheFederatedAveragingAlgorithmExperimentalResultsConclusionsandFutureWorkCommunication-EfficientLearningofDeepNetworksfromDec......
  • PageRank parallel solutions
    Assignment4 DueFridayby11:59pmPoints70 SubmittingafileuploadAvailableOct4at12am-Dec24at11:59pmStartAssignment Assignment4(70Points) ueFridayOctober11@11:59PMInthisassignment,wewillimprovetheparallelsolutionsofPageRa......
  • scheduler framework扩展点
    k8sv1.25.0扩展点作用queueSort待调度队列pod排序preFilter预选前预处理filter预选postFilter预选后处理(可修改pod为可调度)preScore预打分score优选reserve资源预留给podpermit阻止或延迟pod绑定......
  • scrapy框架学习笔记
    scrapy运行机制详见Architectureoverview安装直接pipinstallscrapy即可使用命令行scrapystartprojectname命令创建一个新的Scrapy项目scrapycrawlSpiderName命令运行爬虫scrapyrunspiderSpiderName命令运行脚本。更多命令直接查Commandlinetool概述编写S......
  • 2024红队必备工具列表总结_railgun工具
    一、信息收集1、AppInfoScanner一款适用于以HVV行动/红队/渗透测试团队为场景的移动端(Android、iOS、WEB、H5、静态网站)信息收集扫描工具,可以帮助渗透测试工程师、红队成员快速收集到移动端或者静态WEB站点中关键的资产信息并提供基本的信息输出,如:Title、Domain、CDN、......
  • 内联函数无法使用ftrace
    内联函数(inlinefunctions)通常是由编译器在编译时将函数的代码直接插入到每个调用点,而不是通过函数调用的方式执行。这意味着内联函数的代码在编译后不会像普通函数那样有一个单独的入口地址。因此,当使用像ftrace这样的基于函数入口点的跟踪工具时,内联函数就无法被直接跟踪,因为它......