Friday, October 7, 2016

IoT: LTE-BL/CE(CAT-M1) Random Access

In terms of PRACH sequence selection and transmission, there is no difference except the preambleIndex that should be used. firstPreamble and lastPreamble in LevelInfo under CELevelList tells UE which preambles to use.

After CAT-M1 UE sent PRACH, instead of monitoring PDCCH and PDSCH in the same subframe. CAT-M1 UE has to monitor narrowband index configured in SIB2-BR for MPDCCH first and after decoded MPDCCH in subframe n, it should monitor subframe (n+2) for random access response, whose MAC header is RAR format.

The RA-RNTI that is used to scramble MPDCCH for RAR is calculated using following formula from 36.321 5.1.4

In a FDD cell, because there is only 1 PRACH resource in a subframe, f_id is always 0 (36.211 5.7.1). If PRACH-r13 config in SIB2-BR indicated that UE can transmit PRACH in subframe=1,  t_id=1.  W_max is fixed 400 for CAT-M1 UEs. If SFN_id is 783, the calculated RA-RNTI is 1+1+0+60*(783 mod 40) = 1382.

DCI format 6-1A is used to transmit MPDCCH and UE should monitor aggregation level up to 8 in common search space. The exact bit mapping can be found in 36.212 5.3.3.1.12
I.E. MPDCCH in HEX is 11588200(29bits), translated in bits is
10001010110001000001000000000
Since it is NOT PDCCH ordered UL re-sync, the interpretation of each field is following:
1 -> value 1 indicates it is DCI format 6-1A
0 -> value 0 indicates frequency hopping is not enabled
For DCI format 6-1A,  is equal to 3 bits, thus, 001 provides the narrowband index, which in INT is 1
01011 -> 5 bits for DL resource allocation type 2 with in indicated narrowband. INT value is 11
Based on 36.213 7.1.6.3 and RIV=11, RBstart and  L_CRBs can be calculated using following equations.
 
RBstart=0 and L_CRBs=6.
0001 -> 4 bits for MCS. INT value is 1
00 -> 2 bits for repetition number. INT value is 0
000 -> 3 bits to indicate HARQ process number for FDD primary cell (for TDD primary cell, 4 bits). INT value is 0
1 -> 1 bit for NDI. First occurrence of 1 means new data.
00 -> 2 bits for redundancy version. INT value is 0 means RV0
00 -> 2 bits for TPC command for PUCCH. Since this MPDCCH is scrambled with RA-RNTI, the MSB is reserved, the LSB is 0 indicates N_(1A/PRB) is 2.
With MCS=1 and N_(1A/PRB)=2, based on Table 7.1.7.2.1-1, TBS of RAR is 56 bits.
From 36.212 Table 5.3.3.1.2-2, DAI has 0 bit
0 -> indicates SRS request. 0 means false
TPMI information is not present
PMI information is not present
00 -> HARQ-ACK resource offset as defined in 36.213 10.1, this value is used later on to calculate parameter N_((1)/PUCCH) which is used to calculate which PRB PUCCH will be transmitted (36.213 10.1.2).
00 -> DCI subframe repetition number as defined in 36.213 9.1.5

After decoded MPDCCH for RAR, UE knows the TBS and the resource allocation for RAR, UE will monitor subframe (n+2) in corresponding narrowband indicated by SIB2 for RAR.
I.E. According to MPDCCH example showed above, the entire RAR length is 56 bits. If HEX value is 73001F02605F8F, the interpretation of each field is as follows:
First 8 bits is MAC header. 73 translated to bits is 01110011
0 -> Extension field is 0 indicates that MAC RAR or padding starts next byte. 0 means at least another set of E/T/RAPID fields follows.
1 -> Type filed indicates whether the MAC subheader contains a Random Access ID or a Backoff Indicator. 0 means Backoff Indicator presented and 1 means Random AccessID presented.
110011 -> Since T=1, 6 bits is used to calculate RAPID. If T=2, 4 bits are used to calculate BI. INT value is 51, which means this RAR is for preambleId=51 (reserved for CAT-M1 in sample config)

