Ismael Gomez
d5f0634975
Add PUCCH SNR measurement ( #2175 )
...
* Add PUCCH SNR measurement
* Fix PUCCH SNR estimation
* Reverted PUCCH noise estimation
* use fpclassify instead of iszero
Co-authored-by: Xavier Arteaga <xavier@softwareradiosystems.com>
4 years ago
Ismael Gomez
c1c5fa426c
Fix issue with new way of managing ul buffers not working with CA
4 years ago
Francisco Paisana
d0a17b0a40
created sched_ue_cell class that is indexed based on enb_cc_idx
4 years ago
Francisco Paisana
2abe486e18
separate control loops for PUCCH and PUSCH TPC
4 years ago
faluco
92b11c1adb
Backport misc changes from the fapi repo.
4 years ago
Francisco Paisana
099dad8cb1
disable PHR handling in the UL sched by default
4 years ago
Ismael Gomez
f9a02299f9
Use MAC PDU pointer instead of tti_rx and rnti as a key to associate buffers. Decouple crc_info() and push_pdu() functions. This allows for different timing architectures in the PHY
4 years ago
Ismael Gomez
0498439d41
Backport some changes from FAPI branch ( #2124 )
...
* Reorder DCI FORMAT enum
* Fix endianness issue
* Fix return codes in phy_ue_db
* Log members should be destructed after the layers.
* Add JSON metrics and Events. Add Alarm log channel. Simplify MAC metrics struct.
* Restore metrics_stdout change
4 years ago
faluco
8c42ec26c3
Fix error in previous rebase from dev.
4 years ago
faluco
f20b75a05f
Re-structure enb metrics a bit. Create a generic mac metric struct and per ue mac metrics struct.
4 years ago
Francisco
783131a4e1
sched rand test refactor: removal of redundant tests
4 years ago
Francisco
cba0cc457f
sched rand test refactor: creation of abstract sched simulator class for testing
4 years ago
Francisco
aed36eb273
sched rand tester refactor: elimination of ue_ctxt_test obsolete class
4 years ago
Francisco
a068ae11b0
sched rand tester ue_sim class now handles cqi
4 years ago
Francisco
8f05982bef
simplification of scheduling of UL acks in sched random tester
4 years ago
Francisco
86eb315102
simplification of scheduling of DL acks in sched tester
4 years ago
Andre Puschmann
eea6f0f11b
enb: fix potential invalid access in stdout metrics
...
this fixes a potential access of invalid PHY or MAC metrics by checking
the user entry actually exists.
the RFCI has shown this error:
------DL--------------------------------UL------------------------------------
rnti cqi ri mcs brate ok nok (%) snr phr mcs brate ok nok (%) bsr
ASAN:DEADLYSIGNAL
=================================================================
m==31838==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x555d482b6893 bp 0x7f6ac32d1160 sp 0x7f6ac32d0bc0 T21)
==31838==The signal is caused by a READ memory access.
==31838==Hint: address points to the zero page.
#0 0x555d482b6892 in srsenb::metrics_stdout::set_metrics(srsenb::enb_metrics_t const&, unsigned int) /mnt/data/jenkins/workspace/srslte_dev_ogt_zmq_nightly/srsLTE/srsenb/src/metrics_stdout.cc:101
#1 0x555d482865f1 in srslte::metrics_hub<srsenb::enb_metrics_t>::run_period() /mnt/data/jenkins/workspace/srslte_dev_ogt_zmq_nightly/srsLTE/lib/include/srslte/common/metrics_hub.h:88
#2 0x555d482865f1 in srslte::periodic_thread::run_thread() /mnt/data/jenkins/workspace/srslte_dev_ogt_zmq_nightly/srsLTE/lib/include/srslte/common/threads.h:143
#3 0x555d4826813d in srslte:🧵 :thread_function_entry(void*) /mnt/data/jenkins/workspace/srslte_dev_ogt_zmq_nightly/srsLTE/lib/include/srslte/common/threads.h:102
#4 0x7f6b0dc546da in start_thread (/lib/x86_64-linux-gnu/libpthread.so.0+0x76da)
#5 0x7f6b0bf0171e in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x12171e)
4 years ago
David Rupprecht
848496bb0f
Moved get_earfcn to srslte get_carrier_freq func
4 years ago
Francisco
b4861bc59a
move sched params and sched helper methods to sched_helpers.h/cc files. Removed place in the scheduler where the mcs is increased forcefully to avoid segmentation
4 years ago
Francisco
9eddfdb4a3
fix sched rand tester coderate check. tbs needs to be converted from bytes to bits
4 years ago
Francisco
0ae304a6ed
update sched rand tester to detect when tbs coderate exceeds 0.93
4 years ago
Francisco
99f94d9a1a
Bug fixes of srseNB scheduler TPC
...
- fix encoding of TPC command
- use of exponential average with irregular sampling for the ULSNR average estimate.
Turns out using a time-windowed average for the SNR was a bad idea.
If the UL grants are very sporadic, the SNR time window will never have samples
when a TPC is encoded
- update of TPC sched test
- other fixes in accumulators lib
4 years ago
Francisco
2598989f7d
replace msg3grant type from C-array to bounded vector
4 years ago
Francisco
69748e9313
fix compilation issue regarding definition of size_t in header and declaration of static member null_value in sliding average class
4 years ago
Francisco
d42dc50c44
Write TPC sched unit test and fix sched logical channel test
4 years ago
Francisco
479602ed1d
add option to specify target ul sinr for UL power control to the enb rr.conf parser
4 years ago
Francisco
5865df39d1
created class that implements the scheduler transmit power control and PHR handling
4 years ago
Francisco
d98d14efcc
remove tti_params struct from sched testers, and use tti_point instead
4 years ago
Francisco
86ab1864f7
The struct tti_point is now used ubiquitously in the scheduler
4 years ago
Francisco
8fb3ea6922
Added the ability to choose scheduling policy from enb.conf
...
- The two options provided at the moment are time-domain RR and PF
4 years ago
Francisco
64ee0ac2ef
New statistics were added in the random sched tester
...
- new stats allow to analyze the average bitrates of each user
- there is a new stat that computes the total of RBs allocated and total bitrate achieved by the scheduler
4 years ago
Andre Puschmann
07d2bc4fe8
change license header to agnostic version with hint to root LICENSE file
4 years ago
Francisco
8d181ef41c
Optimization of cc_sched_ue::cqi_to_tbs(...) method via the use of root-finding algorithm
4 years ago
Francisco
3d80ff4831
fix activation of PDCCH for adaptive retxs.
4 years ago
Francisco
fc81a5c6ba
harq ack state can now only be NACK or ACK. The ul_harq pending phich flag is now reset after phich scheduling. Thus, the existence of a crc_info(...) signal from the PHY is not required.
4 years ago
Francisco
66712023bb
remove unneeded includes of full rrc asn1 lib
4 years ago
Francisco
bb96625129
renaming lch_manager -> lch_ue_manager
4 years ago
Francisco
a348508072
simplified sched_ue pending DL bytes calculation API
4 years ago
Francisco
eae0dc93ad
rename scheduler files. scheduler -> sched
4 years ago
Francisco
68eda336bd
remove ENB_METRICS_MAX_USERS compile time macro and use run-time variable to set maximum number of UEs the srseNB can have connected at a given instant.
4 years ago
Francisco
324cb80cac
rename cell_info_common->enb_cell_common and cell_ctxt_dedicated->ue_cell_ded
4 years ago
yagoda
bdc1964335
consolidating RRC eMBMS configuration into single function, setting some parameters to const
4 years ago
yagoda
b90574975b
refactoring asn1 eMBMS code, removing asn1 from PHY and MAC in eNodeB
4 years ago
Francisco
92c1c2a182
more efficient measObjToAddModList reconfiguration by ensuring consistency in EARFCN ordering
4 years ago
Francisco
e88ba6dfc8
move rrc measconfig handling functions to separate file. Update measconfig tests
4 years ago
Francisco
25bfb6d84d
move rrc measconfig handling functions to separate file. Update measconfig tests
4 years ago
Francisco
1cb65f07f1
enable meas gaps in RRC and enb parser
4 years ago
Francisco Paisana
9ff0a9b254
fix random array index picker
4 years ago
Francisco Paisana
49a48c0130
add measgap awareness to scheduler metric and sf_sched. Add measGap test to random sched test suite.
4 years ago
Francisco Paisana
ff7811c822
remove unused member variable from sched tester
4 years ago
Francisco Paisana
3407ac6741
fix ca sched test
4 years ago
Francisco Paisana
e8ac98d06f
added extra tbs and dci aggregation level checks to sched test suite
4 years ago
Francisco Paisana
5467ee9f83
moved more tests to ue-dedicated test suite
4 years ago
Francisco Paisana
992ea7fd29
moved UE-dedicated RA sched test to separate test suite file.
4 years ago
Francisco Paisana
d5f6ccc0c4
integrated UL UE-dedicated sched tests in random test
4 years ago
Francisco Paisana
eb327183d3
moved harq tests from scheduler_test_common.cc to separate test suite file. Created a class ue_sim, whose role is to emulate a UE behavior
4 years ago
Francisco Paisana
64fca23eb3
extended dci content checks of DL and UL grants in the scheduler random tester.
4 years ago
Francisco Paisana
88105c1577
change the namespace of tti point helper functions for the eNB
4 years ago
Francisco Paisana
114932b4c6
extended common sched test suite api to multi carrier
4 years ago
Francisco Paisana
f24e5aadaf
clean common sched output tests
4 years ago
Francisco Paisana
d8203acd56
implement harq resuming functionality
4 years ago
Francisco Paisana
510959b50f
update nr asn1 files, and asn1 tests
4 years ago
Francisco Paisana
42cdc5e340
Allocate all the leftover bytes of the TBS to last allocated MAC SDU.
...
Fix the way the RLC header is accounted for depending on the bearer id.
For instance, the SRB0 does not require any RLC header.
4 years ago
Francisco Paisana
78e580a89f
fix rrc_mobility_test failure due to access to uninit variable
4 years ago
Francisco Paisana
f1bdf33d10
addition of cells provided in cell_meas_list of rr.conf to cellsToAddModList in the rrc reconfiguration message
4 years ago
Francisco Paisana
c5c7700cb7
implemented DL logical channel prioritization test for finite PBRs
4 years ago
Francisco Paisana
2d3681699a
added test for DL sched logical channel prioritization. At the moment only PBR=infinity is tested
4 years ago
Francisco Paisana
c46402c836
fix phy configuration during handover on srsenb. The function srsenb::rrc::ue::fill_scell_to_addmod_list assumes that the phy_cfg of the PCell is up-to-date, which was not the case. With this PR, the srsenb rrc updates the phy_cfg before the ho cmd is sent, but, in the case of intra-enb ho, the updates are not submitted to the phy before the reception of the crnti mac ce
4 years ago
faluco
d53f69bf0a
- Initialize the log backend, otherwise no log entries are generated.
4 years ago
Francisco Paisana
688dda30a4
favour carriers with best channel conditions for UL grants due to SRs
4 years ago
Francisco Paisana
137e554eb3
reestablish pdcp bearers is required in case of AM bearers
4 years ago
Francisco Paisana
da70c0fdaf
fix cellsToAddModList handling. Now the eNB always adds PCell+SCells as measObjects in the RRC Reconfiguration messages. It may also further include cellsToAddModList if they are provided in the rr.conf file
4 years ago
Francisco Paisana
141960fbda
remove unnecessary shared_ptrs and use value semantics instead for the var_meas_cfg of the different enb cells
4 years ago
Francisco Paisana
098172c911
fix cellIndex assignment in srsENB to not necessarily copy cell ID
4 years ago
Ismael Gomez
e2154d2213
Renamed constants to SRSLTE and use SRSLTE_CFI macros
4 years ago
Francisco Paisana
cbac98c89e
fix ack delay checks in scheduler tests
4 years ago
Xavier Arteaga
080543815f
Solved compilation warnings and enb_phy_test stop
4 years ago
Ismael Gomez
a4835dd2c8
More accurate MCS reduction when PUSCH carries UCI ( #1630 )
4 years ago
Francisco Paisana
b47f8e6c1a
increased rrc inactivity timer to avoid unnecessary pagings while
...
setting up an initial enb-ue iperf connection
4 years ago
Francisco Paisana
bb5dd92dca
implemented s1 handover cancellation procedure to force the target enb to release the ue ctxt
4 years ago
Francisco Paisana
8c9e596f89
refactored s1ap handover request interface. cleaned up rrc tenb s1 handover code
4 years ago
Francisco Paisana
2d55691173
extended rrc mobility test to check security configuration of pdcp bearers
4 years ago
Francisco Paisana
5d1343fe75
implemented S1 bearer status transfer
4 years ago
Francisco Paisana
db8af399f8
extended rrc tenb s1 handover test. implemented layer reconfig during s1 handover
4 years ago
Francisco Paisana
7605c7df23
added s1ap handover notification, fixed s1ap asn1 bug, and fixed bad fields for admitted erabs in ho req ack
4 years ago
Francisco Paisana
8b174ce2f4
changed interval interface to disallow interval::stop < interval::start via an assertion
4 years ago
Francisco Paisana
c1755727d7
changed interval method names, and added comments and assertions
4 years ago
Francisco Paisana
20b69fb22e
substitution of ul_alloc_t for prb_interval
4 years ago
Francisco Paisana
26f46ea067
add S1 Handover Request handling in target eNB
4 years ago
Ismael Gomez
382811e10e
Update S1AP RNTI context when doing Reestablishment ( #1582 )
4 years ago
faluco
072e84cec8
- Simplified the usage of span now with implicit constructors as it should be.
...
- Added overload for generic containers that have size and data members like vector.
- Removed unnecessary uses of make_span.
4 years ago
faluco
eb4b2d4e43
- Added a clarification comment on why to use make_span.
...
- Moved byte_buffer utilities to common.h thus breaking the dependency of ADT to COMMON.
- Fixed compilation failures in tests.
4 years ago
Francisco Paisana
76a62909c1
use of span type for universal array views
4 years ago
faluco
cfd3f51931
Import of srslog into srsepc and srsenb. ( #1574 )
...
* - Import of srslog into srsepc and srsenb.
* - Removed logger_file and logger_stdout files.
4 years ago
Xavier Arteaga
0192130742
SRSUE/SRSENB: UCI bits are carrier by the lowest serving cell index
...
SRSENB: Fix UCI in lowest serving cell index PUSCH transmission
4 years ago
Francisco Paisana
5e06430455
removal of stack handler interface
4 years ago
Francisco Paisana
fe8f8be62d
apply separate cqi configurations to scells
4 years ago
Francisco Paisana
504e3a1b7a
fix max retx configuration in scheduler and updated tester to catch the error
4 years ago
Francisco Paisana
84f34bc736
changed to a label filtering approach for ctest
4 years ago
Francisco Paisana
ebb8f18000
set some extra tests with the prefix "long_"
4 years ago