详解LTE MAC层.docx
《详解LTE MAC层.docx》由会员分享,可在线阅读,更多相关《详解LTE MAC层.docx(13页珍藏版)》请在冰豆网上搜索。
详解LTEMAC层
LTEMAC层
E-UTRA提供了两种MAC实体,一种是位于UE的MAC实体,一种是位于E-UTRAN的MAC实体。
UE的MAC实体与E-UTRAN的MAC实体执行不同的功能,图33从UE的角度给出一种MAC实体结构。
MAC结构和功能
E-UTRA提供了两种MAC实体,一种是位于UE的MAC实体,一种是位于E-UTRAN的MAC实体。
UE的MAC实体与E-UTRAN的MAC实体执行不同的功能,图1从UE的角度给出一种MAC实体结构。
根据图1,UE侧MAC层功能包括以下几个局部。
〔1〕逻辑信道与传输信道之间的映射。
〔2〕将来自一个或多个逻辑信道的MACSDU复用到一个传输块〔TB〕,通过传输信道发给物理层。
〔3〕将一个或多个逻辑信道的MACSDU解复用,这些SDU来自于物理层通过传输信道发送的TB。
〔4〕调度信息上报。
〔5〕通过HARQ进行错误纠正。
〔6〕通过动态调度在UE之间进行优先级操作。
〔7〕同一个UE的逻辑信道间进行优先级的操作。
〔8〕逻辑信道优先级排序。
〔9〕传输格式选择。
图1UE侧MAC实体结构
信道及信道映射
MAC涉及的信道结构包括3方面内容:
逻辑信道、传输信道和逻辑信道与传输信道之间的映射。
传输信道是MAC层和物理层的业务接入点,逻辑信道是MAC层和RLC层的业务接入点。
传输信道包括以下这些。
下行方向:
BCH,播送信道;
DL-SCH,下行共享信道;
PCH,寻呼信道;
MCH,多播信道。
上行方向:
UL-SCH,上行共享信道;
RACH,随机接入信道。
逻辑信道分为业务信道和控制信道,其中控制信道包括以下这些。
BCCH,播送控制信道;
PCCH,寻呼控制信道;
CCCH,公共控制信道;
MCCH,多播控制信道;
DCCH,专用控制信道。
业务信道包括以下这些。
DTCH,专用业务信道;
MTCH,多播业务信道。
上行信道映射如图2所示。
图2上行信道映射
下行信道映射如图3所示。
图3下行信道映射
随机接入过程
LTE系统的随机接入过程产生的原因包括以下几种。
〔1〕从RRC_IDLE状态接入。
〔2〕无线链路失败发起随机接入。
〔3〕切换过程需要随机接入。
〔4〕UE处于RRC_CONNECTED时有下行数据到达。
〔5〕UE处于RRC_CONNECTED时有上行数据到达。
异步随机接入根据随机接入过程的不同分为2种:
基于竞争的随机接入和无竞争的随机接入。
即如果前导码〔Preamble〕由UE的MAC选择,那么为基于竞争的随机接入;如果Preamble由控制信令分配,那么为无竞争的随机接入,上述5种随机接入的原因中只有切换和有下行数据到达可以使用无竞争随机接入过程。
用于竞争的Preambles和无竞争的Preambles归属不同的分组,互不冲突。
LTE系统将基于竞争的随机接入过程作为研究重点。
基于竞争的随机接入过程如图4所示。
1.随机接入过程初始化以及Msg1的发送
随机接入过程初始化由PDCCH命令或MAC子层发起。
如果UE在PDCCH上接收到通过其C-RNTI寻址的PDCCH命令,UE初始化随机接入过程。
PDCCH命令或RRC指示随机接入过程进行资源选择时用到Preamble索引ra-PreambleIndex,该索引共64个;以及物理层随机接入信道索引ra-PRACH-MaskIndex,该索引共16种。
在随机接入过程初始化之前,可以获知如下信息。
〔1〕用于发送随机接入Preamble的PRACH资源,prach-ConfigurationIndex。
〔2〕随机接入Preamble分组〔A组和B组,可能不存在B组〕以及每组中可用的随机接入Preamble。
A组和B组及其中的Preamble各自关系如图5所示。
图4基于竞争的异步的随机接入过程
图5随机接入Preambles组示意图
如果sizeOfRA-PreamblesGroupA=numberOfRA-Preambles,那么不存在B组。
A组中的preamble由0到sizeOfRA-PuesmblesGuoupA−1;如果存在B组,那么B组中的preamble由sizeOfRA-PuesmblesGuoupA到numberOfRA-Preambles−1。
如果随机接入Preamble存在B组,那么在以下几个条件的约束下,在两组preamble中选定一组。
需考虑的约束条件包括:
两个门限值,即messagePowerOffsetGroupB和messageSizeGroupA,配置的UE发送功率PCMAX,以及preamble与Msg3之间的偏移deltaPreambleMsg3。
〔3〕随机接入响应窗口大小〔ra-ResponseWindowSize〕。
〔4〕功率递增因子〔powerRampingSiep〕。
〔5〕Preamble最大发送次数〔preambleTransMax〕。
〔6〕Preamble初始功率〔preambleInitialReceivedTargetPower〕。
〔7〕基于偏移量DELTA_PREAMBLE的preamble格式。
〔8〕Msg3最大HARQ发送次数〔maxHARQ-Msg3Tx〕。
〔9〕竞争解决定时器〔mac-ContentionResolutionTimer〕。
随机接入初始阶段UE完成如下过程。
〔1〕清空Msg3缓存。
〔2〕将PREAMBLE_TRANSMISSION_COUNTER置为1。
〔3〕将UE保存的backoff参数值置为0ms。
〔4〕进入随机接入资源选择阶段。
在随机接入资源选择阶段,UE完成以下过程。
〔1〕如果ra-PreambleIndex和ra-PRACH-MaskIndex通过PDCCH或RRC信令显示指示,并且ra-PreambleIndex不为000000,即该随机过程为无竞争的,那么认为随机接入Preamble和PRACHMASKIndex为信令指示的值。
否那么,随机接入Preamble由UE按如下过程选择。
①如果还没有发送Msg3,那么如果随机接入groupB存在,并且如果可用数据与MAC头以及MAC控制单元之和大于messageSizeGroupA,并且路损小于
那么选择B组中的随机接入Preamble;否那么,选择A组。
②如果Msg3重传,那么UE选择Msg3第一次发送所用的随机接入Preamble分组。
③在选择的随机接入Preamble分组中随机选择一个随机接入Preamble,随机选择需要保证每个随机接入Preamble被选择的概率相同。
④设PRACHMaskIndex为0。
〔2〕根据prach-ConfigIndex和thePRACHMaskIndex的限制,确定下一个配置了可用PRACH的子帧。
①如果当前为TDD系统,并且PRACHMaskIndex=0〔所有的PRACH资源均可用〕。
〔a〕如果ra-PreambleIndex由信令显示指示,并且其值不为000000,即当前随机过程为无竞争的随机过程,那么在选定的子帧中等概率随机选择一个PRACH。
〔b〕如果ra-PreambleIndex由MAC随机选择,即当前随机过程为基于竞争的随机过程,那么在选定的子帧及其后两个连续的子帧中,随机选择一个PRACH,每个PRACH资源被选择的概率要保证均等。
②如果当前为FDD系统,或者TDD系统PRACHMaskIndex不为0的情况,根据PRACHMaskIndex在选定的子帧中选择一个PRACH。
③在选择的PRACH上发送随机接入Preamble。
进入Msg1发送过程的UE,进行如下处理。
〔1〕设置PREAMBLE_RECEIVED_TARGET_POWER为
〔2〕指示物理层用选择的PRACH资源,根据6比特的ra-PreambleIndex发送随机接入Preamble,同时指示该UE的RA-RNTI和PREAMBLE_RECEIVED_TARGET_POWER。
2.随机接入Msg2的接收
Msg2即随机接入响应〔RAR〕,是对Msg1的响应。
UE通过窗口机制控制Msg2的接收。
忽略可能的测量gap,由发送Msg1的子帧起加上3个子帧作为窗口的起始点,UE开始监听PDCCH上通过其RA-RNTI的寻址,进行Msg2的接收;经过ra-ResponseWindowSize子帧,认为到达窗口结束点,停止Msg2的接收。
RA-RNTI按下式计算。
其中,t_id为PRACH资源的第一个子帧的索引,0≤t_id<10;f_id为发送Msg1的PRACH资源的频域升序的索引,0≤f_id<6。
在Msg2的接收窗口内,如果UE成功接收RAR,即RAR中携带的随机接入Preamble索引与Msg1的发送一致,那么停止监听RAR。
对于当前TTI在PDCCH上通过UE的RA-RNTI寻址被接收的下行分配,如果成功解码接收的TB,UE应忽略可能的测量gap,进行以下处理。
〔1〕如果RAR中包含一个BI子头〔详见3.3.10.2节〕,那么按照BI子头中的BI域指示的值来设置UE的回退参数。
〔2〕如果RAR中没有包含BI子头,那么将UE的回退参数设为0。
〔3〕如果RAR中包含的RAPID与发送Msg1时MAC指示给物理层的Preamble索引相同。
①UE认为RAR接收成功。
②按以下过程处理接收到的定时提前命令。
〔a〕如果随机接入Preamble不是由UEMAC选择,那么应用当前接收的定时提前命令;启动或重启定时器timeAlignmentTimer。
〔b〕如果随机接入Preamble由UEMAC选择,并且定时器timeAlignmentTimer没有计时,那么应用当前接收的定时提前命令;启动定时器timeAlignmentTimer;当确认竞争解决失败时,停止定时器timeAlignmentTimer。
〔c〕如果随机接入Preamble由UEMAC选择,并且定时器timeAlignmentTimer正在计时,那么忽略当前接收的定时提前命令。
③将preambleInitialReceivedTargetPower以及最后一次preamble发送使用的功率爬坡量
指示给物理层。
④处理接收的上行资源授权并将该授权指示给物理层。
⑤如果ra-PreambleIndex通过信令显式通知,并且该参数不为000000,即当前随机过程为无竞争的随机过程,那么认为该随机接入过程已成功完成。
⑥随机接入Preamble由UEMAC层选择,即当前随机过程为基于竞争的随机过程,完成以下过程。
〔a〕在进行Msg3的首次发送前将接收到的RAR中分配的临时C-RNTI〔TemporaryC-RNTI〕设置为UEID。
〔b〕如果当前接收的RAR为本次随机接入过程中的首次成功接收,完成以下过程。
如果本次随机接入过程的触发原因不是逻辑信道CCCH上有数据需要发送,那么在Msg3发送时,将C-RNTIMAC控制单元包括进复用和装配实体中。
由复用和装配实体获取MACPDU,并将其存储在Msg3的缓存中。
考虑到随机接入过程可能的触发原因,以及各种触发原因对应的Msg3格式,RAR中提供的上行资源授权不应小于56比特。
如果RAR接收窗口结束,UE都没有收到RAR,或者UE收到的RAR中携带的RAPID与其发送的Preamble索引都不相符,那么认为本次随机接入过程失败,UE进行以下操作。
〔1〕将PREAMBLE_TRANSMISSION_COUNTER加1。
〔2〕如果PREAMBLE_TRANSMISSION_COUNTER已到达最大值,那么向高层报告随机接入失败。
〔3〕如果本次随机接入过程的随机接入Preamble由UEMAC选择,完成以下过程。
①根据UE保存的回退参数,在0和回退参数值之间,随机选择一个回退值;
②按照选择的回退值延迟下一次随机接入的发送。
〔4〕按照上节的资源选择过程,进行随机接入资源选择。
3.随机接入Msg4的接收
Msg4主要用于竞争解决。
当多个UE同时在物理资源使用相同的preamble发起随机接入时,就会发生竞争,而此时竞争相同资源的UE最多只有一个UE能够接入成功,因此为尽快解决UE之间的竞争,对Msg4接收可靠性的要求就比拟高。
Msg4采用特殊的HARQ过程,即UE接收到Msg4并检测到Msg4中包含有自己的UEID〔C-RNTI或Msg2中分配的TemporaryC-RNTI〕时才给eNB发送ACK反应,如果没有自己的UEID那么不发送ACK反应。
同时,LTE竞争解决机制在MAC层引入MACCR〔ContentionResolution,竞争解决〕定时器。
根据上述分析,在竞争解决的过程中,eNB首先通过Msg2中给UE分配的TemporaryC-RNTI寻址或通过在DL-SCH发送UEC-RNTI竞争解决ID的方式完成竞争解决。
被寻址的UE〔发送Msg3时启动CR定时器,如果此时CR定时器没有超时〕检测Msg4中是否包含自己的UEID。
如果有,那么向eNB发送ACK,并认为随机接入成功,将Msg2中分配的TemporaryC-RNTI作为C-RNTI;如果UE检测到Msg4包含的UEID与自己的UEID不同,那么认为竞争失败,删除TemporaryC-RNTI,并根据是否采用回退机制确定下一次随机接入的时机。
一旦Msg3发送,那么UE进行如下操作。
〔1〕启动或在每次Msg3重传时重启mac-ContentionResolutionTimer,该定时器用于限定竞争解决的时间。
〔2〕不考虑可能存在的测量gap,在mac-ContentionResolutionTimer超时或由于竞争解决成功而停止之前,保持监听PDCCH。
〔3〕如果物理层通知接收到PDCCH上的发送,那么UE进行如下判决。
①如果在Msg3中携带了C-RNTIMAC控制单元,即认为该UE处于RRC连接状态,并且如果随机接入过程由MAC层发起,以及在PDCCH上通过UE的C-RNTI寻址,同时为新数据发送分配了上行资源授权;或者如果随机接入过程由PDCCH命令发起,以及在PDCCH上通过UE的C-RNTI寻址,那么认为本次竞争解决成功,同时停止mac-ContentionResolutionTimer、丢弃TemporaryC-RNTI、认为本次随机接入过程成功完成。
②如果在Msg3中携带CCCHSDU,即Msg3发送了RRC连接建立或重建请求,并且在PDCCH上通过UE的TemporaryC-RNTI寻址。
如果MACPDU成功解码,那么进行如下操作。
〔a〕停止mac-ContentionResolutionTimer。
〔b〕如果接收的MACPDU中带有一个UEContentionResolutionIdentityMAC控制单元,并且如果UEContentionResolutionIdentityMAC控制单元中的消息内容与Msg3中发送的CCCHSDU相符,那么认为本次竞争解决成功,同时完成MACPDU的解装配和解复用过程、将TemporaryC-RNTI设为该UE的C-RNTI、丢弃TemporaryC-RNTI、认为本次随机接入过程成功完成。
〔c〕其他情况,UE丢弃保存的TemporaryC-RNTI,并且认为本次竞争解决失败,丢弃成功解码的MACPDU。
〔4〕如果mac-ContentionResolutionTimer超时UE仍没有收到Msg4的情况,进行如下操作。
①丢弃TemporaryC-RNTI。
②认为竞争解决失败。
〔5〕如果竞争解决失败,UE进行如下处理。
①清空HARQ缓存,该缓存用于存储Msg3的MACPDU。
②将PREAMBLE_TRANSMISSION_COUNTER加1。
③如果已到达最大发送次数,即
,
那么向高层上报随机接入问题。
④根据UE保存的回退参数,在0和回退参数值之间,按照平均分布随机选择一个回退值。
⑤按照选择的回退值延迟下一次随机接入的发送。
⑥按照3.3.3.2节的过程,选择随机接入资源。
成功完成随机接入过程的UE应进行如下操作。
〔1〕如果在随机接入初始化阶段由PDCCH命令或RRC显式指示了ra-PreambleIndex和ra-PRACH-MaskIndex,那么丢弃上述两个值。
〔2〕清空HARQ缓存,该缓存用于存储Msg3的MACPDU。
维持上行同步
UE通过一个配置的定时器timeAlignmentTimer来控制其上行同步保持的时间。
除了在随机接入过程中会用到该定时器外,该定时器还有以下应用过程。
〔1〕当接收到一个定时提前命令MAC控制单元时,UE应完成以下过程。
①应用接收到的定时提前命令。
②启动或重启定时器timeAlignmentTimer。
〔2〕当定时器timeAlignmentTimer超时,UE应完成以下过程。
①清空所有HARQ缓存。
②通知RRC释放PUCCH/SRS的配置。
③释放所有配置的下行资源分配和上行资源授权。
数据传输
E-UTRAN在每个下行TTI内通过PDCCH给UE动态分配资源〔包括PRB和MCS〕,UE识别通过C-RNTI实现。
非DRX状态下,UE持续监听PDCCH以确定是否有针对它的调度信令。
在下行方向,数据缓冲区位于eNB,eNB可以准确地知道每个UE、每个RB对应的缓冲区数据量,因此一般采用基于RB的调度,以便于更好地满足RB的QoS要求。
E-UTRAN还可以为UE的HARQ进程的初始传输分配预定义下行资源,重传那么通过PDCCH调度。
在有预定义资源的子帧内,UE如果没有监听到PDCCH通过其C-RNTI寻址的调度信令,那么按预定义资源分配来接收下行数据;否那么,按PDCCH指示接收下行数据,即调度信令优先于预定义资源分配。
上行资源分配以动态调度为根底,非DRX状态下,UE通过持续监听PDCCH是否有针对其C-RNTI的寻址来确定是否有其上行授权〔ULgrant〕。
在上行方向,UE是数据发送端,调度器位于eNB。
上行资源授权是基于UE的,即每一调度信令针对UE而不是RB分配资源。
eNB只需控制为UE分配的资源总量或者允许传输的数据总量,UE那么按照预定义的规那么在不同的RB之间分配资源,一般都是保证优先级最高的RB传输最多的数据量。
UE需要向eNB汇报其缓冲区的数据总量以及优先级最高的RB对应的缓冲区数据量等信息。
该方式的主要优点在于控制简单、信令开销〔包括上行和下行〕比拟小;其主要缺点在于调度器无法对不同QoS要求的上行业务流进行更加精确的调度和控制,优先级次高的业务流可能长时间得不到传输。
E-UTRAN还可以进行上行资源预定义分配,与下行预定义分配不同的是:
可以对HARQ进程的初始传输和重传都进行上行资源预定义。
在有预定义资源的子帧上,UE如果没有监听到针对它的上行调度信令,按预定义资源分配发送上行数据;否那么,按控制信道的指示发送上行数据,即调度信令优先于预定义资源分配。
MAC重配置
当高层要求MAC实体重配置,UE进行以下操作。
〔1〕各定时器启动或重启时,应用新配置的值。
〔2〕各计数器初始化时,应用新配置的最大参数值。
〔3〕其他参数在重配置时刻即应用来自于高层的配置值。
MACPDU
MACPDU表示MAC层协议数据单元,每一个MACPDU长度上都按字节排布,由比特串组成。
读取多个比特串时,按照由左至右、由上至下的顺序。
一个SDU由第一个比特开始按比特升序,装配进一个MACPDU。
UE忽略下行MACPDU中的预留位的值。
MACPDU包括几种根本类型。
〔1〕数据发送MACPDU〔DL-SCH和UL-SCH〕。
〔2〕透明传输MACPDU。
〔3〕随机接入响应MACPDU。
〔4〕MAC控制单元。