Commit Graph

2044 Commits

Author SHA1 Message Date
Andre Puschmann 0df218ab90 cc_worker: fix PDSCH log fmt::v7::format_error 2021-04-17 15:51:11 +02:00
Xavier Arteaga 53b38fccf9 Fix compile and other 2021-04-17 15:51:11 +02:00
Xavier Arteaga 8ffced7e88 NR PHY logging minor corrections 2021-04-17 15:51:11 +02:00
Xavier Arteaga abfc1da921 Multiple NR-PUSCH fixes 2021-04-17 15:51:11 +02:00
Xavier Arteaga 7e06e789d5 Fic NR UCI in the info string 2021-04-17 15:51:11 +02:00
Xavier Arteaga 01ce0718be NR-PUSCH RE mapping correction and NR-SCH detailed grant information 2021-04-17 15:51:11 +02:00
Xavier Arteaga e7096d705e Fix NR RRC config NZP-CSI-RS 2021-04-17 12:54:30 +02:00
David Rupprecht bfe2ad98ef Added parsing for NR DL HARQ cfg 2021-04-17 12:33:21 +02:00
Andre Puschmann b9ae064338 mac_nr: add DL HARQ
this commit adds a complete DL HARQ entity to the MAC of the UE.
It also refactors demux into an own class and adapts the PHY-MAC
interface to use the new MAC capabilities.
2021-04-16 15:32:09 +02:00
David Rupprecht 138230f4e4 Remove NR RRC log line 2021-04-16 09:02:29 +02:00
David Rupprecht fe8727050b Added new rrc_nr to phy flattening functions and fixes 2021-04-16 09:02:29 +02:00
Xavier Arteaga e4e3456d76 Refactored PDSCH/PUSCH decoder for LDPC early stopping 2021-04-15 20:42:41 +02:00
David Rupprecht 4c68c17bd3 Fixed log level of nr loggers to lte level and hex size 2021-04-15 12:12:20 +02:00
Andre Puschmann bf4d0121dd cc_worker,proc_ra: set RNTI type for UL grant contained in RAR
needed for HARQ to correctly pick up the Msg3 Tx
2021-04-14 13:40:31 +02:00
Andre Puschmann 3e1998b2aa proc_sr_nr: tiny cosmetic logging changes 2021-04-14 13:40:31 +02:00
Andre Puschmann ad320c273e proc_bsr_nr: cancel SR if UL grant is received 2021-04-14 13:40:31 +02:00
Andre Puschmann d99402d3b3 rrc_nr: enable SR procedure when pulling config from ASN1 struct 2021-04-14 13:40:31 +02:00
Andre Puschmann 44baea6666 mac_nr: add UL HARQ
this patch adds a basic UL HARQ entity for NR.

The patch also updates some interfaces between MAC/RA/HARQ,
i.e. get_temp_crnti().