Next 48 bits is RAR, first 12 bits is 001 in HEX.
0 -> Reserved bit, set to 0
00000000001 -> 11 bits is Timing Advance Command. It is used to control the amount of timing adjustment that the MAC entity has to apply (36.213 4.2.3). INT value is 1 means 16Ts

For CAT-M1 UE, following 20 bits is UL grant. F0260 in HEX. From 36.213 6.2, interpretation of each field is as follows:
NNB=floor(NUL/RB/6)=8, Nindex/NB=ceiling(log2(NNB))=3
111 -> Msg3 PUSCH narrowband index. INT value is 7 means last narrowband indexed from lowest frequency to highest frequency
1000 -> Msg3 PUSCH resource allocation. For CEmodeA, insert one MSB with value set to 0 and interpret using UL resource allocation type 0 within indicated narrowband according to 36.213 8.1.1

RBstart=2 and L_CRBs=2
00 -> number of repetition for Msg3. From 36.213 Table 6.2-C, 00 means Ya/8. Ya is broadcasted in SIB2-BR value push-maxNumRepetitionCEmodeA-r13=8 in our example. 00 translated to 1.
010 -> MCS for Msg3. INT value is 2.
011 -> TPC. INT value is 3 for PUSCH transmission power control
0 -> CSI request. 0 means not requesting any CSI report.
0 ->  UL dealy.
00 -> Msg3/4 MPDCCH narrowband index. 36.213 Table 6.2-B. 00 means (NBRAR mod NNB2), where NBRAR is signaled in SIB2-BR of parameter mpdcch-NarrowbandsToMonitor-r13 if only 1 narrowband is configured. In our example, it is 2. NNB2=floor((NDL/RB)/6)=8. 2 mod 8 = 2 which means Msg3 and Msg4 should be transmitted in narrowband index 2.

Last 16 bits are for Temporary C-RNTI. 5F8F in HEX and 24463 in DEC

IoT: LTE-BL/CE(CAT-M1) SIB2

After UE has decoded SIB2-BR, UE is able to get RACH configuration to start RACH.
rach-CE-LevelInfoList-r13 contains different levels of coverage enhancement. If it only has one sub structure, it means there is only 1 CE level.
RACH-CE-LevelInfo-r13 is the sub-structure of above List. firstPreamble-r13 and lastPreamble-r13 defines the preamble range that UE can select for CAT-M1 rach. ra-ResponseWindowSize-r13 allows UE to start monitor MPDCCH for RAR. mac-ContentionResolutionTimer-r13 configures UE to start monitor contention resolution after transmitted Msg3.
I.E. firstPreamble-r13=48 and lastPreamble-r13=51 means UE can only use preambleId ranges from 48 to 51 for CAT-M1 rach. ra-ResponseWindowSize-r13=ms20 means UE will start monitoring MPDCCH for RAR within (20+4) TTIs after sent PRACH.

PRACH-Parameters-CE-r13 is sub-structure of PRACH-ParametersListCE-r13. it has prach-ConfigIndex, prach-FreqOffset, which have the same meaning as legacy.
I.E. If prach-ConfigIndex =3 and prach-FreqOffset=3, UE can transmit PRACH in subframe1 in every radio frame and 3PRBs from the lowest frequency boundary.

mpdcch-NarrowbandsToMonotor-r13 is used to calculate which narrowband for UE to monitor in RAR. the calculated result tells UE which narrowband to monitor for MPDCCH that carries the scheduling information of RAR. This could be updated when eNB sent Msg4 to UE. mpdcch-NumRepetition-RA-r13 tells UE how many times of MPDCCH will be transmitted.

frequencyHoppingParameters-r13_interval-ULHoppingConfigCommonModeA-r13_interval-FDD-r13 will be used later on to calculate PUCCH resource to send ACK/NACK for Msg4.

deltaPUCCH-shift is used to calculate Delta(ARO) value in 36.213 Table 10.1.2.1-1, which is then used to calculate N_((1,p0)/PUCCH).

More updates regarding the fields in SIB2-BR are coming later.

IoT: LTE-BL/CE(CAT-M1) MIB/SIB1

