How to run NPUSCHBloc​kErrorRate​Example.m with "numTrBlks = 500;"

3 views (last 30 days)
I have tried to execute the script 'NPUSCHBlockErrorRateExample.m' with the parameter "numTrBlks = 500;" and "simReps = 16".
The following error occurs:
Generating 16000 slots corresponding to 500 transport block(s) at -20dB SNR
Error using lte.internal.perfectChannelEstimate (line 54)
The timing offset (10) must be less than or equal to the minimum cyclic prefix length (9).
Error in lteULPerfectChannelEstimate (line 228)
H = lte.internal.perfectChannelEstimate(ue,propch,gridDims,fhandles,tfoffset);
Error in NPUSCHBlockErrorRateExample (line 390)
estChannelGrid = lteULPerfectChannelEstimate(ue, chs, channel, offset);

Answers (1)

Ayush Gupta
Ayush Gupta on 11 Oct 2023
The error message suggests that there is an issue with the timing offset parameter in the `lteULPerfectChannelEstimate` function. The timing offset (10) provided is greater than the minimum cyclic prefix length (9), which is causing the error.
To resolve this issue, you need to ensure that the timing offset parameter is set correctly. It should be less than or equal to the minimum cyclic prefix length. You can use the debugging feature in MATLAB to check the value generated of "offset" on lines 363,370. Once found the root cause for the value kindly update the code or values needed accordingly. For more information, kindly view the following documentation: NB-IoT NPUSCH Block Error Rate Simulation - MATLAB & Simulink (mathworks.com)
Hope this helps!

Categories

Find more on Programming in Help Center and File Exchange

Tags

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!