3485 Commits (372a543bf5f2dddcec46c74c2022aef1d4ccdb6b)

Author SHA1 Message Date
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 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 634c9ea3af lib,rlc_am_nr: starting to order segments to be able to receive them out-of-order 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 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 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 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
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
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
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 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
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 efa13290a9 ue,rrc_nr,nas_5g: Introduce NR AS Key derivation and update context handling in 5G NAS 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 7f200ac7f7 sched,nr: pass asn1 TDD configuration to scheduler as defined in ORAN 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
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
Andre Puschmann 92a13294b2 rrc_nr_utils: set RAT for PDCP config for SRB to NR 3 years ago
Andre Puschmann ee8d334aaa phy,nr: logging fix for PDCCH 3 years ago
Andre Puschmann 02cdc66302 security: fix k_gnb* derivation for 5G
add FC code for gNB KDF and fix ARFCN encoding (can be more than 2 bytes)
3 years ago
Pedro Alvarez 9bd368e0a9 lib,rlc: changed back status and header logging helpers to log directly. Make sure RB name is automatically logged. 3 years ago
Pedro Alvarez 00a60dbb97 lib,rlc: removed duplicate rb_name in logs of rlc_am_base and rlc_tm 3 years ago
Pedro Alvarez 87607a4ea7 lib,rlc: changed RLC UM NR to use new logging macros 3 years ago
Pedro Alvarez b53da22eb1 lib,rlc: changed return of string helper functions from char* to std::string to avoid UB 3 years ago
Pedro Alvarez b46c5423f0 lib,rlc: make sure TM rb name is initialized. changed rlc_um_lte to use new logging macros 3 years ago
Pedro Alvarez e157806db2 lib,rlc_am_lte: removed RB_NAME macro. changed status and data pdu logging helpers to return C strings. Using new logging macros to make sure that RB name is included when logging status and amd pdus. 3 years ago
Pedro Alvarez 0f4b64f13f lib,rlc: added macros for hex logging that automatically add the rb_name. changed logging to use new macros in multiple places. 3 years ago
Pedro Alvarez b687072815 lib,rlc: added rb_name and logger to rlc_common. Added macros to help making sure bearer name is always included to the log to rlc_common.h. Started using said macros in TM, UM and AM entities. 3 years ago
Alejandro Leal 74d847efe9 Removed unneeded libraries in the test as srsran_phy already includes
srsran_phy_common
3 years ago
Francisco 3c25b6cb24 asn1: remove presence flag for lists and octet strings, as the size of the latter implicitly tell if the asn1 field is present 3 years ago
Xavier Arteaga 65255ecb4e Unpack MIB to update MIB 3 years ago
Xavier Arteaga c88774a3f4 Fix UE SYNC NR CFO feedback and periodicity 3 years ago
Xavier Arteaga 8694cc63ec Added SSB configuration conversion to string 3 years ago
sauka d5040540fb use NR type1 RIV function helper 3 years ago
sauka 9b24867bc4 set SCH configuration only for non SI-RNTI case. Fix formatting 3 years ago
sauka 870c3ab8c5 update TV, enable ue_dl_nr_file_test for c-rnti case
Cell:
nr_arfcn=368500 ul_nr_arfcn=349500 pci=500 mode=FDD rat=nr n_rb_dl=52 n_rb_ul=52 dl_mu=0 ul_mu=0 ssb_mu=0 ssb_arfcn=368410 ssb_prb=13:21 k_ssb=6 coreset0_prb=1:48 coreset0_idx=6

coreset1:
11:49:15.018 [PHY] DL 0001 01 0100   718.1 PDCCH: ss_id=1 cce_index=0 al=4 dci=1_0
	rb_alloc=0x5f
	time_domain_rsc=0
	vrb_to_prb_map=0
	mcs=10
	ndi=1
	rv_idx=0
	harq_process=0
	dai=0
	tpc_command=1
	pucch_rsc=0
	harq_feedback_timing=3
	dci_len=39
