1. What is TA

TA: Timing Advance, 定时提前,一般用于UE上行传输,指为了将UE上行包在希望的时间到达eNB,预估由于距离引起的射频传输时延,提前相应时间发出数据包。
        TAC: Timing Advance Command,定时提前命令,eNB通过发送TAC给UE,告知UE定时提前的时间大小。
2. Why need TA

上行传输的一个重要特征是不同UE在时频上正交多址接入(orthogonal multiple access),即来自同一小区的不同UE的上行传输之间互不干扰。
        为了保证上行传输的正交性,避免小区内(intra-cell)干扰,eNodeB要求来自同一子帧但不同频域资源(不同的RB)的不同UE的信号到达eNodeB的时间基本上是对齐的。eNodeB只要在CP(Cyclic Prefix)范围内接收到UE所发送的上行数据,就能够正确地解码上行数据,因此,上行同步要求来自同一子帧的不同UE的信号到达eNodeB的时间都落在CP之内。
        为了保证接收侧(eNodeB侧)的时间同步,LTE提出了上行定时提前(Uplink Timing Advance)的机制。
        在UE侧看来,timing advance本质上是接收到下行子帧的起始时间与传输上行子帧的时间之间的一个负偏移(negative offset)。eNodeB通过适当地控制每个UE的偏移,可以控制来自不同UE的上行信号到达eNodeB的时间。对于离eNodeB较远的UE,由于有较大的传输延迟,就要比离eNodeB较近的UE提前发送上行数据。

图1 上行传输的timing对齐

图1(a)中指出了不进行上行定时提前所造成的影响。

从图1(b)中可以看出,eNodeB侧的上行子帧和下行子帧的timing是相同的,而UE侧的上行子帧和下行子帧的timing之间有偏移。

同时可以看出:不同UE有各自不同的uplinktiming advance,也即unlink timing advance是UE级的配置。
3. How measure TA

eNodeB通过测量UE的上行传输来确定每个UE的timingadvance值。因此,只要UE有上行传输, eNodeB就可以用来估计timing advance值。理论上,UE发送的任何信号(SRS/DMRS/CQI/ACK/NACK/PUSCH等)都可用于测量timingadvance。
        在随机接入过程中,eNodeB通过测量接收到的preamble来确定timing advance值。
4. When send TA

上行同步的粒度为16Ts(0.52 ms)。关于Ts,见36.211的第4章。
        上行timing的不确定性正比于小区半径,每1 km有大约6.7μs的传输延迟(6.7μs / km),LTE中小区最大半径为100 km,故最大传输延迟接近0.67 ms。上行同步的粒度为Ts(0.52 ms),故TA的最大值约为(0.67 * 1000)/0.52 ≈1288。(TA的最大值为1282,应该是更精确的计算,但计算方法就是这样的,当然还要将解码时间考虑在内)
        eNodeB通过两种方式给UE发送TimingAdvance Command:
        1. 在随机接入过程,通过RAR的Timing Advance Command字段发送给UE
        这中情况下,eNodeB通过测量接收到的preamble来确定timing advance值,RAR的Timing Advance Command字段共11 bit,对应TA索引值的范围是0~1282。

图2 MAC RARfeild

对于随机接入而言,TA值乘以16Ts,就得到相对于当前上行timing所需的实际调整值NTA=TA*16(单位为Ts)。

我称这个过程为“初始上行同步过程”。

2. 在RRC_CONNECTED态,通过TAC MACCE发送TA给UE