Compared with legacy MIB, CAT-M1 MIB has one more I.E. on RRC layer named schedulingInfoSIB1-BR-r13. Total length of MIB is 24 bits and legacy MIB has 10 spare bits which 5 most significant bits were used to indicate schedulingInfoSIB1-BR-r13. The value of schedulingInfoSIB1-BR-r13 is used to get the repetition level and TBS for SIB1-BR from 36.213 Table 7.1.6-1 and Table 7.1.7.2.7-1


For SIB1-BR decoding, based on 36.211 6.4.1, if the PDSCH carries SIB1-BR, the PDSCH transmission is repeated periodically in every period of 8 radio frames, where a period starts with a radio frame n_f mod8 = 0 where n_f is the system frame number.
I.E. One period started with sfn=80.
The PDSCH is transmitted N_(SIB1-BR/PDSCH) times in each period of 8 frames.
I.E. Looking at above table, if schedulingInfoSIB1-BR-r13 is 16, the N_(SIB1-BR/PDSCH) is 4. So SIB1-BR will be transmitted 4 times in each period of 8 frames started with sfn mod 8 = 0.



In above equation, let {Sj} be the set of narrowbands, excluding narrowbands oeverlapping with the 72 center subcarriers for N_(DL/RB) > 15, and ordered in increasing order of narrowband index.
I.E. If we have 10MHz DL bandwidth, the N_(DL/RB) is 50 > 15. There is in total 8 narrowbands but two of the central narrowbands are overlapping with center 72 carriers. Excluded these two narrowbands, set {Sj} size is 6 and S0 = n_NB0, S1 = n_NB1, S2=n_NB2, S3=n_NB5, S4=n_NB6, S5=n_NB7.

The PDSCH transmission cycle through the set {Sj} of narrowbands in increasing order of i, starting with i=0 for the first subframe, according to n_NB=Sj, N_(S/NB) is total number of narrowbands in set {Sj}

36.213 7.1.6.4A. The starting OFDM symbol for PDSCH is given by index l_DataStart in the first slot in a subframe. For SIB1-BR, l_DataStart = 3 if N_(DL/RB) > 10 or l_DataStart = 4 if N_(DL/RB) <= 10.

36.321 5.3.1 The RV value for each SIB1-BR transmission is determined by following steps,
 

I.E. 10MHz DL, m = 2. Take CellId=0, starting with i=0, then j = (0 mod 6 + 0*floor(6/2)) mod 6, j = 0 mod 6 = 0; So the first SIB1-BR transmission is S0 narrowband in set {Sj}; i = 1, then j = (0 mod 6 + 1*floor(6/2)) mod 6 = 3, so the second SIB1-BR transmission is the S3 narrowband in set {Sj}, which is narrowband index 5. The third SIB1-BR will be transmitted the same as the first one and the fourth SIB1-BR will be transmitted the same as second SIB1-BR.

Refer to Table 6.4.1-1 and Table 6.4.1-2, if DL bandwidth is greater than 10MHz for FDD. If CellId is even number and repetition level is 4, the starting sfn that transmitted SIB1-BR is sfn mod 8 = 0, I.E. sfn=80; if CellId is odd number and repetition level is 4, the starting sfn that transmitted SIB1-BR is sfn mod 8 = 1. I.E sfn=81
In order to decode SIB2-BR, UE has to interpret content of SIB1-BR correctly. si-Periodicity in SIB1-BR defines the period where SI (which SIB2-BR will be mapped to) period is; si-WindowLength-BR-r13 defines the si-window that SIB2-BR mapped in; si-RepetitionPattern-r13 gives the repetition frequency; subframePattern bitmap defines which subframes are value for DL, which are valid for UL. startSymbolLC or startSymbolBR defines the timing domain starting position of PDSCH. si-Narrowband-r13 indicates the narrowband index to be monitored. si-TBS-r13 indicates the TBS of SI (primarily SIB2-BR currently)
I.E. si-Periodicity=rf8, si-WindowLength-BR-r13=ms20, si-RepetitionPattern-r13=every2ndRadioFrame, subframePattern40-r13 is all 1, startSymbolBR=3, si-Narrowband-r13=8, si-TBS-r13=408 means that SIB2-BR is transmitted in the period of sfn mod 8 = 0 for the first 20ms and in the first radio frame for every subframe started at symbol index 3 in narrowband index 8 of TBS=408 bits with all subframes. These SIB2-BRs will be transmitted with different RVs based on the calculation steps showed above. 