11:49:15.018 [PHY] DL 0001 01 0100   718.1 PDSCH: harq=0 prb=1:48 symb=1:13 k1=4 CW0: tb_len=960 mod=4 rv_idx=0 cr=0.33 retx=0
        0000:  43 03 bd c0 05 00 59 09  47 7e 29 e5 43 3d b6 2b  C.....Y.G~).C=.+
        0010:  e3 ed a1 43 3a 53 f2 23  d4 8b 23 a0 c9 5d ec 23  ...C:S.#..#..].#
        0020:  47 80 2b 64 0d f6 2a 11  bc 76 ed 0c 72 6a 7e c5  G.+d..*..v..rj~.
        0030:  4c 14 80 56 86 69 bf 27  60 9d 0b fd 23 22 4b d1  L..V.i.'`...#"K.
        0040:  45 a4 01 b0 50 f7 02 e2  3a ac 16 b3 b3 b8 e0 09  E...P...:.......
        ...
        0380:  f2 fa 54 f3 4e 3f 14 54  38 73 ab 4e bb d7 41 76  ..T.N?.T8s.N..Av
        0390:  47 19 31 b0 86 fb 7f 9f  1d 93 91 69 66 b8 ae 91  G.1........if...
        03a0:  8f 1e 4b 03 9e 7d 03 ae  93 77 a8 81 0a 8f 44 8b  ..K..}...w....D.
        03b0:  87 cf 76 59 11 1f 31 7d  aa 01 e3 9c 26 07 33 57  ..vY..1}....&.3W