虽然在随机接入过程中,UE与eNodeB取得了上行同步,但上行信号到达eNodeB的timing可能会随着时间发生变化:
        - 高速移动中的UE,例如运行中的高铁上的UE,其与eNodeB的传输延迟会不断变化;
        - 当前传输路径消失,切换到新的的传输路径。例如在建筑物密集的城市,走到建筑的转角时,这种情况就很可能发生;
        - UE的晶振偏移,长时间的偏移累积可能导致上行定时出错;
        - 由于UE移动而导致的多普勒频移等。
        因此,UE需要不断地更新其上行定时提前量,以保持上行同步。LTE中,eNodeB使用一种闭环机制来调整上行定时提前量。
        eNodeB基于测量对应UE的上行传输来确定每个UE的timingadvance值。因此,只要UE有上行传输, eNodeB就可以用来估计timing advance值。理论上,UE发送的任何信号(SRS/DMRS/CQI/ACK/NACK/PUSCH等)都可用于测量timingadvance。
        如果某个特定UE需要校正,则eNodeB会发送一个Timing  Advance Command 给该UE,要求其调整上行传输timing。该Timing Advance Command 是通过Timing  Advance Command  MAC control element发送给UE的。
        Timing  Advance Command  MAC controlelement由LCID值为11101(见36.321的Table 6.2.1-1)的MAC PDU subhead指示,且其结构如下(R表示预留bit,设为0):

图3:TimingAdvance Command MAC control element
        可以看出,Timing Advance Command字段共6 bit,对应TA索引值TA的范围是0~63。
        UE侧会保存最近一次timing advance调整值NTA,old,当UE收到新的Timing Advance Command而得到TA后,会计算出最新的timing advance调整值NTA,new = NTA,old + (TA-31) * 16 (单位为Ts)。
        我称这个过程为“上行同步更新过程”。
5. Related paramters

eNodeB会通过RRC信令给UE配置一个timer(在MAC层,称为timeAlignmentTimer),UE使用该timier在MAC层确定上行是否同步。

需要注意的是:该timer有Cell-specific级别和UE-specific级别之分。eNodeB通过SystemInformationBlockType2的timeAlignmentTimerCommon字段来配置的Cell-specific级别的timer;eNodeB通过MAC-MainConfig的timeAlignmentTimerDedicated字段来配置UE-specific级别的timer。
6. UE behavior

如果UE在子帧n收到Timing Advance Command,则UE会从子帧n + 6开始应用该timing调整值。

如果UE在子帧n和子帧n + 1发送的PUCCH/PUSCH/SRS由于timing调整的原因出现重叠,则UE将完全发送子帧n的内容,而不发送子帧n + 1中重叠的部分。

UE收到Timing Advance Command后,会调整PCell的PUCCH/PUSCH/SRS的上行发送时间。而SCell的PUSCH/SRS(SCell不发送PUCCH)的上行发送时间调整量与PCell相同。(见36.213的4.2.3节)

从上面的介绍可以看出,PCell和SCell共用一条Timing Advance Command在载波聚合中,UE可能需要往多个小区(或称为component carrier)发送上行数据,在理论上,由于不同小区的物理位置(inter-band CA)可能不同,每个小区都需要给该UE发送各自的Timing Advance Command。但是这种类型的部署并不常见,载波聚合的小区通常物理位置上相近且同步,因此为了简化LTE的设计,所有聚合的小区共用一条timing advance command。

前面已经介绍过,上行定时提前的调整量是相对于接收到的下行子帧的timing的,因此在UE没有收到Timing Advance Command的时候,UE需要跟踪下行timing的变化,以便自动调整上行传输的timing。(详见36.133的7.1.2节)
7. Out of sync

UE在MAC层如何判断上行同步/失步(详见36.321的5.2节):

eNB会通过RRC信令给UE配置一个timer(在MAC层,称为timeAlignmentTimer),UE使用该timier在MAC层确定上行是否同步。

需要注意的是:该timer有Cell-specific级别和UE-specific级别之分。eNodeB通过SystemInformationBlockType2的timeAlignmentTimerCommon字段来配置的Cell-specific级别的timer;eNodeB通过MAC-MainConfig的timeAlignmentTimerDedicated字段来配置UE-specific级别的timer。

如果UE配置了UE-specific的timer,则UE使用该timer值,否则UE使用Cell-specific的timer值。

当UE收到Timing Advance Command(来自RAR或Timing Advance Command MAC controlelement),UE会启动或重启该timer。如果该timer超时,则认为上行失步,UE会清空HARQ buffer,通知RRC层释放PUCCH/SRS,并清空任何配置的DL assignment和UL grant。