Thursday, September 3, 2015

LTE RRCConnectionReestablishment procedure

The purpose of RRCConnectionReestablishment procedure is to re-establish the RRC connection, which involves the resumption of SRB1 operation, the re-activation of security and the configuration of only the PCell.

E-UTRAN applies the procedure as follows:
1. To reconfigure SRB1 and to resume data transfer only for this RB
2. To re-activate AS security without changing algorithm.

The UE only initiate the procedure when AS security has been activated. Following conditions has to be met
1. Detect radio link failure. Upon receiving N310 consecutive "out-of-sync" indications for the PCell from lower layers while neither T300, T301, T304 nor T311 is running. (UE shall start timer T310)
2. Detect radio link failure. Upon receiving N313 consecutive "out-of-sync" indications for the PCell from lower layers while T307 is not running. (UE shall start timer T313)
3. Upon handover failure. 36.331 5.3.5.6
4. Upon mobility from E-UTRA failure. 36.331 5.4.3.5
5. Upon integrity check failure indication from lower layers
6. Upon an RRC connection reconfiguration failure. 36.331 5.3.5.5

Upon initiation of the procedure, the UE shall:
1. Stop timer T310, if running
2. Stop timer T312, if running
3. Stop timer T313, if running
4. Stop timer T307, if running
5. Start timer T311
6. Suspend all RBs except SRB0
7. Reset MAC
8. Release the MCG SCell(s), if configured. 36.331 5.3.10.3a
9. Apply the default physical channel configuration as specified in 36.331 9.2.4
10. For the MCG, apply the default semi-persistent scheduling configuration as specified in 9.2.3
11. For the MCG, apply the default MAC main configuration as specified in 9.2.2
12. Release powerPrefIndicationConfig, if configured and stop timer T340, if running
13. Release reportProximityConfig and clear any associated proximity status reporting timer.
14. Release obtainLocationConfig, if configured
15. Release idc-Config, if configured.
16. Release measSubframePatternPCell, if configured
17. Release the entire SCG configuration, if configured, except for the DRB configuration (as configrued by drb-ToAddModListSCG)
18. Release naics-Info for the PCell, if configured
19. Release the RN subframe, if connected as RN and configured with an RN subframe configuration.
20. Perform cell selection process as specified in 36.304

Upon receiving the RRCConnectionReestablishmentReject message, the UE shall perform the action upon leaving RRC_CONNECTED as specified in 5.3.12 with release cause 'RRC connection failure'.

Wednesday, September 2, 2015

LTE system information block introduction (SIB3)

SIB3 IE introduction. SIB3 contains mainly cell re-selection information for intra-frequency.

(1) IE cellReselectionInfoCommon
IE q-Hyst, this value is in unit of dB, it is Qhyst in 36.304. This value is applied when UE detected itself in Medium-mobility or High-mobility state (Only if TCRmax, NCR_M, NCR_H and TCRmaxhyst is sent in SIB3). The criteria of detecting Medium-mobility state or High-mobility state is as follows (Quoted from 36.304 5.2.4.3):

Medium-mobility state criteria:

  • If number of cell reselections during time period TCRmax exceeds NCR_M, and not exceed NCR_H

High-mobility state criteria:

  • If number of cell reselections during time period TCRmax exceeds NCR_H

The UE shall not count consecutive reselections between same two cells into mobility state detection criteria if same cell is reselected just after one other reselection.

(2) IE cellReselectionServingFreqInfo
IE s-NonIntraSearch = SnonIntraSearchP. If the field s-NonIntraSearchP is present, the UE applies the value of s-NonIntraSearchP instead. Otherwise if neither s-NonIntraSearch nor s-NonIntraSearchP is present, the UE applies the (default) value of infinity for SnonIntraSearchP

IE threshServingLow

Thursday, March 12, 2015

