Commit Graph
4665 Commits
Author SHA1 Message Date
Robert Schmidt ee850206e4 fixup: throughput correct only if first TDD slot 2020-10-05 13:14:58 +02:00
Robert Schmidt f80ab8797a Use vrb_map in in DL for NSA mode 2020-10-05 13:14:58 +02:00
Robert Schmidt d7d21efcf5 Post-processor: enable multi-UE handling 2020-10-05 13:14:58 +02:00
Robert Schmidt 059f585e06 Preprocessor: check for number of UEs 2020-10-05 13:14:58 +02:00
Robert Schmidt abd608b6cb Mark active in add_new_nr_ue() only if phytest 2020-10-05 13:14:58 +02:00
Robert Schmidt d921581922 Remove fiveG_connected and use active 2020-10-05 13:14:58 +02:00
Robert Schmidt 793cbda97e Simplify allocate_rn_CCEs() 2020-10-05 13:14:58 +02:00
Robert Schmidt 1a73ea6c6d Make UE_info.active C99 bool 2020-10-05 13:14:58 +02:00
Robert Schmidt 0032bcc905 add_nr_ue_list() 2020-10-05 13:14:58 +02:00
Robert Schmidt d0667d9ea4 Add NR_UE_list_t type 2020-10-05 13:14:58 +02:00
Robert Schmidt e956c17bf8 Rename NR_UE_list_t to NR_UE_info_t
The name NR_UE_list_t is misleading: beyond being a simple "list", this
structure carries all/most UE-related MAC information. If at all, it is
a container for multiple lists. The next commit introduces a
NR_UE_list_t structure that organizes UEs in lists such that it is
easier to go through the UEs.
2020-10-05 13:14:58 +02:00
Robert Schmidt f28679b360 PreProc IF: save MCS-info per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt f9dd8292f8 PreProc IF: Freq domain allocation per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt 6c7ff44cd9 PreProc IF: save Time domain assignment info per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt 112b30d79a PreProc IF: save PUCCH info per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt 34a31a20b7 PreProc IF: save CCE info per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt dcdee083ac PreProc IF: RLC status per UE 2020-10-05 10:29:45 +02:00
Robert Schmidt d12180b25b Start PreProc interface, add UE active BWP 2020-10-05 10:29:45 +02:00
Robert Schmidt f86e4305f6 Reduce log DLSCH scheduler 2020-10-05 10:29:45 +02:00
Robert Schmidt 1b5558537f Move HARQ calculations out of nr_fill_nfapi_dl_pdu() 2020-10-05 10:29:45 +02:00
Robert Schmidt 4cebd0dd92 Only send random data if phytest 2020-10-05 10:29:45 +02:00
Robert Schmidt 7f51eca9d3 Remove UE-specific ulsch bitmap, special phy test slot
when in phy test, only schedule UE to be in slot 8
2020-10-05 10:29:45 +02:00
Robert Schmidt 14613222f3 clean up gNB_dlsch_ulsch_scheduler(), remove UE-specific DL bitmap 2020-10-05 10:29:45 +02:00
Robert Schmidt de2cf2393b Do not allocate CCE in nr_configure_pdcch()
nr_configure_pdcch() allocates the CCE, but this is not wanted, e.g., in
multi-user scheduling, since it might not be possible to allocate the
CCEs for these UEs. This commit makes the following changes:

- remove CCE allocation in nr_configure_pdcch()
- remove coreset search in nr_configure_pdcch()
- add functions get_coreset() and get_searchspace() to retrieve coresets
  and search spaces easily
- in nr_fill_nfapi_dl_pdu(), add extra parameters for aggregation level
  and CCE indices and the searchspace and coreset of a UE, which might
  be different for each UE
- allocate CCEs manually in phytest, RA, and DLSCH schedulers
2020-10-05 10:29:45 +02:00
Robert Schmidt 43f177e7df Restructure nr_schedule_ue_spec() 2020-10-05 10:29:44 +02:00
Robert Schmidt 3de6b619be Move TBS calculation out of nr_fill_nfapi_dl_pdu 2020-10-05 10:29:44 +02:00
Robert Schmidt 685c540353 nr_fill_nfapi_dl_pdu(): MCS + other params configurable 2020-10-05 10:29:44 +02:00
Robert Schmidt 041bb7a755 Inline nr_get_tbs_dl() 2020-10-05 10:29:44 +02:00
Robert Schmidt 7a0650c40c nr_fill_nfapi_dl_pdu(): Parameters by value, not pointers 2020-10-05 10:29:44 +02:00
Robert Schmidt 77f5d59691 Create separate nr_fill_nfapi_dl_pdu() 2020-10-05 10:29:44 +02:00
Robert Schmidt e259111f77 Create NR DLSCH nr_schedule_ue_spec() 2020-10-05 10:29:44 +02:00
Robert Schmidt 7cf7a0e8b1 Reduce log nr-softmodem 2020-10-05 10:24:41 +02:00
hardy f69824c998 Merge remote-tracking branch 'origin/PUSCH_TA_update' into integration_2020_wk39 2020-09-30 14:38:43 +02:00
hardy 70135e1c74 Merge remote-tracking branch 'origin/nsa_remove_band_hardcodings' into integration_2020_wk39 2020-09-30 14:36:24 +02:00
Francesco Mani df369e0cae mcs table for pusch from rrc config 2020-09-25 10:13:26 +02:00
Francesco Mani a0ec575b3c initialization of ta variables 2020-09-25 07:50:57 +02:00
Francesco Mani 17051b86d8 changes in ta procedure at gnb, to be tested with the phone 2020-09-25 07:50:45 +02:00
matzakos 7c8019da9f Merge develop into nsa_remove_band_hardcodings branch 2020-09-24 08:10:55 +02:00
Cedric Roux 00e6a13764 nr: hack to remove UE data in gNB's PHY
Some data remains in the PHY of the gNB after UE removal by
upper layers. After some connection/deconnection/reconnection
the gNB will exit because there is no free space in PHY.

