Pedro Alvarez
e6f42331ba
lib,rlc_am_nr: fix race condition in handle data PDU. This was causing SDUs being removed from the rx_window, while the status report was geing generated.
3 years ago
Robert Falkenberg
fbdbc81bdd
lib,pdcp: fix modulus for SN increments
3 years ago
Robert Falkenberg
79e8f7625e
lib,rlc_am_nr: fix log msg for AM NR PDU header
3 years ago
Robert Falkenberg
bd6e306c94
lib,rlc_am_nr: extend unit tests for 18-bit SN
3 years ago
Robert Falkenberg
7e13cd0712
lib,rlc_am_nr: rename get_tx_window_size() to get_tx_window_utilization()
3 years ago
Robert Falkenberg
329f3e519b
lib,rlc_am_nr: reset do_status flag after sending status PDU
...
and extend unit test to fail when redundant status PDUs exist.
3 years ago
Pedro Alvarez
12f440145d
lib,rlc_am_nr: changed build_retx_pdu_without_segmentation to pass retx
...
info by copy. This is to avoid accidently using retx info by reference
after pop'ing the retx from the queue.
3 years ago
Pedro Alvarez
c023dba175
lib,rlc_am_nr: cleaned up some test names and some comments.
3 years ago
Pedro Alvarez
b4814bfdc1
lib,rlc_am_nr: added test for polling bit set when retx queue is empty. Fixed lost PDU test now that we correctly set the polling bit.
3 years ago
Pedro Alvarez
47aea19bd3
lib,rlc_am_nr: added test for poll setting in RETXes
3 years ago
Pedro Alvarez
1d1e6dd832
lib,rlc_am_nr: added pollBYTE support and a unit test for it
3 years ago
Pedro Alvarez
eaa8fff6a0
lib,rlc_am_nr: Passing bool to get_pdu_poll() to differentiate the
...
behaviour between RETX and non-RETX PDUs.
3 years ago
Robert Falkenberg
b52a102021
lib,rlc_am_nr: extend unit tests for 18-bit SNs
3 years ago
Robert Falkenberg
5bb6cdec1e
lib,rlc_am_nr: use std:vector for nacks in rlc_am_nr_status_pdu_t
...
- Also create tx_status a member to avoid frequent allocations
for each created PDU.
- Remove unused member nack_range from rlc_am_nr_status_pdu_t.
3 years ago
Robert Falkenberg
0cf052e31d
lib,rlc_am_nr: replace hard-coded WINDOWS_SIZE
3 years ago
Robert Falkenberg
80e23624f8
lib,rlc_am_nr: extract function am_window_size()
3 years ago
Robert Falkenberg
717132e0c3
lib,rlc_am_nr: fix access of unconfigured entity
3 years ago
Robert Falkenberg
47c1845cdc
lib,rlc_am_nr: add pdu_retx_queue_base, rlc_ringbuffer_base as interfaces
...
that are independent from templated capacity.
3 years ago
Robert Falkenberg
11ac8c2529
lib,rlc_am_nr: add support for 18-bit SNs
...
and first bunch of corresponding unit tests
3 years ago
Xavier Arteaga
f57cf0b195
PHY: Initial PUCCH default resource selection (hard-coded row index 11)
3 years ago
Xavier Arteaga
99d2cd068f
PHY: Initial PUCCH Format 1 frequency hopping
3 years ago
Pedro Alvarez
bb9eaf4390
gnb,ngap: Added some comments to ngap.cc to make it easier to navigate
...
the file. Re-ordered NGAP UE procedures have the same order as in the
standard.
3 years ago
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.
3 years ago
Robert Falkenberg
b6d93577a0
rlc, nr: replace so_end by segment_length
3 years ago
Robert Falkenberg
bb7339910f
rlc: separate types of rlc_amd_retx_t for LTE and NR
3 years ago
Robert Falkenberg
4886dc8340
rlc, nr: NACK's so_end shall point to last missing byte
...
and not to first byte received again.
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
7410182c64
srsran_rf: fix warning of mismatching expressions in if() and endif()
3 years ago
Robert Falkenberg
3daa43e732
srsran_rf: also build shared library when built without plugins
3 years ago
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.
3 years ago
Robert Falkenberg
60c3d79f47
rlc, nr: complete packing of status PDUs with 18bit SNs
3 years ago
Robert Falkenberg
f7515e98cf
rlc, nr: add pack/unpack of nack_range in status PDUs
3 years ago
Robert Falkenberg
b55f8ea624
rlc, nr: cosmetic changes
3 years ago
Robert Falkenberg
0fb6420e8b
rlc, nr: avoid multi increments of SDU's retx_count within one status message
3 years ago
Robert Falkenberg
511ad9ed25
rlc, nr: Increment retx_count for segments
3 years ago
Robert Falkenberg
034aa6a6d4
rlc, nr: inform upper layer when max retransmissions is exceeded
3 years ago
Pedro Alvarez
0c0642c289
lib,rlc_stress_test: changed global pcap handler from .h to .cc. Deleted
...
unecessary #define
3 years ago
Pedro Alvarez
7bcec48e19
lib,rlc_stress_test: fixed issue in making log_hex_limit configurable.
3 years ago
Pedro Alvarez
431ccb2754
lib,rlc_am_nr: Cleaned up rlc_stress test. Split test into .cc and .h
3 years ago
Pedro Alvarez
35146bcb71
lib,rlc_am_nr: fix shadowed variable in RLC RETXes
3 years ago
Robert Falkenberg
c75b8d1708
rlc, nr: increment sequence numbers using modulus 'mod_nr'
3 years ago
Robert Falkenberg
8f6e3996d3
rlc, nr: add discard_test for AM
3 years ago
Robert Falkenberg
42a8e957d4
rlc, nr: fix rlc_am_nr_tx::has_data()
3 years ago
Robert Falkenberg
95ebc06ec1
rlc: implement SDU discard for AM+UM in NR+LTE
...
- Implemented in common base classes
- Added locking
3 years ago
Robert Falkenberg
9b44d13471
rlc, nr: notify PDCP about fully acked SDUs
3 years ago
Pedro Alvarez
e6d976d115
lib,rlc_am_nr: fixed stack smashing bug that happened when too many NACKs were present in the status report
3 years ago
Pedro Alvarez
ddbd857867
lib,rlc_am_nr: make sure that the RB name is logged when logging the header and status PDUs in NR
3 years ago
Pedro Alvarez
b399724717
lib,rlc_am_nr: fix wrong if checking if the grant was too small to generate a segment
3 years ago
Robert Falkenberg
e086479a7b
srsran_rf: fix build without any active RF plugin
3 years ago
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]
3 years ago
Robert Falkenberg
2570c2ce77
srsran_rf: cosmetic changes
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
Andre Puschmann
acecb1c303
emergency_handlers: increase max handlers to 256
...
in the ttcn3_dut application many "virtuaL" UE instances are created and
destroyed when executing the tests.
With the previous limit of 12 handlers the application stopped after
a few tests. With the limit raised to 256 we should be able to run
all white_listed TTCN3 tests for the UE without problems.
This fixes #3886
3 years ago
Bedran Karakoc
28493ec553
lib,nas_5g: Remove whitespaces in strings
3 years ago
Bedran Karakoc
767feddd73
lib,nas_5g: Implement to_string() functionality for options
3 years ago
Alejandro Leal
65519eaf3d
Fixes the comparison. uint8_t was promoted to int.
3 years ago
Pedro Alvarez
2156c319d2
lib,rlc_am_nr: temporarily disable RLC AM NR stress test.
3 years ago
Pedro Alvarez
9205ede8c1
lib,rlc_am_nr: enabled RLC AM NR stress tests
3 years ago
Pedro Alvarez
c8d15135c6
lib,rlc_am_nr: addressing reveier comments:
...
* made some methods const
* changed from TESTASSERT to TESTASSERT_EQ
* fix up comment
* removed superfulous if
* used typedef for list of segments received
* added unit test for is_retx_required()
* added unit test for malformed status PDU
3 years ago
Pedro Alvarez
c47be649f4
lib,rlc_am_nr: added assert to double check nof_bytes before memcopying into the payload on build_retx_pdu_without_segmentation()
3 years ago
Pedro Alvarez
871142b722
lib,rlc_am_nr: fix up the last metric checks in the retx_segment_test()
3 years ago
Pedro Alvarez
634c9ea3af
lib,rlc_am_nr: starting to order segments to be able to receive them out-of-order
3 years ago
Pedro Alvarez
3b9ad84bda
lib,rlc_am_nr: fix checking some statistics in unit test
3 years ago
Pedro Alvarez
832d650574
lib,rlc_am_nr: remove unused variables. Fixed up some comments.
3 years ago
Pedro Alvarez
9bb3b1f18f
lib,rlc_am_nr: remove unused code after re-factor
3 years ago
Pedro Alvarez
4bbbc8ffde
lib,rlc_am_nr: fixed incorrectly adding to many segments when receiving a status report with an SO.
3 years ago
Pedro Alvarez
5e8b7b5ebe
lib,rlc_am_nr: re-factored code for retx'ing with and without segmentation.
3 years ago
Pedro Alvarez
8c53c74c86
lib,rlc_am_nr: fix ptr increment when there is no SO when writting status report without SO.
3 years ago
Pedro Alvarez
525d2db454
lib,rlc_am_nr: re-enable all tests
3 years ago
Pedro Alvarez
b13d0ca84a
lib,rlc_am_nr: fixed generation of status report when SOs are present. Starting to test retx of segments.
3 years ago
Pedro Alvarez
876c45c534
lib,rlc_am_nr: added ability to pack/unpack SO_start and SO_end to rlc am nr NACKs. Added unit test for this feature.
3 years ago
Pedro Alvarez
047831e178
lib,rlc_am_nr: fixup compilation of rlc_am_nr_pdu_test when saving pcaps
3 years ago
Pedro Alvarez
12e530a800
lib,rlc_am_nr: fix generation of status report when NACKs of lost SDU segments are present.
3 years ago
Pedro Alvarez
7206517846
lib,rlc_am_nr: starting to add unit test for retx'ing segments. Fixed issue in updating tx_next when segmenting the SDU.
3 years ago
Pedro Alvarez
801eddf899
lib,rlc_am_nr: fix up test regarding retx segmentation
3 years ago
Pedro Alvarez
38e4c47f34
lib,rlc_am_nr: added current SO to keep track of the SO for the next RETX.
3 years ago
Pedro Alvarez
5fa72b2b3d
lib,rlc_am_nr: fix creation of retx segement from existing segment.
3 years ago
Pedro Alvarez
65d5df8b6e
lib,rlc_am_nr: Continue to add functionality to provide segments of retx'es. Started to add function to re-segment already existing SDU segment
3 years ago
Pedro Alvarez
e4a72de342
lib,rlc_am_nr: refactored build_pdu helpers to receive the payload pointer for consistency. Added function to segment retx. Added some comments to build PDU helper functions.
3 years ago
Pedro Alvarez
b1a33a07a1
lib,rlc_am_nr: starting to add test for segmenting retx. Changed sdu under segmentation to only hold the SN. The actual SDU already exists in the pdu stored in the tx_window.
3 years ago
Francisco
581a99c616
nr,gnb: use memory pool to allocate scheduler UEs
3 years ago
Francisco
a2174a5714
Fix type storage copy and move assignment function helper
...
Previously, in the case both the lhs and rhs optionals were present, the copy/move assignments were erroneously destroying the lhs object.
3 years ago
Xavier Arteaga
8140e62a7f
GNB-PHY: fix max PUSCH LDPC iterations
3 years ago
faluco
c9c2d6982f
Implement a function to remove emergency handlers when a signal is raised.
...
Make PCAP handlers deregister from this list when they are destructed. This avoid the signal handler calling destructed objects under very rare circumstances.
3 years ago
Bedran Karakoc
83868fd2d2
lib,nas_5g: Implement to_string() for 5GSM Cause
3 years ago
dvdgrgrtt
01ef334a24
lib,phy: Fix thresholds in Viterbi test
...
Under the NEON architecture, one of the BER thresholds was too tight.
3 years ago
Francisco Paisana
e4a15c9c51
rrc,gnb: move non-phy fields out of phy_cell_nr_t
3 years ago
Francisco Paisana
e8902c785f
rrc,gnb: remove srsran_prach_cfg_t from gnb rrc config struct
3 years ago
Andre Puschmann
21c3a448b7
mac_sch_pdu_nr: fix UL-CCCH packing
...
fix MAC PDU packing issue for UL-CCCH that uses
only 6 B SDU. If the SDU fits inside 6 B, the LCID
for Msg3 should be set to be CCCH48 instead of CCCH64.
3 years ago
Francisco Paisana
c0dda2958c
rrc,gnb: fix search space NSA config
3 years ago
Francisco Paisana
532a4b54e7
rrc,gnb: remove phy flat pdcch cfg struct from rrc nr cfg
3 years ago
Francisco Paisana
88a95e8e57
rrc,gnb: remove uneeded flat phy cfg fields from rrc_nr_cfg_t
3 years ago
Andre Puschmann
26f3f6109b
gw,pdcp,rlc,mac: log rate metrics in debug mode
...
reduce periodic log spam for L2 in info level
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
Carlo Galiotto
91502c87db
rrc-nr: rename rrc_util function and fix indexing
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
e88a4fbe18
rrc-nr: add sr_resources RRCSetup cnf conversion
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Pedro Alvarez
986e0fc273
gnb,rlc_am_nr: fix generation of default AM NR configs
3 years ago
Andre Puschmann
10aabe8763
rrc_nr_utils: set search space type for RA to type1
3 years ago
Robert Falkenberg
03bab82cd8
zmq: apply tx_gain to transmitted signal
...
This feature was temporary disabled in 497e183487
3 years ago
Francisco
425b956ef1
revert hacky asn1 compilation fix related with default dtors
3 years ago
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.
3 years ago
Robert Falkenberg
c26f2b2041
rf_file: fix check for number of channels and cleanup after test
3 years ago
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
3 years ago
Robert Falkenberg
57f84d4ca4
Radio: add support for file-based RF device abstraction
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
Carlo Galiotto
9f25a91282
asn1: fix clang compiling issue #3827
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Xavier Arteaga
a74fdb84c9
Added SSB encode and decode from grid, plus unit test
3 years ago
Bedran Karakoc
37280307b5
lib,nas_5g: Fix unpacking/packing for timezone IEs
3 years ago
Bedran Karakoc
cf191d8306
lib,nas_5g: Fix packing/unpacking error for ipv4 addresses
3 years ago
dvdgrgrtt
a630889d44
Fix AWGN in NR PUSCH performance test
...
Fix needed after modifying AWGN API.
3 years ago
dvdgrgrtt
3e85c3bed0
Improve coding style
3 years ago
dvdgrgrtt
69a7519cb7
Modify pusch_nr_bler_test user interface
...
The maximum number of simulated transport blocks is now a CLI parameter.
3 years ago
dvdgrgrtt
b00b260605
Use copyright as file header
3 years ago
dvdgrgrtt
bb767814fa
Fix minor typo
3 years ago
dvdgrgrtt
442f95ee8b
Document PUSCH NR BLER 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
63899ef4bc
Improve PUSCH NR BLER test output
...
When full BLER is enabled, the code also outputs false alarm and missed
detection probabilities.
3 years ago
dvdgrgrtt
6b0a3669cf
Provide PUSCH BLER test
...
The new test measures BLER and received throughput for the PUSCH. For
now, only AWGN channel and perfect equalization are considered.
3 years ago
dvdgrgrtt
3fad800ef6
Fix various typos and minor issues
...
Some typos in the comments/error messages.
A couple of minor bugs (should not have any impact in the performance).
3 years ago
dvdgrgrtt
1390eeea88
sch_nr: Fix CRC-related bug
...
CRC failure was not reported correctly when the TB consists of a single
block.
3 years ago
Andre Puschmann
c3596cc684
ue_nas_interfaces.h: set default APN type to ipv4
3 years ago
Robert Falkenberg
cceae68958
zmq: extend test to 4 trx, w/wo decimation
3 years ago
Robert Falkenberg
b4bbbc902a
zmq: fix scaling of samples when decimation is applied
3 years ago
Xavier Arteaga
fbf178e958
Decrease PBCH-DMRS threshold to pass test
3 years ago
dvdgrgrtt
cac62e01e0
Improve coding style
3 years ago
dvdgrgrtt
2df371fdd6
Provide PRACH NR performance test
3 years ago
Xavier Arteaga
e3f8b75652
SSB search uses correlation power to normalise
3 years ago
Xavier Arteaga
569f5c1a6f
Protect input buffer SSB demodulation in search/find and skip PBCH decoding if PBCH DMRS correlation does not reach threshold
3 years ago
Xavier Arteaga
aea7a11e53
Fix SKIQ compilation with gcc-11
3 years ago
Carlo Galiotto
d5859fb60b
rrc-nr: remove comments/dead code
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
fe6500bd55
rrc: copy PUCCH cnf from RRCSetup to PHY structs
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
362abfe3c9
rrc-nr: add conversion for pucch_cfg
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
a53e7c9673
TMP WIP
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Carlo Galiotto
49e01584ac
rrc-nr: fix rebase issue
...
Signed-off-by: Carlo Galiotto <carlo@srs.io>
3 years ago
Francisco Paisana
378e14826e
rrc,nr: fix conversion of csi meas cfg to phy cfg flat struct
3 years ago
Xavier Arteaga
256bba0fd3
Handle NAN in NR PBCH reception and add unit test case
3 years ago
Bedran Karakoc
70084cf9cc
Added unit test for K_gnb derivation
3 years ago
Bedran Karakoc
efa13290a9
ue,rrc_nr,nas_5g: Introduce NR AS Key derivation and update context handling in 5G NAS
3 years ago
Bedran Karakoc
a8eaf1cdd8
ue,nas_5g: Add get_k_amf() helper function and security context flag
3 years ago
Andre Puschmann
44a00feccb
pdcp_entity_base: fix log typo
3 years ago
Xavier Arteaga
a9591f1d45
Avoid poping queue if empty
3 years ago
Fabian Eckermann
12cc7cb4d7
Add support for RRC redirect.
3 years ago
Francisco
52106be3d5
sched,nr: remove phy cfg types from sched_nr_cell_cfg_t
3 years ago
Francisco
b25814de27
sched,nr: fix failing sched test due to misconfiguration
3 years ago
Francisco
7ef206e15b
sched,rrc,nr: remove need to pass sched ue cfg object to rrc during ra procedure
3 years ago
Francisco
7f200ac7f7
sched,nr: pass asn1 TDD configuration to scheduler as defined in ORAN
3 years ago
Xavier Arteaga
66f6c11561
Fix concurrent issues in dummy radio used in nr_phy_test
3 years ago
Xavier Arteaga
8a7a4a588d
Fix concurrent access to decimator busy flag
3 years ago
Andre Puschmann
aaceb029eb
rlc_am_lte: fix wrong fmt string
3 years ago
dvdgrgrtt
c9beba6f36
Use srsran_convert_dB_to_power
...
Instead of computing power using the power function.
3 years ago