It also adds a Msg3 unit test.
2021-04-14 13:40:31 +02:00
Andre Puschmann b7146c41b2 nr: add NDI for PUSCH grant to sch cfg struct 2021-04-14 13:40:31 +02:00
Xavier Arteaga af97538448 Remove NR from log lines 2021-04-14 08:16:44 +02:00
Xavier Arteaga 7823bfc28c Fix append NR to loggers for NR components 2021-04-14 08:16:44 +02:00
Xavier Arteaga b5e879db47 SRSUE: review metrics interfaces 2021-04-13 16:02:53 +02:00
Xavier Arteaga 044da18db9 SRSUE: Reviewed PHY metrics getter 2021-04-13 16:02:53 +02:00
Xavier Arteaga dac331ab38 Fix SR PUCCH resource flattening 2021-04-13 16:02:53 +02:00
Xavier Arteaga 2f453b43ba Initial NR PHY interface 2021-04-13 16:02:53 +02:00
David Rupprecht eeddbe69ce Fixes repeating proc RA due to SR trigger 2021-04-12 20:51:07 +02:00
David Rupprecht 5a3a2a6d6f Added functions for adding phr and tag config 2021-04-12 20:50:30 +02:00
Andre Puschmann 396040fd75 metrics_csv: fix CC numbering for NR carrier in CSV 2021-04-12 18:26:31 +02:00
Andre Puschmann c9da21c9bb mac_nr: add error handling when unpacking SCH MAC PDU
* only handle PDU if unpacking was successfull
* add TC unpacking with malformed PDU
2021-04-12 18:26:31 +02:00
Xavier Arteaga bc1b14efea Fix NR common PDSCH Resource allocation count 2021-04-12 17:05:53 +02:00
Xavier Arteaga f30f3e0239 Minor aesthetic log change 2021-04-12 17:05:53 +02:00
Xavier Arteaga 21fe502448 Fix NR PRACH resource determination 2021-04-12 17:05:53 +02:00
Francisco f7a8b8bf94 separate drb srb ids into separate enum types 2021-04-12 13:21:43 +01:00
Francisco 21718af3b6 avoid allocating std::string to get lcid radio bearer name. Refactored the lte radio bearer enum type 2021-04-12 13:21:43 +01:00
David Rupprecht 5e02dbc536 Remove measurement id from trigger state nr allows to second nr reconfig 2021-04-12 10:32:40 +02:00
Andre Puschmann c1b66e89a5 mux_nr: protect MAC PDU packing from concurrent access from PHY workers
this will be moved to UL HARQ shortly but for now we need
to protect the packing
2021-04-10 14:01:43 +02:00
Andre Puschmann cf696138d3 mac_nr: fix packing order of SDU and CEs
SDUs need to go first in the MAC PDU, followed by CEs
2021-04-10 14:01:43 +02:00
Andre Puschmann 399954a970 mac_nr: convert bytes to bits for DL metrics 2021-04-10 14:01:43 +02:00
Andre Puschmann b083b612de proc_bsr_nr_test: fix SBSR test 2021-04-10 14:01:43 +02:00
Andre Puschmann 7da68dfee3 proc_bsr_nr: disable SR activation temporarily
SR isn't currently working correctly resulting in random PRACHs
being sent.
2021-04-10 14:01:43 +02:00
Andre Puschmann d1ad315969 mac_nr: add various safety/length checks 2021-04-10 14:01:43 +02:00
Andre Puschmann b1aaadb51c nr,cc_worker: convert grant size in bytes before passing to MAC 2021-04-10 14:01:43 +02:00
Andre Puschmann 7f415189f3 ue,mac: enable basic MAC metrics
this adds basic MAC metrics calculation for the DL NR MAC
2021-04-10 14:01:43 +02:00
Andre Puschmann 8024bf7820 mux_nr: improve logging when building UL MAC PDU 2021-04-09 20:40:22 +02:00
Andre Puschmann 880bd66db4 mac_nr_test: add testcase for MAC PDU packing with long L field
this reproduces the issue found in #2609
2021-04-09 20:12:03 +02:00
Andre Puschmann 9950278a12 nr,mac_sch_pdu,mux: fix packing of MAC subPDUs with 16bit L field
the created RLC PDU was too large to fit inside the MAC grant
because only the header room for the short L field was used.

The patch determines the correct size before passing the opportunity to RLC.

It also improves logging in error case by using the MAC logger instead of
stderr/stdout when error occurs.
2021-04-09 20:12:03 +02:00
Andre Puschmann db496df1e6 mac_nr: add support for periodic BSR reporting
building on the previous refactor this patch now adds support
for peridoic BSR reporting (using short BSR). It furthermore does
the following changes:

* add BSR packing
* add proc_bsr_nr unit test
* move mac_nr test code into test folder under src (needs to be done with other test code too)
2021-04-09 12:28:05 +02:00
Andre Puschmann 7188603f2e mac_nr: don't push MAC CE LCIDs to RLC when unpacking DL MAC PDU
this should fix log warnings then demux was trying to feed MAC CEs
to RLC:

