1第三章MAC3.1序言刚刚开始学习LTE的一段时间,重新整理一下对MAC的理解,结合MAC协议(3GPP36.321)与自己在MAC层工作的经验,提供更加丰富的内容,同时也希望能够纠正谬误,开启讨论之门。3.2概述36.321里面主要描述的是MAC的架构与处于MAC层的功能实体,并没有涉及到具体的实现,而且由于LTE取消了向以前的协议专门提供的专用信道,所有的用户数据都使用共享信道,因此对MAC的在资源以及业务调度的功能上提出了很高的要求,这也是不同设备供应商可以大显神通的地方了;而协议本身主要描述的是接受端的行为,因此在基站端可以发挥的余地就更大了。3.2.1MAC架构MAC协议层在LTE协议栈的位置如下所示:MMEENBUENASRRCPDCPPHYMACRLCRRCPDCPPHYMACRLCNAS图3.1MAC层在LTE协议栈的位置MAC实体在UE以及eNB上都存在的,它们主要处理如下传输信道:-广播信道(BroadcastChannel,BCH);-下行共享信道(DownlinkSharedChannel,DL-SCH);-寻呼信道(PagingChannel,PCH);-上行共享信道(UplinkSharedChannel,UL-SCH);-随机接入信道(RandomAccessChannel,RACH)。2其实这些信道只是概念上的,因为传输信道的管理上不像逻辑信道那样设立专门的逻辑信道号,它只是从功能是进行了描述,因此实现上是否真正存在这样的传输信道,这在于个厂商自己。对于MAC层与物理层之间的处理,自然可以设置专门的通道,也可以只是通过一些简单的标识来处理,当然这也是信道的一种表现形式。下图3.1与3.2分别为层二的上下行功能框架图:分段ARQ等UE1复用分段ARQ等...HARQUE2复用HARQBCCHPCCH调度/优先级处理逻辑信道传输信道MACRLC分段ARQ等分段ARQ等PDCPROHCROHCROHCROHC无线承载安全保护安全保护安全保护安全保护...CCCH图3.1层二下行功能框架图复用...HARQ调度/优先级处理传输信道MACRLCPDCP分段ARQ等Segm.ARQetc逻辑信道ROHCROHC无线承载安全保护安全保护CCCH图3.1层二上行功能框架图33.2.2服务3.2.2.1提供给上层的服务MAC层给上层(RLC层,也可以泛指MAC层以上的协议层)提供的服务有:-数据传输,这里面隐含了对上层数据处理,比如优先级处理,逻辑信道数据的复用;-无线资源分配与管理,包括MCS的选择,数据在物理层传输格式的选择,以及无线资源的使用管理,从这里我们可以知道MAC层掌握了所有物理层资源的信息。3.2.2.2期待物理层提供的服务物理层向MAC层提供以下服务:-数据传输,MAC层通过传输信道访问物理层的数据传输服务,而传输信道的特征通过传输格式进行定义,它指示物理层如何处理相应的传输信道,例如信道编码,交织,速率匹配等;-HARQ反馈信令(HARQACK/NACK);-调度请求信令(SR);-测量(比如信道质量CQI,与编码矩阵PMI等)3.2.3MAC层功能MAC层的各个子功能实体提供以下的功能:-实现逻辑信道映射到传输信道;-复用从一条或多条逻辑信道下来的数据(MACSDUs)到传输块,并通过传输信道发给到物理层;-把从传输信道传送上来的传输块解复用成MACSDU,并通过相应的逻辑信道,上交给RLC层;-调度信息的报告,UE向eNODEB请求传输资源等;-基于HARQ机制的错误纠正功能;-通过动态调度的方式,处理不同用户的优先级;以及对同一用户的不同逻辑信道的优先级处理,这里主要在UE端实现;-传输格式的选择,通过物理层上报的测量信息,用户能力等,选择相应的传输格式,从而达到最有效的资源利用。以上功能与上下行以及MAC实体的对应关系如下表所示:表3.1MACfunctionlocationandlinkdirectionassociationMAC功能UEeNB下行上行逻辑信道和传输信道之间的映射XXXXXX复用XXXX解复用XX4XXHARQXXXXXX传输格式的选择XXX不同用户间优先级处理XXX同一用户不同逻辑信道优先级处理XXX逻辑信道优先级设置XX调度信息报告XX3.2.4信道结构在描述与MAC相关的信道前,这里先对信道做一些简单的解释,信道可以认为是不同协议层之间的业务接入点(SAP),是下一层向它的上层提供的服务。LTE沿用了UMTS里面的三种信道,逻辑信道,传输信道与物理信道。从协议栈的角度来看,物理信道是物理层的,传输信道是物理层和MAC层之间的,逻辑信道是MAC层和RLC层之间的,它们的含义是:-逻辑信道,传输什么内容,比如广播信道(BCCH),也就是说用来传广播消息的;-传输信道,怎样传,比如说下行共享信道DL-SCH,也就是业务甚至一些控制消息都是通过共享空中资源来传输的,它会指定MCS,空间复用等等方式,也就说是告诉物理层如何去传这些信息;-物理信道,信号在空中传输的承载,比如PBCH,也就是在实际的物理位置上采用特地的调制编码方式来传输广播消息了。进一步解释,逻辑信道按照消息的类别不同,将业务和信令消息进行分类,获得相应的信道称为逻辑信道,这种信道的定义只是逻辑上人为的定义。传输信道对应的是空中接口上不同信号的基带处理方式,根据不同的处理方式来描述信道的特性参数,构成了传输信道的概念,具体来说,就是信号的信道编码、选择的交织方式(交织周期、块内块间交织方式等)、CRC冗余校验的选择以及块的分段等过程的不同,而定义了不同类别的传输信道;物理信道,就是在特定的频域与时域乃至于码域上采用特地的调制编码等方式发送数据的通道,物理信道就是空中接口的承载媒体,根据它所承载的上层信息的不同定义了不同类的物理信道。跟MAC层相关的信道有传输信道与逻辑信道,比如传输信道是物理层提供给MAC的服务,MAC可以利用传输信道向物理层发送与接收数据,而逻辑信道是MAC层向RLC层提供的服务,RLC可以使用这些逻辑信道想MAC层发送与接收数据。3.2.4.1传输信道MAC使用的传输信道如下表所示:表3.2跟上下行相关的传输信道传输信道名缩写下行上行BroadcastChannel广播信道BCHXDownlinkSharedChannel下行共享信道DL-SCHXPagingChannel呼叫信道PCHXUplinkSharedChannel上行共享信道UL-SCHX5RandomAccessChannel随机接入信道RACHX这些传输信道的用途与处理方式如下:-BCH(广播信道),下行,固定的,预定义传输格式的,例如具有固定大小,固定发送周期,调制编码方式等等;除了MIB消息再专属的物理信道上传输外,其它的广播消息(SIB)都是在物理共享信道上传输的,不再像UMTS那样留有专门的物理信道用于传输广播消息;-PCH(呼叫信道),下行,支持UE的非连续接收达到省电的目的;映射到物理下行共享信道,与BCH类似;-DL-SCH/UL-SCH,可以传输业务数据已经系统控制信息;-RACH(随机接入信道),上行,用于指定传输随机接入前导,发射功率等等信息。由上可知,除了指定特定的资源用于系统广播消息、上行的接入信息以及上下行信道控制信息外,其他的资源对所有用户来说都是共享的,进行统一调度。如果我们对比UMTS与LTE的传输信道,就会发现LTE的传输信道要少,例如针对业务数据,不再有专用传输信道与专用控制信道,通通并入了共享信道;这样的传输信道安排,已经跟WiMAX对资源管理的方式非常相似。由于业务资源都是共享的,那么MAC的调度就要做到兼顾业务优先级,无线资源高效使用以及公平性,这对MAC的设计提出了比较高的要求。可以说不同设备商的基站性能跟MAC层的调度非常相关。3.2.4.2逻辑信道MAC提供的逻辑信道如下表3.3所示:表3.3逻辑信道逻辑信道名缩写控制信道业务信道BroadcastControlChannel广播控制信道BCCHXPagingControlChannel呼叫控制信道PCCHXCommonControlChannel通用控制信道CCCHXDedicatedControlChannel专用控制信道DCCHXDedicatedTrafficChannel专用数据信道DTCHX这些逻辑信道的用途与处理方式如下:-BCCH(广播控制信道),下行信道,用于广播系统控制信息,例如系统带宽,天线个数以及各种信道的配置参数等等;-PCCH(呼叫控制信道),下行信道,用于传输呼叫信息(被叫号码等等)以及系统信息改变时的通知;这个信道用于系统不知道这个UE所在的小区位置时的呼叫,另外,当系统知道UE的具体位置时,可以使用共享信道来呼叫,但是对于系统信息改变还是必须使用PCCH,因为那时它呼叫的是小区内的所有UE;-CCCH(通用控制信道),下行信道,用于传递UE与系统之间的控制信息,当UE还没有RRC连接时,使用这个控制信道来传递控制信息,例如传输接入时,由于还没有RRC连接,RRC连接请求消息就是发在这个逻辑信道上的。因此没有RRC连接的UE都可以使用这个信道-DCCH(专用控制信道),上/下行信道,点对点的双向信道,用于传递UE与系统之间的专用控制信息,因此UE必须建立了RRC连接;-DTCH(专用数据信道),上/下行信道,点对点的双向信道,用于传递用户数据6当MAC通过PDCCH物理信道指示无线资源的使用的时候,MAC会根据逻辑信道的类型把相应的RNTI映射到PDCCH,这样用户通过匹配不同的RNTI可以获取到相应的逻辑信道的数据-C-RNTI,TemporaryC-RNTIand半静态调度C-RNTI用于DCCH与DTCH;-P-RNTI用于PCCH;-RA-RNTI用于在DL-SCH上接收随机接入相应;-TemporaryC-RNTI用于在随机接入过程中接收CCCH;-SI-RNTI用于BCCH.如下图所示:图3.3RNTI与逻辑信道映射关系3.2.4.3逻辑信道到传输信道的映射MAC实体负责把上行的逻辑信道映射到相应的上行传输信道,映射关系如图3.4与表3.4所示:CCCHDCCHDTCHUL-SCHRACH上行逻辑信道上行传输信道图3.4上行逻辑信道与传输信道映射下行映射7BCCHPCCHCCCHDCCHDTCHBCHPCHDL-SCH下行逻辑信道下行传输信道图3.5下行逻辑信道与传输信道映射3.3MAC格式(协议数据单元,格式与参数)3.3.1概述MACPDU是八位对齐的比特流,最高位第一行的最左边比特,最低位在最后一行的最右边的比特;MACSDU也是八位对齐的比特流,而MACPDU里面的参数也是按照相同的顺序,高位在左边,低位在右边的顺序。3.3.2MACPDU(DL-SCH和UL-SCH,除了透明MAC和随机接入响应)MACPDU具有一个头部,零个或多个SDU,零个或多个控制单元,可能还有填充位。MAC头部与MACSDU都是可变长度的。一个MACPDU头部,MACPDU头部可能有一个或多个子头部(subheader),每一个对应一个SDU、控制信息单元(controlelement)或者填充位。一个普通MACPDU子头部由六个域(R/R/E/LCID/F/L)组成,但是对于最后一个子头部、固定长度的MAC控制信息单元以及填充位对应的子头部,它们只包含四个域(R/R/E/LCID)LCIDRFLR/R/E/LCID/F/L子头部具有7比特长度域LR/R/E/LCID/F/L子头部具有15比特长度域LRELCIDRFLRELOct1Oct2Oct1Oct2Oct3图3.3.2-1:R/R/E/LCID/F/LMAC子头部LCIDRR/R/E/LCID子头部REOct18图3.3.2-2:R/R/E/LCIDMAC字头部MACPDU子头部的顺序跟MACSDU,MAC控制信息单元以及填充部分出现的顺序是相应的。MAC控制信息单元处于任何MACSDU的前面。填充部分一般放在MACP