You are on page 1of 13

Random Access Procedure (RACH)

Random Access Procedure (RACH)


Random Access Procedure:- In order to be synchronized with the
network, RACH procedure is used.
Suppose a UE wants to access the network, so first it will try to attach or
syncronise with the network. In LTE a separate channel PRACH ( Physical
Random Access Channel) is provided for initial access to the network.

When does UE need to perform Random Access Procedure :-


As per specifications, RACH can be performed in below mentioned scenarios
:-

 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.

To initiate the procedure UE lower layes will send a Random Access


Request(RACH Request) after receiving request from UE RRC.

UE receives a lot of information from eNodeB in System Information (SIB2).


It's important to understand those terminologies first.

You can also refer LTE(Long Term Evolution) SIB2 parameters section.
1. RACH Configurations
2. PRACH Configurations

How UE decides about when and where it needs to send RACH


Request:-
It is decided on the basis of parameters received in SIB2 PRACH
configurations.
UE can use 6 Resource blocks for sending the RACH Request.

From PRACH Config Index - There is a mapping in spec 36211 table 5.7.1-
2 from which UE can find the available subframes where it can send a
RACH.
For example:- Prach Config index value = 7, From table it is clear that UE
can send a RACH Req in any system frame but subframe should be 2 and 7.

From PRACH Frequency Offset - This value is also received in SIB2 by UE. It
governs which frequency resource UE can use for the RACH Req.
Example:- If the value of PRACH Freq Offset is 10. UE can use the 6 PRB's
starting from PRB 10 for RACH Request.

What exactly RACH Request contains:-


1. Preamble Index :- There are total of 64 preambles available which are
divided into two groups Group A and Group B. UE decides the preamble
index from a group on the basis of parameters received in SIB2:-

numberofRaPreambles :- eNodeB sends this value in SIB2 which denotes the


total number of preambles available for UE to send a Rach Request.

sizeOfRaPreamblesGroupA :- It represents the number of preambles


available within Group A.

So number of preamble in Group B = numberofRaPreambles -


sizeOfRaPreamblesGroupA

MessageSizeGroupA :- It is used for selecting a preamble from a group. Its


value is in bits.

Now UE needs to decide the group from which it needs the preamble. Group
is decided on the basis of size of MSG3( RRC connection request ).

If Msg3 size > messageSizeGroupA , preamble will be selected from GroupB


else preamble will be selected from Group A

The actual formula for selecting a preamble is given in spec 36321 sec 5.1.2.
That contain factors other than MSG3 size as well. But mainly this is how UE
decides the Group. From the selected group, randomly UE selects a preamble
index.

How UE decides the Power used for Rach request Transmission:-


Now UE need to decide the power which will be used for RACH Request
transmission. Power is decided on the factors received in SIB2 as:-

preambleInitialReceivedtargetPower:- Power factor which will be used for


first transmission of Rach Request.Value varies from -120dBm to -90 dBm .

powerRampingStep:- This is mainly used when eNodeB is not able to detect


the Rach Request then UE will re transmit the RACH Request by increasing
the power to powerRampingStep factor.

power used for Rach Request transmission =


preambleInitialReceivedTargetPower + DELTA_PREAMBLE +
(PREAMBLE_TRANSMISSION_COUNTER – 1) * powerRampingStep

DELTA_PREAMBLE = This is preamble format based delta offset. There are four formats
available for preamble which are called as preamble formats. We will be explaining them in
detail later. Most of the time preamble format 0 is used.

For Example:-
In Sib2, preambleInitialReceivedtargetPower = -100
powerRampingStep = 2

First Transmission of Rach Request:-


PREAMBLE_TRANSMISSION_COUNTER = 1
For preamble format 0, DELTA_PREAMBLE = 0
Power used = -100 + 0 + (1- 1) *2
= -100

Suppose eNodeB is not able to receive it


Second transmission of Rach request:-
PREAMBLE_TRANSMISSION_COUNTER = 2
Power used = -100 + 0 + (2-1) * 2
= -98

UE will send the RACH Request containing these values in the specified
subframe by using the specified resources.

