172 Commits (9d6385c84f013bf438779fe1a0e85d362f007021)

Author SHA1 Message Date
Ismael Gomez f83557b891 srsue,phy: use common pucch for msg3. Completed table for all pucch_common_idx values 3 years ago
Ismael Gomez 2bbeef6068 srsgnb,metrics: add ul_pucch_ni metric and refactor rssi/epre nomenclature. Fix bug in rsrp_avg computation in pucch 3 years ago
Ismael Gomez cf647b1fd5 srsenb,metrics: add PUSCH/PUCCH RSSI metrics. Add bearer DL total data metric for RLC UM 3 years ago
Xavier Arteaga f57cf0b195 PHY: Initial PUCCH default resource selection (hard-coded row index 11) 3 years ago
Joaquim Broquetas 520128162e
Add CFR to srsue LTE UL (#3865)
lte,phy: Add CFR to srsue LTE UL

This commit adds the configuration steps needed to enable
and configure the CFR module for the srsue's uplink signal.
Parsing of the CFR manual threshold has been streamlined.
3 years ago
Robert Falkenberg 3a73d84294 srsran_rf: support dynamic loading of RF plugins
This adds flexible plugin-like loading of the individual RF
implementations (zmq, uhd, soapy,...) as per availability at runtime.
Unlike before, the binary application is not terminated if the
dependencies of individual RF interfaces are not installed on the
executing system.  To do this, the plugins are not linked by the linker
at compile time, but opened at runtime via dlopen() and dropped in case
of failure due to missing dependencies.
3 years ago
Francisco Paisana e4a15c9c51 rrc,gnb: move non-phy fields out of phy_cell_nr_t 3 years ago
Joaquim Broquetas b2075673e5
Crest Factor Reduction feature for the phy layer (#3720)
* Add CFR module to the phy lib

* Add dynamic threshold with PAPR estimation

* Add a CFR unit test, CFR module improvements and refactoring.
Swap the gain normalization before the CFR.

* Add CFR config interface to srsenb

* Add CFR support to pdsch_enodeb

* Add DL PAPR measurement to eNB.

Co-authored-by: Cristian Balint <cristian.balint@gmail.com>

* Add test coverage to srsran_vec_gen_clip_env
3 years ago
Robert Falkenberg d3eca325f7 Add file-based RF device for rx from arbitrary FILE*
It comes with the following changes:

* Add RF frontend API function "srslte_rf_open_file()"
* Open file-based RF via explicit call of custom
  "rf_file_open_file()", instead of "srslte_rf_open_multi()"
  function pointer as for regular devices.
* Introduce device name "file"
* Introduce new SRSLTE_ERROR_RX_EOF error code
* ZMQ: make update_rates() static to resolve conflicts
3 years ago
Xavier Arteaga a74fdb84c9 Added SSB encode and decode from grid, plus unit test 3 years ago
dvdgrgrtt 73594cf704 Fix minor bug
SRS_API was used instead of SRSRAN_API. Did not seem to have major
consequences.
3 years ago
dvdgrgrtt 3ffefe5ba7 Use copyright as file header 3 years ago
dvdgrgrtt a69fb1d50f ch_awgn: Improve API
The API of functions srsran_ch_awgn_X was causing confusion between
noise variance and standard deviation. Also, in the complex-valued case,
the noise variance did not take into account the fact that the signal is
two-dimensional.

All uses of these functions are modified accordingly.
3 years ago
Xavier Arteaga 8694cc63ec Added SSB configuration conversion to string 3 years ago
Xavier Arteaga a19d68710c Fix successful related typos 3 years ago
Xavier Arteaga a5130673f6 More cell search development 3 years ago
Carlo Galiotto b359c7b728 sched,nr: add comments and rename variables
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 9be9bd659e sched,nr: add CQI to SE and SE to MCS mapping ...
for scheduler + add CQi reporting from PHY to scheduler

Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto 2040a88bf9 sched: add comments + rename variable
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto cd32f1385a sched,test: add test for CQI->MCS mapping fnc
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto a7255cfac6 sched: add fnc to map CQI to MCS
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Ismael Gomez 58ab8086ff Added multi gNb simulation and RF 3 years ago
Xavier Arteaga b1bcc1a8c0 Initial UE NR SA PHY classes 3 years ago
dvdgrgrtt bae6f13c89 Introduce function srsran_vec_sc_sum_fff
This function adds a float scalar to all elements of a float vector.
3 years ago
Fabian Eckermann d0c07fc86e Add packing of dci format 1A for pdcch orders. 3 years ago
Andre Puschmann b7f9dd5d75 phy_common_nr: add helper method to print coreset info to string 3 years ago
Francisco 0b8a6970f0 nr,gnb,rrc: fix ssb frequency derivation when coreset0 is active 3 years ago
Ismael Gomez 798e9b7a5e ue_dl: reference point for DMRS varies for SIB 3 years ago
Ismael Gomez 8a53a9d35c ssb_decode_test: Fix stack overflow pbch_msg buffer 3 years ago
faluco edf0926a2f Batch of LGTM fixes. 3 years ago
faluco dc31fb05a3 Fix ODR issue detected by ASAN in arch for the srsran_verbose global variable. 3 years ago
faluco fa8e8ddf1f Fix an ODR issue detected by ASAN in arch, where the global variable handler_registered was defined multiple times. 3 years ago
Xavier Arteaga 322f57a952
Initial real-time Tx gain setting (#2976)
* Make filename const in filesink

* Sine generation returns the next phase

* Avoid malloc/free in radio class

* Implement Tx gain in ZMQ

* Initial ratio RT gain test

* UHD: use timed Tx gain commands to align changes to subframes

* Minor improvement in test_radio_rt_gain

* Fix compilation

* Check RF gain thread id before joining

* Remove redundant zero initialization.

Co-authored-by: Fabian Eckermann <fabian@srs.io>
3 years ago
Xavier Arteaga ebab12403f
Asynchronous NR PHY configuration (#3527)
* Fix a race condition when accessing the NR PHY cfg by the RRC and phy workers.
Rework how the phy cfg is handled, now workers have their own copy that gets updated after a reconfig moving it out of the state class.

* Default initialize sf_len member in sf_worker for consistency.

* Asynchronous NR PHY configuration

* Fix compilation

* Corrected method override and fix unitialised value

* Added carrier equal comparison to avoid aligment byte padding comparison

Co-authored-by: faluco <borja.ferrer@softwareradiosystems.com>
3 years ago
Xavier Arteaga 95bf85b3d3 Reduced maximum number of CSI reports 3 years ago
Xavier Arteaga d9bdc3f83e Add CSI resource information and fix segmentation fault 3 years ago
Xavier Arteaga 8e5fe9018b Corrected LBRM functionality 3 years ago
Xavier Arteaga 9ecea014bd Added PUSCH DMRS minimum SNR 3 years ago
Xavier Arteaga 3c40cd2840 Improved NR PHY logging info 3 years ago
Xavier Arteaga a5f6aa9f31 Added CSI string in PDSCH and PUSCH decode 3 years ago
Xavier Arteaga 003c6e524c Added short NR CSI information 3 years ago
Alejandro Leal Conejos 1a64c6adad Enum fixes so clang 12 can build the repo 3 years ago
Xavier Arteaga 25bd0d6219 Added SSB pattern to/from string functions 3 years ago
Xavier Arteaga 1bdb1bb62d Store PUSCH CSI from PUSCH DMRS 3 years ago
Xavier Arteaga d5b34696b4 Sepparate CSI report configuration from quantification and integrate in nr_phy_test with assertions 3 years ago
Andre Puschmann 8bb06ff2c0 Added SSB in gNb PHY 3 years ago
Xavier Arteaga 3763d04578 implement helper function to calculate FFT size for a given sampling rate 3 years ago
Andre Puschmann 91e17337db Added SSB scaling configuration option 3 years ago
Xavier Arteaga 8f90ee847a Refactor carrier frequency from PHY and fix OFDM phase compensation 3 years ago
Xavier Arteaga fda35bf6a1 Initial OFDM carrier phase compensation 3 years ago