Support EVM for PRACH in 5G

Is there any example that supports extracting the EVM from the PRACH Channel in 5G?
  • if yes, Could you please share it with us?
  • if no, Could you please suggest any helper function or steps to calculate the PRACH EVM?

Answers (1)

Yes, it is possible to extract the EVM (Error Vector Magnitude) from the PRACH (Physical Random Access Channel) in 5G. Here is an example workflow for extracting the EVM from the PRACH in MATLAB:
  • Generating the PRACH signal
carrier = nrCarrierConfig; % Create a carrier configuration object
prach = nrPRACH(carrier); % Generate the PRACH signal
  • Adding noise to the signal
snr = 15; % Signal-to-noise ratio in dB, adjust it to match the desired noise level
prach_noisy = awgn(prach, snr, 'measured'); % adding white gaussian noise
  • Demodulate the signal
[ref, ~] = nrPRACHSequence(carrier); % Generate the PRACH reference symbols
prach_demod = nrPRACHDemodulate(prach_noisy, carrier.NSize, ref);
  • Compute the EVM using the reference symbols and the demodulated PRACH signal
evm = comm.EVM;
[~, emod] = step(evm, ref, prach_demod);
Here emod variable will contain the EVM in percent.
Hope it helps!

1 Comment

Hi,
Is nrPRACHDemodulate available in R2022a toolbox?

Sign in to comment.

Categories

Products

Release

R2022b

Asked:

on 13 Feb 2023

Commented:

on 29 May 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!