10:50:54.845116 [MAC ] [I] [ 1153] Handling subPDU 1/2: rnti=0x0 lcid=61, sdu_len=1
10:50:54.845117 [RLC ] [E] Radio bearer id must be in [0:11] - 61
10:50:54.845118 [RLC ] [W] LCID 61 doesn't exist. Dropping PDU.
10:50:54.845119 [MAC ] [I] [ 1153] Handling subPDU 2/2: rnti=0x0 lcid=63, sdu_len=33
10:50:54.845119 [RLC ] [E] Radio bearer id must be in [0:11] - 63
2021-04-09 09:49:14 +02:00
David Rupprecht 56e947bf27 Added functionality for releasing a NR bearer 2021-04-08 17:37:36 +02:00
David Rupprecht cc6d8128ad Added gw interface if it is running 2021-04-08 17:37:36 +02:00
David Rupprecht 7a481c40ab Added mac prach nr proc error handling 2021-04-08 17:37:36 +02:00
David Rupprecht f9ea02b6bf Added functions for rrc reestablishing procedure if nr reconfig failes 2021-04-08 17:37:36 +02:00
David Rupprecht 43ec714ce1 Added functionality for printing nr metrics 2021-04-08 15:55:28 +02:00
Xavier Arteaga db1a1c059c NR PHY workers TTI synchronization between DL and UL work 2021-04-08 11:39:55 +02:00
Xavier Arteaga 991c6e7016 Refactored NR HARQ-ACK feedback enqueue 2021-04-08 11:39:55 +02:00
Xavier Arteaga 49731ab5a1 Initial NR-DCI refactor
Added NR DCI 1_1 size

Several DCI NR fixes
2021-04-07 16:57:12 +02:00
Xavier Arteaga dee2ec30cd SRSUE: use new MAC interface for NR SR procedure 2021-04-07 14:16:46 +02:00
Xavier Arteaga 01990c2e1d SRSUE: Add PHY-MAC SR related interfaces 2021-04-07 14:16:46 +02:00
Xavier Arteaga f4ae2d73aa SRSUE: report positive ACK for retx 2021-04-07 13:56:06 +02:00
Xavier Arteaga 20a4c39fa4 SRSUE: Disable PDSCH retransmissions in NR 2021-04-07 13:56:06 +02:00
David Rupprecht 506adca930 Set eutra nr band info based config value 2021-04-07 13:24:26 +02:00
Andre Puschmann d135ae4d29 proc_bsr: initial BSR procedure for NR
* refactor some common methods to mac_common.cc
* add common mux_base class
* move UL PDU generation to mux class
* add logical channel registration to MAC, MUX, BSR
* add initial proc BSR
* add basic MAC NR test
* rework MAC interfaces
2021-03-30 13:46:12 +02:00
Francisco d04a19f8bc refactor - increase code reuse in adt files 2021-03-29 22:11:25 +01:00
Xavier Arteaga e200a3359e SRSUE: check RNTI prior to UL encoding 2021-03-27 10:09:53 +01:00
Pedro Alvarez a5229a02d1 Make sure RRC identity is set when NAS reads UE context from file. 2021-03-26 16:36:12 +00:00
David Rupprecht 838d5ac0f4 Added description for using the same filename for mac and mac_nr pcap 2021-03-26 16:12:45 +01:00
Andre Puschmann bde7b49ca3 ue,mac_nr: add basic SR procedure
the current implementation support only one SR config
and doesn't support the prohibit timer
2021-03-26 09:53:03 +01:00
Xavier Arteaga 6219500148 Added NR-RRC RACH parsing 2021-03-26 09:45:10 +01:00
David Rupprecht 8c86d2084d Adding NR phy config RRC parsing
Added error handling

