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
2020-12-16 13:49:29 +01:00
faluco
f20b75a05f
Re-structure enb metrics a bit. Create a generic mac metric struct and per ue mac metrics struct.
2020-12-14 13:16:13 +01:00
faluco
5529943172
Add a per sector rach preable counter for the metrics.
2020-12-14 13:16:13 +01:00
Francisco
b71e8075f4
Refactoring of scheduling algorithms
...
- Use single interface for both DL and UL
- Wrote helper functions for tasks that are common to different algorithms
- created subfolder for all scheduling algorithms
2020-12-12 15:59:26 +01:00
Andre Puschmann
07d2bc4fe8
change license header to agnostic version with hint to root LICENSE file
2020-12-12 15:59:25 +01:00
Francisco
eae0dc93ad
rename scheduler files. scheduler -> sched
2020-12-12 15:59:25 +01:00
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.
2020-12-12 15:59:25 +01:00
yagoda
bdc1964335
consolidating RRC eMBMS configuration into single function, setting some parameters to const
2020-12-12 15:58:34 +01:00
yagoda
b90574975b
refactoring asn1 eMBMS code, removing asn1 from PHY and MAC in eNodeB
2020-12-12 15:58:34 +01:00
Francisco Paisana
26f46ea067
add S1 Handover Request handling in target eNB
2020-08-14 14:28:56 +01:00
Francisco Paisana
5e06430455
removal of stack handler interface
2020-07-13 11:19:25 +01:00
Francisco Paisana
039977aeb5
renamed interfaces
2020-07-13 11:19:25 +01:00
Francisco Paisana
2cb80f9bf3
remove rnti in mac/phy in staged manner. First the "upper mac", and then the "lower mac" and phy
2020-06-26 11:59:06 +01:00
Ismael Gomez
493b7ea2da
Remove SNR threshold based link failure detection
2020-06-25 22:57:31 +02:00
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.
2020-05-25 13:12:19 +02:00
faluco
7ff251f112
- Fixed warnings caught by Clang 9.0.0
2020-05-07 10:10:24 +02:00
Francisco Paisana
0526ae8ab1
updated rrc mobility parsing. added some utility methods
2020-04-22 12:57:11 +01:00
Francisco Paisana
64557740fc
use mac_buffer_state interface to schedule CEs in scheduler
2020-04-22 11:34:08 +01:00
Francisco Paisana
d183d64409
added allocate_rnti method to mac. Useful both during PRACH and handover UE resource allocation
2020-04-22 11:34:08 +01:00
Francisco Paisana
c661025cda
fix log tti, and print a warning when the ul_harq tti does not match existing ones
2020-04-01 15:02:21 +01:00
Ismael Gomez
7a7385d0e5
Support multiple carriers for common buffers (RAR/BCCH/PCCH)
2020-03-24 16:47:33 +01:00
Francisco Paisana
a2866f661b
made the number of ue payload allocations proportional to number of active carriers. Made mac::ue_db use unique_ptrs
2020-03-23 14:49:17 +00:00
Francisco Paisana
82cb6baef0
now the whole ue and enb mac uses the logmap
2020-03-20 11:32:03 +00:00
Xavier Arteaga
ada8772f57
Initial srenb TA compensation
2020-03-17 17:21:43 +01:00
Xavier Arteaga
e832769ae6
Updated copyright
2020-03-16 11:26:06 +01:00
Andre Puschmann
a8acd235f6
extend eNB MAC to support multiple CC per UE
...
- add tx/rx softbuffers for each CC that a UE might have
- make sure to call assign correct buffers when iterating
over the CC for UL/DL grant assignment
2020-03-11 10:16:23 +01:00
Andre Puschmann
2edecea33e
fix SIB transmission for CA
...
Avoid double buffering of SIBs in MAC as this would require one buffer for each CC.
Instead, use byte_buffer managed by RRC that contains packed SIBs to avoid
double memcpy for each SIB tx. Only use MAC provided buffer in error case.
Also avoid MAC calling RLC for each SIB and call RRC directly.
2020-03-09 14:18:09 +01:00
Andre Puschmann
120ad76c63
refactor cell param handling and fix SIB transmissions
...
- move cell specific eNB params to cell list in rr.conf
- make sure DL EARFCN and DL freq can be used to manually overwrite a single cell config
- fix SIB packing and transmission for multi cell configs
- introduce cell list to MAC
- adapt default enb.conf.example and rr.conf.example
2020-03-06 16:20:44 +01:00
Xavier Arteaga
da701cd82b
SRSENB: Added PUSCH TA and EVM measurement. Some more PHY cleanup.
2020-03-06 13:58:49 +01:00
Francisco Paisana
fed06138b9
moved rach_detected to stack thread. Created a more friendly interface to enqueue tasks in stack
2020-03-03 21:03:21 +00:00
Xavier Arteaga
b45223c880
Fix minor MAC Clang warnings
2020-03-02 12:19:09 +01:00
Francisco Paisana
d831522692
addition of SCell Activation CE Cmd to scheduler and MAC
2020-02-14 21:49:01 +00:00
Xavier Arteaga
385102fa2d
SRSENB: minor format, renaming and interface changes
2020-02-13 10:29:00 +01:00
Xavier Arteaga
231431f569
SRSENB: enabled CA PUCCH decode in eNb
2020-02-13 10:29:00 +01:00
Francisco Paisana
42b15c7bed
use common ue_cfg interface to set the ue antenna info
2020-02-07 15:06:46 +00:00
Francisco Paisana
b66bc3a6b0
create a sched_interface struct for antenna info dedicated. This way we remove the asn1 as a dependency in the scheduler
2020-02-07 15:06:46 +00:00
Francisco Paisana
2dc31ea440
added interface to configure multiple cells from the RRC
2020-02-07 15:06:46 +00:00
Xavier Arteaga
b08c1f003e
SRSENB: enabled multiple cells from rr.cfg
2020-01-28 11:22:50 +01:00
Pedro Alvarez
c5979f59eb
Clang format UE, eNB and lib ( #850 )
...
* Clang-formated UE, eNB and lib.
* Fixed compiling errors from clang-format.
* Fix linking issues introduced by clang-format
* Fix poor formating in initializing arrays of arrays.
* Fix mistake in conflict resolution on rm_turbo.c
* Re-apply clang format to gtpc_ies.h
2019-12-16 16:04:22 +01:00
Francisco Paisana
ab3d7dd413
updated sched interface for multiple carriers
2019-12-03 15:46:22 +00:00
Francisco Paisana
73e06a0858
removed threads from eNB MAC
2019-11-20 15:52:21 +00:00
Xavier Arteaga
2e1479e9d6
SRSENB: Added PHY CA PRACH workers
2019-11-07 16:01:01 +01:00
Francisco Paisana
8440126d35
removal of srslte::timers class
2019-10-23 19:33:25 +01:00
Ismael Gomez
3828e03f33
Refactor in eNodeB, add channel emulator and fixes in OFDM
...
* Added channel emulator to srsENB. Added support for fixed delay
* Bug in OFDM when using nonguru mode
* A few changes and refactor in eNodeB
2019-10-23 11:09:39 -05:00
Francisco Paisana
424876c5e4
added DL TTI mask for MBMS
2019-07-21 22:27:17 +02:00
Andre Puschmann
da35f41dd5
rework MAC logical channel prioritization
2019-06-26 17:57:25 +02:00
Francisco Paisana
ce29ed545d
moved mac thread to the stack. Protect the interface of the stack with PHY and gateway via a queue of tasks
2019-06-21 13:01:41 +02:00
Francisco Paisana
415d3418b6
reorganized enb to mirror ue director/class structure with a stack class
2019-06-07 15:41:56 +02:00