In nutshell, steps followed by UE for sending a Rach request:-

How eNodeB behaves after receiving Random Access Request:-

1. Allocation of temporary RNTI(Radio Network temporary


Identifier) :- After receiving RACH Request, enodeB allocates a temporary
identity to the UE which is made permanent after successful RACH
procedure. The permanent identity is called as CRNTI ( Cell RNTI ). This TC-
RNTI is transmitted to the UE as part of RACH Response which will be used
for further communication between the UE and the network.
2. Timing Advance :- After receiving RACH Request, eNodeB PHY(Physical
layer) calculates the timing advance which is transmitted to the UE as part
of response message.

As part of Rach response, absolute Timing advance value is transmitted.

Timing advance calculation for RACH Response message:-


As per 3GPP spec,
Ts = 1/(15000 * 2048) seconds
NTA = TA * 16 where TA = 11 bit value for random access response varying
from 0,1,2 .... 1282

NTA = Amount of time alignment

So transmission of uplink radio frame from the UE shall start =


(NTA + NTA offset) * Ts

NTA offset = 0 ( For type 1 frame structure)

= ((NTA + 0) * 1)/ (15000 * 2048)


= (TA * 16)/(15000 * 2048 )seconds

Mainly this timing advance fundamental is used for eNodeB PHY to receive
the UE message at correct timing. It is possible that UE is far away from the
eNodeB , so for eNodeB to receive the data from UE at correct timing this
timing adjustments are done.

If timing advance is received in subframe n, UE should do the


adjustment from the starting of subframe (n +6) .

After the Random access response message, enodeB does not send absolute
timing advance value. It will send a value which UE will use to adjust the
already stored timing advance value. We will explain this in Timing advance
section later.

Refer spec 36213 sec 4.2.3 and spec 36211 sec 8.1 for details about timing
adjustments

3. Allocate uplink Resources ( UL GRANT ):- eNodeB will provide the


required information in Random Access Response(RAR) message for UE to
send the MSG3( RRC Connection Request) .

UL Grant is a 20 bit message with contents from MSB to LSB as:-


 Hopping Flag :- This is 1 bit of information which governs whether
frequency hopping is enabled or not. If the value of the bit is 1 and
resource block assignment is type 0 , UE should perform PUSCH
frequency hopping.

What is Frequency Hopping:-


As we know that RB allocation is contiguous in uplink which means eNodeB
allocates continuous RB's in frequency domain. As in downlink we have
multiple resource allocation policies to achieve frequency diversity.

So in uplink, to achieve frequency diversity Frequency Hopping is used.


eNodeB communicates required parameters to UE's in SIB2 which are
needed for performing frequency hopping at UE.

For Example:-
Suppose eNodeB has allocated 5 RB's to a particular UE in uplink as shown
below.

It is clear that the allocation in uplink in terms of RB is contiguous. But


eNodeB has enabled frequency hopping for this UE.

We are able to achieve frequency diversity in contiguous allocation as well


due to hopping. In the figure above, same color represents the hopping of
UE data in different slots for a particular RB.

There is a lot more to discuss in frequency hopping. we will be taking it later


in that particular section.

As of now,we can summarize it as :-


Frequency hopping is used to provide frequency diversity in uplink. Its main
advantage is, suppose in frequency domain at RB0 channel conditions are
bad but at RB3 conditions are good. So in that case, UE can decode the data
of RB0 after combining the same colored data.

 Resource Block Assignment :- It is 10 bits of information embedded in


UL Grant message.

How UE decodes the 10 bit RB Assignment :-


According to spec 36213 sec 6.1.1, UE decodes it as:-

If NULRB <= 44
Truncate the fixed size resource block assignment to its b least significant
bits where,
b = ceiling ( log2(NULRB * (NULRB + 1)/2) )
and interpret the truncated resource block assignment according to the rules
for a regular DCI format 0

else
Insert b most significant bits with value zero where,
b = (ceiling ( log2(NULRB * (NULRB + 1)/2) )) - 10
and interpret the expanded resource block assignment according to the rules
for a regular DCI format 0