measurementGap calculation

measurementGap is configured to UE for measuring different frequencies. Following notes should be considered when working with measurementGap.

1. Normal measurementGap configuration. Fully length is taken by UE.  
GapOffset 14
MGRP 40
MGL 6
T 4
GapSubframe 4

For above configuration, measurementGap will look like following every 40ms. 

subframe
SFN 0 1 2 3 4 5 6 7 8 9
0 - - - - - - - - - - -
1 GAP - - - - G G G G G G
2 - - - - - - - - - - -
3 - - - - - - - - - - -


2. Special measurementGap configuration. Fully length is taken by UE. 
GapOffset 29
MGRP 40
MGL 6
T 4
GapSubframe  9

For above configuration, measurementGap will look like following every 40ms. Note the shortened length of measurementGap of 1ms instead of 6ms as parameter indicated. 

subframe
SFN 0 1 2 3 4 5 6 7 8 9
0 - - - - - - - - - - -
1 - - - - - - - - - - -
2 GAP - - - - - - - - - G
3 GAP G G G G G - - - - -




Thursday, February 19, 2015

Relation between "DL Rate Matched Bits Sum" and Reference Signal

Following rules applied to subframes that are not subframe0 and subframe5 (subframe9 without paging)

For normal cyclic shift (7 OFDM symbols in a slot)
antenna port 0 and antenna port 1 occupied REs in 1 PRB for 1 codeword excluding PDCCH and PCFICH is 12 REs
antenna port 2 and antenna port 3 occupied REs in 1 PRB for 1 codeword excluding PDCCH and PCFICH is 8 REs
antenna port 5 occupied REs in 1 PRB for 1 codeword is 12 REs
antenna port 15 and antenna port 16 occupied REs in 1 PRB is 2 REs
antenna port 7 and antenna port 8 occupied REs in 1 PRB is 12 REs

For TM3 2x2 10MHz CFI=1
Number of available REs is 7200
1 codeword with 64QAM modulation, bits rate is 7200 * 6 = 43200 bits/msec
2 codeword with 64QAM modulation, bits rate is 7200 * 6 * 2 = 86400 bits/msec

For TM4 4x2 (4x4) 10MHz CFI=1
Number of available REs is 7200 - 400 = 6800
1 codeword with 64QAM modulation, bits rate is 6800 * 6 = 40800 bits/msec
2 codeword with 64QAM modulation, bits rate is 6800 * 6 * 2 = 81600 bits/msec

For TM9 2x2 10MHz CFI=1
For non-CSI-RS subframes
Number of available REs is 7200 - 600 = 6600
1 codeword with 64QAM modulation, bits rate is 6600 * 6 = 39600 bits/msec
2 codeword with 64QAM modulation, bits rate is 6600 * 6 * 2 = 79200 bits/msec

For CSI-RS subframes
Number of available REs is 7200 - 600 - 100 = 6500
1 codeword with 64QAM modulation, bits rate is 6500 * 6 = 39000 bits/msec
2 codeword with 64QAM modulation, bits rate is 6500 * 6 * 2 = 78000 bits/msec

For TM9 4x2 (4x4) 10MHz CFI=1
For non-CSI-RS subframes
Number of available REs is 7200 - 600 - 400 = 6200
1 codeword with 64QAM moudulation, bits rate is 6200 * 6 = 37200 bits/msec
2 codeword with 64QAM modulation, bits rate is 6200 * 6 * 2 = 74400 bits/msec

For CSI-RS subframes
Number of available REs is 7200 - 800 - 400 - 100 = 6100
1 codeword with 64QAM moudulation, bits rate is 6100 * 6 = 36600 bits/msec
2 codeword with 64QAM modulation, bits rate is 6100 * 6 * 2 = 73200 bits/msec


For subframe0 and subframe5, PBCH, PSS and SSS would take away some REs.

PBCH would occupy extra 72 * 4 - (4 * 6) - (4 * 6)= 240REs
PSS and SSS would occupy extra 72 * 2 = 144REs

Note: for subframe0, TM3 2x2 total available REs for PDSCH is equal to 7200 - 240 - 144 -24 = 6792REs