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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
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
OpenXG
OpenXG-RAN
Commits
1717c1c6
Commit
1717c1c6
authored
Feb 02, 2021
by
rmagueta
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
PDCCH add support for search space candidate_idx > 0
parent
76b97450
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
20 additions
and
7 deletions
+20
-7
openair1/PHY/NR_TRANSPORT/nr_dci.c
openair1/PHY/NR_TRANSPORT/nr_dci.c
+13
-0
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
+5
-6
openair2/LAYER2/NR_MAC_gNB/mac_proto.h
openair2/LAYER2/NR_MAC_gNB/mac_proto.h
+1
-0
openair2/RRC/NR/rrc_gNB_reconfig.c
openair2/RRC/NR/rrc_gNB_reconfig.c
+1
-1
No files found.
openair1/PHY/NR_TRANSPORT/nr_dci.c
View file @
1717c1c6
...
...
@@ -182,6 +182,19 @@ void nr_generate_dci(PHY_VARS_gNB *gNB,
}
}
printf
(
"
\n
"
);
for
(
int
qq
=
0
;
qq
<
pdcch_pdu_rel15
->
dci_pdu
.
AggregationLevel
[
d
];
qq
++
)
{
printf
(
"gNB->cce_list[d][p2].reg_list[0].reg_idx = %i
\n
"
,
gNB
->
cce_list
[
d
][
qq
].
reg_list
[
0
].
reg_idx
);
}
printf
(
"
\n
"
);
for
(
int
qq
=
0
;
qq
<
pdcch_pdu_rel15
->
dci_pdu
.
AggregationLevel
[
d
];
qq
++
)
{
printf
(
"reg_list_order[qq] = %i
\n
"
,
reg_list_order
[
qq
]);
}
printf
(
"
\n
"
);
getchar
();
/*Mapping the encoded DCI along with the DMRS */
for
(
int
cce_count
=
0
;
cce_count
<
pdcch_pdu_rel15
->
dci_pdu
.
AggregationLevel
[
d
];
cce_count
++
)
{
...
...
openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_bch.c
View file @
1717c1c6
...
...
@@ -230,6 +230,7 @@ void schedule_control_sib1(module_id_t module_id,
int
time_domain_allocation
,
uint8_t
mcsTableIdx
,
uint8_t
mcs
,
uint8_t
candidate_idx
,
int
num_total_bytes
)
{
gNB_MAC_INST
*
gNB_mac
=
RC
.
nrmac
[
module_id
];
...
...
@@ -261,13 +262,10 @@ void schedule_control_sib1(module_id_t module_id,
gNB_mac
->
sched_ctrlCommon
->
coreset
,
gNB_mac
->
sched_ctrlCommon
->
aggregation_level
,
0
,
0
,
candidate_idx
,
nr_of_candidates
);
if
(
gNB_mac
->
sched_ctrlCommon
->
cce_index
<
0
)
{
LOG_E
(
MAC
,
"%s(): could not find CCE for coreset0
\n
"
,
__func__
);
return
;
}
AssertFatal
(
gNB_mac
->
sched_ctrlCommon
->
cce_index
>=
0
,
"Could not find CCE for coreset0
\n
"
);
const
uint16_t
bwpSize
=
gNB_mac
->
type0_PDCCH_CSS_config
.
num_rbs
;
int
rbStart
=
gNB_mac
->
type0_PDCCH_CSS_config
.
cset_start_rb
;
...
...
@@ -454,6 +452,7 @@ void schedule_nr_sib1(module_id_t module_idP, frame_t frameP, sub_frame_t slotP)
int
time_domain_allocation
=
0
;
uint8_t
mcsTableIdx
=
0
;
uint8_t
mcs
=
6
;
uint8_t
candidate_idx
=
0
;
gNB_MAC_INST
*
gNB_mac
=
RC
.
nrmac
[
module_idP
];
...
...
@@ -469,7 +468,7 @@ void schedule_nr_sib1(module_id_t module_idP, frame_t frameP, sub_frame_t slotP)
for
(
int
i
=
0
;
i
<
sib1_sdu_length
;
i
++
)
LOG_D
(
MAC
,
"byte %d : %x
\n
"
,
i
,((
uint8_t
*
)
sib1_payload
)[
i
]);
// Configure sched_ctrlCommon for SIB1
schedule_control_sib1
(
module_idP
,
CC_id
,
time_domain_allocation
,
mcsTableIdx
,
mcs
,
sib1_sdu_length
);
schedule_control_sib1
(
module_idP
,
CC_id
,
time_domain_allocation
,
mcsTableIdx
,
mcs
,
candidate_idx
,
sib1_sdu_length
);
// Calculate number of symbols
int
startSymbolIndex
,
nrOfSymbols
;
...
...
openair2/LAYER2/NR_MAC_gNB/mac_proto.h
View file @
1717c1c6
...
...
@@ -85,6 +85,7 @@ void schedule_control_sib1(module_id_t module_id,
int
time_domain_allocation
,
uint8_t
mcsTableIdx
,
uint8_t
mcs
,
uint8_t
candidate_idx
,
int
num_total_bytes
);
void
schedule_nr_sib1
(
module_id_t
module_idP
,
frame_t
frameP
,
sub_frame_t
subframeP
);
...
...
openair2/RRC/NR/rrc_gNB_reconfig.c
View file @
1717c1c6
...
...
@@ -135,7 +135,7 @@ void fill_default_searchSpaceZero(NR_SearchSpace_t *ss0) {
// FIXME: update values from TS38.213 Section 10.1 Table 10.1-1: CCE aggregation levels and maximum number of PDCCH candidates per CCE aggregation level for CSS sets configured by searchSpaceSIB1
ss0
->
nrofCandidates
->
aggregationLevel1
=
NR_SearchSpace__nrofCandidates__aggregationLevel1_n0
;
ss0
->
nrofCandidates
->
aggregationLevel2
=
NR_SearchSpace__nrofCandidates__aggregationLevel2_n0
;
ss0
->
nrofCandidates
->
aggregationLevel4
=
NR_SearchSpace__nrofCandidates__aggregationLevel4_n
1
;
ss0
->
nrofCandidates
->
aggregationLevel4
=
NR_SearchSpace__nrofCandidates__aggregationLevel4_n
2
;
ss0
->
nrofCandidates
->
aggregationLevel8
=
NR_SearchSpace__nrofCandidates__aggregationLevel8_n0
;
ss0
->
nrofCandidates
->
aggregationLevel16
=
NR_SearchSpace__nrofCandidates__aggregationLevel16_n0
;
...
...
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