An error occurred fetching the project authors.
- 20 Jul, 2020 8 commits
-
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
Selects the UE with the highest CQI. If two UEs have the same CQI, choses the one with highest number of bytes in RLC queue. Allocates as many RBGs as possible, and potentially continues with the next UE.
-
Robert Schmidt authored
Selects UE with highest coefficient. Allocates until there are no more RBGs to allocate, or UE has no more data. In the latter case, continues with the next UE (second-highest coefficient).
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
- Loop only to next UE instead of jumping multiple - mark used RBGs in rbg_mask - Only calculate number of RBs based on CQI when UE is selected, instead of calculating for all UEs which might be unnecessary. - When looping the list of UEs for RB allocation, remove UEs that have no data anymore instead of skipping them.
-
- 02 Jul, 2020 1 commit
-
-
Cedric Roux authored
hack: in schedule_ue_spec, 3 bytes are "reserved" (this should be done better). An RLC AM entity may ask for only 2 bytes for ACKing and get a TBS of 32 bits and due to these 3 reserved bytes we may end up with only 1 byte left for RLC, which is not enough. This hack prevents the problem. To be done better at some point. If the function schedule_ue_spec is (has been) reworked, this hack can be removed. Dig for "TBS - ta_len - header_length_total - sdu_length_total - 3" in schedule_ue_spec. This should be done better at some point.
-
- 01 Jul, 2020 8 commits
-
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
Selects the UE with the highest CQI. If two UEs have the same CQI, choses the one with highest number of bytes in RLC queue. Allocates as many RBGs as possible, and potentially continues with the next UE.
-
Robert Schmidt authored
Selects UE with highest coefficient. Allocates until there are no more RBGs to allocate, or UE has no more data. In the latter case, continues with the next UE (second-highest coefficient).
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
- Loop only to next UE instead of jumping multiple - mark used RBGs in rbg_mask - Only calculate number of RBs based on CQI when UE is selected, instead of calculating for all UEs which might be unnecessary. - When looping the list of UEs for RB allocation, remove UEs that have no data anymore instead of skipping them.
-
- 20 May, 2020 1 commit
-
-
laurent authored
-
- 14 Apr, 2020 1 commit
-
-
laurent authored
-
- 09 Apr, 2020 1 commit
-
-
Robert Schmidt authored
-
- 06 Apr, 2020 13 commits
-
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
This refactors the preprocessor. The new preprocessor implements the same scheduling strategy (Modified Round-Robin: give resources according to round-robin, then group) but should be fairer by changing every time the RR start UE (i.e., 1st TTI UE 0 starts, 2nd TTI UE 1, etc) when the UE number is not a divisor/multiple of the RBG size (and the last RBG is often smaller). This also removes all unneeded code of the preprocessor such as allocate(), positioning(), etc.
-
Robert Schmidt authored
Previously, the various rlc_*_ind() functions had a parameter to enable the MAC to specify the max TB size that a subsequent call to the corresponding rlc_*_req() (!) function would return. This patch removes this parameter from the rlc_*_ind() functions and makes the parameter working that is already in the rlc_*_req() functions.
-
Robert Schmidt authored
store_dlsch_buffer() puts the RLC buffer status results in the UE_TEMPLATE, which is per-CC. Since the DLSCH scheduler works per-CC, too, we pass the right CC. However, this is not strictly necessary, as we could do this once before every CC, and it might be updated.
-
- 01 Apr, 2020 7 commits
-
-
Robert Schmidt authored
UE_list_t is now used as a separate list. It can be e.g. used in the scheduler to mark groups of users. The original UE_list_t is renamed to UE_info_t to reflect that it is a container for information about UEs.
-
Robert Schmidt authored
* Simplify store_dlsch_buffer() * Simplify assign_rbs_required() * Simplify dlsch_scheduler_pre_processor_partitioning() * Simplify dlsch_scheduler_pre_processor_accounting() and dlsch_scheduler_pre_processor_accounting_allocate() * Simplify allocation printing The original functions used in the fairRR scheduler have been moved to eNB_scheduler_fairRR
-
Robert Schmidt authored
* Remove MIMO_mode_indicator: it is simply not used ATM * Remove min_rb_unit as parameter: function auto-detects * Remove commented code * Remove slice sharing/multiplexing: it is broken * Remove UE sorting, add UE with add_new_ue() in MAC - UE sorting is useless overhead on every iteration, instead it should be governed by a scheduling algorithm (e.g., RR or PF) - The MAC keeps a UE list and automatically adds a UE - UE_list empty, set head to -1 * Remove slice_positioning: the slicing functionality is broken * Remove unused/untested code
-
Robert Schmidt authored
The original reset() function used in fairRR has been moved to eNB_scheduler_fairRR.c
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-