Commit Graph

1804 Commits

Author SHA1 Message Date
Codebot 38a520b3c2 Merge branch 'next' into agpl_next 2022-07-24 21:12:22 +00:00
Robert Falkenberg 7e7eceda15 ctest: Viterbi test skips 0dB for non AVX2 machines
The accuracy of the 8-bit implementation of the Viterbi decoder used on
non-AVX2 machines falls below the theoretical accuracy at 0dB.
2022-07-19 14:34:38 +02:00
Robert Falkenberg 06f2ab6d7c ctest: PDCCH test skips 100PRB for non AVX2 machines
The current 8-bit Viterbi decoder implementation for SSE (non-AVX2)
is not accurate enough to reliably decode all messages with a
code rate ~0.9 or higher, e.g. DCI format 2/2A messages in 100 PRB cell
at aggregation level 0.
2022-07-19 14:34:38 +02:00
Codebot 4d2b5b8eda Adding AGPL copyright to new files 2022-04-29 07:28:44 +00:00
Codebot 9211ad7d51 Merge branch 'next' into agpl_next 2022-04-29 07:28:41 +00:00
Andre Puschmann 70eaec21e2 all: fix uninitialized variables detected by coverity 2022-04-28 15:42:08 +02:00
Andre Puschmann cbc0b43621 lib,radio,rf: fix printf arguments 2022-04-27 09:28:06 +02:00
Codebot dd59dfac7d Adding AGPL copyright to new files 2022-04-26 08:28:18 +00:00
Codebot 123f766935 Merge branch 'next' into agpl_next 2022-04-26 08:28:16 +00:00
Andre Puschmann 8505523928 ue,ue_sync: fix CP setting for find and track objects
move setting of CP for find and track objects further down
after the respective objects have been resized and updated
there frame_len, fft_size, etc. members.

Doing this too early cause a segfault with div by zero
because the values were all zero
2022-04-22 14:42:45 +02:00
Andre Puschmann 319a185eba phy_common_test: fix test when compiled with USE_LTE_RATES 2022-04-22 11:55:59 +02:00
Andre Puschmann 68695078f0 phy_common: add basic test for sample rate for different bandwidths 2022-04-20 17:51:36 +02:00
Ismael Gomez f83557b891 srsue,phy: use common pucch for msg3. Completed table for all pucch_common_idx values 2022-03-29 14:30:14 +02:00
Ismael Gomez 65dbac0bd3 srsenb,metrics: use epre for snr computation instead of rsrp 2022-03-26 22:39:16 +01:00
Ismael Gomez 2bbeef6068 srsgnb,metrics: add ul_pucch_ni metric and refactor rssi/epre nomenclature. Fix bug in rsrp_avg computation in pucch 2022-03-26 22:39:16 +01:00
Ismael Gomez cf647b1fd5 srsenb,metrics: add PUSCH/PUCCH RSSI metrics. Add bearer DL total data metric for RLC UM 2022-03-26 22:39:16 +01:00
Robert Falkenberg a5c61418d5 lib,rf_imp: load rf plugins when loading this library
This fixes race of concurrently loading the same plugins
when srsran_rf_open_devname is called by multiple threads

