2081 Commits (5865df39d18afb8768b70bc1f9cb65b8f5442b1a)

Author SHA1 Message Date
Xavier Arteaga a278a49e42 Limit PDSCH-NR unit test 4 years ago
Xavier Arteaga bff71761a9 PDSCH-NR: Added single layer channel equalization 4 years ago
Xavier Arteaga 0138c3b856 PDSCH-NR fixed with unit test 4 years ago
Jesus Gomez 6defd2658c Solve Issue 2: Rate matching zeroes output data prior to soft-combine 4 years ago
Xavier Arteaga fb64c2a460 Initial NR PDSCH encode/decode 4 years ago
Xavier Arteaga 666ba7d590 Added unpacked bit sequence XOR 4 years ago
Xavier Arteaga 6df83c32b3 Added NR layer mapper and demapper 4 years ago
Xavier Arteaga 644758416e DL-SCH-NR adjust unit test 4 years ago
Xavier Arteaga d27f0819a8 Fix DL-SCH for NR 4 years ago
Xavier Arteaga 53282bdfbf Dl-SCH-NR: updated unit test 4 years ago
Xavier Arteaga 4e5edb5168 DL-SCH NR added traces and fixes 4 years ago
Xavier Arteaga 2aa7e43771 Implemented NR DL SCH decoder and unit test 4 years ago
Xavier Arteaga 3464dd3c0d Added MCS table string serializer 4 years ago
Xavier Arteaga 794d1b5c4b Added LDPC decoder RM interface 4 years ago
Xavier Arteaga fa691bb8e3 Fix softbuffer 4 years ago
Xavier Arteaga 27a3e87fb7 Initial DL-SCH encoding 4 years ago
Xavier Arteaga bc66942b8d Bit unpacking input to constant 4 years ago
Xavier Arteaga 9a320baf37 extended resource allocation for NR 4 years ago
Xavier Arteaga 766a43225d 5G FEC extension 4 years ago
Xavier Arteaga 30037d9223 Added guru softbuffer interface 4 years ago
Xavier Arteaga 8e8889032e Changed CRC input vector to constant 4 years ago
Andre Puschmann ff5f215df9 rf_soapy: print warning when using the Lime with shorter sample rates
the Lime has better performance when using the default LTE sample
rates due to filterering being done in the LMS RF chip.

Print a warning when using the Lime with the non-default LTE rates.
4 years ago
Andre Puschmann 2c797fce1a phy_common: add method to check whether we use default LTE symbol size
helpful getter to check whether we've compiled in
or selected at run time to use default LTE sample rates
4 years ago
Xavier Arteaga a6ac80cfbf Initial NR DL DCI Packing/Unpacking 4 years ago
Francisco Paisana bf7c587e4f add UL 64QAM support to eNB RRC and scheduler 4 years ago
Andre Puschmann 5f7f818abb pdu: fix bug in BSR table lookup
the bug causes the BSR to return a bsr_idx of 0, i.e. no data
pending, when the buff_size was reported to be 1 B only.

Instead, the UE should return BSR idx 1, i.e. between 0 < BSR <= 10.
4 years ago
Andre Puschmann 035d989737 pdu: fix unpacking of LCG2 of LBSR MAC CE
LBSR packing is fine but this makes the eNB do wrong things
because it thinkgs LCG2 has no or too much data to send.

LCG2 is our default LCG for DRB1. One occasion we saw the issue
is doing full rate TCP DL which requires quite a bit of ACK traffic
back to the sender. With the BSR for LCG2 being wrong, providing
UL grants was delayed and so the TCP DL throuhgput was very low.

In the log below we see that the buff_size[2]=1 so there is data to send.
Interestingly, the packing was correct so Wireshark displays it correctly.
But the unpacking not, as can be seen in the MAC log below which reports
0 buffer state for all LCGs

