|
||
The concept and functionality of NR Timing Advance is same as the LTE Timing Advance. So I suggest you to read LTE Timing Advance as well if you are not familiar with the concept. Simply put, Timing Advance is a special command (notification) from eNB to UE that enable UE to adjust its uplink transmission as shown below. This kind of UL adjustment applies to PUSCH, PUCCH and SRS. < 38.211 - Figure 4.3.1-1: Uplink-downlink timing relation ?
ServingCellConfigCommon ::= SEQUENCE { physCellId PhysCellId OPTIONAL, -- Cond HOAndServCellAdd, downlinkConfigCommon DownlinkConfigCommon OPTIONAL, uplinkConfigCommon UplinkConfigCommon OPTIONAL, -- Need M supplementaryUplinkConfig UplinkConfigCommon OPTIONAL, -- Need S n-TimingAdvanceOffset ENUMERATED { n0, n25600, n39936 } OPTIONAL, ssb-PositionsInBurst CHOICE { shortBitmap BIT STRING (SIZE (4)), mediumBitmap BIT STRING (SIZE (8)), longBitmap BIT STRING (SIZE (64)) } OPTIONAL, -- Cond AbsFreqSSB ssb-periodicityServingCell ENUMERATED { ms5, ms10, ms20, ms40, ms80, ms160, spare2, spare1 } dmrs-TypeA-Position ENUMERATED {pos2, pos3}, lte-CRS-ToMatchAround SetupRelease { RateMatchPatternLTE-CRS } , rateMatchPatternToAddModList SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPattern rateMatchPatternToReleaseList SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPatternId OPTIONAL, subcarrierSpacing SubcarrierSpacing OPTIONAL, tdd-UL-DL-ConfigurationCommon TDD-UL-DL-ConfigCommon OPTIONAL, -- Cond TDD ss-PBCH-BlockPower INTEGER (-60..50), ... } How TimingAdvance information is delivered to UE ?
UE figures out the timing advance value from two different MAC layer command depending on situation. For the first Uplink message after PRACH, UE applies the Timing Advance value that it extracts from RAR (RACH Response). After the initial RACH process, UE would apply the timing Advance value that it extract from Timing Advance MAC CE if it received it.
As mentioned above, UE adjust UL transmission timing based on RAR during the initial attach. Once the initial attach is complete, UE adjust UL transmission based on the MAC CE-Timing Advance. The structure of MAC CE Timing Advance is as shown below.
< 38.321 - Figure 6.1.3.4-1: Timing Advance Command MAC CE >
You see here the Timing Advance Command Field is 6 bits which mean 64 steps in total ranging from -32 to 32 Tc in real timing. Since Tc is 0.509, the range of the physical timing is -16.3 us to 16.3 us. The TAG field in the MAC CE refers to the tag-Id specified in RRC message as shown below. MAC-CellGroupConfig ::= SEQUENCE { drx-Config SetupRelease { DRX-Config } OPTIONAL, -- Need M schedulingRequestConfig SchedulingRequestConfig OPTIONAL, -- Need M bsr-Config BSR-Config OPTIONAL, -- Need M tag-Config TAG-Config OPTIONAL, -- Need M phr-Config SetupRelease { PHR-Config } OPTIONAL, -- Need M skipUplinkTxDynamic BOOLEAN, ..., [[ csi-Mask-v1530 BOOLEAN OPTIONAL , -- Need M dataInactivityTimer-v1530 SetupRelease { DataInactivityTimer } OPTIONAL -- Need PCellOnly ]] }
TAG-Config ::= SEQUENCE { tag-ToReleaseList SEQUENCE (SIZE (1..maxNrofTAGs)) OF TAG-Id OPTIONAL, -- Need N tag-ToAddModList SEQUENCE (SIZE (1..maxNrofTAGs)) OF TAG OPTIONAL -- Need N }
TAG ::= SEQUENCE { tag-Id TAG-Id, timeAlignmentTimer TimeAlignmentTimer, ... }
TAG-Id ::= INTEGER (0..maxNrofTAGs-1) // maxNrofTAGs = 4
TimeAlignmentTimer ::= ENUMERATED {ms500, ms750, ms1280, ms1920, ms2560, ms5120, ms10240, infinity} At which slot the received Timing Advance value is applied ?Once the Timing Advance(TA) value is received by UE, the UE should apply the value for UL transmission 6 slot after the reception. That is, if TA is received at slot n, the value is applied from slot n+6 as stated in 38.213-4.2.
Reference[1]
|
||