Xavier Arteaga
fda1d040e7
SRSENB: implement PUSCH threshold for UCI bits
4 years ago
Francisco Paisana
b50f70e420
check if cqi is pending in all carriers to decide whether mcs needs to be reduced in PUSCH
4 years ago
Francisco Paisana
3f439cc947
account for current cqi config struct update in scheduler interface
4 years ago
Francisco Paisana
35fa5346b9
only reduce mcs if the current tti requires uci
4 years ago
Francisco Paisana
58c4bcf288
reduce mcs for UL grants carrying UCI
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
Andre Puschmann
a7911f0dab
pdcp,rlc: refactor SDU queueing policy
...
this patch refactors the SDU queuing and dropping policy of the RLC and PDCP layer.
the previous design had issues when packets have been generated at a higher
rate above the PDCP than they could be consumed below the RLC.
When the RLC SDU queues were full, we allowed two policies, one to block on the write
and the other to drop the SDU. Both options are not ideal because they either
lead to a blocking stack thread or to lost PDCP PDUs.
To avoid this, this patch makes the following changes:
* PDCP monitors RLC's SDU queue and drops packets on its north-bound SAP if queues are full
* a new method sdu_queue_is_full() has been added to the RLC interface for PDCP
* remove blocking write from pdcp and rlc write_sdu() interface
* all writes into queues need to be non-blocking
* if Tx queues are overflowing, SDUs are dropped above PDCP, not RLC
* log warning if RLC still needs to drop SDUs
* this case should be avoided with the monitoring mechanism
4 years ago
Xavier Arteaga
f39abe0094
SRSENB: fix MAC pending PHY config
4 years ago
Francisco Paisana
5e06430455
removal of stack handler interface
4 years ago
Francisco Paisana
7c364070ee
creation of task scheduler interface for classes/functions running outside the main control thread
4 years ago
Francisco Paisana
039977aeb5
renamed interfaces
4 years ago
Francisco Paisana
1a9c04bf2f
use of task scheduler handle in pdcp
4 years ago
Francisco Paisana
e9f34c7613
using task scheduler in enb stack
4 years ago
Francisco Paisana
4f5e65781f
created task scheduler class to deal with timers, thread pool, multiqueue, internal tasks
4 years ago
Pedro Alvarez
89b6e0f714
Send paging message to all cells.
4 years ago
Francisco Paisana
fe8f8be62d
apply separate cqi configurations to scells
4 years ago
Francisco Paisana
e550bf726d
updated fsm to allow enter methods to receive event that caused them
4 years ago
Francisco Paisana
504e3a1b7a
fix max retx configuration in scheduler and updated tester to catch the error
4 years ago
Andre Puschmann
4c667bd478
rrc_ue: improve logging of CA activation
...
* check Pcell has configured Scells when entering function
* log if UE doesn't support CA (only if scells are configured)
* log info about CA activation only after all checks have passed
* fix typo
4 years ago
Pedro Alvarez
5ed6c18ac7
Copy E-UTRA capabilities to new RNTI in reestablishment.
4 years ago
Francisco Paisana
d7a0fe4060
improve log messages for CA
4 years ago
Francisco Paisana
1899c468d3
updated rrc mobility test
4 years ago
Francisco Paisana
97d20ca579
remove obsolete bearer cfg methods
4 years ago
Francisco Paisana
0929a9de62
created rrc mac_controller class to handle the configuration of scheduler
4 years ago
Francisco Paisana
7ab4b5f723
fix long bsr handling
4 years ago
Francisco Paisana
af58597647
fix mac tb building in scheduler
4 years ago
Francisco Paisana
cb7f620254
created separate class to manage bearers buffers/status reports in the scheduler
4 years ago
Pedro Alvarez
45b8392a4c
Added user warning to invalid configuration of RRC inactivity timer.
4 years ago
Pedro Alvarez
8e00febb1d
srsENB: Derive inactivity timeout from T310 and T311 and N310.
4 years ago
Francisco Paisana
2cb80f9bf3
remove rnti in mac/phy in staged manner. First the "upper mac", and then the "lower mac" and phy
4 years ago
Ismael Gomez
493b7ea2da
Remove SNR threshold based link failure detection
4 years ago
Francisco Paisana
ced1afdbe7
check supported band combination r10 to determine if a UE supports CA
4 years ago
Francisco Paisana
790b32f6f5
fix CA ue category check
4 years ago
Francisco Paisana
2de702f50e
disable carrier aggregation when ue release is below 10 or category is below 5
4 years ago
Xavier Arteaga
31d7124ae7
SRSENB: Added initial PUCCH format 3 default for more than 2 serving cells
4 years ago
Francisco Paisana
e3e9bbcd62
fix PNF PDU size cutting
4 years ago
Francisco Paisana
421d5f3852
merge next
4 years ago
Francisco Paisana
86adbfceae
fix nr stack activation
4 years ago
Francisco Paisana
167c83d02c
set gnb coreless default tun itf
4 years ago
Francisco Paisana
e6ef201cb0
disable warning when there is no space in the scheduler PDCCH
4 years ago
Francisco Paisana
535d4b70f3
avoid capturing callback parameters by reference to avoid dangling pointers
4 years ago
Francisco Paisana
d7138b7752
fix nr activation guards
4 years ago
Francisco Paisana
ddff68a546
add ifdef guards for NR code
4 years ago
Francisco Paisana
6735199728
fix nr optional linking
4 years ago
Francisco Paisana
b68ef69ab4
fix comments and other minor issues
4 years ago
Francisco Paisana
42969ad992
add tb size as argument to gnb
4 years ago
Francisco Paisana
f0874b780b
add radio_base/null classes
4 years ago
Ismael Gomez
e26653c87f
Move tti_clock() call from worker_end to txrx class in enb
4 years ago
Pedro Alvarez
9c1a7d2cf1
Removed get_bearer_status in PDCP. Renamed get_state/set_state to
...
get_bearer_state/set_bearer_state.
4 years ago
Pedro Alvarez
208a539499
Split PDCP tx_count state variable into tx_hfn and next_pdcp_tx_sn
...
variables.
4 years ago
Pedro Alvarez
fb088a8c54
Restoring PDCP state only when using RLC AM.
4 years ago
Pedro Alvarez
66d4f320e5
Added intereface to set PDCP state after reestablishment.
4 years ago
Pedro Alvarez
217f16d137
Getting PDCP state on re-establishment.
4 years ago
Pedro Alvarez
33567d81db
Added interface to get internal PDCP state.
4 years ago
Xavier Arteaga
f04cf2090a
Integrates number of samples in radio buffer
...
Fix minor issue
Radio: Fix minor bug and add unit test
4 years ago
Xavier Arteaga
89b24b54e5
Refactored radio class for acommodating multiple RF devices
4 years ago
Andre Puschmann
e2146e90ad
enb: remove usleep after sending RRC Connection Release to UE
...
this cause a "dead-lock" with ZMQ because it made the stack
thread sleep for 50ms. With a sync-queue size of 1 (now the default
using ZMQ) the zmq-based radio to timeout. as a result
the rx/tx between UE and eNB stopped so the UE never reached
RRC Idle state.
4 years ago
Francisco Paisana
cd0202aeaf
use alternative method for conres CE scheduling
4 years ago
Francisco Paisana
df1f8836b1
fix issue #1418 by changing the ConRes CE scheduling mechanism
4 years ago
Andre Puschmann
06d31f46ba
enb: set maximum allowed TTI difference between PHY and Stack TTI clocks for ZMQ
...
this fixes the issue where PHY and MAC threads, and the processing
of events therein, are drifting apart too much.
This patch effectivly enforces a strong wait on the PHY if the
stack thread is too slow in processing its tasks.
For RF hardware the default is still 8192 TTIs, for ZMQ 1 TTI is used.
4 years ago
Andre Puschmann
a1d64c1efe
enb: improve error message when RAR cannot be sent
4 years ago
Francisco Paisana
3c2e3dbdbf
added latest mac nr updates
4 years ago
Francisco Paisana
057980d1fb
use common log helper macros
4 years ago
Francisco Paisana
27e5d98ef9
added vnf phy nr
4 years ago
Francisco Paisana
6509399ed3
fix for move-only events
4 years ago
Francisco Paisana
611a1c667f
remove the requirement that pusch grant for uci data being a newtx
4 years ago
Francisco Paisana
1393bd11fa
avoid using PUCCH for SCell DL allocations
4 years ago
Francisco Paisana
d859c33035
added check for UCI collision during DL scheduling for CA
4 years ago
Francisco Paisana
53b85691b5
moved sf result to sched class. This way each carrier has a view to the results of the remaining carriers in the same subframe
4 years ago
Francisco Paisana
5d33acdb53
changed name of sched_ue_carrier class
4 years ago
Ismael Gomez
60b5fb9a74
Refactor variable name
4 years ago
Ismael Gomez
edb1fcc892
srsENB: Apply new PUCCH configuration when setting dedicated config
4 years ago
Pedro Alvarez
9df40c3af0
Added debug GTPU print.
4 years ago
Andre Puschmann
8512c10286
create simple helper method to log command line arguments
4 years ago
Andre Puschmann
db7478e9f0
enb: fix eNB shutdown if layers cant be initialized
...
this fixed #1392 which ocurrured because we were going on with the eNB
init even if the radio failed to initialize
4 years ago
Xavier Arteaga
039f2164a6
Initial Sounding Reference Signals implementation
4 years ago
Francisco Paisana
857c4de420
extended handover test to check for correct SR/CQI resource setup
4 years ago
Francisco Paisana
7ce23e0afb
extend handover intraenb handover fsm to account for multiple C-RNTI CEs
4 years ago
Francisco Paisana
b843585abc
add srsgnb stack class
4 years ago
Francisco Paisana
f5174415f8
add srsenb::sdap class
4 years ago
Francisco Paisana
613003ac53
add srsenb::rrc class
4 years ago
Francisco Paisana
0916e29de4
add srsenb::rlc_nr class
4 years ago
Francisco Paisana
9001117b2d
add srsenb::pdcp_nr class
4 years ago
Xavier Arteaga
6398cd841d
SRSENB: PHY reports MAC all UL grants
4 years ago
Xavier Arteaga
fbce38dc27
SRSENB: PHY tries to remove always the RNTI in PHY-lib. No error messages prompted.
4 years ago
Francisco Paisana
6908e0fab1
disabled all UL in the MAC during handover, including scheduling requests
4 years ago
Pedro Alvarez
960c0e97cd
Added handling of RRC re-establishment to srsENB.
...
* Added the appropriate code for handling and sending the
re-establishment procedure messages to rrc_ue.c/.h.
* Triggered RRC reconfiguration after the reception of RRC
re-establishment complete
* Refreshed K_eNB at the reception of re-establishment
request
* Changed the mapping of TEIDs to RNTIs in the GTP-U layer,
as the RNTI might change with reestablishment.
4 years ago
Francisco Paisana
452c043370
created a global map of lcids to srbs/drbs for NR
5 years ago
Francisco Paisana
6a164e032d
added srsue::rrc_nr
5 years ago
Francisco Paisana
43635c3fa1
added cqi cfg to handover command
5 years ago
Francisco Paisana
026628a84f
use of reestablishment method to reset the RLC bearers during handover
5 years ago
Ismael Gomez
6a19a19f00
Fix memory fault during exiting and waiting for worker
5 years ago
Francisco Paisana
9a0ea6e08c
use log_helper for log macros
5 years ago
Francisco Paisana
edba7f57e4
corrected mac_nr_pdu includes
5 years ago
Francisco Paisana
d7b35ba7d1
added nr mac
5 years ago
Andre Puschmann
a0e4b18507
enb_mac: pre-allocate UE object for quicker PRACH/RAR handling
...
we've seen long delays in handling PRACH on low-power devices
such as the RPi4. This was mainly caused by long delays
in creating the UE object on the fly during PRACH handling.
This patch pre-allocates one UE object that is then used
during the PRACH.
5 years ago
Ismael Gomez
270c7ce9dc
Separate PHY interface to add rnti and pregenerate sequences. Calculate the sequences on the reception of ConnectionSetup instead of PRACH
5 years ago
Francisco Paisana
d36ae722d5
added extra debug logs
5 years ago
Ismael Gomez
a1f0f8de35
Add callback to RLC to indicate BSR for TX and reTX queues (used in ENB) ( #1361 )
5 years ago
Francisco Paisana
860174a819
remove comment and changed handover_type enum
5 years ago
Francisco Paisana
b37923312e
added intraenb handover fsm and respective test
5 years ago
Francisco Paisana
65ef16c7f1
void sending rrc connection release as msg4
5 years ago
Francisco Paisana
61680d64d7
move rrc::ue to separate file
5 years ago
Xavier Arteaga
9d5c2d70df
SRSENB: Fix PHY reconfiguration for HO
...
Minimal aesthetic change
5 years ago
Francisco Paisana
7713df2cf9
fix fixed mcs issue
5 years ago
Pedro Alvarez
51f8ba60da
Make MBMS MCS configurable for the eNB.
5 years ago
Francisco Paisana
04961148e9
removed old code to compute meas obj diffs
5 years ago
Francisco Paisana
b8339031f6
updated code for crnti update during handover and reset of the mac
5 years ago
Francisco Paisana
45cd893e21
update handover test
5 years ago
Francisco Paisana
e8aff22e1b
using new rrc obj id util methods in handover code
5 years ago
Francisco Paisana
f43985b6cd
small updates for testing handover and configuring the rrc
5 years ago
Francisco Paisana
f2af447b1a
use of unique_byte_buffer for sib scheduling to allow for padding
5 years ago
Francisco Paisana
598bad1f0e
changed rrc ue cfg files names
5 years ago
Francisco Paisana
ea5ba93f25
changed file names
5 years ago
Francisco Paisana
ad03d7caf7
move position of security cfg
5 years ago
Francisco Paisana
d43448e8a1
created security cfg handling class for rrc ue and refactor bearer_list handling
5 years ago
Francisco Paisana
09cafaa4bb
update ded_info_nas_list handling
5 years ago
Francisco Paisana
2e4e22dc68
revert clang-format change
5 years ago
Francisco Paisana
1ac91f2f93
updated erab_setup_test
5 years ago
Francisco Paisana
0515229240
perform mac bearer addiction via the bearer handler class
5 years ago
Francisco Paisana
6bcb5910c9
usage of new bearer list cfg class for srb1/srb2 setup
5 years ago
Francisco Paisana
ca0db7fffe
created generic methods to apply toaddmodlist and removelists.
5 years ago
Francisco Paisana
c65c081b51
created separate files to handle rrc bearers
5 years ago
Francisco Paisana
dbcaec6689
avoid dangling reference
5 years ago
Francisco Paisana
71520d681a
changes in pucch res allocation api to allow replacing p/scells
5 years ago
Andre Puschmann
c892ae56be
rrc_cell_cfg: fix potential div by zero
...
similar fix has been applied for SR resources
5 years ago
Andre Puschmann
248e2b5f7e
rrc: fix potential division by zero
5 years ago
Xavier Arteaga
b11ffaee7e
SRSENB: fix channel emulator for multiple channels
5 years ago
yagoda
210eae8e7e
fixing small rr.conf config error
5 years ago
Francisco Paisana
aab989022d
avoid forward declarations
5 years ago
Francisco Paisana
08e1f01c72
allocation of the sr/cqi/pucch_cs resources takes place at a frequency basis now
5 years ago
Francisco Paisana
ee994468f7
separate sr and pucch_cs allocation from rrc class
5 years ago
Francisco Paisana
b16c7c1cfa
created separate cqi res allocation types
5 years ago
Francisco Paisana
4b525127c9
created separate cell ctxt common list
5 years ago
Francisco Paisana
3c29bce014
apply segmentation break check to newtxs only. Allow configurable cqi
5 years ago
Francisco Paisana
c75e31db03
added random cqi to sched tester
5 years ago
Francisco Paisana
500a7f6357
created new separate ue class in sched tester to handle acks and harq tests
5 years ago
Pedro Alvarez
2ea78c8feb
Added configuration options for stack logging.
5 years ago
yagoda
3f99e40159
-changing rlc so that mrb is never removed when going to idle
...
-adding metric counting to eMBMS MAC so that the count is not lost during eMBMS subframes
5 years ago
Xavier Arteaga
d94078d543
Minor changes
...
Fix UE sequence generation
minor change
5 years ago
yagoda
94f62b54ad
fixing some bugs in embms with new stack and cc scheduler in enodeb
5 years ago
Ismael Gomez
8c82203c74
Removed unused pregenerate option
5 years ago
Andre Puschmann
8d7a336bee
enb: fix ok/nok packets
...
fix ok/nok counter, since we do not count the correctly
decoded packets explicitly, we need to calculate them from
the total number of pkts minus the failed pkts to avoid this:
------DL--------------------------------UL------------------------------------
rnti cqi ri mcs brate ok nok (%) snr phr mcs brate ok nok (%) bsr
46 6.2 0 0.0 0 0 0 0% 0.11 0.00.10 0 900 900 100% 15.3k
46 7.9 0 0.0 504 1 0 0% 0.11 0.00.10 0 900 900 100% 15.3k
5 years ago
Francisco Paisana
b69b274c63
comment removed
5 years ago
Francisco Paisana
6f02c067b3
fix cell ptr assignment
5 years ago
Francisco Paisana
5ef6031b44
added ability to use single-carrier if we are unable to allocate resources for the scells
5 years ago
Francisco Paisana
439193e4b0
added code to handle fail to alloc ue cqi and sr
5 years ago
Xavier Arteaga
f200c01566
SRSENB: PUSCH EVM measure is optional and disabled by default
5 years ago
Pedro Alvarez
6a65cb0624
Accept both decimal and hexadecimal for enb_id
5 years ago
Francisco Paisana
5f4b0b1e0c
added default sf_mapping for cqi and sr in the enb parser
5 years ago