22:08:54.804792 [MAC ] [I] [ 5084] pdu_get: sdu_len=1212, channel.sched_len=1213, bsr.buff_size[2]=1
22:08:54.804840 [MAC ] [I] [ 5084] UL LCID=3 len=1212 LBSR: b=0 0 0 0
4 years ago
Xavier Arteaga cf55eb4c4f Improved comments 4 years ago
Xavier Arteaga e8f94c40b8 Added LDPC codeblock segmentation 4 years ago
Xavier Arteaga fc3d154fe3 Fix compilation 4 years ago
Xavier Arteaga 736e6db616 Initial resource allocation for NR 4 years ago
Xavier Arteaga 0439161de6 Removed modulation enum from LDPC RM 4 years ago
Andre Puschmann 6773f6d02f pdu_queue: add reset method to empty queue 4 years ago
Andre Puschmann f155b7a5d5 rlc: fix stopping of poll retx timer (#2006)
* rlc_am: add TC for pollRetx timer handling

* rlc_am: fix stopping of pollRetx timer

stopping the pollRetx timer when receiving a status PDU
without checking the acknowledged PDUs is wrong.

if an ACK for another PDU, for which the polling bit has been set,
is still pending, it won't be rescheduled until another
PDU is transmitted that again starts the pollRetx timer.

this fixes the issue with missing RLC AM segment retx in #1992,
and #2003
4 years ago
Andre Puschmann 7cf919e2af Fix MAC PDU packing after sending Truncated BSR (#2004)
* mac_test: add extended TBSR unit test

unit test to MAC UL packing after sending a TBSR

this fixes the MAC issues described in issue #2002

* mux: fix updating of LCG buffer state after packing PDU

we've previously lowered the buffer state of the LCG according
to the bytes that have been scheduled, but not according to
those that have been actually included in the PDU.

* proc_bsr: fix LCG buffer state updating for TBSR

when sending a TBSR do not update the internal buffer
state of the BSR proc.

This caused issues because the buffer state for all LCG that
are not included in the TBSR are set to zero, although at least
one LCG does have data to transmit.

* rlc_am: include LCID when logging retx of SN
4 years ago
Andre Puschmann 1b97ba5300 benchmark_radio: fix duration and thread priority
I noticed that the app didn't configure the process with
RT thread prio. But it then turned out that in order to do
that we need to actually spawn a new thread. Also a few other things
didn't work out of the box.

In summary the changes are:
* fix duration to support more than 120s
* move main functionality in thread
* set high priority for radio thread
* only return success if no radio errors occured
4 years ago
Francisco Paisana 510959b50f update nr asn1 files, and asn1 tests 4 years ago
Xavier Arteaga 8d9577626b Fix NR FEC unit test 4 years ago
Xavier Arteaga 0c2f96d389 Fix 5G NR FEC memcheck 4 years ago
Xavier Arteaga 2835e87ff0 Add missing file 4 years ago
Xavier Arteaga f8dd67260f Polar: fix unit test working directory 4 years ago
Xavier Arteaga 15356b3ec8 Fix compilation for non-AVX2 machines 4 years ago
Xavier Arteaga 2c4aa1e379 Added Polar and LDPC forward error correction 4 years ago
Xavier Arteaga 4f89c6ed3f Added missing CMakeFiles 4 years ago
Xavier Arteaga f21590735d refactored FEC directories 4 years ago
Xavier Arteaga 7093a85f81 Refactored FEC directories 4 years ago
Xavier Arteaga c2621cc4f8 Protect ring-buffer write from nullptr 4 years ago
Andre Puschmann f647343f18 rlc_am: fix poll bit during header reconstruction
this makes sure that the reconstructed RLC AM header
has the poll bit set when any of its segments had it set.

this triggered a bug in RLC AM because the Status PDU
isn't transmitted for a RLC PDU that was segmented and
only the first segment had the P flag set.
4 years ago
Francisco Paisana b40a5a958e use common function to fill rrc reconf message in handover 4 years ago
Francisco Paisana e9b693942f diff-based cell selection activation 4 years ago
Francisco Paisana 836e7d7ede refactor scell addition in the srsenb::rrc to follow the same style of other rrc recfg fields 4 years ago
Francisco Paisana 97f2e4336e refactor of functions for filling the asn1 radio resource config structs. This functions are used during rrc setup/reest/reconf 4 years ago
Xavier Arteaga 9487d27ef9 Renamed NR constants and comments 4 years ago
Xavier Arteaga e8f168b20c PDSCH NR: Added files 4 years ago
Xavier Arteaga c8477483d9 PDSCH NR: Added files 4 years ago
Xavier Arteaga 30d8e05d50 Fix PDSCH-DMRS symbol index 4 years ago
Xavier Arteaga 8d34d344a8 Created PDSCH-NR configuration structures and refactored DMRS 4 years ago
Xavier Arteaga 009f300c5e Initial PHY Data procedures 4 years ago
Xavier Arteaga 775692f461 Rearanged PDCCH NR functions structures 4 years ago
Xavier Arteaga 937c52339d Added PDCCH DMRS estimation and measurement 4 years ago
Xavier Arteaga 5799100e42 FFT based Resampler admits NULL inputs/outputs 4 years ago
Xavier Arteaga 44ae70dcc6 Initial implementation of the 5G NR PDCCH DMRS encoding 4 years ago
Xavier Arteaga 29ad2427d9 Initial implementation of the 5G NR PDCCH DMRS encoding 4 years ago
Xavier Arteaga 579526f1fe Added sequence advance without generating data 4 years ago
Xavier Arteaga eba20b6367 Radio: fix frame overlap at start-of-burst 4 years ago
Xavier Arteaga be400503b9 Add pass criteria to PRACH USRP test 4 years ago
Xavier Arteaga 28bb4709ff Solved possible high impact PHY out-of-bounds issues 4 years ago
Pedro Alvarez e4f143059e Simple log fix to make it easier to compare PDCP RX and TX. 4 years ago
Andre Puschmann 0740154bff rrc,sync: fix two uninit vars
detected by Valgrind when running UE with TDD cell
4 years ago
Andre Puschmann 723ca2dd48 ra_dl: fix TDD reference symbol extraction
reported/provided by user softdev86 in https://github.com/srsLTE/srsLTE/issues/566

author tested with local 4 port cell. I am not able to verify locally but
it looks ok, we'll revise later if needed.
4 years ago
gracid f67a152a2a Remove unnecessary Lime calibration step from Soapy implementation
When using srsLTE with Lime devices, calibration was performed before any configuration steps have happened, thus making calibration values invalid. Removing Lime specific calibration step from rf_soapy_imp makes so that devices will be automatically calibrated by SoapyLMS on rf_soapy_start_stream call.

Tested and working with srsENB using LimeSDR-USB v1.4 and LimeSDR-Mini v1.2 boards.
4 years ago
gracid 78b63c9465 Set same antennas for all Soapy channels
This commit adresses an issue where two or more channels could have different antennas, despite being explicitly set in the configuration file
4 years ago
Francisco Paisana 4cb6ed27eb updated scheduler ue mcs computation to account for new 256QAM tables 4 years ago
Xavier Arteaga fac6d40a45 SRSENB: fix PUSCH max number of iterations 4 years ago
Xavier Arteaga 791c979063 Vector: fix cf to cs conjugate conversion 4 years ago
Andre Puschmann 5e7de0a95b cmake: install individual libraries (common, phy, etc)
this seems to be important for package maintainers
or people who use srslte components in other projects
thar require to link against static libs

so besides installing headers, the apps and the RF lib, we also
install all individual libraries

this fixes https://github.com/srsLTE/srsLTE/issues/500#
and https://github.com/softwareradiosystems/srsLTE/issues/1754
4 years ago
faluco 8376111419 - LGTM fixes. 4 years ago
Xavier Arteaga caf37b8e62 Added serving cell index in UCI/CSI report trace 4 years ago
Douglas Anderson fe21b2717c Fix "Comparison is always true because ret >= 0" LGTM warnings
... and refactor out some other dead code in the vacinity of these warnings
4 years ago
Andre Puschmann 1a03839f78 rlc_am_lte: fix potential bug when setting uint32_t to -1
discovered in Coverity CID 359664
4 years ago
Andre Puschmann 5a31c5765b rf_soapy: fix auto selection of Soapy device
when the default RF args are used, NULL is passed as argument
to the RF driver. In this case, we should use the previous
SoapySDRDevice_enumerate() and let Soapy pick the device
4 years ago
Xavier Arteaga ca6566ad46 Fix PUCCH format1b false detection 4 years ago
Pedro Alvarez b43e724b4c Remove packing/unpacking code for M2AP. 4 years ago
Jan Remeš 8c7b7cc55a libsrslte_rf: add library version
This patch adds version string to the 'libsrslte_rf' library.
This results in the library being built as
    libsrslte_rf.so.20.04.2
with the following symbolic links
    libsrslte_rf.so.0 -> libsrslte_rf.so.20.04.2
    libsrslte_rf.so -> libsrslte_rf.so.0

The SRSLTE_SOVERSION variable should be increased with each backwards
incompatible change of the library.

Signed-off-by: Jan Remes <jan.remes@invasys.com>
4 years ago
yagoda 615af5cc4d setting seed to constant in prach test 4 years ago
Andre Puschmann b08a586fd4 pdu: refactor error logging
just some refactoring of error messages when a PDU packing error occurs
4 years ago
faluco 693d2f10b7 - Fix hex dumps newlines. 4 years ago
Pedro Alvarez 2f0125ef4e Fix issue recovering key state, when the first HO fails (specifically, is_first_ncc was not recovered). Minor improvements in key logging. 4 years ago
faluco 079ae70e64 - Fix logs entries having two newlines instead of one. The old log formatter will delegate this to the new one. 4 years ago
Andre Puschmann f73fa47a7b pdu: fix printing of buffer state of long BSR
extracted wrong number of bits for 2nd LCID in long BSR
4 years ago
Xavier Arteaga ef9d77c966 SRSUE: add PRACH config present field in PHY configuration structure 4 years ago
faluco 51b27fc255
Import latest srslog version (#1796)
* - Import latest srslog version.
- Adjusted the nas_test to create logs correctly.
- Remove timestamp formatting now that is provided by srslog.
4 years ago
Ismael Gomez 4e88daae21
Set DCI unpacking errors to info (#1781) 4 years ago
faluco 85544bb8d3 - Remove unnecessary newline character and optimize the code to use fputs instead of fprintf since no formatting is required. 4 years ago
faluco dfeed52514 - Rename out_stream function to console. 4 years ago
faluco 62faef7c71 - Replaced all uses of the log::console method. 4 years ago
faluco 302f9793ca - Add common utils to print to stdout and stderr as a first step to remove the log::console method. 4 years ago
Andre Puschmann 795db30338 pdcp: drop PDCP control PDUs
this patch adds a check to drop all PDCP control PDUs
in order to prevent handling them as data PDUs.

This could happen when the size exceeded the arbitrary length check.

This should fix #1787
4 years ago
Xavier Arteaga d375e305ec Initial NR DMRS for PDSCH 4 years ago
Ismael Gomez 76bfc78147
Fix issues with Sounding-RS (#1761)
* Fix deadlock caused by update_measurements calling in_sync

* Fix overlapping SRS condition

* Do not use shortened PUSCH in transmissions and retx from RAR

* Revert "Fix deadlock caused by update_measurements calling in_sync"

This reverts commit f58c8c8c766f8f95baa3a3bf8287d8e25b2057ba.
4 years ago