Xavier Arteaga
77f0a53abd
Added DCI Format 0_0 unpacking and more NR-PUSCH procedures
4 years ago
Francisco
9e25e95545
fix S1AP UE Capability Indication message. Created helper to log received S1AP messages
4 years ago
Francisco
78d1b8083a
fix GTPU tunneling. Avoid forwarding packets to PDCP while the PDCP bearer is not yet created
4 years ago
Andre Puschmann
8e13f04684
mac_pcap: refactor MAC PCAP and include NR RAT into same object
...
after adding the thread-safe PCAP writer functionality to the EUTRA
MAC object it became clear that we don't wont to replicate the
same for the NR object.
This patch therefore refactors the class that now supports both EUTRA and
NR rats. The old mac_nr_pcap.[h/cc] has been deleted. All test-cases
and usages now use the new object that needs to pass the RAT type in
the ctor.
this patch addresses the last open point of #2160
4 years ago
faluco
199f1c953e
Remove unneeded logmap headers.
4 years ago
faluco
b014233662
- Port time related classes to srslog.
...
- Adapt tti_point_test to srslog.
4 years ago
faluco
1a5799a6ca
- Replace loggers is network utils.
...
- Adapt tests that use network utils and callers.
4 years ago
faluco
e9ed6f31ba
Port mac_pcap to srslog.
4 years ago
faluco
79eca0980d
- Ported fsm.h to srslog.
...
- Adapted and removed old loggers in tests and code that used fsm.h
4 years ago
faluco
c8a4bf2613
- Fix unused variable in buffer_pool.h
...
- Replaced logger to srslog in log_args utility function.
4 years ago
faluco
d37a07a47f
Replaced loggers in buffer_pool.h
4 years ago
faluco
f8485fb799
Replaced loggers to srslog in PNF and VNF classes.
4 years ago
faluco
96c07a69c0
Report the RLF event to the JSON event file in the enb.
4 years ago
Xavier Arteaga
c60d207826
Add fix phase shift in gNb PHY
4 years ago
Xavier Arteaga
194670a2a3
NRPHY: hard-coded symbol phase correction
4 years ago
Xavier Arteaga
820c9066db
Fix OFDM modulator for NR
4 years ago
Xavier Arteaga
2421f2cd99
Multiple PHY fixes and NR-PHY configuration refactor
4 years ago
Xavier Arteaga
7e6a35a9f7
Fix Synch error calculation
4 years ago
Xavier Arteaga
b652cd68a5
Refactored NR PHY configuration to accept multiple CORESETs/SearchSpaces
4 years ago
Xavier Arteaga
a85d79c6b7
Added ZMQ option to delay/advance Rx samples
4 years ago
Xavier Arteaga
73001c9541
Implement NR-DCI conversion to string
4 years ago
Xavier Arteaga
83a5ce96ed
Initial NR OFDM symbol size compatibility
4 years ago
Andre Puschmann
f5c945dc2f
mac_nr: add interface to set C-RNTI and contention ID from RRC
...
used during contention-based/free RA
4 years ago
Francisco
2bde28252c
send UE capability indication through S1AP
4 years ago
Francisco
d64ce7df77
implementation of S1 E-RAB Release Indication and Error Indication messages
4 years ago
faluco
806268f6cf
Por asn1 code in lib directory to srslog ( #2253 )
...
* Match hex dump indentation with srslog.
* Port asn1 utils to use srslog. Converted logging functions from taking varargs to variadic template functions.
* Remove trailing new lines in log lines from asn1 utils.
* First round of upgrades to srslog to asn1 tests.
* Second round of porting asn1 tests to srslog.
4 years ago
Andre Puschmann
f88943653b
mac: implement MAC RAR PDU unpacking for NR
...
* add class for mac_rar_pdu_nr
* extend test case
4 years ago
Andre Puschmann
da9e3363f1
mac_pdu_nr: rename MAC PDU class for NR to adhere naming conventions
...
* mainly to have _nr as trailing name for filename and class
* also add "sch" to class and filename (RAR PDU will have extra class)
4 years ago
Xavier Arteaga
6b4a17dc66
Fix uninit condition
4 years ago
Francisco
2befbd1825
setup of forwarding tunnels during enb s1 handover
4 years ago
Francisco
e8f6a436af
update gtpu test to account for scenario of buffered PDCP SNs, and buffering of direct path until indirect tunnel is closed
4 years ago
Francisco
a55c4cdca5
avoid gtpu extension header pdcp number magic number
4 years ago
Francisco
56ec2c286e
add gtpu test for tunneling
4 years ago
Francisco
13649e4e19
Implement new GTPU functionality:
...
- multiple tunnels per E-RAB
- data forwarding between connected GTPU tunnels
- forwarding GTPU End Marker between connected tunnels
- TeNB GTPU handles in-sequence delivery when multiple tunnels for the same ERAB exist.
4 years ago
Andre Puschmann
3784439088
add backward as backtrace pretty printer
...
this patch adds the MIT-licensed header-only library backward-cpp
as possible alternative for our internal backtrace-to-file
writer.
4 years ago
faluco
711438f756
Port enb specific classes to use srslog ( #2155 )
...
* - Started porting the enb PHY layer to use srslog loggers.
- Updated srslog to manage the none level.
* Finished porting enb phy layer including the NR part.
* Ported MAC, GTPU, PDCP, RLC and S1AP enb classes to use srslog.
* Use new stack logger.
* Ported the enb RRC clases to use srslog.
* Remove unused log macros.
* Replace loggers in sched, sched_carrier, sched_helpers.
* Replaced loggers in sched grid.
* Replaced loggers in sched harq.
* Replaced loggers in sched ue.
* Replaced loggers in sched ue ctrl.
* Replace loggers in sched ue ctrl TPC.
* Replaced loggers in sched subclasses.
* Replaced loggers in rrc_meascfg_test
* Configure loggers in rrc_mobility_test.
* Fix compilation errors left out after the rebase.
* - Implement a custom log sink that will serve as a test spy to intercept and count the number of error and warning log entries.
- Adapt the erab_test_setup and rrc_mobility tests to use this new class and make them pass again.
* - Remove trailing new lines introduced in the rebase.
- Ported the sched_ue_cell class to srslog.
* Remove unused log member.
* Ported mac tests to srslog.
* - Removed remaining trailing newlines from log entries.
* Fix compiler errors detected in CI.
* Fix another static variable without definition passed to log lines.
* Fixed a bug in srslog::flush that would never end when the backend queue is full.
* Fetch the RRC logger instead of injecting it in the constructor.
4 years ago
Andre Puschmann
4709bacefd
srsue: add DL NR-ARFCN param
...
* add PHY param to set DL NR-ARFCN
* use new band_helper class to convert ARFCNs to supported bands
* signal supported NR bands in UE capabilities
4 years ago
Andre Puschmann
617e0ddb67
band_helper: add helper class for RF bands
...
attempt to C++ify handling of radio bands and (E/NR)ARFCNs, etc.
4 years ago
Xavier Arteaga
4fe34b5e5b
Apply minor comments in NR-PUCCH
4 years ago
Xavier Arteaga
4c6944b883
Implement NR-PUCCH Format 2 DMRS put/Estimate
4 years ago
Xavier Arteaga
958afaee60
Implement NR-PUCCH Format 2 encode/decode. Initial NR-PUCCH procedures.
4 years ago
Xavier Arteaga
4b6849b775
Polar: Add more information to ERROR traces
4 years ago
Xavier Arteaga
573ff24a47
Fix CRC for more sizes
4 years ago
Xavier Arteaga
1ee4d84f80
Added NR-PUCCH encode/decode format2 skeleton
4 years ago
Xavier Arteaga
4d96cf4a41
More NR-PUCCH support
4 years ago
Xavier Arteaga
697bdb4d6d
Added NR-PUCCH Format 1 encoder, decoder and DMRS
4 years ago
Xavier Arteaga
33bb387f52
Initial NR-PUCCH formats 0 and 1 encoder
4 years ago
Xavier Arteaga
e7562e5b3f
Added ZC sequence LUT object
4 years ago
Xavier Arteaga
d100919561
Initial NR-UCI encoder
4 years ago
David Rupprecht
1b19ee40e7
Added usim features for key derivation
4 years ago
David Rupprecht
306bb6b38b
Added function for derive keys
4 years ago
David Rupprecht
ceda458bb3
Added MAC NR to EUTRA and NR with stack interfaces including MAC config build
...
Moved MAC logical channel config to MAC interface types
4 years ago
David Rupprecht
a6046ca875
Added funcs for asn flat config RLC and PDCP
4 years ago
David Rupprecht
64299960bd
Added procedure for NR reconfiguration and RRC with NR complete
4 years ago
David Rupprecht
145528ad32
Added unpacking test for RRC reconfig
4 years ago
David Rupprecht
99c3aa9ba2
Refactor assert to TESTASSERT in unit test
4 years ago
Xavier Arteaga
7dd99da045
Disable carry-less multiplication
4 years ago
Xavier Arteaga
058bee5fda
Increased prime number range
4 years ago
Xavier Arteaga
2f5b1ba9cb
Avoid PUSCH-DMRS initialization for 0 PRB
4 years ago
Xavier Arteaga
2f2114f377
Fix typo
4 years ago
Xavier Arteaga
732a220d42
Unified low-PAPR Ruv sequence generation
4 years ago
Xavier Arteaga
aa8b69e9a7
Fix prime number
4 years ago
Xavier Arteaga
8de73988b8
Add real vector and complex scalar product
4 years ago
Xavier Arteaga
6bb1788df1
Added more NR CRC polynomials
4 years ago
Xavier Arteaga
a7ca8ffff7
Moved prime number to different file
4 years ago
Xavier Arteaga
ae3c5ec7d0
Moved all block code (32, O/K) to FEC block
...
Fix missing header
Fix missing header
4 years ago
Xavier Arteaga
95ce49acd4
Added more vector copy functions
4 years ago
Xavier Arteaga
be6cb666e2
Initial moved block coding to FEC
4 years ago
Xavier Arteaga
f6b4f65f12
Add NR-PDSCH-DMRS SNR estimation
4 years ago
Pedro Alvarez
350e90a030
Make RLC retransmissions deterministic. It was creating unpredictablity
...
in the RLC AM tests. See issue #2228
4 years ago
Pedro Alvarez
6ca8bc12ec
Fix wrong SN in RLC status PDU when packet is dropped.
4 years ago
Francisco
e0937d1dd1
add lcid check and increase limit to 10
4 years ago
Francisco
bed979b722
fix out-of-bounds memory writing in the sched_interface::ue_cfg_t ue_bearers member
4 years ago
Ismael Gomez
47dbd6ed70
Merge pull request #2214 from softwareradiosystems/pr_mac_buffers
...
Limit the number of UL buffers in MAC and deallocate old ones
4 years ago
Francisco
b45fdd4f10
use using keyword in asn1 rather than typedef
4 years ago
Francisco
049ad77fca
simplify asn1 choice types with one single type with a packer
4 years ago
Francisco
c336c3eed2
added to_number() conversion of rrc_nr poll_byte
4 years ago
Ismael Gomez
a6423442c2
Refactor NR RA files and fix header includes all over library ( #2162 )
...
* Refactor NR resource allocation classes. Use DCI instead of grant for dummy PDSCH UE/eNB test
* Minor refactors in NR workers and ue_dl
* Fix include issues
* fix compilation issues
4 years ago
Ismael Gomez
d5f0634975
Add PUCCH SNR measurement ( #2175 )
...
* Add PUCCH SNR measurement
* Fix PUCCH SNR estimation
* Reverted PUCCH noise estimation
* use fpclassify instead of iszero
Co-authored-by: Xavier Arteaga <xavier@softwareradiosystems.com>
4 years ago
Ismael Gomez
c1c5fa426c
Fix issue with new way of managing ul buffers not working with CA
4 years ago
Ismael Gomez
0780f3caea
pdu_queue must be non-blocking in order to avoid the ue or enb to block in the event of a memory leak and the buffer pool running out of buffers. In that case, the null return shall be handled properly and error logged. This commit restores commit c4c44c33f4
.
4 years ago
Francisco Paisana
d4242f2db7
precompute nof_re_table[sf][prb][slot][cfi] for faster nof_re computation and for more accurate lower bound nof_re computation
4 years ago
Francisco Paisana
9c7c190074
when the rrc fails to allocate the ue cell resources, it should erase the ue from all stack layers
4 years ago
Andre Puschmann
dadff1a947
pdu: default initialize pdu members with MAC log
...
MAC PDUs are default logged using the MAC log. So this gives
hex prints, etc. without having to manually set the logger for each
PDU.
4 years ago
Andre Puschmann
fcf481b83e
pdu: add check when unpacking MAC PDUs to not read beyond PDU length
...
we've checked the same when unpacking the subheaders but missed the
case where the payload was read beyond the PDU length, as has been
seen with a malformed RAR PDU.
4 years ago
Andre Puschmann
10da7df194
pdu_test: add TC with malformed RAR PDU
...
a malformed RAR PDU should not be decoded further if the payload
indicates a length beyond the actual PDU size.
4 years ago
Francisco Paisana
2866886ade
fix gcc4.8 compilation issue
4 years ago
Francisco Paisana
f8b7351e1b
implementation of object memory pool via class-specific operator new/delete
4 years ago
Francisco Paisana
ea74ca67eb
resolve forward declaration compilation issue in memory pool
4 years ago
Francisco Paisana
e96b8c263a
add mem pool test. fix mem pool leak bug
4 years ago
Francisco Paisana
8912a8ce6c
added extra comments to memory pool code. generalized object pool to mutexed and non-mutexed cases
4 years ago
Francisco Paisana
768a4fa627
added growth policy for rrc::ue memory pool. Fixed memory leak
4 years ago
Francisco Paisana
a73cbcdc9d
added mem_pool for growing object pools. Applied the mem pool to the rrc::ue creation
4 years ago
Andre Puschmann
78b07daf3b
pcap: make public interfaces thread-safe and handle fopen returning nullptr
...
the previous patch only introduced a thread-safe queue between
PHY workers (writers) and PCAP writer thread (consumer).
However, it is also required to protect the ctor (and close()) to
prevent corrupted PCAP files.
The patch also correctly handles the case where the PCAP couldn't
be openend for writing and doesn't start the thread.
4 years ago
Francisco Paisana
ea8ad153c4
add configurable fairness parameter to pf scheduler
4 years ago
David Rupprecht
f7d313147a
Added infrastrukture for measurements
...
Init rrc_nr as part of the LTE stack
4 years ago
David Rupprecht
b79eef0860
Introducing nr_rrc <-> rrc interface for eutra and nr cap query
4 years ago
David Rupprecht
020d0dacc8
add the additional sec cap to NAS attach request
...
use same capabilities that are signaled for EUTRA
4 years ago
David Rupprecht
9eb0b72cb4
Added rrc function has_nr_dc
4 years ago
Andre Puschmann
c02aa8f124
liblte_mme: add DCNR UE capabilties packing
4 years ago