Reworked flattening error handling
2021-03-25 11:34:53 +01:00
Andre Puschmann 7a3a5f4cf4 rrc_nr: announce short SN in PDCP capabilities
this allows selecting 12bit SNs for the NR PDCP entity
2021-03-25 09:28:55 +01:00
AlaiaL bbaebd1274 Added a warning in the log when the cpu metrics are not registered due
to the number cpu cores is greater than supported.
2021-03-24 12:01:12 +01:00
AlaiaL c9d1c77e8c - Deleted the magic number of maximum supported cores, now it is a
constexpr.
- When the system has more cores that the maximum supported, the cpu
metrics will not be registered.
2021-03-24 12:01:12 +01:00
AlaiaL 6cd9bba641 Added the cpu metrics to the system metrics. 2021-03-24 12:01:12 +01:00
Xavier Arteaga 5bdf2c93b3 Initial NR PDSCH CSI-RS RE skip and other changes 2021-03-24 09:06:26 +01:00
Xavier Arteaga 7704c09ce2 Fix typos 2021-03-23 15:11:46 +01:00
Andre Puschmann 1a0891df51 all: check return value of make_byte_buffer() and handle them safely 2021-03-23 14:31:15 +01:00
Francisco dd336c53ea changed srsran_warning to srsran_expect. Applied new macro to rlc am 2021-03-23 10:49:28 +00:00
Codebot 4523ee6087 rename srsLTE to srsRAN 2021-03-21 21:47:01 +01:00
Xavier Arteaga 8c4ed489e8 SRSUE: Disable neighbour cell display by default 2021-03-19 11:47:09 +01:00
Xavier Arteaga 4ae194581f SRSUE: Adjustments in distance and speed estimations 2021-03-19 11:47:09 +01:00
Xavier Arteaga 49a535b81a SRSUE: force printing neighbour cells by default in console trace 2021-03-19 11:47:09 +01:00
Xavier Arteaga 2782d96170 SRSUE: compute speed from TA commands 2021-03-19 11:47:09 +01:00
Xavier Arteaga a8b5b8efa1 UHD: stability improvements 2021-03-17 08:53:40 +01:00
Xavier Arteaga f3c0360842 Applied aesthetical changes 2021-03-16 11:36:11 +01:00
Xavier Arteaga ddfff3edad SRSUE: Zero transmit buffer if the slot is not UL 2021-03-16 11:36:11 +01:00
Xavier Arteaga fb1a0b6bce SRSUE: added NR-PDCCH information 2021-03-16 11:36:11 +01:00
Xavier Arteaga d3cfb00211 SRSUE: Added TDD DL/UL slot detection 2021-03-16 11:36:11 +01:00
Xavier Arteaga 6f6c20e194 SRSUE: Added procedure for multiplexing UCI in NR-PUSCH 2021-03-16 11:36:11 +01:00
Francisco c6fff54f9e compilation issue fix - wrong number of argments in ttcn3_syssim creation 2021-03-12 19:10:15 +00:00
Francisco 68c938267f fix srslte include that causes a compilation issue 2021-03-11 20:10:54 +00:00
Francisco d1ab4aae66 fix ipv6 related compilation issue 2021-03-11 20:10:54 +00:00
Francisco 3e9f93eb8a refactor - remove old log_filter and logmap libraries from the codebase 2021-03-11 20:10:54 +00:00
yagoda 2ecdab8717 small fixes to the eMBMS downlink, lack of pdcch decoding was causing issues with uplink 2021-03-11 10:56:40 +01:00
Pedro Alvarez 7447fefd19 Make sure that sending the status report sent after RLC configuration in reestablishment 2021-03-10 19:17:26 +00:00
faluco 173dcdd421 - Import latest srslog version.
- Remove string allocs in some log lines in radio.cc.

Add new tracing buffer capcity options into srsenb and srsue.

Add missing file.
2021-03-10 16:27:33 +01:00
faluco 60cd649b8f Add a short description of the tracing options inside the config files. 2021-03-10 11:59:09 +01:00
faluco c7542daf43 Remove rlc traces and add new ones into tti run functions both in the enb and ue. 2021-03-10 11:59:09 +01:00
Francisco 20e341d0a1 mac,bugfix - fixed formatting of MAC and scheduler user-defined types 2021-03-09 16:23:08 +00:00
Francisco 5a1bf28fe1 optimization - minimization of number of std::string allocations for logging 2021-03-09 16:23:08 +00:00
Xavier Arteaga 9dffad87f2 Initial UCI bits multiplexing in PUSCH 2021-03-09 17:05:08 +01:00