For Example :-
Lets assume the 10 bits of the information as :- 1 1 1 1 1 1 1 1 1 1
Assume Total number of uplink RB's in system = 100

b = (ceiling ( log2(NULRB * (NULRB + 1)/2) )) - 10


= (ceiling ( log2(100 *101/2))) - 10
= (ceiling ( 12.3)) - 10

= 13 -10
=3

So, RB assignment will be :- 0 0 0 1 1 1 1 1 1 1


RB assignment ( value in decimal) = 127
Now we need to interpret it according to the rules of DCI format 0.

Number of RB's allocated = Floor( 127 /100 ) + 1


=1+1
=2
RB start index = 127 mod 100
= 27

 Modulation and Coding scheme to be used by UE:- It is 4 bits of


information in UL grant message whose value varies from 0 to 15. The
modulation and coding is determined by UE from MCS indices 0 to 15
in table 8.6.1.1 from spec 36213.
 Power used by UE for PUSCH :- It is indicated in 3 bits as a TPC
command whose value varies from 0 to 7. TPC command to power
mapping is mentioned in table below

 UL delay :- 1 bit of information which can be set to 0 or 1. It indicates


whether the delay of PUSCH is introduced or not.
 CSI field :- This 1 bit of information determines whether an aperiodic
CQI, PMI and RI report can be included in the PUSCH transmission. For
contention based Random access CSI field is reserved.
eNodeB will prepare a response ( Random Access Response) with
above discussed fields and send it to UE. But we need to understand
the timing of response message corresponding to Rach Request.

Timing w.r.t to Rach Request and Random Access Response:-

RAR Response Window is the value transmitted in SIB2. You can refer the
LTE basic section for more details. Its value is in subframes.
Posted 19th September 2013 by Nitin Tayal
21Lokesh Gupta14 October 2013 at 20:20ReplyVinzyy Rift

RACH FAQs in LTE

