NR - RACH
Why RACH ?
It is used for uplink synchronization
First message that network detects from UE
Vary depends on NSA and SA
To obtain the resource for msg3
When RACH procedure called?
Initial access
RRC Connection Re-establishment
Handover
Beam failure recovery
Request for Other SI
time alignment at Scell
To recover from RRC_INACTIVE state
PRACH Transmitter
Matlab Code
% code
% Cell Configuration
ueConfig=struct('NULRB',6,'DuplexMode','FDD','CyclicPrefix','Normal');
prachConfig=struct('Format',0,'SeqIdx',0,'PreambleIdx',0,'CyclicShiftIdx',1,'HighSpeed',0,'TimingOffset',0,'FreqIdx',0,'FreqOffset',0);
ue.NULRB = 6;
ue.DuplexMode = 'FDD';
% Sequence
N_ZC = 839;
sequence = lteZadoffChuSeq(129, 839);
% DFT -> Subcarrier Mapping -> IFFT
preambleDFT = fft(sequence, N_ZC);
preamble864subcarriers = [ zeros(13,1); preambleDFT; zeros(12,1)];
preambleMapped = [ zeros(336,1); preamble864subcarriers; zeros(336,1)]; % Only ' conjugate the complex numbers as well!!!
preambleIFFT = ifft(preambleMapped,1536);
% ADD CP and Guard Band
CPpreambleGP = [preambleIFFT(end-198+1:end); preambleIFFT; zeros(186,1)];
% MATLAB LTE Toolbox Generation
[matlabPreamble, info]=ltePRACH(ueConfig,prachConfig);
disp('--- MATLAB PREAMBLE ----');
[index,offset] = ltePRACHDetect(ue,prachConfig,matlabPreamble,(0:63).')
disp('--- OWN PREAMBLE ----');
[index,offset] = ltePRACHDetect(ue,prachConfig,CPpreambleGP,(0:63).')
PRACH Format
Long format
839 length
For Large cell(Sub 6GHz generally, FR1)
SCS 1.25KHz and 5KHz
Short Format
139 Length
For small cell, Indoor deployment
SCS 15KHz and 30KHz for FR1
SCS 60KHz, 120KHz for FR2
RACH procedure in SA
RACH procedure in NSA
Preamble generation
38.211 6.3.3.1
https://www.sharetechnote.com/html/5G/5G_RACH.html#Preamble_Sequ
ence_Generation
Types
Contention based
Non Contention based
LTE Vs NR
BeamForming : UE should detect best beam for RACH process
Parameters
PRACH content in SIB1
PRACH Preamble Format
Time Resources
Frequency Resources
index to logical root sequence table
Cyclic Shift(Ncs)
Set Type (unrestricted, restricted set A or restricted set B)
Msg2(RAR)
gNB sends a DCI scrambled with RA-RNTI
Content
Backoff indicator
Random Access PREAMBLE ID(RAPID)
TA
UL Grant
TC-RNTI
PRACH issues
Why PRACH is not detected by network ?
Incorrect preamble time and frequency location(t_id, f_id), sequence
incorrect SSBperRACHocassion mapping
Msg1 Collision in high density cells
Msg1 detection failure due to low SNR at gNB
UE transmitting RACH at lower power
msg2 reception failure
cell/beam is congested and gNB might not have resources to allocate PDCCH for msg2
PDSCH which might cause PDCCH blocking
Might have sent UE with a Back-off indication
RAPID mismatch
Why DFT block is needed in PRACH
signal generation?
Frequency Selectivity and Interference Rejection in frequency domain
Example
Cell Search Procedure
Frequency Scan
Frequency Scan
Channel Raster
Synchronization Raster
SS Block and Periodicity
PSS Signal Detection
SSS signal detection
Cell ID detection
MIB detection
SIB1 detection
1.In RACH Failure there is a reason of RAPID mismatch.How UE can measure
this?
2.In RACH Failure there is a reason if PRACH sequence delay is greater than the
Cyclic shift value.How this PRACH sequence delay is calculated?
SA : Preamble generation
RACH Legnth(LRA) :