This commit adds some global variables shared by MAC and PHY.
The function mac_remove_nr_ue puts UEs to be removed in it
and the function rxtx removes what needs to be removed.

This is a hack. It will be removed at some point in time.

The real way to remove in the PHY should be to release
data after some time of inactivity in the PHY, which would
mean the UE has been removed in upper layers. Kind of
timer-based thing. There should be no communication between
PHY and MAC.
2020-09-22 12:35:44 +02:00
Cedric Roux 4236ff2b3e nr: improve x2/rrc for ENDC
This commit introduces several enhancements in X2AP and RRC to deal
with ENDC. The main goal is to deal with UE's on/off and with various
errors.

The following work is included:

    - DC prep and DC overall X2 timers
    - X2 messages for UE release and DC timers' timeout

Open problems:

    - what to do when the UE sends an scg Failure? This commit removes
      the UE. And this removal may not be correctly done
    - UE removal in the gNB's PHY layer (a next commit is coming,
      but it is hackish and will need a rework)
2020-09-22 11:57:31 +02:00
hardy 56b551fde4 Merge remote-tracking branch 'origin/fix-0509-crash-RRCConnectionReconfiguration' into integration_2020_wk38 2020-09-18 17:20:30 +02:00
hardy 76c0c6beea Merge remote-tracking branch 'origin/2020-09-ci-updates' into integration_2020_wk38 2020-09-18 17:19:26 +02:00
Raphael Defosseux 4a873b4d43 CI: optmimizations on VM-based framework
also correction for Circular Dependency Protection on header files
    also correction on the banner check

Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2020-09-15 12:18:26 +02:00
Sergey Aranovskiy 3a2e3ff316 Fix formatting style
Signed-off-by: Sergey Aranovskiy <aranovskiy@mwnts.ru>
2020-09-15 09:57:28 +03:00
matzakos 161d788fea Add absolute SSB frequency of nr cell as configuration parameter in the eNB configuration file instead of hardcoding it at rrc_eNB for NSA scenario 2020-09-14 14:47:10 +02:00
Cedric Roux 5b0efd5b83 NR: fix time keeping in RLC for gNB
RLC has timers. We need to keep track of time. We chose to not use
realtime but 'processing time'. That is we send a tick to RLC for every
subframe when it is processed by the softmodem. Before this commit we
used to increase time in the function mac_rlc_status_ind which is called
for every subframe in the eNB, but not in the gNB (at least not in the
current gNB). So we need another way to keep track of time.

The function gNB_dlsch_ulsch_scheduler is called for every slot. It seems
to be the perfect candidate to send a tick to RLC for every subframe. We
take care of subcarrier spacing to send every subframe (one subframe is
always 1ms), not every slot (slot duration depends on subcarrier spacing).

It may not be the best solution. To be revised if needed.

Note: the UE has not been fixed. Some modification is needed for the UE
too, most probably.
2020-09-12 14:54:09 +02:00
Sergey Aranovskiy 4bcf0a407d Fix crash when sending RRCConnectionReestablishmentReject
Create a temporary rrc_eNB_ue_context_t when it can't be obtained from
current RRC state:
- if UE was not attached to current eNB
- when RRCConnectionReestablishmentRequest has a wrong encoding
- in all other cases when ue_context_p can't be obtained.

Signed-off-by: Sergey Aranovskiy <aranovskiy@mwnts.ru>
2020-09-11 23:18:14 +03:00
matzakos 86a0210f50 Merge remote-tracking branch 'origin/develop' into nsa_remove_band_hardcodings 2020-09-11 18:19:08 +02:00
matzakos f9aaa4336d Merge remote-tracking branch 'origin/develop' into nsa_remove_band_hardcodings 2020-09-11 17:54:49 +02:00
matzakos 3671692656 More corrections wrt Band Information in NR UE Capability message 2020-09-11 16:05:35 +02:00