Skip to content

Delay compensation for UL

Roberto Louro Magueta requested to merge develop-UL-delay into develop

This MR implements delay compensation (time shift) for the UL. This MR has been tested in phy-simulators and with USRPs. The main results, without and with compensation, are as follows:

Phy-simulators: sudo LD_LIBRARY_PATH=. ./nr_ulsim -n1000 -R106 -r106 -s24 -S24 -m 28

No delay compensation:

(delay = 0) Eff Throughput 94.70
(delay = 2) Eff Throughput 91.55
(delay = 4) Eff Throughput 63.95
(delay = 6) Eff Throughput 50.00

With delay compensation:

(delay = 0) Eff Throughput 94.55
(delay = 2) Eff Throughput 93.70
(delay = 4) Eff Throughput 93.70
(delay = 6) Eff Throughput 93.95

OAI-gNB-USRP <---> COTS UE, 2-layers UL

  • We can see rotations in the ch (estimated channel) when no delay compensation is done, and an almost constant channel, when delay compensation is done, ch_delay_comp.
[NR_PHY]   [p 0, aarx 0] Estimated delay = -5
[NR_PHY]   ch -> (-169,  65), ch_delay_comp -> (-169,  65)
[NR_PHY]   ch -> (-169,  65), ch_delay_comp -> (-166,  74)
[NR_PHY]   ch -> (-168,  50), ch_delay_comp -> (-162,  67)
[NR_PHY]   ch -> (-168,  50), ch_delay_comp -> (-158,  76)
[NR_PHY]   ch -> (-168,  15), ch_delay_comp -> (-161,  51)
[NR_PHY]   ch -> (-168,  15), ch_delay_comp -> (-158,  60)
[NR_PHY]   ch -> (-171,   9), ch_delay_comp -> (-159,  63)
[NR_PHY]   ch -> (-171,   9), ch_delay_comp -> (-155,  73)
[NR_PHY]   ch -> (-176, -15), ch_delay_comp -> (-166,  61)
[NR_PHY]   ch -> (-176, -15), ch_delay_comp -> (-162,  70)
[NR_PHY]   ch -> (-174, -36), ch_delay_comp -> (-168,  60)
[NR_PHY]   ch -> (-174, -36), ch_delay_comp -> (-164,  69)
[NR_PHY]   ch -> (-176, -49), ch_delay_comp -> (-169,  69)
[NR_PHY]   ch -> (-176, -49), ch_delay_comp -> (-165,  78)
[NR_PHY]   ch -> (-163, -53), ch_delay_comp -> (-154,  76)
[NR_PHY]   ch -> (-163, -53), ch_delay_comp -> (-150,  84)
[NR_PHY]   ch -> (-150, -70), ch_delay_comp -> (-150,  71)
[NR_PHY]   ch -> (-150, -70), ch_delay_comp -> (-146,  80)
[NR_PHY]   ch -> (-162, -87), ch_delay_comp -> (-162,  88)
[NR_PHY]   ch -> (-162, -87), ch_delay_comp -> (-157,  96)
[NR_PHY]   ch -> (-149,-107), ch_delay_comp -> (-163,  85)
[NR_PHY]   ch -> (-149,-107), ch_delay_comp -> (-158,  94)
[NR_PHY]   ch -> (-127,-122), ch_delay_comp -> (-159,  76)
[NR_PHY]   ch -> (-127,-122), ch_delay_comp -> (-155,  85)
[NR_PHY]   ch -> (-114,-129), ch_delay_comp -> (-153,  79)
[NR_PHY]   ch -> (-114,-129), ch_delay_comp -> (-148,  87)
[NR_PHY]   ch -> (-101,-144), ch_delay_comp -> (-157,  81)
[NR_PHY]   ch -> (-101,-144), ch_delay_comp -> (-152,  89)
[NR_PHY]   ch -> ( -87,-161), ch_delay_comp -> (-164,  83)
[NR_PHY]   ch -> ( -87,-161), ch_delay_comp -> (-159,  92)

This MR was rebased on MR1925.

Edited by Roberto Louro Magueta

Merge request reports