Francisco Paisana
2641c6ef08
resolve template type derivation in clang
2020-05-05 19:42:34 +01:00
Francisco Paisana
9b48130ae1
use of transition table to support guards in fsms
2020-05-05 19:42:34 +01:00
Francisco Paisana
04e192eb0f
redesign fsm to use transition table
2020-05-05 19:42:34 +01:00
Andre Puschmann
99c3975f83
remove CMake option to disable glibc header for IPv6
...
we've added this to allow building for older glibc
version that cause issues with redefining some structs.
this patch removes the flag and auto-detects it using the glibc version
2020-05-05 19:04:14 +01:00
Francisco Paisana
e79fc9bf08
fixed generation of ie containers of one single ie object
2020-05-05 13:10:41 +01:00
Francisco Paisana
e5533e4bcd
gcc 4.8.5 does not have std::max_align_t
2020-05-04 14:59:25 +01:00
Ismael Gomez
8c82203c74
Removed unused pregenerate option
2020-05-01 21:05:00 +02:00
Xavier Arteaga
2d39c7261c
renamed vector copy prefix from to
2020-04-30 13:43:17 +02:00
Andre Puschmann
9d529ba0d5
fix compilation on arm, add missing declaration and headers
2020-04-30 13:37:49 +02:00
Xavier Arteaga
2569a94deb
Radio Tx handles more overlap/gap cases
2020-04-30 09:51:19 +02:00
Xavier Arteaga
e15c49c5a5
Fix EVM hard-decision performance
2020-04-29 21:11:30 +02:00
Andre Puschmann
68a1868c33
npdsch_{ue,enodeb}: few more LGTM fixes
2020-04-29 18:56:46 +02:00
Francisco Paisana
615bd54fd5
fix uninit var
2020-04-29 11:17:00 +02:00
Francisco Paisana
f8c6f55cac
fix uninit var usages and signed bit manipulations
2020-04-29 11:17:00 +02:00
Francisco Paisana
de4d58d8fe
fix coverity scan issues in master
2020-04-29 11:17:00 +02:00
Ismael Gomez
c0054140e9
Configure properly PUCCH CS mode for CA in ConnectionReconfiguration. Allocate n_pucch_cs resource and cqi/sr at rrc::ue constructor
2020-04-29 10:11:43 +01:00
Xavier Arteaga
9d0a3268e8
Added DL channel estimator algorithm options
2020-04-28 17:26:01 +02:00
Xavier Arteaga
355b2ed7e1
Wiener: fixed more issues
2020-04-28 17:26:01 +02:00
Xavier Arteaga
4b6691a630
DL Wiener: Fixed phy common header missing
2020-04-28 17:26:01 +02:00
Xavier Arteaga
3ab5f3a7e8
Initial wiener filter integradion in DL channel estimator
2020-04-28 17:26:01 +02:00
Xavier Arteaga
5199aaa94e
DL Wiener: Fixed minor header issues, format and optimization
2020-04-28 17:26:01 +02:00
Xavier Arteaga
f4eb61a37c
Implementation DL channel estimator using wiener filter
2020-04-28 17:26:01 +02:00
Xavier Arteaga
fff96d9aac
Phy utils: Added initial matrix inverse
2020-04-28 17:26:01 +02:00
Xavier Arteaga
3f6eca1aea
Initial Wiener channel estimator
2020-04-28 17:26:01 +02:00
Xavier Arteaga
fe141dc002
Initial Wiener channel estimator
2020-04-28 17:26:01 +02:00
yagoda
faf1cf6975
limiting prach search space to number of prachs set in sib2
2020-04-28 14:40:20 +02:00
Xavier Arteaga
0ad99a35f9
Minor changes
2020-04-28 09:07:46 +02:00
Francisco Paisana
38f848ecdf
fix type name deducing for clang
2020-04-27 22:19:08 +01:00
Francisco Paisana
af9ca9f9e5
remove unecessary moves
2020-04-27 22:19:08 +01:00
Francisco Paisana
12b2ea7dde
remove warnings for base classes with no virtual dtors
2020-04-27 22:19:08 +01:00
Francisco Paisana
b8e6ba02e4
remove warnings related to unused vars and fwd declarations with trivial dtors
2020-04-27 22:19:08 +01:00
Francisco Paisana
df06443470
use c++ variadic template instead of variadic function
2020-04-27 22:19:08 +01:00
Francisco Paisana
3da8464a21
fix compilation issue with lack of override keyword and scoping in fsm
2020-04-27 22:19:08 +01:00
Francisco Paisana
e1ac6d7cfe
use macro to disable throw
2020-04-27 22:19:08 +01:00
Xavier Arteaga
d7e7399e7b
srsENB: PHY configuration in two stages
2020-04-27 21:03:44 +02:00
Xavier Arteaga
b9583d4182
Fix Extended CSI request bits in DCI
2020-04-27 21:03:44 +02:00
Andre Puschmann
d6e0153b40
sci: add SCI format 1 transmission format flag
2020-04-27 21:01:46 +02:00
Andre Puschmann
80b303dbde
sl: set correct SL-SCH max TB size
2020-04-27 21:01:46 +02:00
luis_pereira87
baf0ad5bf4
PSSCH implementation
2020-04-27 21:01:46 +02:00
yagoda
8e0b106c22
fixing some warnings from LGTM
2020-04-27 20:59:40 +02:00
Andre Puschmann
5d92111586
pcap: adding SL-SCH support
2020-04-27 15:54:54 +02:00
Andre Puschmann
a82b2da2dd
dft_precoding: add helper to get largest valid PRB
2020-04-27 15:54:54 +02:00
Francisco Paisana
b506e29b72
removed common ce_typeenum
2020-04-24 11:55:53 +01:00
Francisco Paisana
372126deac
created ul-sch and mch lcid types
2020-04-24 11:55:53 +01:00
Francisco Paisana
367a190829
created dl-sch lcid type
2020-04-24 11:55:53 +01:00
Xavier Arteaga
58803d1b3e
Added UL EARFCN map and UE PHY interface cleanup
2020-04-23 09:00:45 +02:00
Xavier Arteaga
7291a5db91
Implement on the fly sequence generation
2020-04-23 09:00:15 +02:00
Xavier Arteaga
89dcd6339f
More LGTM fixes
2020-04-22 18:01:43 +02:00
Xavier Arteaga
60c4daccab
Removed redundant code
2020-04-22 18:01:43 +02:00
Xavier Arteaga
01e224348c
Fix compilation for NR HL
2020-04-22 18:01:43 +02:00
Xavier Arteaga
77d5dedddc
Fix LGTM warnings and recommendations
2020-04-22 18:01:43 +02:00
Xavier Arteaga
562590e595
Fix LGTM warnings
2020-04-22 18:01:43 +02:00
Pedro Alvarez
ad0abe740b
Added support to PDCP SN len of 7. Also added a check for valid configs in pdcp entity.
2020-04-22 17:44:00 +02:00
Francisco Paisana
5db2c62530
comments for handover commands
2020-04-22 13:34:37 +01:00
Francisco Paisana
7a132f9ccd
more enb interface comments
2020-04-22 13:34:37 +01:00
Francisco Paisana
0526ae8ab1
updated rrc mobility parsing. added some utility methods
2020-04-22 12:57:11 +01:00
Francisco Paisana
64557740fc
use mac_buffer_state interface to schedule CEs in scheduler
2020-04-22 11:34:08 +01:00
Francisco Paisana
ec94819f08
changed mechanism for conres ce scheduling to be controlled by rrc
2020-04-22 11:34:08 +01:00
Francisco Paisana
d183d64409
added allocate_rnti method to mac. Useful both during PRACH and handover UE resource allocation
2020-04-22 11:34:08 +01:00
Francisco Paisana
6ddedd5972
moved pdu to common mac folder
2020-04-22 10:06:08 +01:00
Xavier Arteaga
e6792cf9b7
Refactored OFDM and added half CP window offset in UL Demodulator
2020-04-20 16:10:27 +02:00
Xavier Arteaga
11a2d2cc4a
Fix and tidy up time offset in srsue
2020-04-20 16:10:01 +02:00
Andre Puschmann
e76e31e652
adding NB-IoT DL shared channel, UE DL object and PHY examples
2020-04-17 23:12:11 +02:00
Andre Puschmann
dcb9004a71
zmq: refactor zmq argument parsing, allow zero indexing
...
It allows to provide an index for tx_port, rx_port, tx_freq and rx_freq even
for the first (and possibly only) port. So for example a MIMO config would be this for example:
tx_port0=tcp://*:2001,tx_port1=tcp://*:2003,rx_port0=tcp://localhost:2000,rx_port1=tcp://localhost:2002
2020-04-17 20:47:20 +02:00
Francisco Paisana
df0da116ce
removed enter state visitor, and srslte::same_state return special case in fsms
2020-04-17 17:09:48 +01:00
Francisco Paisana
63142899d1
simplified some of the fsm sfinae conditions
2020-04-17 17:09:48 +01:00
Francisco Paisana
6322e447e9
fixed issue with subfsm revisits not starting in initial substate
2020-04-17 17:09:48 +01:00
Francisco Paisana
e1dc9cae15
added extra comments
2020-04-17 11:38:24 +01:00
Francisco Paisana
28467d568d
eliminated old way to schedule tasks using the heap
2020-04-17 11:38:24 +01:00
Francisco Paisana
d40dcd28f3
removed uneeded swap method
2020-04-17 11:38:24 +01:00
Francisco Paisana
b5abba41a3
use normal polymorphism to create vtable
2020-04-17 11:38:24 +01:00
Francisco Paisana
e2b10307ea
changed inplace_task name to move_callback
2020-04-17 11:38:24 +01:00
Francisco Paisana
ee50ed08c2
allow inplace task to be called in const contexts
2020-04-17 11:38:24 +01:00
Francisco Paisana
8d1beb42bd
fix leak in inplace task destructor
2020-04-17 11:38:24 +01:00
Francisco Paisana
1061f2144b
add consts
2020-04-17 11:38:24 +01:00
Francisco Paisana
cd9c722aa0
avoid branching in inplace_task
2020-04-17 11:38:24 +01:00
Francisco Paisana
ef834b3c60
changed inplace_task file name
2020-04-17 11:38:24 +01:00
Francisco Paisana
a6b7c5d1d2
inplace task now uses small buffer optimization for bigger captures
2020-04-17 11:38:24 +01:00
Francisco Paisana
4b2b76cf01
created inplace task to avoid mallocs in task enqueuing
2020-04-17 11:38:24 +01:00
luis_pereira87
653a1e0619
Added PSBCH Extended CP
2020-04-15 21:59:14 +02:00
Andre Puschmann
e495c4d553
vector: add uint8 zero'ing function
2020-04-15 13:42:26 +02:00
Andre Puschmann
8f72d4c55e
simd: fix compilation error under NEON
2020-04-15 13:42:26 +02:00
Xavier Arteaga
04c47e2b47
Added srsue argument for enabling EVM calculation
2020-04-15 11:39:57 +02:00
Xavier Arteaga
2bca321d4d
Fix NEON 16 bit turbodecoder
2020-04-13 20:43:51 +02:00
Xavier Arteaga
dc6128617b
Fix SSE 16 bit turbodecoder
2020-04-13 20:43:51 +02:00
Francisco Paisana
c38a3721a6
added nbiot asn1 lib
2020-04-13 20:40:15 +02:00
Xavier Arteaga
a0fb150e58
Fix memory issues in PSCCH decoder
2020-04-13 20:39:15 +02:00
Francisco Paisana
c09f76ed6c
unified stack task defer method
2020-04-10 22:30:59 +01:00
Andre Puschmann
d35c9e2b89
nas: add support ot UE test loop mode B
...
extend GW-NAS interface to signal test mode activation.
The method is a noop in the normal GW but is implemented in
the TTCN3 DUT according to TS 36.509 for Mode B
2020-04-10 21:18:43 +02:00
Xavier Arteaga
2fd018ead1
Minor change
2020-04-10 17:48:53 +02:00
Xavier Arteaga
5b7493cab5
Added 256QAM modulation tables to scheduler
2020-04-10 17:48:53 +02:00
Xavier Arteaga
a4225b189b
SRSENB: Added initial UE capability parser
2020-04-10 17:48:53 +02:00
Xavier Arteaga
5e45e63519
Multiple fixes HARQ ACK/NACK feedback and CSI reporting for MIMO and CA
2020-04-10 15:58:25 +02:00
Xavier Arteaga
784bf81a1a
Multiple fixes HARQ ACK/NACK feedback and CSI reporting for MIMO and CA
2020-04-10 15:58:25 +02:00
Xavier Arteaga
cb6a8444df
Added srsLTE helper for determining number of RI bits
2020-04-10 15:58:25 +02:00
Tiago Alves
47145c18b7
sidelink: refactor channel estimation
2020-04-10 14:58:18 +02:00
Francisco Paisana
977a1acc5e
eliminated unhandled_event special function. Use react instead.
2020-04-09 18:57:18 +01:00
Francisco Paisana
6e34dadce2
reverted back to tuples to store fsm state_list
2020-04-09 18:57:18 +01:00
Francisco Paisana
dbbeb1ec3b
fix log order
2020-04-09 18:57:18 +01:00
Francisco Paisana
4036a6887a
clean up enter/exit state methods
2020-04-09 18:57:18 +01:00
Francisco Paisana
8d3427e88a
removed namespacing from state printing
2020-04-09 18:57:18 +01:00
Francisco Paisana
b699e0e490
enter/exit moved outside of the states, into the fsm. Now i just use the type_name function to get a state name
2020-04-09 18:57:18 +01:00
Francisco Paisana
4a4827a603
created a method to detect unhandled events
2020-04-09 18:57:18 +01:00
Francisco Paisana
ec3ef4474e
created a simple procedure fsm
2020-04-09 18:57:18 +01:00
Francisco Paisana
1aae510e9d
enter/exit are now being called in order
2020-04-09 18:57:18 +01:00
Francisco Paisana
dd377becaa
small fixes in state transitions
2020-04-09 18:57:18 +01:00
Francisco Paisana
dc0427804f
clean up comments and add some util functions
2020-04-09 18:57:18 +01:00
Francisco Paisana
7dc1489ea7
reintroduced optional enter/exit methods for each state
2020-04-09 18:57:18 +01:00
Francisco Paisana
7c76a64238
fix move/copy correctness
2020-04-09 18:57:18 +01:00
Francisco Paisana
be5a33f9b7
deleted unused fsm methods
2020-04-09 18:57:18 +01:00
Francisco Paisana
6675e92806
implement fsm based on choice type
2020-04-09 18:57:18 +01:00
Francisco Paisana
018f9e7db2
implement visit pattern
2020-04-09 18:57:18 +01:00
Francisco Paisana
278a1686fb
creation of choice/variant type
2020-04-09 18:57:18 +01:00
Francisco Paisana
a2ade9edd1
break down rrc_interface_types.h into multiple files. moved pdcp_config.h to same folder
2020-04-09 10:10:04 +01:00
Francisco Paisana
2950d26daa
remove asn1 namespace from srsue files
2020-04-09 10:10:04 +01:00
Andre Puschmann
9307a54512
pdcp: adding enable_security_timed() method
...
this is an extension to the currently available security
configuration and activation methods provided by PDCP.
The new call allows to specify a Rx and Tx SN after which the
entire security config, i.e. integrity and ciphering, should
be enabled.
this is mainly required for the PDCP entity of the conformance
testing SS but could potentially also be used by the eNB
to enable security for PDCP after sending the SecModeCommand
for example.
the extra call was added to not break the existing API.
2020-04-09 10:55:13 +02:00
Pedro Alvarez
f4d648b26e
Removed rx_count state variable from PDCP LTE entity. Updated get_bearer_status(...) acordingly. Added get_last_submitted_rx_count() getter.
2020-04-09 10:55:13 +02:00
Francisco Paisana
7932a6bed7
allow the use of move_tasks in procedures
2020-04-08 14:55:33 +01:00
Daniel Willmann
925225dbeb
Implement Close UE Test Loop/Complete messages
...
This commit implements support for the CLOSE_UE_TEST_LOOP message.
Currently the mode is not saved and looping the data is not implemented.
Only the *_COMPLETE message is sent back as a response.
2020-04-04 22:51:43 +02:00
Andre Puschmann
057844d7d6
signal_handler: increase alarm timeout to 5s and use raise instead of exit()
...
it seems that exit() causes problems when threads couldn't be stopped
properly, which is the reason why we have to call alarm() in the first place.
therefore, send a SIGKILL to our process and make sure we don't leave any
zombie threads running.
2020-04-03 22:22:04 +02:00
Xavier Arteaga
25312e81b4
SRSUE: cell select RRC MEAS CFO is carried to PHY Cell object
2020-04-02 13:52:23 +02:00
Xavier Arteaga
6d355ab61e
SRSUE: Fix HO initial CFO
2020-04-02 13:52:23 +02:00
Francisco Paisana
c661025cda
fix log tti, and print a warning when the ul_harq tti does not match existing ones
2020-04-01 15:02:21 +01:00
Francisco Paisana
30ae2226c1
common interface for stack multiqueue tasks, background tasks and timers
2020-03-31 13:42:06 +01:00
Andre Puschmann
62e4bd9469
log_ptr: fix issue if accessing log_ptr that was reset already
...
during deinit of the UE/eNB it could happen that the log_ptr
was already set to null but the stack thread was still accessing
it through log_h->info()
i've moved the old macro into a new header and used as as much
as possible. there are still places in the code where similar
macros are used but we would need to change the variable name
to replace them
2020-03-31 12:32:52 +02:00
Andre Puschmann
94c6034339
nas: rename start_attach_request to start_attach_proc
...
this is to better differentiate from "send_attach_request" that
only packs and send the actual attach request message. The
entire attach procedure may include PLMN search, etc.
2020-03-30 11:23:40 +02:00
Andre Puschmann
0e76b9ed15
nas: set NAS key set identifier to no key available when attaching with IMSI
2020-03-28 21:24:13 +01:00
Francisco Paisana
575475962f
the rlc um rx does not need a mutex bc it is always called in the stack thread
2020-03-26 20:11:35 +00:00
Xavier Arteaga
cca3cccfbe
Improved fading model generation
2020-03-26 08:23:07 +01:00
Xavier Arteaga
a44a61d781
Fix HST channel emulator for keeping coherent phase between frames
2020-03-26 08:18:24 +01:00
Ismael Gomez
95c6916987
Improve robustness in RF Overflow ( #1124 )
...
* Use task id to track old background tasks in RA procedure
* Improve robustness against RF overflow in PHY
* Increase SNR out-of-sync threshold
* Do not change frequency if it's the same
* Increase sync priority
* Increase time to start receiving to reduce input buffer occupation
* Use scoped lock in sf_worker
2020-03-25 16:56:32 +01:00
Francisco Paisana
8aa44928e9
fix 5g compilation errors
2020-03-25 15:50:30 +00:00
Francisco Paisana
344eaf49ec
use logmap in the whole enb and ue
2020-03-25 15:50:30 +00:00
Francisco Paisana
8e837e173d
printf has already a way to pad spaces. If we use it, we can avoid accidentally adding extra logs because we did srslte::logmap::get("MAC") instead of srslte::logmap::get("MAC ")
2020-03-24 22:36:27 +00:00
Xavier Arteaga
cd2f86687f
Correction in AWGN generator
2020-03-24 12:16:28 +01:00
Xavier Arteaga
8e891b7038
Added AWGN channel to SRSUE and SRSENB
2020-03-24 12:16:28 +01:00
Xavier Arteaga
c107b04f5a
Implemented high performance AWGN generator
2020-03-24 12:16:28 +01:00
Xavier Arteaga
b5be0b94b8
Added SIMD i32 add and and functions
2020-03-24 12:16:28 +01:00
Xavier Arteaga
8bf7acdeaf
Added vector malloc for i32 and u32
2020-03-24 12:16:28 +01:00
Francisco Paisana
9bde6d442c
removed the uneeded locks from the pdcp
2020-03-23 19:58:18 +00:00
Francisco Paisana
f3890b2908
use of mutexed cache to store the valid lcids that can be checked from gw thread
2020-03-23 19:58:18 +00:00
Francisco Paisana
e91a7ea513
removed stack-mac interface dedicated methods. We use now the task dispatch methods instead
2020-03-22 11:50:58 +00:00
Francisco Paisana
de03c96c3b
mac::process_pdus now uses the stack task dispatch interface
2020-03-22 11:50:58 +00:00
Francisco Paisana
de3c28e52d
added task dispatch capabilities to stack interface
2020-03-22 11:50:58 +00:00
Francisco Paisana
46a1be3e76
updated mac-rlc interface to use unique_byte_buffer
2020-03-22 11:50:58 +00:00
Xavier Arteaga
2c93f6d20a
Fix PUCCH DMRS correlation
2020-03-22 08:49:12 +01:00
Ismael Gomez
fd3d4a7874
Refactor thread_pool: use std::mutex and fix some hidden potential bugs
2020-03-22 08:48:40 +01:00
Francisco Paisana
82cb6baef0
now the whole ue and enb mac uses the logmap
2020-03-20 11:32:03 +00:00
Francisco Paisana
45bc123967
remove manual tti counters from the rrc
2020-03-19 21:52:53 +00:00
Francisco Paisana
770f04b92a
the rrc now only works with the stack latest tti, instead of mac's tti
2020-03-19 16:47:55 +00:00