根据 38.321, NR RACH 过程与 LTE RACH 过程非常相似。
具体参数会有很小的差别,但总体流程几乎相同。实际上, LTE RACH、LTE BL/CE(M1) RACH、LTE NB RACH和 NR RACH的整体流程几乎相同,尽管参数上存在很小的差别。
按照以下顺序,按照步骤标记为(A)~(J),将步骤标记为(1)~(9)。
步骤(A)~(J)是gNB和UE发送的具体消息。
步骤(1)~(9)是UE和gNB中发送或接收消息所需的内部过程。
步骤 (A) 和 (1):系统信息(用于初始附着)或 RRC 连接重新配置(用于 LTE 交互)
完成这两个步骤后,UE应该能够获得如下所有信息(基于38.213-8随机接入过程)
根序列表的索引
循环移位(Ncs)
集类型(无限制、限制集 A 或限制集 B)
步骤 (B) :Msg1 - PRACH 前导码
在此步骤,如果满足PRACH传输的所有条件,则UE发送具有RA-RNTI的PRACH前导码。
步骤(2)和(C) :消息2 -RAR (PDCCH/PDSCH)
在这一步(即在PRACH传输之后),将发生以下过程(基于38.213-8.2随机接入响应)
gNB发送使用如上计算的RA-RNTI值加扰的DCI。
UE尝试在RAR-Window周期内检测具有相应RA-RNTI的PDCCH(DCI)。(在ra-ResponseWindow内,UE在搜索空间中寻找DCI:类型1PDCCH公共搜索空间)
用于调度RARPDSCH的DCI格式是具有RARNTI的DCI格式1_0。
Msg2 PDSCH的资源分配类型将是资源分配类型1。
PDSCH的频域资源分配由具有RARNTI的DCI格式1_0指定。
PDSCH的时域资源分配由具有RARNTI和PDSCH-ConfigCommon的DCI格式1_0指定。
RAR-Window由SIB消息中的rar-WindowLengthIE配置。
如果UE成功解码PDCCH,则其解码承载RAR数据的PDSCH。
在解码RAR之后,UE检查RAR中的RAPID是否与分配给UE的RAPID匹配。
该PDCCH和PDSCH应该以与SIB1相同的子载波间隔和循环前缀来承载。
以下是携带RAR(随机接入响应)的MAC PDU的数据结构。“Msg3 PUSCH时域资源分配”将引用RrcReconfiguration(在NSA的情况下)或SIB1(在SA的情况下)中的pusch-ConfigCommon->pusch-TimeDomainAllocationList。如果没有配置该IE,则参考PUSCH默认资源分配表。
UE是否必须发送HARQACK/NACK来响应RAR接收?否。如果使用RA-RNTI查看DCI1_0,则没有有关PUCCH或K1值的信息。
那么gNB如何知道RAR是否被UE正确接收/解码?根据38.213-8.2,如果UE不再发送PRACH,则gNB可以断定UE正确接收/解码了RAR。
步骤(3)和(D):Msg3(PUSCH)
在这一步(即发送Msg3之前),将发生以下事情(基于38.213-8.3Msg3PUSCH)
UE应根据称为msg3-tp(msg3-transformPrecoding)的RRC参数确定是否对Msg3PUSCH应用变换预编码。
UE应根据称为msg3-scs(子载波间隔)的RRC参数确定Msg3PUSCH的子载波间隔。
UE应在发送PRACH的同一服务小区上发送Msg3PUSCH。
举例:
下面是一个示例,展示了在实际协议栈中如何确定RAR和msg3PUSCH之间的延迟。这是SA初始附加过程。
步骤(4)和(E):Msg4-竞争解决(PDCCH/PDSCH)
在这一步(即发送Msg3之后),将发生以下事情(基于38.321-5.1.5)。
启动ra-ContentionResolutionTimer
监视以TC-RNTI解码PDCCH(当ra-ContentionResolutionTimer运行时,UE在搜索空间中查找DCI:类型1PDCCH公共搜索空间)
如果PDCCH解码成功
解码携带MACCE的PDSCH
设置C-RNTI=TC-RNTI
丢弃ra-ContentionResolutionTimer
此随机访问过程完成
步骤(5)和(F):Msg4的HARQ ACK
一旦UE成功解码Msg4(竞争解决),UE就发送数据的HARQACK(携带Msg4的PDSCH)