198 Commits (b87b760326c7139b8ad6ee25d1fe44f3dceabd23)

Author SHA1 Message Date
srsLTE codebot 3daa9f3fc3 Merge branch 'next' into agpl_next
# Conflicts:
#	lib/include/srslte/common/mac_nr_pcap.h
#	lib/include/srslte/phy/ue/ue_ul_nr_data.h
#	lib/src/common/mac_nr_pcap.cc
#	lib/src/phy/ue/ue_ul_nr_data.c
#	srsenb/hdr/phy/lte/worker_pool.h
#	srsenb/hdr/phy/nr/cc_worker.h
#	srsenb/hdr/phy/nr/sf_worker.h
#	srsenb/hdr/phy/nr/worker_pool.h
#	srsenb/src/phy/lte/worker_pool.cc
#	srsenb/src/phy/nr/cc_worker.cc
#	srsenb/src/phy/nr/sf_worker.cc
#	srsenb/src/phy/nr/worker_pool.cc
#	srsue/hdr/phy/lte/worker_pool.h
#	srsue/hdr/phy/nr/cc_worker.h
#	srsue/hdr/phy/nr/sf_worker.h
#	srsue/hdr/phy/nr/worker_pool.h
#	srsue/hdr/stack/mac/mac_nr.h
#	srsue/src/phy/lte/worker_pool.cc
#	srsue/src/phy/nr/cc_worker.cc
#	srsue/src/phy/nr/sf_worker.cc
#	srsue/src/phy/nr/worker_pool.cc
#	srsue/src/stack/mac/mac_nr.cc
4 years ago
Francisco 23459dee28 Created enb_{rlc/pdcp/gtpu/phy_interfaces.h files. 4 years ago
Francisco 43e57df00b breaking enb_interfaces.h into multiple files on a layer basis. Created enb_rrc_interfaces.h, enb_mac_interfaces.h and enb_s1ap_interfaces.h 4 years ago
Xavier Arteaga a19671802e Added SRSUE NR-PUSCH initial procedures 4 years ago
Xavier Arteaga 77f0a53abd Added DCI Format 0_0 unpacking and more NR-PUSCH procedures 4 years ago
Xavier Arteaga b150e45129 Renamed NR-PHY state and fix license headers 4 years ago
faluco b30845fae4 Remove unused variable in enb vnf_phy_nr. 4 years ago
Xavier Arteaga 2421f2cd99 Multiple PHY fixes and NR-PHY configuration refactor 4 years ago
Codebot d5ee9a5200 Adding AGPL copyright to new files 4 years ago
srsLTE codebot c9f48bce7b Merge branch 'next' into agpl_next
# Conflicts:
#	lib/include/srslte/phy/ch_estimation/ul_rs_tables.h
#	lib/include/srslte/phy/ue/ue_dl_nr_data.h
#	lib/src/phy/ue/ue_dl_nr_data.c
#	srsue/test/ttcn3/hdr/swappable_log.h
4 years ago
faluco 711438f756
Port enb specific classes to use srslog (#2155)
* - Started porting the enb PHY layer to use srslog loggers.
- Updated srslog to manage the none level.

* Finished porting enb phy layer including the NR part.

* Ported MAC, GTPU, PDCP, RLC and S1AP enb classes to use srslog.

* Use new stack logger.

* Ported the enb RRC clases to use srslog.

* Remove unused log macros.

* Replace loggers in sched, sched_carrier, sched_helpers.

* Replaced loggers in sched grid.

* Replaced loggers in sched harq.

* Replaced loggers in sched ue.

* Replaced loggers in sched ue ctrl.

* Replace loggers in sched ue ctrl TPC.

* Replaced loggers in sched subclasses.

* Replaced loggers in rrc_meascfg_test

* Configure loggers in rrc_mobility_test.

* Fix compilation errors left out after the rebase.

* - Implement a custom log sink that will serve as a test spy to intercept and count the number of error and warning log entries.
- Adapt the erab_test_setup and rrc_mobility tests to use this new class and make them pass again.

* - Remove trailing new lines introduced in the rebase.
- Ported the sched_ue_cell class to srslog.

* Remove unused log member.

* Ported mac tests to srslog.

* - Removed remaining trailing newlines from log entries.

* Fix compiler errors detected in CI.

* Fix another static variable without definition passed to log lines.

* Fixed a bug in srslog::flush that would never end when the backend queue is full.

* Fetch the RRC logger instead of injecting it in the constructor.
4 years ago
Xavier Arteaga 2baccc8b13 Set NR-PDSCH default table to 256QAM 4 years ago
Ismael Gomez a6423442c2
Refactor NR RA files and fix header includes all over library (#2162)
* Refactor NR resource allocation classes. Use DCI instead of grant for dummy PDSCH UE/eNB test

* Minor refactors in NR workers and ue_dl

* Fix include issues

* fix compilation issues
4 years ago
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
Andre Puschmann 02b0f251aa prach_worker: move variable to function body
the variable was only used inside the run_tti() function
and isn't needed elsewhere. refactor therefore.
4 years ago
Andre Puschmann 910dc5af86 Merge branch 'next' into agpl_next 4 years ago
Xavier Arteaga b3200d9ef5 Renaming common UL/DL DMRS related types and initial NR PUSCH implementation 4 years ago
Ismael Gomez 6348ddefd5 Add option to run prach_worker in the caller thread instead of by a background worker. This is useful when running simulations with ZMQ, to avoid the prach worker to take too much time and miss the RAR deadline 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
Codebot 98425e0b2b Adding AGPL copyright to new files 4 years ago
Ismael Gomez 5d85307a98 Fix 256QAM reconfiguration 4 years ago
Ismael Gomez a9673e3c53 Use number of configured cells before reconfiguration for DCI calculation 4 years ago
Ismael Gomez e654062a7a Do not stash all PHY configuration in eNB during reconfiguration. Stash only number of CC used by DCI 4 years ago
Xavier Arteaga f9643843a0 SRSENB/UE Fixed NR workers 4 years ago
Xavier Arteaga b501f2eeaf SRSENB/UE: Added NR workers 4 years ago
Xavier Arteaga a908fb6c5b Fix NR srsue/srsenb. Initial PHY NR in SRSENB. 4 years ago
Xavier Arteaga 85afdf8ce3 SRSENB: moved phy workers to lte worker pool 4 years ago
Andre Puschmann 07d2bc4fe8 change license header to agnostic version with hint to root LICENSE file 4 years ago
Francisco 66712023bb remove unneeded includes of full rrc asn1 lib 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
yagoda b90574975b refactoring asn1 eMBMS code, removing asn1 from PHY and MAC in eNodeB 4 years ago
Andre Puschmann 35373d1385 enb,ue: add cmdline arg to enable usage of default LTE sample rate
some RF boards might have issues with the sharp filters that are needed
for the reduced sample rate operation that we use by default.

This switch allows to use the default LTE sampling rates and
configure this at run-time, not compile time.
4 years ago
Francisco Paisana 510959b50f update nr asn1 files, and asn1 tests 4 years ago
Xavier Arteaga fa837925d0 Fix inter-frequency/intra-enb HO 4 years ago
Xavier Arteaga 58be68f856 Changed cell gain command from cell index to cell id 4 years ago
Xavier Arteaga b633c1abcd SRSENB: report MAC CSI measurements of all configured cells 4 years ago
faluco 5e8a4c898d
Bring back the circular array object. (#1712) 4 years ago
Andre Puschmann 87d4a5dc9c enb: use circular array to access TTI and HARQ based data structures
this makes use of the new circular array to remove the need
to apply the modulo operation when safely accessing the underlying
array.
4 years ago
Xavier Arteaga af8898943f SRSENB: implement console cell_gain command
SRSENB: fix 5GNR compilation

SRSENB: fix override methods
4 years ago
Xavier Arteaga 3aec23f7d8 SRSENB: calculate TA from PUCCH messages 4 years ago
Xavier Arteaga 029f36b449 srsLTE: added efficient integer resampler and srsue/srsenb integration 4 years ago
Xavier Arteaga 55a208ede8 SRSENB: added PRACH worker plot 4 years ago
Xavier Arteaga 443378adcb SRSENB: Add GUI window for every cell/carrier 4 years ago
Ismael Gomez dda91b14f7 Remove duplicate add_rnti() function since already done in set_config 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
Ismael Gomez e378a45db0 Reorganized priorities to avoid GW starve the CPU 4 years ago
Francisco Paisana 421d5f3852 merge next 4 years ago
Francisco Paisana 86adbfceae fix nr stack activation 4 years ago
Ismael Gomez e26653c87f Move tti_clock() call from worker_end to txrx class in enb 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
Francisco Paisana 27e5d98ef9 added vnf phy nr 4 years ago
Ismael Gomez 60b5fb9a74 Refactor variable name 4 years ago
Xavier Arteaga 6398cd841d SRSENB: PHY reports MAC all UL grants 4 years ago
Francisco Paisana 0b701022a3 added ue nr mac 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 65ef16c7f1 void sending rrc connection release as msg4 5 years ago
Xavier Arteaga 9d5c2d70df SRSENB: Fix PHY reconfiguration for HO
Minimal aesthetic change
5 years ago
Xavier Arteaga b11ffaee7e SRSENB: fix channel emulator for multiple channels 5 years ago
faluco dacf265d20 Fix typo. 5 years ago
faluco 7ff251f112 - Fixed warnings caught by Clang 9.0.0 5 years ago
Ismael Gomez 8c82203c74 Removed unused pregenerate option 5 years ago
Xavier Arteaga f200c01566 SRSENB: PUSCH EVM measure is optional and disabled by default 5 years ago
yagoda faf1cf6975 limiting prach search space to number of prachs set in sib2 5 years ago
Francisco Paisana 12b2ea7dde remove warnings for base classes with no virtual dtors 5 years ago
Francisco Paisana b8e6ba02e4 remove warnings related to unused vars and fwd declarations with trivial dtors 5 years ago
Xavier Arteaga d7e7399e7b srsENB: PHY configuration in two stages 5 years ago
Xavier Arteaga 77d5dedddc Fix LGTM warnings and recommendations 5 years ago
Xavier Arteaga 784bf81a1a Multiple fixes HARQ ACK/NACK feedback and CSI reporting for MIMO and CA 5 years ago
Ismael Gomez 9a264b62c4
Protect access to shared grants (#1117)
* Protect access to shared grants

* Set correct number of carriers for DL

* Fix previous issues

* Address comments
5 years ago
Ismael Gomez fd3d4a7874 Refactor thread_pool: use std::mutex and fix some hidden potential bugs 5 years ago
Ismael Gomez 73447972d8
Fix issue with simultaneous CQI and ACK/NACK transmission in CA (#1067)
* Fix memory corruption when phy calling mac scheduler and not yet initiated

* Do not drop CQI if collision with ACK/NACK and PUSCH

* Allocate CQI resources for SCell properly

* Use UE_PCELL_CC_IDX macro

* Protect ul_sched from being called if not yet started
5 years ago
Xavier Arteaga e832769ae6 Updated copyright 5 years ago
Xavier Arteaga 5af89513eb use double precission for frequency in srsue and srsenb 5 years ago
Xavier Arteaga 834a081c09 Add EPRE measurement to PUSCH decoder 5 years ago
Francisco Paisana 7548402632 change scell activation interface to use arrays. Added a method to the scheduler to get the current set of activated carriers 5 years ago
Xavier Arteaga 47b7c1b72b SRSENB: remove assert macros from phy_ue_db.cc 5 years ago
Andre Puschmann f2e1bfa699 refactor naming for s/p/cell structs and {enb,ue}_cc_idx 5 years ago
Ismael Gomez 4e12405fff
Remove radio_multi class and organize channels, ports and carrier buffers (#1019) 5 years ago
Xavier Arteaga da701cd82b SRSENB: Added PUSCH TA and EVM measurement. Some more PHY cleanup. 5 years ago
Pedro Alvarez bd3598f774 Moved srsEPC to the new S1AP library. Deleted liblte_s1ap.cc and liblte_s1ap.h. 5 years ago
Xavier Arteaga a61ff0b0fc SRSENB cleanup phy common 5 years ago
Xavier Arteaga cac2ee33b6 SRSENB: PHY uses tti_semaphore class instead of normal semaphores 5 years ago
Andre Puschmann c79e202fd9 fix typo 5 years ago
Andre Puschmann a8bbe551ac move thread class into srslte namespace to avoid ambiguity between std::thread 5 years ago
Xavier Arteaga 2a6f54e13f SRSENB: phy method cleanup and CLang tidy warning fixes 5 years ago
Xavier Arteaga f35ed14f76 SRSENB: refactored PHY common UE database 5 years ago
Xavier Arteaga 385102fa2d SRSENB: minor format, renaming and interface changes 5 years ago
Xavier Arteaga 231431f569 SRSENB: enabled CA PUCCH decode in eNb 5 years ago
Xavier Arteaga 40772eae19 SRSENB: UE PHY dedicated takes a flat configuration structure 5 years ago
Xavier Arteaga a6105a3020 SRSENB: made possible custom UL/DL frequencies for each carrier 5 years ago
Xavier Arteaga 604e61810e SRSENB: moved set tx/rx frequency to txrx class 5 years ago
Xavier Arteaga 31dffb785f SRSENB: fix segmentation fault 5 years ago
Xavier Arteaga 922481659b SRSENB: minor corrections 5 years ago
Xavier Arteaga b08c1f003e SRSENB: enabled multiple cells from rr.cfg 5 years ago
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
5 years ago
Francisco Paisana a18a7e307e moved all the parsing of the libconfig files to separate functions that can be called from individual tests. Created several stack layer dummy classes for testing. Extended the rrc_mobility test to check correctness of RRC HOPreparation struct 5 years ago
Paul Sutton b2e6ef772b Minor typo fix 5 years ago
Xavier Arteaga 2e1479e9d6 SRSENB: Added PHY CA PRACH workers 5 years ago
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
5 years ago