3 years ago
sauka b9fb65e301 extend ue_dl_nr_filetest to specify PDSCH allocation in time-domain, add option to enable interleaved pdcch 3 years ago
Ismael Gomez e1313cce74 sidekiq: update cur_rx_gain_db inside card sub-module 3 years ago
Ismael Gomez fd2eef132d sidekiq: configure RFIC rx_gain with user values instead of using calibrated rx_gain offsets 3 years ago
Xavier Arteaga a19d68710c Fix successful related typos 3 years ago
Xavier Arteaga c494a84738 Fix ue_sync_nr_test 3 years ago
Xavier Arteaga 5e8e4b90c1 Fix memory access in SSB search and measure 3 years ago
Xavier Arteaga d6ee282796 Created dummy radio and moved UE dummy PHY into real UE SA PHY 3 years ago
Xavier Arteaga 9e4e75bfda Parametrize UE SYNC NR test 3 years ago
Xavier Arteaga 5b744bb6c5 Increase SSB detection frequency range 3 years ago
Xavier Arteaga d4fd4c8350 Fix deadlock 3 years ago
Xavier Arteaga a5130673f6 More cell search development 3 years ago
Francisco b616207ef0 asn1: remove extra copy and template instantiation in unpacking of IE Containers 3 years ago
Francisco 26f173e582 asn1: use template to generate ngap/s1ap elementary procedure option and reduce code duplication 3 years ago
Francisco Paisana d5f5df3e7b asn1: place common asn1 type for empty ie object sets in asn1_utils.h 3 years ago
Francisco Paisana 61e225d762 asn1: move setup_release_c from rrc_nr_asn1 to asn1_utils and improved interface 3 years ago
Francisco Paisana e2b8a80f87 asn1: move all ie protocol container types to asn1_tuils to be reused in different layers 3 years ago
Francisco Paisana 2d2a5bee03 asn1: update procotol_ie_single_container interface to use -> operator instead of .value to access container content 3 years ago
Francisco Paisana 6b181e7a94 asn1: move protocol_ie_single_container_s to asn1_utils, so it can be used by ngap, s1ap, and other layers 3 years ago
Francisco Paisana c8f7976014 asn1: use byte buffer pool for temporary variable length field generation instead of stack array 3 years ago
yagoda 615ae98a9d fixing regression bug - adding bsr_callback to mrb 3 years ago
Pedro Alvarez b0581ae5ae lib,rlc_am_nr: removed ugly hack to get last element of list. Renamed current_sdu to sdu_under_segmentation. 3 years ago
Pedro Alvarez e9a47ef7b1 lib,rlc_am_nr: added assert to make sure we never write over nof_bytes 3 years ago
Pedro Alvarez 33735852a4 lib,rlc_am_nr: remove unecessary ternary operator. 3 years ago
Pedro Alvarez bd8c7f7c57 lib,rlc_am_nr: added max_hdr and min_hdr variables, that are configured based on SN length. Replaced magic numbers with said variables. 3 years ago
Pedro Alvarez 19268281c8 lib,rlc_am_nr: reduced logging level of some messages to debug. 3 years ago
Pedro Alvarez 5532c514ba lib,rlc_am_nr: added logging macros to make sure that the RB name is allways logged. 3 years ago
Pedro Alvarez f60259afb9 lib,rlc_am_nr: fixed multiple typos and deleted useless comments 3 years ago
Pedro Alvarez 9e6b852834 lib,rlc_am_nr: Added handle_full_sdu() and handle_segment_sdu() functions. Reduced duplicate code in handling SDU segments. 3 years ago
Pedro Alvarez 8afea13d9a lib,rlc_am_nr: added initial logic to support receiving PDU segments. 3 years ago
Pedro Alvarez aae1d9ad10 lib,rlc_am_nr: changed rlc_amd_nr_tx_sdu to use std::list to store
segment infomation. Segment infomation incluses, SO and payload length.
3 years ago
Pedro Alvarez 76c33c78a9 lib,rlc_am_nr: starting to add test for segmentation. Starting to add functions for creating new segments and segment continuation. 3 years ago
Pedro Alvarez f544cc7f7e lib,rlc_am_nr: fixed issue introduced with the changes of the header packing. 3 years ago
Pedro Alvarez 3e5b064a08 lib,rlc_am_nr: starting to add build_sdu_segment() function.
Also adding write_header function that receives as argument uint8_t* so
we can write the header straight to the payload.
3 years ago
Pedro Alvarez 72ba7503e5 lib,rlc_am_nr: make max tx queue size configurable. 3 years ago
Carlo Galiotto d7e4018adf sched: remove unused function
Signed-off-by: Carlo Galiotto <carlo@srs.io>
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 0f92869156 rrc,sched: add csi-MeasConfig setup in RRC
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
Francisco Paisana 40138c7125 changed namespace of asn1 ngap from 'ngap_nr' to simply 'ngap' 3 years ago
Ismael Gomez 2d31e11144 ue,lte: update rx_gain_offset more frequently. Avoid calling UHD driver when getting rx_gain 3 years ago
Ismael Gomez 70d6e596f7 nr: add RAR ue_dl_nr_file test 3 years ago
Merlin Chlosta c967b688ff emergency handler for NAS PCAP to close file
Previously NAS PCAP wasn't closed/fflushed on
unclean exit, resulting in missing or corrupted PCAP.
3 years ago
Matan Perelman 5302f1b23c Sync: Fix incorrect log line 3 years ago
Robert Falkenberg 767d5390f9 benchmark_radio: don't join plot_thread if not requested 3 years ago
Francisco 632f2dbddd nr,gnb,sched: changed pdsch_allocator interface and extended its respective unit tests 3 years ago
joaquim-SRS 213769fa3d Fix stringop overflow error 3 years ago
Fabian Eckermann affdacd9b4 Add decoding of sib1. 3 years ago
Fabian Eckermann 361054da12 Clarify error message. 3 years ago
Andre Puschmann 04d3e516af awgn_channel_test: fix memleak 3 years ago
Francisco c3d682bba8 nr,gnb,sched: cache ue phy dci_cfg to avoid computing it at every slot 3 years ago
Andre Puschmann fee0351dd3 Revert "Modify PUSCH power normalization"
This reverts commit a4b86e5a0a
which causes low UL throughput against Amarisoft (max MCS not achieved over RF).
See issue #3723.

