5G NR PUSCH demodulation with timing estimation

15 ビュー (過去 30 日間)
Madhusoodan NA
Madhusoodan NA 2025 年 8 月 19 日 13:33
回答済み: Umar 2025 年 8 月 20 日 3:29
Hi Matlab team,
I am experimenting with matlab toolbox based libraries,
we are using O-RU and SG to play UL PUSCH waveform with different delays to simulate timeoffsets.
cp offset ( ts) vs delay in SG in ns.
5 162.75
10 325.5
20 651
30 976.5
40 1302
in 100MHz, TDD , 30kHz System, EVM is detected as :
-------------
Offset : 5 Ts (0.1628 us), Native Sample Rate:122880000
Slot No. 8: RMS EVM, Peak EVM, 2.888 20.203%
Slot No. 9: RMS EVM, Peak EVM, 2.923 25.948%
Slot No. 18: RMS EVM, Peak EVM, 2.923 32.406%
Slot No. 19: RMS EVM, Peak EVM, 2.885 41.977%
Averaged RMS EVM Frame 0: 2.905%
Averaged Overall RMS EVM: 2.905%
Peak EVM: 41.977%
Peak EVM (DC Punctured): 13.924%
-------------
FRAME : 1
-------------
Offset : 10 Ts (0.3255 us), Native Sample Rate:122880000
Slot No. 8: RMS EVM, Peak EVM, 2.839 23.564%
Slot No. 9: RMS EVM, Peak EVM, 2.870 26.806%
Slot No. 18: RMS EVM, Peak EVM, 2.914 29.436%
Slot No. 19: RMS EVM, Peak EVM, 2.924 41.310%
Averaged RMS EVM Frame 0: 2.887%
Averaged Overall RMS EVM: 2.887%
Peak EVM: 41.310%
Peak EVM (DC Punctured): 12.904%
Offset : 19 Ts (0.6429 us), Native Sample Rate:122880000
Slot No. 8: RMS EVM, Peak EVM, 2.873 18.717%
Slot No. 9: RMS EVM, Peak EVM, 2.889 27.596%
Slot No. 18: RMS EVM, Peak EVM, 2.892 30.972%
Slot No. 19: RMS EVM, Peak EVM, 2.901 42.344%
Averaged RMS EVM Frame 0: 2.889%
Averaged Overall RMS EVM: 2.889%
Peak EVM: 42.344%
Peak EVM (DC Punctured): 14.725%
-------------
FRAME : 1
-------------
Offset : 29 Ts (0.9684 us), Native Sample Rate:122880000
Slot No. 8: RMS EVM, Peak EVM, 2.865 21.546%
Slot No. 9: RMS EVM, Peak EVM, 2.910 28.709%
Slot No. 18: RMS EVM, Peak EVM, 2.881 28.376%
Slot No. 19: RMS EVM, Peak EVM, 2.923 44.789%
Averaged RMS EVM Frame 0: 2.895%
Averaged Overall RMS EVM: 2.895%
Peak EVM: 44.789%
Peak EVM (DC Punctured): 14.371%
-------------
FRAME : 1
-------------
Offset : 43 Ts (1.4160 us), Native Sample Rate:122880000
Slot No. 8: RMS EVM, Peak EVM, 5.516 53.239%
Slot No. 9: RMS EVM, Peak EVM, 3.213 31.190%
Slot No. 18: RMS EVM, Peak EVM, 5.541 51.005%
Slot No. 19: RMS EVM, Peak EVM, 5.573 53.437%
Averaged RMS EVM Frame 0: 5.062%
Averaged Overall RMS EVM: 5.062%
Peak EVM: 53.437%
Peak EVM (DC Punctured): 53.437%
with 40Ts configuration ( 1.3 us), I see High Bler and Constellation fails to reconstruct. Is there any limitation for EVM plots we need to take care when using different cp duration in waveform demodulation.
in the helper functions hNRPUSCHEVM how cpFraction = 0.5; will work ( non 3GPP based EVM),
is it possible to change cp fraction/start of the cp for evm calculation : based on received signal window ( eg. very far user with around 120 Ts time estimate) or maximum supported from the tool.
Br
Madhusoodan G

回答 (1 件)

Umar
Umar 2025 年 8 月 20 日 3:29

Hi @Madhusoodan NA ,

Your observations are consistent with expected PUSCH behavior relative to CP duration. When timing offsets approach or exceed the CP, inter-symbol interference occurs, causing elevated EVM and BLER, as seen in the 40–43 Ts cases. MATLAB’s hNRPUSCHEVM helper uses cpFraction = 0.5 by default, meaning only half the CP is used as a guard. For larger offsets, it can help to adjust the EVM calculation window start and increase the CP fraction toward the full CP duration to align with the estimated symbol timing. Offsets beyond the CP cannot be fully compensated, so some EVM degradation is unavoidable.

  • I don’t have direct access to the toolbox*, so these suggestions are based on documentation and general 5G NR principles.

References:

  • PUSCH Throughput

https://www.mathworks.com/help/5g/ug/nr-pusch-throughput.html

  • Uplink Waveform Generation

https://www.mathworks.com/help/5g/ug/uplink-carrier-waveform-generation.html

カテゴリ

Help Center および File ExchangeTest and Measurement についてさらに検索

タグ

製品


リリース

R2024b

Community Treasure Hunt

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

Start Hunting!

Translated by