当该timer在运行时,UE认为上行是同步的;而当该timer没有运行,即上行失步时,UE在上行只能发送preamble。

还有一种情况下,UE认为上行同步状态由“同步”变为“不同步”:非同步Handover。
8. eNB implementation

由于不同的厂商实现方式可能不同,这里只介绍一些可借鉴的做法。

(1)由于UE必须在timeAlignmentTimer超时之前接收到Timing Advance Command,否则会认为上行失步。所以eNodeB需要保证在该timer时间范围内(通常要比该timer小,因为要预留一些时间给传输延迟和UE编解码等)给UE发送Timing Advance Command,以便UE更新上行定时并重启该timer。所以eNodeB必须保存最近一次成功地给该UE发送了Timing Advance Command(即eNodeB收到了对应下行传输的ACK)的子帧号,以便计算该时间范围。

(2)从(1)中可以看出,在eNodeB侧在MAC层也应该为每个UE维护一个类似timeAlignmentTimer的timer,以保证在该timer超时之前给UE发送Timing Advance Command。eNodeB何时启动/重启该timer呢?个人认为可以在UE随机接入成功中后启动,并在收到对应Timing Advance Command MAC controlelement的ACK/NACK后重启。注意timer的起始位置应该从最近一次成功地给该UE发送了Timing Advance Command的子帧(而不是收到对应ACK的子帧)。

(3)从上面的介绍可以看出, UE在子帧n收到Timing Advance Command后,会从子帧n + 6才开始应用该timing调整值。也就是说,eNodeB在子帧n发送了某个UE的Timing Advance Command之后,在子帧n + 6之前(不包括n + 6子帧)的时间内,是不会去测量该UE的上行timing的。

(4)在子帧n + 6之后,eNodeB可能需要测量多个上行timing瞬时值以作平均处理,以便得到最终的调整量,也就是说,eNodeB可能在n + 6子帧后的某段时间内,是不会发送Timing Advance Command的。当测量完毕后,eNodeB在之后的某个子帧将Timing  Advance Command  MAC control element发给UE。

(5)eNodeB在物理层(L1层)应该也会判断UE在上行是否同步(具体如何判断我也不清楚,有位读者介绍过该厂家的实现机制,供大家参考:物理层会根据UL信号来计算sinr(也用于估算TA 值),如果算出的sinr值过低,物理层就会认为UL 失步),如果不同步,应告知MAC层。(关于物理层的处理,我也不是很清楚,就不在这里献丑了!~~)

关于eNodeB侧的上行同步处理,大家还可以参考一下中兴的一篇专利,见[7]。

原文:https://blog.csdn.net/nenema/article/details/22162623

【参考资料】

[1]      TS36.321的5.2节和6.1.3.5节

[2]      TS36.213的4.2.3节

[3]     TS 36.300的5.2.7.3节和10.1.2.7节

[4]      TS36.133的7.1.2节

[5]     《4G LTE/LTE-Advanced for MobileBroadband》的11.5节

[6]     《LTE - The UMTS Long Term Evolution,2nd Edition》的和18.2.1节

[7]     《LTE的时间提前调整方法及基站》  ---中兴的一篇专利,介绍eNodeB侧如何处理上行同步的。

[8]      http://blog.sina.com.cn/s/blog_927cff010101cwk7.html

