OFDMA Uplink Support in 5G‑LENA

50 views
Skip to first unread message

Bara Sabbah

unread,
Dec 16, 2025, 12:48:40 PM (9 days ago) Dec 16
to 5G-LENA-users
Hello everyone,

I am currently working on my master thesis using the 5G‑LENA. As far as I understand, the current implementation only supports TDMA in the uplink. For my work, I would need to implement OFDMA uplink scheduling.

I would like to ask:

  • Is there any ongoing work or plan to add OFDMA uplink support in 5G‑LENA?

  • If not, I would greatly appreciate any guidance or recommendations on the most effective and straightforward approach to implementing OFDMA uplink on my own

Any guidance  would be greatly appreciated, and thanks in advance.

Best regards,
Bara Sabbah

Kent Huns

unread,
Dec 18, 2025, 11:13:04 AM (7 days ago) Dec 18
to Bara Sabbah, 5G-LENA-users
Hi Bara,

The functions you mentioned are here. Please read them carefully, and you’ll see AssignULRBG() is the process for RBs allocation.

model/nr-mac-scheduler-ns3.cc
uint8_t
NrMacSchedulerNs3::DoScheduleUlData()
model/nr-mac-scheduler-ofdma.cc
NrMacSchedulerNs3::BeamSymbolMap
NrMacSchedulerOfdma::AssignULRBG()

std::shared_ptr<DciInfoElementTdma>
NrMacSchedulerOfdma::CreateUlDci()
    std::shared_ptr<DciInfoElementTdma> dci =
        std::make_shared<DciInfoElementTdma>(ueInfo->m_rnti,
                                             DciInfoElementTdma::UL,
                                             spoint->m_sym - maxSym,
                                             maxSym,
                                             ueInfo->m_ulMcs,
                                             ueInfo->m_ulRank,
                                             ueInfo->m_ulPrecMats,
                                             tbs,
                                             1,
                                             0,
                                             DciInfoElementTdma::DATA,
                                             GetBwpId(),
                                             GetTpc());

    dci->m_rbgBitmask = std::move(rbgBitmask);

5G-LENA follows Allocation Type 0, so resource blocks are grouped into RBG and the allocation is represented as a bitmap.
First, check if dci->m_rbgbitmask is written as you expect.

Thanks


--
You received this message because you are subscribed to the Google Groups "5G-LENA-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to 5g-lena-user...@googlegroups.com.
To view this discussion, visit https://groups.google.com/d/msgid/5g-lena-users/aa874dc7-ade8-4646-b3a1-427dc3c6dd5en%40googlegroups.com.

Bara Sabbah

unread,
Dec 22, 2025, 4:25:28 AM (3 days ago) Dec 22
to 5G-LENA-users

Hi Kent,

thanks a lot for your response. I checked the functions, and it looks to me like OFDMA in the UL is actually implemented (contrary to what the documentation states). Resources in time (symbols) as well as in frequency (RBGs) appear to be allocated to the UEs.

Am I missing something, or is the documentation simply not up to date?

Best regards,
Bara

Reply all
Reply to author
Forward
0 new messages