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
wangjie
OpenXG-RAN
Commits
f31b8d8c
Commit
f31b8d8c
authored
4 years ago
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Keep track of used PUCCH resources
parent
0d431000
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
18 additions
and
0 deletions
+18
-0
openair2/LAYER2/NR_MAC_gNB/config.c
openair2/LAYER2/NR_MAC_gNB/config.c
+8
-0
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c
+3
-0
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
+4
-0
openair2/NR_PHY_INTERFACE/NR_IF_Module.c
openair2/NR_PHY_INTERFACE/NR_IF_Module.c
+3
-0
No files found.
openair2/LAYER2/NR_MAC_gNB/config.c
View file @
f31b8d8c
...
...
@@ -350,6 +350,14 @@ int rrc_mac_config_req_gNB(module_id_t Mod_idP,
AssertFatal
(
RC
.
nrmac
[
Mod_idP
]
->
common_channels
[
0
].
vrb_map_UL
,
"could not allocate memory for RC.nrmac[]->common_channels[0].vrb_map_UL
\n
"
);
for
(
int
i
=
0
;
i
<
MAX_NUM_BWP
;
++
i
)
{
RC
.
nrmac
[
Mod_idP
]
->
pucch_index_used
[
i
]
=
calloc
(
n
,
sizeof
(
*
RC
.
nrmac
[
Mod_idP
]
->
pucch_index_used
));
AssertFatal
(
RC
.
nrmac
[
Mod_idP
]
->
pucch_index_used
[
i
],
"could not allocate memory for RC.nrmac[]->pucch_index_used[%d]
\n
"
,
i
);
}
LOG_I
(
MAC
,
"Configuring common parameters from NR ServingCellConfig
\n
"
);
config_common
(
Mod_idP
,
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_uci.c
View file @
f31b8d8c
...
...
@@ -456,12 +456,15 @@ bool nr_acknack_scheduling(int mod_id,
curr_pucch
->
frame
=
frame
;
curr_pucch
->
dai_c
++
;
int
*
pucch_index_used
=
RC
.
nrmac
[
mod_id
]
->
pucch_index_used
[
sched_ctrl
->
active_ubwp
->
bwp_Id
];
if
(
curr_pucch
->
dai_c
==
1
)
{
/* FIXME for first allocation: find free resource, here assume first PUCCH
* resource and first_ul_slot_tdd */
const
int
pucch_res
=
0
;
curr_pucch
->
resource_indicator
=
pucch_res
;
curr_pucch
->
ul_slot
=
first_ul_slot_tdd
;
DevAssert
(
pucch_index_used
[
first_ul_slot_tdd
]
==
0
);
pucch_index_used
[
first_ul_slot_tdd
]
+=
1
;
/* verify that at that slot and symbol, resources are free.
* Note: this does not handle potential mux of PUCCH in the same symbol! */
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_gNB/nr_mac_gNB.h
View file @
f31b8d8c
...
...
@@ -549,6 +549,10 @@ typedef struct gNB_MAC_INST_s {
time_stats_t
schedule_pch
;
/// CCE lists
int
cce_list
[
MAX_NUM_BWP
][
MAX_NUM_CORESET
][
MAX_NUM_CCE
];
/// PUCCH: keep track of the resources has already been used by saving the
/// highest index not yet been used in a given slot. Dynamically allocated
/// so we can have it for every slot as a function of the numerology
int
*
pucch_index_used
[
MAX_NUM_BWP
];
/// DL preprocessor for differentiated scheduling
nr_pp_impl_dl
pre_processor_dl
;
...
...
This diff is collapsed.
Click to expand it.
openair2/NR_PHY_INTERFACE/NR_IF_Module.c
View file @
f31b8d8c
...
...
@@ -104,6 +104,9 @@ void handle_nr_uci(NR_UL_IND_t *UL_info)
}
UL_info
->
uci_ind
.
num_ucis
=
0
;
// mark corresponding PUCCH resources as free
// NOTE: we just assume it is BWP ID 1, to be revised for multiple BWPs
RC
.
nrmac
[
mod_id
]
->
pucch_index_used
[
1
][
slot
]
=
0
;
}
...
...
This diff is collapsed.
Click to expand it.
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