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) :