Plugins are now loaded when srsran_rf is loaded (for
shared lib) or right before main() (for static lib)
2022-03-25 09:36:50 +01:00
Xavier Arteaga f57cf0b195 PHY: Initial PUCCH default resource selection (hard-coded row index 11) 2022-03-14 16:35:12 +01:00
Xavier Arteaga 99d2cd068f PHY: Initial PUCCH Format 1 frequency hopping 2022-03-14 16:35:12 +01:00
Robert Falkenberg 50ac1c6c0a cmake: flag install() of compiled targets as OPTIONAL
This enables `make install` for partial builds of selected targets,
which otherwise fails because the omitted targets are not present.
2022-03-09 11:28:12 +01:00
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.
2022-03-07 17:05:33 +01:00
Robert Falkenberg 7410182c64 srsran_rf: fix warning of mismatching expressions in if() and endif() 2022-03-07 08:53:02 +01:00
Robert Falkenberg 3daa43e732 srsran_rf: also build shared library when built without plugins 2022-03-04 14:02:42 +01:00
Robert Falkenberg e4d012388b phy,ctest: change anchor of relative paths used for test inputs
Use ${CMAKE_CURRENT_SOURCE_DIR} instead of ${CMAKE_HOME_DIRECTORY}
as anchor when specifying input files of tests.
Otherwise input files won't be found, when this project (srsRAN)
is not the root CMake project.
2022-03-03 12:52:42 +01:00
Robert Falkenberg e086479a7b srsran_rf: fix build without any active RF plugin 2022-02-22 14:29:27 +01:00
Robert Falkenberg 2dca581741 srsran_rf: only build each plugin when found AND enabled
Since [PLUGINNAME]_FOUND are cached variables, some plugins
were always built if they were found once, regardless if
the current value of ENABLE_[PLUGINNAME]
2022-02-22 14:29:27 +01:00
Codebot 81061fd545 Merge branch 'next' into agpl_next 2022-02-20 23:12:21 +01:00
Robert Falkenberg 2570c2ce77 srsran_rf: cosmetic changes 2022-02-18 15:11:23 +01:00
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.
2022-02-18 15:11:23 +01:00
Codebot 17291abdad Adding AGPL copyright to new files 2022-02-13 23:12:24 +01:00
Codebot 42cc7d5d1a Merge branch 'next' into agpl_next 2022-02-13 23:12:22 +01:00
Xavier Arteaga 8140e62a7f GNB-PHY: fix max PUSCH LDPC iterations 2022-02-13 10:46:42 +01:00
dvdgrgrtt 01ef334a24 lib,phy: Fix thresholds in Viterbi test
Under the NEON architecture, one of the BER thresholds was too tight.
2022-02-08 20:17:58 +01:00
Francisco Paisana e4a15c9c51 rrc,gnb: move non-phy fields out of phy_cell_nr_t 2022-02-08 18:21:07 +01:00
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
2022-02-04 10:35:35 +01:00
Robert Falkenberg 03bab82cd8 zmq: apply tx_gain to transmitted signal
This feature was temporary disabled in 497e183487
2022-02-01 17:16:40 +01:00
Robert Falkenberg 6b79116805 rf_file: close tx/rx files properly
Previously tests were failing on some machines, because
receiver was unable to receive the last few samples from file.
Reason: the transmitter did not close  the file properly, so
the last samples were (sometimes) not yet flushed to disk.
2022-02-01 10:47:51 +01:00
Robert Falkenberg c26f2b2041 rf_file: fix check for number of channels and cleanup after test 2022-02-01 10:47:51 +01:00
Robert Falkenberg f3d144dd59 filerf: add tx, multi-channel, open via device string and test
This commits extends the file-based RF device as follows:

* open device via device string
* add tx to file
* add multi-channel support (multiple files)
* add rf_file_test.c to for testing
2022-02-01 10:47:51 +01:00
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
2022-02-01 10:47:51 +01:00
Xavier Arteaga a74fdb84c9 Added SSB encode and decode from grid, plus unit test 2022-02-01 09:44:13 +01:00
Codebot 088f69da81 Adding AGPL copyright to new files 2022-01-30 23:12:51 +01:00
Codebot fb75a5ef0e Merge branch 'next' into agpl_next 2022-01-30 23:12:49 +01:00
dvdgrgrtt a630889d44 Fix AWGN in NR PUSCH performance test
Fix needed after modifying AWGN API.
2022-01-28 08:15:36 +01:00
dvdgrgrtt 3e85c3bed0 Improve coding style 2022-01-28 08:15:36 +01:00
dvdgrgrtt 69a7519cb7 Modify pusch_nr_bler_test user interface
The maximum number of simulated transport blocks is now a CLI parameter.
2022-01-28 08:15:36 +01:00
dvdgrgrtt b00b260605 Use copyright as file header 2022-01-28 08:15:36 +01:00
dvdgrgrtt bb767814fa Fix minor typo 2022-01-28 08:15:36 +01:00
dvdgrgrtt 442f95ee8b Document PUSCH NR BLER test 2022-01-28 08:15:36 +01:00
dvdgrgrtt 63899ef4bc Improve PUSCH NR BLER test output
When full BLER is enabled, the code also outputs false alarm and missed
detection probabilities.
2022-01-28 08:15:36 +01:00