Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
canghaiwuhen
OpenXG-RAN
Commits
02040568
Commit
02040568
authored
Sep 18, 2020
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
PreProc IF: save CCE info per UE
parent
5e5abe42
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
24 additions
and
21 deletions
+24
-21
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
+21
-21
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
+3
-0
No files found.
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_dlsch.c
View file @
02040568
...
@@ -452,8 +452,26 @@ void nr_simple_dlsch_preprocessor(module_id_t module_id,
...
@@ -452,8 +452,26 @@ void nr_simple_dlsch_preprocessor(module_id_t module_id,
lcid
,
lcid
,
sched_ctrl
->
rlc_status
[
lcid
].
bytes_in_buffer
);
sched_ctrl
->
rlc_status
[
lcid
].
bytes_in_buffer
);
/* Find a free CCE */
const
int
target_ss
=
NR_SearchSpace__searchSpaceType_PR_ue_Specific
;
const
int
target_ss
=
NR_SearchSpace__searchSpaceType_PR_ue_Specific
;
sched_ctrl
->
search_space
=
get_searchspace
(
sched_ctrl
->
active_bwp
,
target_ss
);
sched_ctrl
->
search_space
=
get_searchspace
(
sched_ctrl
->
active_bwp
,
target_ss
);
uint8_t
nr_of_candidates
;
find_aggregation_candidates
(
&
sched_ctrl
->
aggregation_level
,
&
nr_of_candidates
,
sched_ctrl
->
search_space
);
sched_ctrl
->
coreset
=
get_coreset
(
sched_ctrl
->
active_bwp
,
sched_ctrl
->
search_space
,
1
/* dedicated */
);
sched_ctrl
->
cce_index
=
allocate_nr_CCEs
(
RC
.
nrmac
[
module_id
],
sched_ctrl
->
active_bwp
,
sched_ctrl
->
coreset
,
sched_ctrl
->
aggregation_level
,
sched_ctrl
->
search_space
->
searchSpaceType
->
present
-
1
,
UE_id
,
0
);
// m
if
(
sched_ctrl
->
cce_index
<
0
)
{
LOG_E
(
MAC
,
"%s(): could not find CCE for UE %d
\n
"
,
__func__
,
UE_id
);
return
;
}
}
}
void
nr_schedule_ue_spec
(
module_id_t
module_id
,
void
nr_schedule_ue_spec
(
module_id_t
module_id
,
...
@@ -479,24 +497,6 @@ void nr_schedule_ue_spec(module_id_t module_id,
...
@@ -479,24 +497,6 @@ void nr_schedule_ue_spec(module_id_t module_id,
//if (sched_ctrl->rbSize < 0 && !get_softmodem_params()->phy_test)
//if (sched_ctrl->rbSize < 0 && !get_softmodem_params()->phy_test)
// return;
// return;
/* Find a free CCE */
uint8_t
nr_of_candidates
,
aggregation_level
;
find_aggregation_candidates
(
&
aggregation_level
,
&
nr_of_candidates
,
sched_ctrl
->
search_space
);
NR_ControlResourceSet_t
*
coreset
=
get_coreset
(
sched_ctrl
->
active_bwp
,
sched_ctrl
->
search_space
,
1
/* dedicated */
);
int
CCEIndex
=
allocate_nr_CCEs
(
gNB_mac
,
sched_ctrl
->
active_bwp
,
coreset
,
aggregation_level
,
sched_ctrl
->
search_space
->
searchSpaceType
->
present
-
1
,
UE_id
,
0
);
// m
if
(
CCEIndex
<
0
)
{
LOG_E
(
MAC
,
"%s(): could not find CCE for UE %d
\n
"
,
__func__
,
UE_id
);
return
;
}
/* Find PUCCH occasion */
/* Find PUCCH occasion */
int
pucch_sched
;
int
pucch_sched
;
nr_update_pucch_scheduling
(
module_id
,
UE_id
,
frame
,
slot
,
num_slots_per_tdd
,
&
pucch_sched
);
nr_update_pucch_scheduling
(
module_id
,
UE_id
,
frame
,
slot
,
num_slots_per_tdd
,
&
pucch_sched
);
...
@@ -655,7 +655,7 @@ void nr_schedule_ue_spec(module_id_t module_id,
...
@@ -655,7 +655,7 @@ void nr_schedule_ue_spec(module_id_t module_id,
UE_id
,
UE_id
,
sched_ctrl
->
active_bwp
->
bwp_Id
,
sched_ctrl
->
active_bwp
->
bwp_Id
,
sched_ctrl
->
search_space
,
sched_ctrl
->
search_space
,
coreset
,
sched_ctrl
->
coreset
,
dl_req
,
dl_req
,
pucch
,
pucch
,
nrOfLayers
,
nrOfLayers
,
...
@@ -671,8 +671,8 @@ void nr_schedule_ue_spec(module_id_t module_id,
...
@@ -671,8 +671,8 @@ void nr_schedule_ue_spec(module_id_t module_id,
time_domain_assignment
,
time_domain_assignment
,
startSymbolIndex
,
startSymbolIndex
,
nrOfSymbols
,
nrOfSymbols
,
aggregation_level
,
sched_ctrl
->
aggregation_level
,
CCEI
ndex
,
sched_ctrl
->
cce_i
ndex
,
current_harq_pid
,
current_harq_pid
,
harq
->
ndi
,
harq
->
ndi
,
harq
->
round
);
harq
->
round
);
...
...
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
View file @
02040568
...
@@ -295,6 +295,9 @@ typedef struct {
...
@@ -295,6 +295,9 @@ typedef struct {
/// CCE index and aggregation, should be coherent with cce_list
/// CCE index and aggregation, should be coherent with cce_list
NR_SearchSpace_t
*
search_space
;
NR_SearchSpace_t
*
search_space
;
NR_ControlResourceSet_t
*
coreset
;
int
cce_index
;
uint8_t
aggregation_level
;
uint16_t
ta_timer
;
uint16_t
ta_timer
;
int16_t
ta_update
;
int16_t
ta_update
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment