An error occurred fetching the project authors.
- 06 Apr, 2020 3 commits
-
-
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
-
- 06 Nov, 2019 1 commit
-
-
Cedric Roux authored
In TDD mode, CQI requests are not possible in special subframes (at least for some TDD configurations, see 36.213 7.2.3 that says "a DL subframe is valid if it does not contain a DwPTS field if the length is less than 7680 Ts"). In the code, we simply disable CQI requests in special subframes, no matter what the length of DwPTS. A problem can arise if the DCI0 for a given UE are sent only in those special subframes. In this case the UE will never report CQI and the eNB will use low MCS for this UE, impacting performances. Another, related, problem is when there are several UEs. There again one UE might always get its DCI0 in special subframes and thus never report CQI. There again, performance issues. This commit is an attempt to improve the situation. It does two things. 1 - tag the UE as schedulable in the function UE_is_to_be_scheduled if the cqi_req_timer is expired 2 - use cqi_req_timer as a criterium when ordering UEs for UL scheduling The value chosen for the expiration of the cqi_req_timer in UE_is_to_be_scheduled is quite high (300) because as the code is today we may overschedule the UE for short bursts until we receive a CQI from the UE. [TODO: fix the code properly to avoid this behavior.] Note: the fairRR scheduler has not been analyzed and this commit may not fix anything in case the fairRR scheduler is used.
-
- 23 Sep, 2019 1 commit
-
-
frtabu authored
remove RRC_VERSION macros, simplify build-oai and CMakefile.txt accordingly, get rid of remaining compilation warnings (opt module improperly merged and patch asn1c files with tests against max 64 bits integer value)
-
- 01 Jul, 2019 1 commit
-
-
laurent authored
-
- 20 Jun, 2019 2 commits
-
-
Dong Anyuan authored
-
Dong Anyuan authored
-
- 28 May, 2019 1 commit
-
-
SAWADA Kentaro authored
-
- 11 Apr, 2019 1 commit
-
-
Louis Adrien Dufrene authored
Remove bypass_cdrx variable and add cdrx_waiting_ack. The CDRX is now activated at RRC COnnection Reconfiguration Complete reception. To Test
-
- 10 Apr, 2019 1 commit
-
-
Louis Adrien Dufrene authored
This is version 1.0. To test. Cleanup of phy_procedures_lte_eNb.c eNB_scheduler_dlsch.c eNB_scheduler_ulsch.c pre_processor.c and asn1_msg.c
-
- 04 Apr, 2019 2 commits
-
-
Stefan Schaffelder authored
-
Louis Adrien Dufrene authored
-
- 30 Mar, 2019 2 commits
-
-
Cedric Roux authored
- size of PUCCH has been fixed to: - 2 RBs for N_RB_UL = 25 (1 RB at top of resource grid, 1 RB at bottom) - 4 RBs for N_RB_UL = 50 - 6 RBs for N_RB_UL = 100 this is arbitrary and will need some rework at some point. This may be also wrong. PUCCH size actually depends on DL traffic (if the ack/nack is not done in PUSCH) and scheduling request configurations. - add sched_frame %= 1024 at one needed place - reserve RBs for retransmission this was not done so new transmissions were scheduled in the same RBs. Since the code works with the notion of 'first_rb' only, it was decided to skip all RBs lower than those retransmitted. This works but is not correct (imagine we have to retransmit RB 23, then all RBs < 23 will not be used for new transmission). The work to fix this properly is complex, a lot has to change, so let's do it this simple way for now. - sort_ue_ul was not correct - add the function maxround_ul to use the correct 'round' (the one from DL was used, which is totally wrong) - be sure to use the correct frame/subframe to get the correct HARQ pid
-
Cedric Roux authored
-
- 18 Jan, 2019 1 commit
-
-
Stefan authored
-
- 15 Jan, 2019 1 commit
-
-
Stefan authored
-
- 07 Jan, 2019 1 commit
-
-
Cedric Roux authored
For whatever reason most of the files had their permission changed from 644 to 755, which is not wanted.
-
- 20 Dec, 2018 2 commits
- 19 Dec, 2018 1 commit
-
-
Stefan authored
-
- 17 Oct, 2018 1 commit
-
-
Bi-Ruei, Chiu authored
1. Modify all expressions using original LTE-RRC data types for new generated ones 2. Does not change any program logic
-
- 05 Sep, 2018 4 commits
-
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
Commit 7823858e2d11e8cabc1ca7bf7f507b9a050942d3 introduced this as a comment.
-
- 03 Sep, 2018 7 commits
-
-
Robert Schmidt authored
-
Robert Schmidt authored
Affects: * store_dlsch_buffer() * assign_rbs_required()
-
Robert Schmidt authored
-
Robert Schmidt authored
- uncomment "Couldn't find RNTI for UE X" in UE_RNTI() and rb_alloc in pre_processor_reset() as they only inflate the debug output with little benefited - "doing ue_schedule_spec" is now displayed for individual UEs (and individual CCs) - show messages when not scheduling UE in ue_schedule_spec() due to invalid slice or if not in RRC_CONNECTED
-
Robert Schmidt authored
-
Robert Schmidt authored
-
Robert Schmidt authored
-