We need to investigate this again and revert the revert.
3 years ago
Pedro Alvarez 57fc2470ad lib,rlc_am_lte: added some debug logging to t-PollRetranmission expiry and re-arming. 3 years ago
Pedro Alvarez ee4bf85209 lib,rlc_am_lte: check segment's polling requirements after updating the RETX queue. This makes sure that if the RETX and TX queues are empty after the last segment, polling is requested and the t-PollRetransmission is restarted 3 years ago
Pedro Alvarez b425316936 lib,rlc_am_nr: fixed tx_mod_base_nr(). Added unit test for inside_tx_window(). 3 years ago
Pedro Alvarez ab8577ff43 lib,rlc_am_nr: switched back to unsigned rx_mod_base. Removed if that is always true. 3 years ago
Pedro Alvarez fea7828d3e lib,rlc_am_nr: added struct to hold state variables. This is consistent
with TX and makes it easier to make getter/setters.
3 years ago
Pedro Alvarez bca9ef2454 lib,rlc_am_nr: made mod_nr configurable 3 years ago
Pedro Alvarez 665aea599c lib,rlc_am_nr: made sure that the return of rx_mod_base and tx_mod_base is signed by changing from a macro to an class method. 3 years ago
Pedro Alvarez 4b69af7ca2 lib,rlc_am_nr: possible fix for ubuntu 16.04 compilation warning 3 years ago
Ismael Gomez 9f1a1c297c
Merge pull request #3710 from softwareradiosystems/feature_nr_sa_igm
Initial version of UE NR SA
3 years ago
Ismael Gomez 3c929ed24c ue,sa: Sends PRACH and receives RAR, then Msg4, resolves contention resolution and pushes ConnectionSetup to RRC 3 years ago
AlaiaL c2fd340cd4
build: building srsran_rf as shared library too
* Created shared library for srsran_rf
* Using an object to build static and shared library.
* Remove the instalation of the srsran_rf library
* Renaming library to srsran_rf_shared so the name becames clearer
3 years ago
Andre Puschmann 118a2a3bc2 awgn_channel_test: disable strict check for Gaussianity
this seems to cause issues with some platforms/compilers.
needs to be dissable until proper RNG is in place
3 years ago
Andre Puschmann f30059004b gtpu: remove warning when GTPU_EXT_HEADER_PDU_SESSION_CONTAINER is received 3 years ago
Xavier Arteaga b1bcc1a8c0 Initial UE NR SA PHY classes 3 years ago
dvdgrgrtt 864cb14eec Fix some clang-tidy warnings 3 years ago
dvdgrgrtt 7752feb3c2 Fix typos 3 years ago
dvdgrgrtt a4b86e5a0a Modify PUSCH power normalization
The PUSCH signal was normalized to fix the maximum amplitude instead of
the transmitted power.
3 years ago
dvdgrgrtt 7d8c519865 Restore proper file mode
The file had been mistakenly given executable permissions.
3 years ago
dvdgrgrtt f95c654aba Minor change
Forgot to check for unsuccessful malloc.
3 years ago
dvdgrgrtt 081428aab8 Check for Gaussianity in AWGN unit test
Implements the Anderson-Darling test to check whether noise samples are
drawn from a Gaussian distribution.
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
Francisco b27c184d2f nr,gnb,stack: add bearer manager to gNB stack to correctly map between eps bearer ids and lcids 3 years ago
Pedro Alvarez 194fb4fabf lib,rlc_am_nr: stop status prohibit timer when a polling bit is received. 3 years ago
Pedro Alvarez a038c74cc0 Only run the status prohibit timer, if it has been set before. 3 years ago
Francisco 71c0d69461 nr,gnb,phy: fix dci padding for the case of common search space type1 3 years ago
Pedro Alvarez 942c75ae80 gnb,rrc_nr: move location of creation of nr srb PDCP configs to rrc_nr_utils.cc 3 years ago
Pedro Alvarez 14170bbba2 lib,rrc_nr: made separate function to create default PDCP SRB configs 3 years ago
Pedro Alvarez 3296ee679c lib,pdcp_entity_lte: removed check for having SRBs only for 5bits SNlen. This was required for re-using the entity in NR. 3 years ago
Pedro Alvarez c69b221293 gnb,rrc_nr: move location of creation of nr srb PDCP configs to rrc_nr_utils.cc 3 years ago
Pedro Alvarez 9b622b3bff lib,rrc_nr: made separate function to create default PDCP SRB configs 3 years ago
Andre Puschmann f959c8c14a rlc_tm: remove warning when PDU can't be read
MAC will call read_pdu() until RLC doesn't have any more data to send.
don't log a warning in this case.
3 years ago
Andre Puschmann 059a747081 mac_sch_pdu_nr: fix pretty-priting of CCCH 3 years ago
Pedro Alvarez 2fad9ded01 Make sure that the pcap is started before NGAP init, so that the NGSetupRequest is caught 3 years ago
Pedro Alvarez 5e22e42762 Added option to save NGAP pcaps. 3 years ago
Pedro Alvarez 7460a9db69 lib,rlc_am_nr: check whether we exced nof_bytes in retx. changed build_retx_pdu API to receive unique_byte_buffer by ref. 3 years ago
Pedro Alvarez 1ca9804d84 lib,rlc_am_nr: make sure the return of make_byte_buffer() is checked 3 years ago
Pedro Alvarez b497d773ce lib,rlc_am_nr: Fixed some metrics calculation. Added more precise metrics checking to unit tests 3 years ago
Pedro Alvarez 5eaa56e6ba lib,rlc_am_nr: fix processing of ACKs 3 years ago
Pedro Alvarez b794593469 lib,rlc_am_nr: added processing of ACKs from status report 3 years ago
Pedro Alvarez ec93cc7238 rlc_am_nr: added logic to retx NACK'ed PDU. 3 years ago
Pedro Alvarez 473a45aae0 rlc_am_nr: fix buffer status calculation for retxs 3 years ago
Pedro Alvarez 63657ddfe6 Moved retx queue to rlc_am_data_structs, to enable it being re-used in RLC AM NR 3 years ago
Pedro Alvarez 4e1c713c14 rlc_am_nr: Enabled sending NACKs on status PDUs
- Added some logic to only poll when PDU_WITHOUT_POLL > PollPDU
  - Fixed initalization of t-Reassembly
  - Fixed a bug in the packing of the status buffer.
