关于LTE中的MAC层,位于Uu接口的RLC层与PHY层之间,如下图所示:
EUTRA中定义了两个MAC实体,一个在UE,一个在EUTRAN,它们处理如下传输信道:
MAC层具备如下功能:
●逻辑信道与传输信道的映射;
●把一条或不同条逻辑信道上的MAC MSU复用成传输块TB,并以传输信道的形式传递给物理层,反向则进行解复用;
●调度信息上报;
●通过HARQ进行错误检测;
●以动态调度的方式进行不同用户间的优先级处理;
●单用户内的不同逻辑信道的优先级处理;
●传输格式选择
关于MAC层中传输信道和物理信道之间的映射关系如下两图:
在上行的信道映射中除了物理信号和随机接入以外,信令和数据最终都是映射为UL-SCH传输信道的,也就是说UL-SCH承载的是SRB0/SRB1/SRB2/DRB的数据,进一步映射为PUSCH物理信道。
而在下行方向逻辑信道:
PCCH映射为PCH,进而映射为PDSCH(不存在承载概念)。
BCCH除了MIB信息映射为BCH,进而映射为PBCH以外,其余SIB都映射为DL-SCH,并最终映射为PDSCH(不存在承载概念,SIB信息有HARQ,但不处理。
CCCH(SRB0)、DCCH(/SRB1/SRB2)、DTCH(DRB)这三种信道映射为DL-SCH,并最终映射为PDSCH。
MCCH和MTCH这两种信道在MBMS业务独立组网时映射为MCH,并最终映射为PMCH。
LTE中的调度功能就是位于MAC层,如下两图所示:
上图中不论是上行还是下行,不论是发射还是接收,MAC层一直是调度和控制物理层工作的,其涉及冗余版本的选择、信道编码与解码、交织、速率适配、数据调制与解调、资源分配对应的映射与解映射、功率分配、天线映射等,可以说MAC层的控制功能贯穿了整个物理层的工作过程。
1 MAC层的数据封装
协议中涉及到的所有数据复用及解复用的框图如下:
不论上行或下行中只存在一个MAC实体的概念,而RLC/PDCP则存在多个实体,对上述图中涉及到的不同层数据的封装,示意如下:
封装成为MAC PDU有三种形式:
1.1 常规MAC PDU (UL SCH/DL SCH/MCH,除透传MAC和RAR外)
该类MAC PDU结构上可包括四种成分:一个MAC头(大小可变))、0个或多个MAC SDU(大小可变)、0个或多个MAC CE(控制单元)或padding(填充信息,可选项)。其中MAC SDU、MAC CE或padding填充信息均为净负荷。
一个MAC头包含一个或多个MAC子头,每个子头对应着MAC SDU或MAC CE或padding类型的净负荷:
MAC子头的逻辑信道标识(LCID)以用来区分净负荷的类型,MAC子头结构如下图:
其中每个子头中的“L”代表长度,可7比特位,也可15比特位,具体哪种情况由”F”来标示,”L”长度对应着相应的MAC SDU或MAC CE的长度(字节数)。除了最后一个子头和固定大小的MAC CE的情况外,每个子头都存在“L”字段,针对上下行的LCID定义如下图:
根据LCID区分,MAC CE的种类有八种,分别为:
➢缓存状态报告(BSR)
➢小区无线网络临时标识(C-RNTI)
➢非连续接收命令(DRX command)
➢终端竞争解决标识(UE Contention Resolution Identity)
➢时间提前量命令(Timing Advance Command)
➢功率余量(Power Headroom)
➢MCH调度信息(MCH Scheduling Information)
➢SCELL激活或去激活(Activation/Deactivation)。
其它的LCID代表的是MAC SDU或填充信息padding。
1.2 透传的MAC PDU
该类MAC PDU的特征为没有MAC头,也即其全部信息为MAC SDU,且字节长度必须调整为传输块TB大小,比如传递BCCH和PCCH信息,BCCH信息可映射为BCH或DL-SCH传输信道,并进而映射为PBCH或PDSCH物理信道;而PCCH映射为PCH传输信道,并进而映射为PDSCH物理信道:
1.3 随机接入响应的MAC PDU
MAC RAR,用于随机接入响应消息,也即massage2。
该类MAC PDU结构上可包括三种成分:一个MAC头(大小可变)、0个或多个MAC RAR或padding(填充信息,可选项)。其中MAC SDU、MAC CE或padding填充信息均为净负荷。
随机接入响应的MAC头的结构如下图:
该MAC头可由两种类型的子头构成(注意:这两类子头在同一个时间里是互斥的),类型的区别由类型字段“T”来决定,T=0即指示接下来呈现的是随机接入回退指示---”BI”,T=1期指示接下来呈现的是随机接入前导码标识---RAPID。
根据MAC子头中的“E”位置设置为“1”意味着接下来的字段中是否还有随机接入的E/T/RAPID字段,也即同一条的MAC RAR消息可以为多个用户服务(不同RAPID)。
若是某个随机接入响应MAC子头是RAPID类型的,那么其对应的净负荷结构为固定长度:6个字节,如下图:
在基于竞争的随机接入响应中,若是msg3携带CCCH的MAC SDU信息(涉及层三消息),那么必须在解码msg4之前,用TC-RNTI地址解码PDCCH信息(TC-RNTI的有效值为0*0001~0*FFF3之间);而若是msg3携带C-RNTI的MAC CE信息(纯粹MAC层,不涉及层三消息),那么必须在解码msg4之前,用C-RNTI地址解码PDCCH信息,而不采用TC-RNTI,也即手机不理会msg2中分配的TC-RNTI地址。
若是基于非竞争的随机接入,那么基站响应RAR中,TC-RNTI设置为0*0000,意味着是无效的TC-RNTI,只是RAR结构上的填充而已,手机只要根据RAR中的RAPID信息,并匹配上已发送的msg1中的RAPID,即认为随机接入过程成功完成,之后手机应用本次随机接入前一步骤msg0明示的C-RNTI。
关于RAR消息的调度,UE必须以RA-RNTI为地址解码PDCCH的调度信息,代表着随机接入的时频信息,RA-RNTI的计算公式为
RA-RNTI=1+t_id+10*f_id
中国移动LTE中由于常规的上下行子帧配比设置为SA2,那么当PRACH配置索引为3时,那么无论何种情况随机接入,RA-RNTI的值为3,而当PRACH配置索引为4时,RA-RNTI的值为8。
这三种MAC PDU中的净负荷为MAC SDU、MAC CE(控制单元)、MAC RAR或填充信息padding,这些净负荷中只有MAC SDU来自于高层,也就是来自于RLC层的数据,其余的都是在MAC本层添加进来的。
2 MAC层与随机接入的关系(36.300-10.1.5/36.321)
随机接入过程分为竞争型和非竞争型,两者之间的区别就在于基站是否明确指示UE一个前导码且为非0值,若是分配了有效前导码即是基于非竞争随机接入,若是由UE自主选择一个前导码即是基于竞争随机接入。
随机接入过程由PDCCH命令或MAC层本身发起。
PDCCH Order命令用于两种情况:基站下行数据到达而判断上行失步情况或定位需求(都处于连接态),由于连接态情况下PDCCH的CRC是被C-RNTI掩码的,因此UE接收调度信息是以C-RNTI为地址的。对于第一种情况,命令中的格式为DCI format1A包含RA Preamble ID,该标识值若是0*0000,则是无效的前导码,那么接下来的随机接入是基于竞争的,若值非0且位于非竞争区段,那么接下来的随机接入是非竞争的。而对于后一种情况则一定需要指定RA Preamble ID,且值非0,且位于非竞争区段。
需要说明的是基站下行数据到达而判断上行失步情况,不同厂家有不同的实现方式,比如某厂家LTE基站设备伪装成小区内切换的方式,从而将随机接入过程由PDCCH order发起转换为MAC层本身发起,其最终效果是一样的。
对于随机接入过程是由MAC本身发起的理解,应认为是由高层也就是RRC层的需求来触发的,分以下情况:
➢空闲态因业务需求而要求建立RRC连接
➢无线链路低层原因报告给RRC而要求RRC连接重建
➢手机判断上行失步/无资源而要求恢复RRC连接
➢因RRC切换命令到达而要求在目标小区发起随机接入
前导码的选择可由MAC自己来选择或可包含在RRC连接重配置命令中(即切换命令),由高层分配的前导码所对应的随机接入过程为非竞争随机接入,随机接入的成功率会比较高,时延也短。而由MAC层自主选择的前导码所对应的随机接入过程则为竞争随机接入,相对来说,随机接入的成功率会低些,时延也较长。
若切换命令中未包含RA Preamble ID或无效的前导码(0值),则本次切换也是基于竞争随机接入。
协议中关于随机接入过程的描述是很复杂的,有很多逻辑判断,在剔除定时器方面的因素外,梳理逻辑关系框图如下:
针对随机接入过程中会接触到的几种LCID进行以下描述:
UL-SCH中MAC头中若包含LCID=00000(CCCH),意味着是UE在空闲时SRB0承载,也即CCCH SDU ,代号是Msg3,用于基于竞争的初始接入或RRC连接重建(无线链路故障场景),该消息包含有UE Identity ,可分为S-TMSI(40bit)、随机数(40bit)或C-RNTI/PCI/shortMAC-I组合体(41bit),仅用于竞争解决标识,UE根据Msg4中MAC控制单元的UE Contention Resolution Identity (MAC头包含LCID=11100)与Msg3进行匹配,其MAC控制单元有6个字节,若匹配上则表示竞争解决成功。
UL-SCH中MAC头中若包含LCID=11011(C-RNTI),意味着是UE在连接态时SRB1承载,消息代号也是Msg3,其MAC控制单元有2个字节,用在基于竞争的切换或上下行数据到达而上行失步情况下的massage3。UE在搜索PDCCH时,以C-RNTI为掩码地址。
对于Msg4中MAC层的数据封装,UE仅假设以下六种情况:
➢case1:若UE ID匹配上说明竞争成功;
➢Case2:若UE ID匹配上说明竞争成功,有CCCH SDU但无数据
➢Case3:若UE ID匹配上说明竞争成功,有CCCH SDU但无数据,另加一个字节填充
➢Case4:若UE ID匹配上说明竞争成功,有CCCH SDU但无数据,另加二个字节填充
➢Case5:若UE ID匹配上说明竞争成功,有不超过128字节长度的CCCH SDU数据,另加填充
➢Case6:若UE ID匹配上说明竞争成功,有超过128字节长度的CCCH SDU数据,另加填充
作者介绍:周国有,从事核心网工作后转至无线网优,熟悉3GPP协议,熟悉信令流程,擅长234G互操作融合优化,目前在杭州华星公司。