Showing posts with label RACH. Show all posts
Showing posts with label RACH. Show all posts

Friday, February 16, 2018

RACH Procedure

RACH Procedure Flow

1. RRC Layer sends Access Req for RRC Connection Request/RRC Coonection Re-establishment Request to MAC and starts T300 timer
[020/008/012] OTA LOG 00:00:21.032 UL_CCCH / RRCConnectionRequestRadio Bearer ID: 0, Freq: 2050, SFN:0
[9504/0002] MSG 00:00:21.032 LTE MACCTRL Start Access Request for reason=0, RAID=2551
[9501/0002/0010] MSG 00:00:21.069 LTE RRC   T300 timer internally restarted with 400ms

2. MAC sends Start_RACH_Req to ML1
[9509/0001/0010] MSG 00:00:21.032 LTE ML1  ML1: LTE_CPHY_START_RACH_REQ rcvd

3. ML1 sends the first preamble and starts RA response timer
[0xB167] LOG 00:00:21.069 LTE Random Access Request (MSG1) ReportLength: 0032 
[9509/0002] MSG 00:00:21.073 LTE ML1 Processing LTE_CPHY_RA_TIMER_STARTED_IND

4. If MAC could decode RAR before ML1 RA timer expiry and send the same to ML1, ML1 will go ahead with MSG3 transmission
[9509/0002] MSG 00:00:21.073 LTE ML1 Processing LTE_CPHY_RA_TIMER_STARTED_IND
[0xB168] LOG 00:00:21.077 LTE Random Access Response (MSG2) ReportLength: 0012

5. If MAC could not give RA parameter request to ML1 before ML1 RA timer expiry, then ML1 sends RA timer expiry indication to MAC
6. Here MAC starts another RACH attempt (with another preamble sequence with increased preamble power); MAC repeats this procedure till it sends maximum number of preambles (MAX_RACH attempts)
7. If MAC reaches MAX_RACH attempts, i.e., maximum number of preambles reached, and still could not get RAR, then MAC sends Random Access Problem indication to RRC and continues RACHing
8. MAC will stop RACHing only when T300 expired in RRC and RRC sends Abort request

Thursday, September 24, 2015

RACH Procedure in LTE

1. What is full form of RACH?
A. Random access Channel Request.

2. What are the types of RACH?
A. Contention based and Non Contention based.

3. Where to use contention based and where to use non contention based RACH?
A.
Non Contention based:
                                     During handover non contention based RACH to be used as HO is time                                                intolerant and if contention based RACH used then call drop might be                                                    observed.
Contention based:
                                     All Other time contention based RACH can be used.

4. Why do we need RACH?
A. Whenever UE want's to establish a RRC Connection , it needs to perform the RACH procedure.
     This procedure helps UE to get synced with the NW and perform the desired action over the                established RRC Connection.

5. When do we need RACH?  
A. According Spec:
  • Initial Access - UE is trying to access the network in RRC idle state.
  • During RRC connection re-establishment procedure .
  • Handover
  • When uplink synchronization is lost :- It means from a certain duration network has not received anything from UE in uplink.
  • When UE does not have any PUCCH resources available for SR(Scheduling Request) .
  • When timing advance is needed for positioning purpose in RRC connected state for UE.

6. Steps for Random Access Procedure?
A. From 3GPP TS 36.321(MAC) Segment 5.1

  1. 5.1.1 Random Access Procedure initialization
  2. 5.1.2 Random Access Resource selection 
  3. 5.1.3 Random Access Preamble transmission
  4. 5.1.4 Random Access Response reception 
  5. 5.1.5 Contention Resolution 
  6. 5.1.6 Completion of the Random Access procedure  



Reference:
3GPP TS 36.300 segment10.1.5.1
3GPP TS 36.331(RRC) segment 5.3.3.3
3GPP TS 36.321(MAC) segment 5.1.5