Nacks now work for a single lost PDU.
3 years ago
Pedro Alvarez a8453d644a Make sure t-reassembly triggers the status report 3 years ago
Pedro Alvarez 4c02407d3e Change the update of rx_next and rx_highest_status. 3 years ago
Pedro Alvarez 3f000f0472 Adding t_reassembly to RLC AM NR 3 years ago
Pedro Alvarez f09020e57f Adding unit test for lost SDUs. Fixing way rx_next and rx_status_highest are updated. 3 years ago
Andre Puschmann afd417c96e mac_pdu_nr_test: add TC for MAC CON RES CE 3 years ago
Andre Puschmann 062cba5bd5 mac_sch_pdu_nr: add support for contention resolution CE 3 years ago
Andre Puschmann 4dcbc70131 mac,packing: move test code to source folder 3 years ago
Fabian Eckermann f228491e1d Add test for pdcch order (un)packing. 3 years ago
Fabian Eckermann d0c07fc86e Add packing of dci format 1A for pdcch orders. 3 years ago
Pedro Alvarez c4f7e95e58 lib,rlc_am_nr: Make sure BSR callback is called 3 years ago
Pedro Alvarez ca13b6f3c4 Remove duplicate calculation of status report bytes 3 years ago
Pedro Alvarez 9e4631ee24 Added NR specific config struct for RLC AM. Added status prohibit timer. 3 years ago
Pedro Alvarez 5e8ab48c25 Wrote some logic to write SDU to PDCP 3 years ago
Pedro Alvarez 78d5ed1bc8 Fix get buffer state when status report is required 3 years ago
Pedro Alvarez a1c57eb473 Made sure that we don't try to read from empty queue. Modified some logging. 3 years ago
Pedro Alvarez 8ff545c423 Added RLC AM NR config structure. Added helpers to create RLC AM NR configs. Made it possible to create RLC AM NR entites in rlc.cc 3 years ago
Pedro Alvarez 1f8d0ab557 Fix generation of status report. 3 years ago
Pedro Alvarez 8ae4d379aa RLC AM NR: Added some logging functions to better debug the state and the received headers. Added initial handling of data pdu. Updating rx_next and rx_status_highest now. 3 years ago
Pedro Alvarez 2d29e4005c Starting to generate RLC NR status report.
Starting to check if status pdu generation is correct.
3 years ago
Pedro Alvarez be9bb344a4 Starting to add handle_data_pdu to RLC NR entity. 3 years ago
Pedro Alvarez 7121152cff Added basic functionality for read_pdu to RLC AM NR entity. 3 years ago
Pedro Alvarez 4196abafee Added get_buffer_status to RLC AM NR entity 3 years ago
Ismael Gomez ebeb46b230 nr,pdcch_dmrs: take into account offset_rb in DMRS mapping 3 years ago
Francisco a58420a530 nr,gnb,rrc: implement basic NR RRC bearer addition and reconf message sending 3 years ago
Francisco e8beb2ef81 nr,rrc: redesign fetching of asn1 obj ids for comparison and addmod/rem to asn1 lists 3 years ago
Francisco 3b3630d444 nr,gnb,rrc: remove redundant code, and update rrc_nr_test to use default rrc nr cfg generator 3 years ago
Francisco f705445f21 nr,gnb,rrc: use rrc_nr_cfg to generate sib1 and mib 3 years ago
faluco 453a7760b3 Port misc SSN changes to dev. 3 years ago
Andre Puschmann 0ee82ed0f6 ue_dl_nr_file_test: add option to select ue specific search space
* add option to select search space: ue and common1
* print coreset info
3 years ago
Andre Puschmann b7f9dd5d75 phy_common_nr: add helper method to print coreset info to string 3 years ago
Francisco 5a3e99fb58 nr,gnb,rrc: fix missing return for mib generation 3 years ago
Francisco 25a8ea53d3 nr,gnb,sched: pass mib config to scheduler so it is used during SSB allocation 3 years ago
Francisco fec97689a2 rrc,nr,gnb: refactored rrc nr cfg default and derived param generation to be mostly independent of parser 3 years ago
Francisco f2a5f00bb3 nr,gnb: fix abs freq ssb arfcn derivation 3 years ago
Francisco 0b8a6970f0 nr,gnb,rrc: fix ssb frequency derivation when coreset0 is active 3 years ago
Francisco 92c4e6e2d0 nr,gnb: account for CORESET#0 RB offset (See 38.213, table 13-1) in computation of SSB center frequency 3 years ago
Ismael Gomez 4836e90b2c Move place to apply reference_point_k_rb to dmrs 3 years ago
Andre Puschmann 883ddef4a6 ue_dl_nr_file_test: fix compilation on gcc 4.8 3 years ago
Andre Puschmann 66871b1e8e ue_dl_nr_file_test: disable failing file tests temporarily
they will be enabled again as soon as the decoding issues are solved
3 years ago
Ismael Gomez 798e9b7a5e ue_dl: reference point for DMRS varies for SIB 3 years ago
Ismael Gomez e7c2cea032 Fix data conversion parse in ue_dl_nr_file_test 3 years ago
Andre Puschmann 9c6f9f5949 dci_nr: print coreset0_bw when DCI is scrambled with SI-RNTI 3 years ago
Andre Puschmann d5a00fcdad dci_nr_test: add test for DCI 1_0 with SI-RNTI 3 years ago
Andre Puschmann 573b2f657a ssb_file_test: make duplex and SSB SCS configurable, add new unit test for FDD+15kHz SCS 3 years ago
Andre Puschmann dd34f5b274 ue_dl_nr_file_test: fix coreset0 bandwidth when decoding SI-RNTI 3 years ago
Andre Puschmann 972e080e48 ue_dl_nr_file_test: update SSB/SIB TV
update capture and make sure its rv=0

