What is Timing Advanced in LTE?


In order to understand Timing Advanced in LTE. You need to already know the following.

In case of FDD, the uplink Radio Frame structure is the same as downlink radio frame. It is also known as Frame structure Type 1. 

In case of TDD, the uplink and downlink share the same radio frame structure also known as Frame Structure Type 2.

Timing of uplink radio frame

The timing of Uplink Radio Frame relative to Downlink Radio frame is defined at UE as shown in figure below. 

UL timing relative to DL timing at the UE 

Uplink radio frame timing precedes the downlink radio frame timing at the UE to allow for the round-trip time propagation delay. The Uplink and Downlink are then synchronized at the eNodeB. 

Timing advance (TA) in lte

Timing advance is used to control the Uplink Transmission timing of Individual UE. 

It is applicable to the following:

  • Physical Uplink Shared Channel (PUSCH)
  • Physical Uplink Control Channel (PUCCH)
  • Sounding Reference Signal

Physical Uplink Random Access Channel (PRACH) does not use Timing Advance because the UE transmits it before the network is able to provide any timing instructions.

Why do we need Timing Advance in the first Place?

The reason timing advance is needed is because it helps to ensure that transmission from all UEs are synchronised when received by the eNodeB. 

Pop-up Quiz
(Answer the Questions Below)

On a scale of 1 to 5 (where 5 is the highest and 1 is the lowest). How useful do you find Articles on TechTrained ?
Would you recommend TechTrained to others?

When DOES ue RECEIVES timing advance command for the first time?

The first time UE is provided with timing advance information is during the Random Access procedure, when UE makes the transition from RRC IDLE Mode to RRC Connected Mode.

An 11 bit timing advance command is included with Random Access Response.

initial timing advance for fdd and tdd

The way timing advance is applied for the case of FDD and TDD is as follows:

FDD: Timing advance = NTA  x Ts

TDD: Timing advance = (NTA + 624) x Ts

What is the value of TS?

This parameter Ts is used widely in 3GPP standards.  How is it calculated?  

Each frequency sub-carrier in LTE is 15 KHz in duration.  For a maximum bandwidth of 20 MHz the sampling using FFT is chosen to be 2048. 

Therefore  Ts = 1 / (15000 * 2048) 

After simplification Ts = 32.72 nanseconds

What is the value of NTA ?


The variable NTA is defined as follows: 

N TA  = TA x 16

where 11 bits are used to Signal a  Timing Advance (TA) value. 

The set of 11 bits allow a range of TA from 0 to 1282. 

Therefore using 1282 as the maximum value.

The range for maximum value of NTA is 1282 * 16 = 20512

maximum value of timing advance

Now we have the the maximum value of  NTA = 20512 and Ts = 32.7 nano seconds as computed earlier.

Therefore the maximum value of timing advance is

Timing advance = NTA x Ts = 20512 x 32.7 nano seconds = 0.67 msec

Based upon the speed of light as reference, this value of 0.67 msec corresponds to a round trip of 200 Km , which means a maximum cell range of 100 Km

What is the timing advance (TA) command once ue gets rrc connected after random access phase?

The timing advance command provided during Random Access Phase is an absolute timing advance command.

Once UE gets RRC connected, then timing advance changes are signalled using the Timing Advance Command MAC Control Element. These subsequent timing advance commands provided within the MAC Control Elements are relative and define changes to existing timing advance compared to absolute TA. 

 The Timing Advance Command within MAC Control Element forms part of the MAC PDU payload.  It has a size of 1 byte (8 bits).

Out of 8 bits 6 bits are used to signal the timing advance command (when UE is RRC connected). 

Therefore, for 6 bits timing advance (TA) command in this case has a range from 0 to 63.  

The timing advance command within the MAC Control Element corresponds to TA within the equation:

NTAnew = NTAold + (TA - 31) x 16

Where 31 subtraction from TA exists in the above equation to allow eNodeB to shit the timing advance in both positive and negative directions. 

For UE closer to the eNodeB, negative Timing Advance command can be used. For UE farther from the cell edge positive Timing Advance can be used. 


Q: In which subframe Timing Advance command is applied by the UE in the Uplink?

A: Timing advance commands received during downlink subrame 'n' are applied in uplink subframe 'n+6'

Q: What if timing advance command causes sub-frames to overlap?

A: When a timing advance command causes subframe 'm+1' to overlap with subframe 'm' the UE transmits all of subframe 'm' but does not transmit the overlapping part of subframe 'm+1'

Q: Where can I find more information about Timing Advance?

A: Take a look at 3GPP references TS 36.211, TS 36.213

Before you leave, please share your thoughts or comments or questions below. 

Have a nice day.

  • Uttam says:

    Hello Azar,

    Thanks for details, I have one doubt regarding TA in PRACH procedure in below scenario.

    Step 1: Lets Suppose timeAlignmentTimer is already running and current TA value is “X”.

    Step 2: Now UE has data to send but UE doesnt have valid PUCCH resources for SchedulingRequest etc.

    Step 3: So in this case UE need to do RACH procedure to request UL resource .. so while sending PRACH UE will use TA as 0 or TA as X ??


    • Azar says:

      When UE has PUCCH resources it sends Dedicated Scheduling requests and UE is assumed to be time aligned in the Uplink already.
      However when UE uses PRACH channel to send scheduling request (as it is the case in your question) then it is RA-Scheduling request.
      For RA-Scheduling Request it is assumed that UE is not time aligned so UE will get Time aligned once again according to RA time aligned procedure.
      It may use whatever is the current value in timeAlignmentTimer . Thank you for the question.

  • Munzir says:

    Can you explain what is the purpose of 16 here ?
    And why Nta is being multiplied with Ts

    • Azar says:

      Munzir, the basic unit of time in LTE is Ts = 1/(15000*2048) seconds

      • Munzir says:

        And 16?

        • Azar says:

          Khalil, 16 because the step size of timing advance is expressed in multiples of 16Ts

  • >