1. 1. FAQs on RACH 1) Why RACH procedure is required? In order to be synchronized with the
network, RACH procedure is used.Suppose a UE wants to access the network, so first it will try
to attach or synchronize with the network. In LTE a separate channel PRACH (Physical Random
Access Channel) is provided for initial access to the network. 2) When does UE need to perform
RACH procedure As per specifications, RACH can be performed in below mentioned scenarios:-
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. To initiate the procedure UE lower
layers will send a Random Access Request (RACH Request) after receiving request from UE RRC.
3) Difference between Contention based and Contention based RACH Contention based RACH
Message1: Random access Preamble on RACH 6bit: 5 bit preamble ID and 1 bit to indicate size of
message3 Message2: RAR RACH Response by MAC on DL-SCH No HARQ Addressed to RA-RNTI
Contains RAPID (Preamble ID) , Timing Alignment, Initial UL grant, T-CRNTI Message3: Schedule
transmission on UL-SCH HARQ used For initial Access: NAS UE ID but no NAS message RRC
Connection Req over CCCH RLC TM After Radio Link Failure: RRC Connection Reestablishment
via CCCH RLC TM
2. 2. No NAS message After HO in target cell: RRC connection Reconfiguration Complete i.e., the
confirmation for the RRC connection Reconfiguration over DCCH. Allocated CRNTI. Includes
Uplink Buffer Status Report when required. Message4: Not synchronized with Message HARQ
supported T-CRNTI for Initial Access and after Radio Link failure CRNTI for UE in
RRC_CONNECTED Non -Contention based RACH Msg 1: RA preamble assignment on DL
dedicated signaling HO: HO Command generated by Target eNB sent via source eNB DL data
arrival: MAC signaling in case of DL data arrival Message2: RA preamble on Rach Use preamble
received from message1. Message3: No HARQ Addressed to RA-CRNTI. Contains at least Timing
Alignment, Initial UL grant for HO case, Timing alignment for DL data arrival case, RA-preamble
identifier. 4) Steps followed by UE for sending a RACH request
3. 3. 3) How UE decides about when and where it needs to send RACH request It is decided on the
basis of parameters received in SIB2 PRACH configurations. UE can use 6 Resource blocks for
sending the RACH Request. From PRACH Config Index - There is a mapping in spec 36.211 table
5.7.1-2 from which UE can find the available sub frames where it can send a RACH. Example :
Prach Config index value = 7, From table it is clear that UE can send a RACH Req in any system
frame but sub frame should be 2 and 7. From PRACH Frequency Offset - This value is also
received in SIB2 by UE. It governs which frequency resource UE can use for the RACH Req.
Example: If the value of PRACH Freq Offset is 10. UE can use the 6 PRB's starting from PRB 10 for
RACH Request. 4) Exactly when and where Network transmit RACH Response The following is
what 3GPP 36.321 (section 5.1.4) describes.
4. 4. Once the Random Access Preamble is transmitted and regardless of the possible occurrence
of a measurement gap, the UE shall monitor the PDCCH for Random Access Response(s)
identified by the RA-RNTI defined below, in the RA Response window which starts at the sub
frame that contains the end of the preamble transmission [7] plus three sub frames and has
length ra-ResponseWindowSize sub frames. It means the earliest time when the network can
transmit the RACH response is 3 sub frames later from the end of RACH Preamble. Then what is
the latest time when the network can transmit it? It is determined by ra-ResponseWindowSize.
This window size can be the number between 0 and 10 in the unit of sub frames. This means
that the maximum time difference between the end of RACH preamble and RACH Response is
only 12 sub frames (12 ms) which is pretty tight timing requirement. 5) How many preamble
sequences are available and how they are grouped? Total 64 preamble sequences are available;
they can be divided into group A and group B. UE select a sequence from any of the groups
based on a) The size of uplink packet to be sent b) The radio conditions This allows the enodeb
to decide upon the quantity of PUSCH resources to allocate to UE for its uplink data transfer;
Group A are intended for small packets, or large packets in poor radio conditions Group B are
intended for large packets in good radio conditions Once the UE as selected either group A or
group B, a preamble is selected at random from within that group . 8 preamble sequences are
reserved by enodeb out of 64 for the purpose of non-contention based RACH during intra
handover scenarios 6) What exactly RACH request Contains 1. Preamble Index: - There are total
of 64 preambles available which are divided into two groups Group A and Group B. UE decides
the preamble index from a group on the basis of parameters received in SIB2
NumberofRaPreambles:- eNodeB sends this value in SIB2 which denotes the total number of
5. 5. preambles available for UE to send a Rach Request.Range of this parameter is 4 to 64
SizeOfRaPreamblesGroupA: -Total number of random access preambles sequences available
within Group A. Preambles are divided into Group A and Group B. Group A preambles are
intended for sending small packets and Group B preambles are intended for sending large
packets. Range of this parameter is 4 to 60 MessageSizeGroupA: Message size threshold for
selecting preamble Group A in term of bits. Its value is in bits(56, 144, 208 or 256 bits) Now UE
needs to decide the group from which it needs the preamble. Group is decided on the basis of
size of MSG3 (RRC connection request). If Msg3 size > messageSizeGroupA, Preamble will be
selected from GroupB Else Preamble will be selected from Group A the actual formula for
selecting a preamble is given in spec 36321 sec 5.1.2. That contains factors other than MSG3 size
as well. But mainly this is how UE decides the Group. From the selected group, randomly UE
selects a preamble index. 7) How can we get RA RNTI? “5.1.4 Random Access Response
reception" in "TS36.321” says how to calculate RA_RNTI as follows. The RA-RNTI associated with
the PRACH in which the Random Access Preamble is transmitted, is computed as: RA-RNTI = 1 +
t_id + 10 * f_id Where t_id is the index of the first subframe of the specified PRACH (0 <≤ t_id
<10), and f_id is the index of the specified PRACH within that subframe, in ascending order of
frequency domain (0≤ f_id< 6). For FDD, f_id is fixed as 0. Therefore, RA_RNTI is decided by the
sending timing (Subframe) of PRACH Preamble by UE. It means that (the subframe number
(number between 0000~0009) of PRACH transmission + 1) is RA-RNTI. It means that UE specifies
RA_RNTI by the sending timing (Subframe) of PRACH Preamble. 8) What is preamble format? If
you see the table 5.7.1-1 show above, you see the column titled as "Preamble Format". It is
defined as following diagram.
6. 6. You would see that the length of PRACH preamble varies depending on the preamble format.
For example, the length of PRACH with preamble format is (3186 + 24567) Samples. (As you
know, one sample (Ts) is 1/30.72 us. It is defined as 1/(15000 x 2048) seconds in 36.211 4 Frame
structure). The preamble format to be used within a specific cell is signaled using the PRACH
configuration index which is broadcast within SIB2. Multiple preamble formats is used for
various cell ranges as shown below 9) Explain about PRACH preamble structure
7. 7. Following figure shows the PRACH Preamble signal structure in comparison with normal
Uplink subframe. A couple of points to be specially mentioned are Preamble Length in
Frequency Domain is amount to 6 RBs of UL Subframe, which is 1.08MHz One sub carrier of
PRACH Preamble is 1.25 KHz whereas 1 sub carrier of UL subframe is 15 KHz. It means that 12
preamble sub carrier is amount to 1 UL Subframe subcarrier. The random access preamble
occupies 1,2,3 subframes in time domain (1,2,3 ms ) and 839 subcarriers in frequency domain
(1.08MHz) .there is a 15khz guard band either side of the random access preamble so a total of
1.08 MHz is used (6RBs) The position of the random access preamble in frequency domain is
defined by PRACH frequency offset parameter within SIB2 .This parameter as a range of 0 to
94, and specifies the first resource block within which the preamble is located There is a max of
1 random access preamble resource within each subframe but more than a single UE can use
that preamble resource. Multiple UEs using the same preamble resource are differentiated by
their preamble sequences
8. 8. 10) How eNodeB behaves after receiving RandomAccess request 1. Allocation of temporary
RNTI (Radio Network temporary Identifier):- After receiving RACH Request, eNodeB allocates a
temporary identity to the UE which is made permanent after successful RACHprocedure. The
permanent identity is called as TCRNTI .This TC-RNTI is transmitted to the UE as part of RACH
Response which will be used for further communication between the UE and the network. 2.
Timing Advance: - After receiving RACH Request, eNodeB PHY (Physical layer) calculates the
timing advance which is transmitted to the UE as part of response message. As part of Rach
response, absolute Timing advance value is transmitted. Timing advance calculation for RACH
Response message:- As per 3GPP spec, Ts = 1/(15000 * 2048) seconds NTA = TA * 16 where TA =
11 bit value for random access response varying from 0,1,2 .... 1282 NTA = Amount of time
alignment So transmission of uplink radio frame from the UE shall start = (NTA + NTA offset) * Ts
NTA offset = 0 ( For type 1 frame structure) = ((NTA + 0) * 1)/ (15000 * 2048) = (TA * 16)/(15000
* 2048 )seconds Mainly this timing advance fundamental is used for eNodeB PHY to receive the
UE message at correct timing. It is possible that UE is far away from the eNodeB , so for eNodeB
to receive the data from UE at correct timing this timing adjustments are done. If timing
advance is received in subframe n, UE should do the adjustment from the starting of subframe
(n +6). After the Random access response message, eNodeB does not send absolute timing
advance value. It will send a value which UE will use to adjust the already stored timing advance
value. We will explain this in Timing advance section later. Refer spec 36213 sec 4.2.3 and spec
36211 sec 8.1 for details about timing adjustments 3. Allocate uplink Resources (UL GRANT):-
eNodeB will provide the required information in Random Access Response (RAR) message for UE
to send the MSG3 (RRC Connection
9. 9. Request) UL Grant is a 20 bit message with contents from MSB to LSB as:- Hopping Flag :- This
is 1 bit of information which governs whether frequency hopping is enabled or not. If the value
of the bit is 1 and resource block assignment is type 0, UE should perform PUSCH frequency
hopping. What is Frequency Hopping:- As we know that RB allocation is contiguous in uplink
which means eNodeB allocates continuous RB's in frequency domain. As in downlink we have
multiple resource allocation policies to achieve frequency diversity. So in uplink, to achieve
frequency diversity Frequency Hopping is used. eNodeB communicates required parameters to
UE's in SIB2 which are needed for performing frequency hopping at UE. For Example:- Suppose
eNodeB has allocated 5 RB's to a particular UE in uplink as shown below. It is clear that the
allocation in uplink in terms of RB is contiguous. But eNodeB has enabled frequency hopping for
this UE. We are able to achieve frequency diversity in contiguous allocation as well due to
hopping. In the figure above, same color represents the hopping of UE data in different slots for
a particular RB. There is a lot more to discuss in frequency hopping. We will be taking it later in
that particular section. As of now, we can summarize it as:-
10. 10. Frequency hopping is used to provide frequency diversity in uplink. Its main advantage is,
suppose in frequency domain at RB0 channel conditions are bad but at RB3 conditions are good.
So in that case, UE can decode the data of RB0 after combining the same colored data.
Resource Block Assignment :- It is 10 bits of information embedded in UL Grant message. How
UE decodes the 10 bit RB Assignment :- According to spec 36213 sec 6.1.1, UE decodes it as:- If
NULRB <= 44 Truncate the fixed size resource block assignment to its b least significant bits
where, b = ceiling ( log2(NUL RB * (NUL RB + 1)/2) ) and interpret the truncated resource block
assignment according to the rules for a regular DCI format 0 else Insert b most significant bits
with value zero where, b = (ceiling ( log2(NUL RB * (NUL RB + 1)/2) )) - 10 and interpret the
expanded resource block assignment according to the rules for a regular DCI format 0 For
Example :- Lets assume the 10 bits of the information as :- 1 1 1 1 1 1 1 1 1 1 Assume Total
number of uplink RB's in system = 100 b = (ceiling ( log2(NUL RB * (NUL RB + 1)/2) )) - 10 =
(ceiling ( log2(100 *101/2))) - 10 = (ceiling ( 12.3)) - 10 = 13 -10 = 3 So, RB assignment will be :- 0
0 0 1 1 1 1 1 1 1 RB assignment ( value in decimal) = 127 Now we need to interpret it according
to the rules of DCI format 0. Number of RB's allocated = Floor (127 /100) + 1 = 1 + 1 = 2 RB start
index = 127 mod 100 = 27 Modulation and Coding scheme to be used by UE:- It is 4 bits of
information in UL grant message whose value varies from 0 to 15. The modulation and coding
is determined by UE from MCS indices 0 to 15 in table 8.6.1.1 from spec 36213. Power used by
UE for PUSCH: - It is indicated in 3 bits as a TPC command whose value varies from 0 to 7. TPC
command to power mapping is mentioned in table below
11. 11. UL delay :- 1 bit of information which can be set to 0 or 1. It indicates whether the delay of
PUSCH is introduced or not. CSI field: - This 1 bit of information determines whether an
aperiodic CQI, PMI and RI report can be included in the PUSCH transmission. For contention
based Random access CSIfield is reserved. ENodeB will prepare a response (Random Access
Response) with above discussed fields and send it to UE. But we need to understand the timing
of response message corresponding to Rach Request. 11) What if UE does not receive RACH
Response at the first trial? What is UE supposed to do in this case? The answer is simple. Just
retry (resend) PRACH. Following is an example of PRACH Retry being observed in a real device.
This is the case where UE send PRACH and NW does not send RAR (Yellow cell indicates the
timing determined by PRACH Config Index when UE is allowed to send PRACH. Green cell
indicates the timing when UE send PRACH in this specific example) 12) How UE decides the
Power used for Rach request Transmission?
12. 12. Now UE need to decide the power which will be used for RACH Request transmission. Power
is decided on the factors received in SIB2 as:- PreambleInitialReceivedtargetPower: - Power
factor which will be used for first transmission of Rach Request. Value varies from -120dBm to -
90 dBm. PowerRampingStep:- This is mainly used when eNodeB is not able to detect the Rach
Request then UE will re transmit the RACH Request by increasing the power to
PowerRampingStep factor. Power used for Rach Request transmission =
PreambleInitialReceivedtargetPower + DELTA_PREAMBLE +
(PREAMBLE_TRANSMISSION_COUNTER – 1) * PowerRampingStep DELTA_PREAMBLE = this is
preamble format based delta offset. There are four formats available for preambles which are
called as preamble formats For Example:- In Sib2, preambleInitialReceivedtargetPower = -100
PowerRampingStep = 2 First Transmission of Rach Request:-
PREAMBLE_TRANSMISSION_COUNTER = 1 For preamble format 0, DELTA_PREAMBLE = 0 Power
used = -100 + 0 + (1- 1) *2 = -100 Suppose eNodeB is not able to receive it Second transmission
of Rach request:- PREAMBLE_TRANSMISSION_COUNTER = 2 Power used = -100 + 0 + (2-1) * 2 = -
98 UE will send the RACH Request containing these values in the specified subframe by using the
specified resources. 13) When do I have to retry? (What should be the time delay between the
previous transmission and the next transmission?) It’s provided by Network via a special RAR
MAC PDU called "Back off Indicator". Back off Indicator is a special MAC sub header that carries
the parameter indicating the time delay between a PRACH and the next PRACH. There are cases
where a UE has to send another PRACH after it already sent a PRACH. The most common cases
would be as follows. i) UE sent a PRACH but didn't get a RAR for some reason. ii) UE sent a
PRACH and got RAR, but the RAPID in the RAR is not for the UE. The structure of 'Back off
Indicator' is as follows.
13. 13. If you see the bit field shown above, you would notice that BI (Back off Indicator) field is
made up of 4 bits, implying that it can carry the value from 0~15. Each of these value maps to a
specific time value as shown in the following table. (36.321). For example, if the BI field value is
10, Back off Parameter value is 320 ms. This means UE can send PRACH any time in between 0
and 320 ms from now. When this BI is transmitted by MAC, it is transmitted as in the following
structure (36.321). You see BI subheader should always be at the beginning of the whole MAC
header. If you see more carefully, you would notice that BI subheader is shown with 'dotted'
rectangle. It means that this is optional, implying that the network send or does not send BI
depending on the situation. If you see even more carefully, you would notice that BI subheader
does not have any corresponding payload part. It means "Backoff Indicator" information is
carried directly by the MAC header/subheader and it doesn't use any payload field.
14. 14. 14) Do I have to retransmit the PRACH with the same power as previous one? Or try with a
little bit higher power? If I have to try with a little bit higher power, how much power do I have
to increase? Provided by Network via SIB2 as follows. PowerRampingStep =dB2. It means UE has
to increase PRACH power by 2 dB every time it retries. PowerRampingStep: power ramping step
size with possible values of 0, 2, 4 or 6 dB 15) If I keep failing to receive RACH response, how
many times I have to retry? Do I have to retry until the battery runs out? Or retryonly several
times and give up? If I have to give up after a certain amount of retry, exactly how many times
do I have to retry? PreambleTransMax = n6. It means UE retries PRACH retransmit only 6 times
and then give up. PreambleTransMax:Maximum number of preambles transmissions. Possible
values are 3, 4, 5, 6, 7, 8, 10, 20, 50, 100, and 200 16) Failure of RAR Check the below things Is
eNB sending RACH MSG2 (if so check the RAPID correlate it with that of MSG1’s) also check if
UE decoding SIB2 properly or not (some imp params are ra- ResponseWindowSize,
PRACHConfiguration Index.) Please check RA Window Size, After sending the RACH MSG 1 UE
monitors PDCCHfor certain duration i.e.,3 subframes (after transmission of MSG1 ) + ra-
ResponseWindowSize subframes (can be found from SIB2) 17) Explain RAR PDU format If you
decode UL Grant part, you will get the following result. You will notice that the information it
carries would be very similar to DCI format 0 which carries Resource Allocation for uplink data.
This information in UL Grant in RACH Response message is the resource allocation for msg3
(e.g., RRC Connection Request).
15. 15. EXAMPLE Note: This is example of RAR for System BW 5 Mhz. If the system BW gets
different, you should have different RIV values (if you want to have the same Start_RB, N_RB as
in this example) or you will have different Start_RB, N_RB (if you keep RIV as below and just
change the system BW)
16. 16. 18) Rach Configurations NumberOfRA-Preambles: Total number of random access preambles
available for contention based random access. Since there are maximum 64 preambles
sequences available, others could be reserved by eNB for Non-Contention based random access.
Range of this parameter is 4 to 64
17. 17. sizeOfRaPreamblesGroupA: Total number of random access preambles sequences available
within Group A. Preambles are divided into Group A and Group B. Group A preambles are
intended for sending small packets and Group B preambles are intended for sending large
packets. Range of this parameter is 4 to 60 MessageSizeGroupA: Message size threshold for
selecting preamble Group A in term of bits (56, 144, 208 or 256 bits)
MessagePowerOffsetGroupB: Power offset for selecting preamble Group B (0, 5, 8, 10, 12, 15 or
18 dB) PowerRampingStep: power ramping step size with possible values of 0, 2, 4 or 6 dB
PreambleInitialReceivedtargetPower: Preamble initial received target power with values from -
120 dBm to -90 dBm with step size of 2 dBm PreambleTransMax: Maximum number of
preambles transmissions. Possible values are 3, 4, 5, 6, 7, 8, 10, 20, 50, 100, and 200. Ra-
ResponseWindowSize: Duration of RA response window. RA response window size is in unit of
subframes (2, 3, 4, 5, 6, 7, 8, or 10 subframes)
18. 18. Mac-ContentionResolutionTimer: Mac contention resolution timer in unit of subframes (8,
16, 24, 32, 40, 58, 56 or 64 subframes) maxHARQ-Msg3Tx: Maximum number of HARQ
retransmissions for message 3 of RACH process (contention-based Random access) with possible
values from 1 to 8 in step of 1 19) PRACH Configurations RootSequenceIndex: RApreambles are
generated from Zadoff Chu sequence which consists of series of root sequences. Each root
sequence can be cyclic shifted to obtain preamble sequence. Range of rootSequenceIndex is 0 to
837. Prach-ConfigIndex:This parameter defines exactly when UE should send RACH in
frequency/time grids (Details TS36.211 Table 5.7.1-2) HighSpeedFlag:For high speed UEs, as this
can impact the correlation between cycles ZeroCorrelationZoneConfig: The zero correlation
zone is used to guarantee orthogonality of generated sequences. The value depends on
particular condition in the cell Prach-FreqOffset:With this information cell informs UE and other
neighbor cells know about which PRB is available for RACH access 20) Can the RAR message
contain information for more than one UE? For example if we have 56 simultaneous users
performing RACH procedure can the RAR message contain information for all 56 UE? Scenario:
All 56 will have the same RA-RNTI (this is INITIAL RRC connection) since all will send on subframe
1 for example. Theywill have different preambles. Thus when they send the message 1, all UEs
will monitor PDCCH for RA-RNTI - this will then tell the UE where to search in the PDSCH for the
RAR message. I am then thinking that the UE will use it sent preamble and associate it with the
preamble in the RAR to receive the UL grant, TA, C-RNTI etc....thus the RAR message can have
the ability to contain information for multiple UE based on the use of the preambles sent in the
RAR - The UE will have to search for its sent preamble amongst the sent preambles from the
eNodeB. All the received preambles within one PRACH are answered by one MAC PDU.That
MAC PDU contains multiple RAR messages addressing multiple UEs with identified preamble
indices. Size of MAC PDU depends upon how many RAR bundled and addressed to RA-RNTI I'm
not sure what the maximum size of MAC PDU is. (Max size of MAC PDU / RAR Message size) will
give us the maximum number of RAR messages that can be bundle
19. 19. 21) What is the difference between PRACH of UMTS and LTE? Umts –PRACH is used to
transfer RRC messages (RRC connection request /cell update) and application data. LTE - PRACH
doesn’t transfer RRC messages or application data.