// Cell 0x01: nr_arfcn=368500 ul_nr_arfcn=349500 pci=500 mode=FDD rat=nr n_rb_dl=52 n_rb_ul=52 dl_mu=0 ul_mu=0 ssb_mu=0 ssb_arfcn=368410 ssb_prb=13:21 k_ssb=6 coreset0_prb=1:48 coreset0_idx=6
20:43:31.997 [PHY] DL    - 01 ffff   784.0 PDSCH: harq=si prb=1:7 symb=2:12 CW0: tb_len=84 mod=2 rv_idx=0 cr=0.44
        0000:  74 81 01 70 10 40 04 02  00 00 c8 00 24 68 a0 38  t..p.@......$h.8
        0010:  05 01 00 40 1a 00 00 06  6c 6d 92 21 f3 70 40 20  ...@....lm.!.p@
        0020:  00 00 80 80 00 41 06 80  a0 90 9c 20 08 55 19 40  .....A..... .U.@
        0030:  00 00 33 a1 c6 d9 22 40  10 00 1e b8 94 63 c0 09  ..3..."@.....c..
        0040:  28 c4 1b 8a 36 e1 5b 1c  3a 01 3c 5b 46 14 00 00  (...6.[.:.<[F...
        0050:  00 00 00 00                                       ....
20:43:31.997 [PHY] DL    - 01 ffff   784.0 PDCCH: ss_id=0 cce_index=0 al=4 dci=1_0
	rb_alloc=0x120
	time_domain_rsc=0
	vrb_to_prb_map=0
	mcs=6
	rv_idx=0
	si_indicator=0
	dci_len=39
3 years ago
Andre Puschmann 7a64163aa4 ue_dl_nr_file_test: enable coreset0_idx=6 file test 3 years ago
Andre Puschmann 16b5f4c3db ue_dl_nr_file_test: add further IQ capture with coreset0_idx=6
Cell 0x01: nr_arfcn=368500 ul_nr_arfcn=349500 pci=500 mode=FDD rat=nr n_rb_dl=52 n_rb_ul=52 dl_mu=0 ul_mu=0 ssb_mu=0 ssb_arfcn=368410 ssb_prb=13:21 k_ssb=6 coreset0_prb=1:48 coreset0_idx=6
12:58:46.197 [PHY] DL    - 01 ffff   556.0 PDSCH: harq=si prb=1:7 symb=2:12 CW0: tb_len=84 mod=2 rv_idx=2 cr=0.44
        0000:  74 81 01 70 10 40 04 02  00 00 c8 00 24 68 a0 38  t..p.@......$h.8
        0010:  05 01 00 40 1a 00 00 06  6c 6d 92 21 f3 70 40 20  ...@....lm.!.p@
        0020:  00 00 80 80 00 41 06 80  a0 90 9c 20 08 55 19 40  .....A..... .U.@
        0030:  00 00 33 a1 c6 d9 22 40  10 00 1e b8 94 63 c0 09  ..3..."@.....c..
        0040:  28 c4 1b 8a 36 e1 5b 1c  3a 01 3c 5b 46 14 00 00  (...6.[.:.<[F...
        0050:  00 00 00 00                                       ....
12:58:46.197 [PHY] DL    - 01 ffff   556.0 PDCCH: ss_id=0 cce_index=0 al=4 dci=1_0
	rb_alloc=0x120
	time_domain_rsc=0
	vrb_to_prb_map=0
	mcs=6
	rv_idx=2
	si_indicator=0
	dci_len=39
3 years ago
Andre Puschmann d2fc11fbec ue_dl_nr_file_test: add missing parameter to existing file tests 3 years ago
Andre Puschmann 830cbcde08 ue_dl_nr_file_test: add all zero PDSCH check and let test fail in this case 3 years ago
Andre Puschmann 77269c055d ue_dl_nr_file_test: expose ARFCN for center and SSB and use it to derive RB offset 3 years ago
Andre Puschmann 1684c56ca0 phy: add two IQ dumps with coreset0 and coreset1
coreset0:
15:03:16.697 [PHY] DL    - 01 ffff    86.0 PDSCH: harq=si prb=2:7 symb=2:12 CW0: tb_len=84 mod=2 rv_idx=1 cr=0.44
        0000:  74 81 01 70 10 40 04 02  00 00 c8 00 24 68 a0 38  t..p.@......$h.8
        0010:  05 01 02 60 24 00 00 06  6c 6d 92 21 f3 70 40 20  ...`$...lm.!.p@
        0020:  00 00 80 80 00 41 06 80  a0 90 9c 20 4c 29 21 00  .....A..... L)!.
        0030:  00 00 33 a1 c6 d9 22 40  10 00 1e b8 94 63 c0 09  ..3..."@.....c..
        0040:  28 c4 1b 8a 36 fd 5b 1c  3a 00 bc 5b 46 14 00 00  (...6.[.:..[F...
        0050:  00 00 00 00                                       ....
15:03:16.697 [PHY] DL    - 01 ffff    86.0 PDCCH: ss_id=0 cce_index=0 al=4 dci=1_0
	rb_alloc=0x120
	time_domain_rsc=0
	vrb_to_prb_map=0
	mcs=6
	rv_idx=1
	si_indicator=0
	dci_len=39

coreset1:

15:03:16.693 [PHY] DL 0001 01 0100    85.6 PDCCH: ss_id=1 cce_index=0 al=4 dci=1_0
	rb_alloc=0x5f
	time_domain_rsc=0
	vrb_to_prb_map=0
	mcs=6
	ndi=1
	rv_idx=0
	harq_process=0
	dai=0
	tpc_command=1
	pucch_rsc=0
	harq_feedback_timing=3
	dci_len=39
15:03:16.693 [PHY] DL 0001 01 0100    85.6 PDSCH: harq=0 prb=2:48 symb=1:13 k1=4 CW0: tb_len=624 mod=2 rv_idx=0 cr=0.44 retx=0
        0000:  43 02 6d 40 00 80 00 00  d6 5b 77 92 be 29 a1 5c  C.m@.....[w..).\
        0010:  9d d9 a3 42 64 bf d7 c0  cc 20 a6 4f b3 5e f5 06  ...Bd.... .O.^..
        0020:  5f fc 03 02 83 ca e9 ee  04 e7 1a 1d 00 3f 9c 01  _............?..
        0030:  ec 1c 32 bb 6b 0f e2 e9  dc 7c f6 84 41 b2 2b e8  ..2.k....|..A.+.
        0040:  10 f0 23 2c 91 f1 5d c7  6f b5 6e ac b6 fb c2 e6  ..#,..].o.n.....
        0050:  32 2d b2 8b 07 36 11 f3  81 78 5d ff 1a 85 8d 6c  2-...6...x]....l
        0060:  18 ce ca 52 1f 81 0f 78  c6 1a ab b5 e8 71 50 34  ...R...x.....qP4
3 years ago
Andre Puschmann 8c99d7a3bd ue_dl_nr_file_test: use common helper function to derive coreset0 params 3 years ago
Andre Puschmann 279d82aa31 ue_dl_nr: debug to print PDCCH received symbols 3 years ago
Andre Puschmann 36a287edd8 ue_dl_nr_file_test: expose various coreset and search space related parameters 3 years ago
Andre Puschmann 779bfcf791 phy_common: fix symbol size derivation for NR-only cells
make sure that 52 PRB cell with LTE rates gives 15.36e6 as sample rate
3 years ago
Andre Puschmann 853d870c52 rlc_um_nr: fix SN wrap-around in a few places 3 years ago
Andre Puschmann 813adb9567 rlc_um_nr: reduce verbosity in info mode
this will only print the most relevant messages in info mode.
also streamlines some messages with RLC AM entity.
3 years ago