LTE学习笔记:时间提前量 TA相关推荐

  1. LTE学习笔记——xmind思维导图

    以下是思维导图形式的LTE学习笔记,参考书是<LTE教程原理与实现>,未完待续--

  2. LTE学习笔记三:接口协议

    上一笔记说明了LTE网络的网元组成,网元之间的联系是通过标准化的接口.接下来学习LTE终端和网络的空中接口Uu.基站之间的X2接口.基站与核心网之间的S1接口,以及LTE接口协议栈和以往无线制式相比的 ...

  3. LTE学习笔记六:MIMO多天线技术

    不断提高空中接口的吞吐率是无线制式的发展目标.MIMO多天线技术是LTE大幅提升吞吐率的物理层关键技术.MIMO技术和OFDM技术一起并称为LTE的两大最重要物理层技术.MIMO技术很多原理,涉及一些 ...

  4. LTE学习笔记4之物理层信道与信号

    1.物理下行共享信道PDSCH:用于承载Unicast(单播)数据信息. 没有专用导频时,按照PBCH同样的端口映射:Port组合{0},{0,1},{0,1,2,3} 发射专用导频时,按照port5 ...

  5. Physical Signal Overshadowing Attack on LTE学习笔记

    LTE广播信号没有被完整性保护: 当同时存在多个无线信号时,UE选择信号功率较强的进行解码. 本文首次提出了一种信号注入攻击,该攻击利用LTE中广播消息的弱点并修改空中传输的信号,命名为信号覆盖攻击( ...

  6. LTE学习笔记--PRACH

    转自https://blog.csdn.net/a34140974/article/details/79499560 物理层的RA preamble结构如下图所示,包含TCP和TSEQ两个部分. 根据 ...

  7. LTE学习笔记:OFDM

    OFDM是LTE物理层最基础的技术.MIMO.带宽自适应技术.动态资源调度技术都建立在OFDM技术之上得以实现.LTE标准体系最基础.最复杂.最个性的地方是物理层. 1.OFDM 正交频分复用技术,由 ...

  8. LTE学习笔记四:OFDM

    OFDM是LTE物理层最基础的技术.MIMO.带宽自适应技术.动态资源调度技术都建立在OFDM技术之上得以实现.LTE标准体系最基础.最复杂.最个性的地方是物理层. 1.OFDM 正交频分复用技术,由 ...

  9. LTE学习笔记之无线资源管理

    LTE无线资源管理 集中式RRM 分布式RRM RRM的影响因素 RRM模块之间的关系 RRM职能 职能模块之间的关系 无线准入控制(RAC) RAC工作配合关系 QoS保证 准入控制法则 无线承载控 ...

最新文章

  1. 维护窗口和停机时间 可用率99.99%
  2. python 装饰器 参数-python函数装饰器之带参数的函数和带参数的装饰器用法示例...
  3. 存储1m图像错误_【1m 讲堂】“跨专业挑战空调施工常见错误,你敢来参加吗?”...
  4. Java String 学习笔记 (一)
  5. Xshell上传文件【转】
  6. 黑白块游戏java代码_用java做的一个小游戏—黑白反斗棋(适合菜鸟)
  7. java Http post请求发送json字符串
  8. Arduino、arm、树莓派、单片机四者区别和关系
  9. 湖州南浔张静江:“满堂花醉三千客,一剑霜寒四十州”
  10. 超声波测距模块工作原理
  11. android 多张图片渐变切换控件
  12. 如何管理一盘散沙的团队?
  13. C++设计模式(全23种)
  14. 前端(HTML+CSS+JS)
  15. 【摄影补光灯调光驱动方案】低亮度无频闪无抖动无极调光调色IC芯片 LED美颜灯升压恒流芯片FP7209 最大可驱动300W
  16. goland集成golint
  17. PhpSpreadsheet常用操作
  18. h3c.服务器 装系统,h3c服务器u盘安装linux系统安装
  19. 如何查Unity3D编辑器崩溃原因
  20. UIPresentationController

热门文章

  1. Kaggle竞赛实战-手写数字识别器实战
  2. 楷书书法规则_记住这些“潜规则”,小楷不等于把楷书简单写小
  3. 微人事 star 数超 10k 啦!聊聊如何打造一个 star 数超 10k 的开源项目
  4. 县级城市消费力排行榜,你的家乡排第几?
  5. 解释一下黑洞与弦理论
  6. 『机器学习白板』频率派vs贝叶斯派
  7. 微信:支付验证签名失败
  8. 国内手机号码段,卫星电话号段
  9. 卡尔曼滤波器 预测 odom 里程计轨迹的代码
  10. 下肢康复机器人的研究进展与临床应用