Xavier Arteaga
667cc0b552
NR PDSCH/PUSCH DMRS estimation precompensates Synch error and CFO before interpolation
4 years ago
Francisco
685c971dc2
fix recursive call to get rb name
4 years ago
Francisco
f7a8b8bf94
separate drb srb ids into separate enum types
4 years ago
Francisco
3a23546c56
fix pdcp_nr.cc compilation
4 years ago
Francisco
21718af3b6
avoid allocating std::string to get lcid radio bearer name. Refactored the lte radio bearer enum type
4 years ago
David Rupprecht
5e02dbc536
Remove measurement id from trigger state nr allows to second nr reconfig
4 years ago
Francisco
437db3af03
forbid allocations when dispatching task to thread pool
4 years ago
Andre Puschmann
b991b07167
rlc: add length check for RLC PDU generation
...
makes sure that RLC doesn't generate a PDU larger than
the provided grant size
4 years ago
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
4 years ago
Andre Puschmann
cf696138d3
mac_nr: fix packing order of SDU and CEs
...
SDUs need to go first in the MAC PDU, followed by CEs
4 years ago
Andre Puschmann
399954a970
mac_nr: convert bytes to bits for DL metrics
4 years ago
Andre Puschmann
b083b612de
proc_bsr_nr_test: fix SBSR test
4 years ago
Andre Puschmann
7da68dfee3
proc_bsr_nr: disable SR activation temporarily
...
SR isn't currently working correctly resulting in random PRACHs
being sent.
4 years ago
Andre Puschmann
d1ad315969
mac_nr: add various safety/length checks
4 years ago
Andre Puschmann
b1aaadb51c
nr,cc_worker: convert grant size in bytes before passing to MAC
4 years ago
Andre Puschmann
7f415189f3
ue,mac: enable basic MAC metrics
...
this adds basic MAC metrics calculation for the DL NR MAC
4 years ago
Andre Puschmann
8024bf7820
mux_nr: improve logging when building UL MAC PDU
4 years ago
Andre Puschmann
880bd66db4
mac_nr_test: add testcase for MAC PDU packing with long L field
...
this reproduces the issue found in #2609
4 years ago
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.
4 years ago
Francisco
99b4595b69
fix enb phy test by limiting the number of carriers to 5
4 years ago
Francisco
ff8a43f6b0
avoid allocation of dl_sched_list and ul_sched_t by converting a std::vector to bounded_vector
4 years ago
Francisco
d142d7b6a5
update test helpers for enb, so that the rrc tests pass
4 years ago
Francisco
ac7cc3c42d
change enb ue softbuffer initial allocation size
4 years ago
Francisco
f1c67f5b2b
pool - avoid concurrent batch allocations in background threads
4 years ago
Francisco
75e9700de0
rlc - usage of memory pool to allocate RLC bearers
4 years ago
Francisco
8fe27a72d0
enb - decreased default enb.conf mac.max_nof_ues to 8 to avoid large memory pool preallocations
4 years ago
Francisco
71f1f1b556
enb - log warning when rnti-specific memory block is full
4 years ago
Francisco
a890a22ccd
enb - rnti memory pool now fallbacks to new/delete if rnti-specific memory block is full
4 years ago
Francisco
a780a6a7b6
fix obj pool interface
4 years ago
Francisco
344bdf3165
allocation of UE rlc and pdcp classes in the ue dedicated memory pool
4 years ago
Francisco
60d5c6df7b
implementation of memory pool with individual memory blocks per UE that get accessed via their rnti
4 years ago
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)
4 years ago
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
4 years ago
Andre Puschmann
6dd8c21073
mac_sch_pdu_nr: add unpacking of TA CE in DL-SCH
...
also add basic test to verify correct unpacking
4 years ago
Francisco
9b7060a098
check ptr value before dereferencing
4 years ago
Francisco
dc763b5045
rlc am - fix bugs in buffered_pdcp_pdu_list
...
The count and container elements were not being correctly updated in the events
of SN overwrite, clear(), clear_pdcp_sdu(sn) of sn that doesnt exist
4 years ago
Francisco
ebbb74e639
rlc am - use of circular_map container in RLC AM window
...
The window elements are not being correctly cleaned up when clear() is called
or when overwritten by newer SN. Furthermore, the window count member is not being
correctly updated when the insertion of a newer SN overwrites the previous one.
I used the circular_map container to avoid this sort of bugs
4 years ago
Ismael Gomez
c4069b58af
Call HARQ new tti only for the current PID
4 years ago
David Rupprecht
82c9636156
Refactor pdcp ctor seperate the configure function
4 years ago
Andre Puschmann
1a42e0b1d1
epc,nas: add error handling for all make_byte_buffer() calls
...
not handling the case where allocation was failing was causing a
segfault. It seems that when doing high rate UDP iperf and
disconnecting the UE causes the buffer pool to become empty due
to the PDU buffering. Thus, causing a crash when attaching the UE again.
4 years ago
Andre Puschmann
cbe7980d7d
enb,mac_controller: apply new MAC config with disabled DRB
...
fix regression in RRC that updated the local MAC config to
disable DRB scheduling after maxRetx, but didn't actually apply the config
4 years ago
David Rupprecht
56e947bf27
Added functionality for releasing a NR bearer
4 years ago
David Rupprecht
cc6d8128ad
Added gw interface if it is running
4 years ago
David Rupprecht
7a481c40ab
Added mac prach nr proc error handling
4 years ago
David Rupprecht
f9ea02b6bf
Added functions for rrc reestablishing procedure if nr reconfig failes
4 years ago
David Rupprecht
43ec714ce1
Added functionality for printing nr metrics
4 years ago
Xavier Arteaga
58a9ef6e7f
Minor NR PHY tweaks and aesthetic
4 years ago
Xavier Arteaga
db1a1c059c
NR PHY workers TTI synchronization between DL and UL work
4 years ago
Xavier Arteaga
991c6e7016
Refactored NR HARQ-ACK feedback enqueue
4 years ago
Xavier Arteaga
bd11b66b6c
Fix unitialised NR PHY arguments
4 years ago