Francisco Paisana
d8203acd56
implement harq resuming functionality
2020-12-12 15:58:32 +01:00
Francisco Paisana
42cdc5e340
Allocate all the leftover bytes of the TBS to last allocated MAC SDU.
...
Fix the way the RLC header is accounted for depending on the bearer id.
For instance, the SRB0 does not require any RLC header.
2020-10-30 13:35:15 +00:00
Francisco Paisana
c5c7700cb7
implemented DL logical channel prioritization test for finite PBRs
2020-10-14 22:55:12 +01:00
Francisco Paisana
2d3681699a
added test for DL sched logical channel prioritization. At the moment only PBR=infinity is tested
2020-10-14 22:55:12 +01:00
Francisco Paisana
688dda30a4
favour carriers with best channel conditions for UL grants due to SRs
2020-10-01 19:58:00 +01:00
Francisco Paisana
cbac98c89e
fix ack delay checks in scheduler tests
2020-08-28 14:31:29 +01:00
Ismael Gomez
a4835dd2c8
More accurate MCS reduction when PUSCH carries UCI ( #1630 )
2020-08-25 22:30:35 +02:00
Francisco Paisana
8b174ce2f4
changed interval interface to disallow interval::stop < interval::start via an assertion
2020-08-14 15:06:06 +01:00
Francisco Paisana
c1755727d7
changed interval method names, and added comments and assertions
2020-08-14 15:06:06 +01:00
Francisco Paisana
20b69fb22e
substitution of ul_alloc_t for prb_interval
2020-08-14 15:06:06 +01:00
Francisco Paisana
fe8f8be62d
apply separate cqi configurations to scells
2020-07-09 18:56:01 +02:00
Francisco Paisana
504e3a1b7a
fix max retx configuration in scheduler and updated tester to catch the error
2020-07-03 17:34:37 +01:00
Francisco Paisana
cb7f620254
created separate class to manage bearers buffers/status reports in the scheduler
2020-06-29 17:31:07 +01:00
Francisco Paisana
2f421d3e30
added cqi configuration in ca testing
2020-06-10 22:22:41 +01:00
Francisco Paisana
53b85691b5
moved sf result to sched class. This way each carrier has a view to the results of the remaining carriers in the same subframe
2020-06-10 22:22:41 +01:00
Francisco Paisana
5d33acdb53
changed name of sched_ue_carrier class
2020-06-10 22:22:41 +01:00
Francisco Paisana
7713df2cf9
fix fixed mcs issue
2020-05-15 14:29:17 +01:00
Francisco Paisana
94b8dd39a9
cleanup of sched testing cfg generation
2020-05-05 14:35:40 +01:00
Francisco Paisana
d5f1581759
remove old tti counter class
2020-05-05 14:35:40 +01:00
Francisco Paisana
3c29bce014
apply segmentation break check to newtxs only. Allow configurable cqi
2020-05-05 14:35:40 +01:00
Francisco Paisana
c75e31db03
added random cqi to sched tester
2020-05-05 14:35:40 +01:00
Francisco Paisana
d40b4040b0
scell activation as part of the single ue tester
2020-05-05 14:35:40 +01:00
Francisco Paisana
0db2bd1cb5
moved test_ra to ue test class
2020-05-05 14:35:40 +01:00
Francisco Paisana
5d41fd0aec
renamed ue test structs
2020-05-05 14:35:40 +01:00
Francisco Paisana
1e56082214
use ul/dl harq info storing at the ue side to evalue info stored in the dl/ul sched result dcis
2020-05-05 14:35:40 +01:00
Francisco Paisana
500a7f6357
created new separate ue class in sched tester to handle acks and harq tests
2020-05-05 14:35:40 +01: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
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
66a38f53f5
fix req_bytes methods to account for new method to calculate conres scheduling.
2020-04-22 11:34:08 +01:00
Francisco Paisana
d716d8bf7e
use mini state machine for ConRes CE scheduling instead of relying that there is data in the DL buffer
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
Francisco Paisana
179e959d05
fix msg3 retx issue. Now nof_prb for pucch above 1 are forbidden for prb==6
2020-04-01 15:02:21 +01:00
Francisco Paisana
34bc48d31a
fix cfi to cc assignment
2020-03-18 19:55:39 +00:00
Francisco Paisana
ede09cb9b2
added dynamic CFI capability to the eNB scheduler
2020-03-17 22:06:37 +00:00
Xavier Arteaga
e832769ae6
Updated copyright
2020-03-16 11:26:06 +01:00
Francisco Paisana
afd7ea9e83
Fixed the check for msg3 delay to account for retxs
2020-03-13 19:57:48 +00:00
Francisco Paisana
5330249625
created tti_point type and unit test. Added also the tti_point to the scheduler harqs, and rrc procedure
2020-03-13 19:20:40 +00:00
Francisco Paisana
4217dba7e0
fix msg3 delayed allocation and update test
2020-03-13 08:30:42 +01:00
Francisco Paisana
7548402632
change scell activation interface to use arrays. Added a method to the scheduler to get the current set of activated carriers
2020-03-11 21:56:33 +01:00
Xavier Arteaga
76408b195e
Rename TX_DELAY and FDD_HARQ_DELAY_MS
2020-03-11 21:16:36 +01:00
Francisco Paisana
9ad80ee29f
added initial_dl_cqi to the enb rr.cfg parser
2020-03-10 22:06:07 +00:00
Francisco Paisana
bcbb08ebae
use initial_dl_cqi for first DL tx.
2020-03-10 22:06:07 +00:00
Francisco Paisana
ab69c6fe43
account for delays in RAR tx in scheduler CA tester
2020-03-10 22:06:07 +00:00
Francisco Paisana
f3c3c52fcd
added ue_cc_idx to dci allocation
2020-03-10 14:17:49 +01:00
Francisco Paisana
e62972d38e
fix fdd delays in scheduler
2020-03-10 14:17:49 +01:00
Francisco Paisana
ec1f1cc677
remove const_casts from scheduler. Fix ODR issue
2020-03-05 20:23:07 +00:00
Francisco Paisana
e9a599857a
created a header for all common structs and helper functions
2020-03-05 20:23:07 +00:00
Francisco Paisana
02ccb8b32b
fix wrong calculation of sched tx and rx delays
2020-03-05 20:23:07 +00:00
Francisco Paisana
43e67b8536
created a harq entity that handles all harq procs. This entity accepts as arg the number of harq procs.
2020-03-05 17:51:33 +00:00
Francisco Paisana
d1356568e0
separated sf sched result from sf_sched class. The interface became way simpler. No need for finish_tti() method, sf_sched::new_tti() is called automatically when we access the sf_sched.
2020-03-05 00:04:21 +00:00
Francisco Paisana
bb38fa7119
fixed tti resetting after tti end
2020-03-05 00:04:21 +00:00
Francisco Paisana
47b05118ad
simplified msg3 allocation. Now we can allocate resources ahead of time (e.g. msg3 is 2 ttis ahead) using the sf_sched interface. It's guaranteed that the given allocations wont be erased when the respective tti starts
2020-03-05 00:04:21 +00:00
Francisco Paisana
8f7890c60a
store mask results in separate variables for testing, and reset sf_sched state at the end of the tti
2020-03-05 00:04:21 +00:00
Francisco Paisana
b37d9b9930
fixed msg4 setting in sched tester
2020-03-03 21:26:17 +00:00
Francisco Paisana
ad9e126299
test for different enb_cc_idxs as pcell. Bug fixes
2020-03-02 16:33:31 +00:00
Francisco Paisana
0f3ef11f8b
now the scheduler only activates a scell after receiving a valid CQI for the SCell
2020-03-02 16:33:31 +00:00
Francisco Paisana
f571b7c16b
cleaned up some of the log error messages in the sched tester
2020-03-02 16:33:31 +00:00
Francisco Paisana
c595696ec2
no need for a separate class for the CA tester
2020-03-02 16:33:31 +00:00
Francisco Paisana
b44754f0ae
the CA and random sched testers now use same structs and common interface.
2020-03-02 16:33:31 +00:00
Francisco Paisana
385fa226e0
started to use a type-safe tti counter for comparisons. Uniformized the common_sched_tester api. Next, need to use the same struct to register events.
2020-03-02 16:33:31 +00:00
Francisco Paisana
518f813f13
now the CA testing generation and simulation happen simultaneously. This way we can do more tti/event specific checks
2020-03-02 16:33:31 +00:00
Francisco Paisana
b319f8dfcd
created first version of CA test. Now we need to create actual asserts
2020-03-02 16:33:31 +00:00
Francisco Paisana
507bc2d2a2
created a test for CA. Currently is quite empty
2020-03-02 16:33:31 +00:00
Francisco Paisana
e859d622c7
added logref class to forbid logmap pointer invalidation. Created a test for the logref, and introduced it in the scheduler, rrc and nas
2020-02-28 11:33:26 +00:00
Francisco Paisana
87038375d5
fixed the building of MAC SDUs in the scheduler. Now, we ensure there is always space for the MAC subheader and RLC header. The MAC subheader is correctly discounted from the remaining bytes in a TB.
2020-02-10 16:55:18 +00:00
Francisco Paisana
c8fc0d91b3
changed the supported cc list to a vector of structs
2020-02-07 15:06:46 +00:00
Francisco Paisana
42b15c7bed
use common ue_cfg interface to set the ue antenna info
2020-02-07 15:06:46 +00:00
Francisco Paisana
5f557700f2
changed the sched::ue_cfg(...) function to allow diff configurations. The RRC now activates all carriers after rrc reconf complete
2020-02-07 15:06:46 +00:00
Francisco Paisana
88a22e7dbf
support cc cfg from rrc
2020-02-07 15:06:46 +00:00
Francisco Paisana
e86862611c
update the scheduler interfaces to accommodate the configuration of multiple carriers
2020-02-07 15:06:46 +00:00
Francisco Paisana
73c528793f
add interface changes to dummy classes and scheduler test
2020-02-07 15:06:46 +00:00
Francisco Paisana
2dc31ea440
added interface to configure multiple cells from the RRC
2020-02-07 15:06:46 +00:00
Francisco Paisana
c8cd12ac53
updated the test logging utils
2020-01-29 17:15:35 +00:00
Francisco Paisana
daf471be1f
moved test of pdsch collisions for separate test file
2020-01-29 17:15:35 +00:00
Francisco Paisana
c537d38650
separated sched tests based on output into a separate file. Added scheduler random tester to unit tests
2020-01-29 17:15:35 +00:00
Francisco Paisana
af0b80b0a7
fix test for prb==6 and accidental adaptive retx in UL
2020-01-28 17:15:23 +00:00
Francisco Paisana
a74dcd947f
changed rar/msg3 scheduling to accommodate multiple rars per TTI
2020-01-28 17:15:23 +00:00
Francisco Paisana
dc782e514b
change the naming from tti --> sf for scheduling operations specific to a subframe
2020-01-28 17:15:23 +00:00
Andre Puschmann
476f970ee1
replace FIXME with TODO
2019-12-18 11:25:56 +01:00
Pedro Alvarez
c5979f59eb
Clang format UE, eNB and lib ( #850 )
...
* Clang-formated UE, eNB and lib.
* Fixed compiling errors from clang-format.
* Fix linking issues introduced by clang-format
* Fix poor formating in initializing arrays of arrays.
* Fix mistake in conflict resolution on rm_turbo.c
* Re-apply clang format to gtpc_ies.h
2019-12-16 16:04:22 +01:00
Francisco Paisana
ab3d7dd413
updated sched interface for multiple carriers
2019-12-03 15:46:22 +00:00
Francisco Paisana
eeb47f8fa4
fixed issue regarding repetition of ConRes tx
2019-12-03 10:04:11 +00:00
Francisco Paisana
3159a5b84a
added cc_idx to dl_rach_info
2019-12-02 12:36:27 +00:00
Francisco Paisana
cab9327b1a
updated scheduler interfaces to accommodate multiple carriers
2019-12-02 12:36:27 +00:00
Francisco Paisana
6d4f746a61
moved tti_sched_result out of carrier_sched. Removed interdependencies between the two classes. Simplified ra_sched and bc_sched initialization
2019-11-28 20:22:40 +00:00
Francisco Paisana
0b962f19f4
fix compilation issue
2019-11-28 11:44:54 +00:00
Francisco Paisana
67ccaf1029
created a file with common test utils, including assertions, a logger specialized for tests that counts the number of errors and warnings during the test run and can print diagnostics on exit
2019-11-28 11:44:54 +00:00
Francisco Paisana
011b2168a6
grouped different sched params/args/derived params into a single struct to simplify the ctor api of different sched sub components
2019-11-27 15:20:55 +00:00
Andre Puschmann
6a9c4d94b0
fix printf in scheduler test
2019-11-24 14:59:54 +01:00
Francisco Paisana
b88b8fde7b
moved the carrier scheduler and tti_result_t classes out of the main sched class. Now it is possible to instantiate more than one carrier_sched per sched
2019-10-31 16:01:04 +00:00
Francisco Paisana
2019fec37a
moved dl/ul scheduling to the a separate class carrier_sched
2019-10-31 16:01:04 +00:00
Francisco Paisana
00d24872d9
clang-format on all the scheduler files
2019-10-31 16:01:04 +00:00
Francisco Paisana
c19e0d9423
moved the RAR/Msg3 scheduling to a separate class
2019-10-23 18:46:26 +01:00
Francisco Paisana
d79e49ed4c
moved the BC scheduling to a separate class/file
2019-10-23 18:06:32 +01:00
Francisco Paisana
837c16557f
started to implement separate SIB scheduler, and its tests. This is particualrly important for CA
2019-10-23 17:48:47 +01:00
Francisco Paisana
84ac16826f
modernized the scheduler code, and removed some clang-tidy warnings
2019-10-23 17:48:47 +01:00
Francisco Paisana
ad0b3ce6e2
modernize the random sched test
2019-10-23 17:39:45 +01:00
Ismael Gomez
3828e03f33
Refactor in eNodeB, add channel emulator and fixes in OFDM
...
* Added channel emulator to srsENB. Added support for fixed delay
* Bug in OFDM when using nonguru mode
* A few changes and refactor in eNodeB
2019-10-23 11:09:39 -05:00
Guillem Foreman
db4127ca64
Fixes 256QAM, added pdsch table 2, fixed warnings
2019-07-04 15:49:43 +02:00
Francisco Paisana
415d3418b6
reorganized enb to mirror ue director/class structure with a stack class
2019-06-07 15:41:56 +02:00
Francisco Paisana
7be183c223
rework scheduler
2019-05-14 22:34:50 +02:00
Andre Puschmann
4b01a2e4a0
update copyright notice
2019-04-29 09:20:02 +02:00
Andre Puschmann
205db6f229
add missing license headers
2019-04-26 21:20:12 +02:00
Ismael Gomez
7780b1aba5
add tdd/ca support
2019-04-25 20:57:58 +02:00
Francisco Paisana
0204db2e12
new asn1 rrc library
2019-01-17 17:43:13 +01:00
David Rupprecht
06d4559294
Change include path absolut to project dir
2018-04-01 18:08:24 +02:00
Andre Puschmann
1daf7b04bc
add copyright header
2018-02-11 19:32:07 +01:00
Ismael Gomez
6037a2f2bd
changed logger classes
2017-06-23 16:29:46 +02:00
Ismael Gomez
e5ae82aef1
added srsENB code
2017-06-01 12:25:57 +02:00