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
promise
OpenXG-RAN
Commits
606403cf
Commit
606403cf
authored
6 years ago
by
Nick Ho
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
adjust trigger timing and RU allocation problem fixed
parent
b969ef8f
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
14 additions
and
10 deletions
+14
-10
openair1/SCHED/IF_Module_L1_primitives_NB_IoT.c
openair1/SCHED/IF_Module_L1_primitives_NB_IoT.c
+1
-1
openair2/LAYER2/MAC/eNB_scheduler_RA_NB_IoT.c
openair2/LAYER2/MAC/eNB_scheduler_RA_NB_IoT.c
+9
-7
openair2/LAYER2/MAC/extern_NB_IoT.h
openair2/LAYER2/MAC/extern_NB_IoT.h
+2
-0
openair2/LAYER2/MAC/vars_NB_IoT.h
openair2/LAYER2/MAC/vars_NB_IoT.h
+2
-2
No files found.
openair1/SCHED/IF_Module_L1_primitives_NB_IoT.c
View file @
606403cf
...
...
@@ -477,7 +477,7 @@ void schedule_response_NB_IoT(Sched_Rsp_NB_IoT_t *Sched_INFO)
//nulsch_harq->rep_tmp = ;
////////////////////////////////////////////////////////////////////////////////////////
LOG_I
(
PHY
,
"
IF module proceed UL config NULSCH pdu
\n
"
);
LOG_I
(
PHY
,
"
subframe = %d (TX timing), IF module proceed UL config NULSCH pdu, will trigger npusch in next subframe
\n
"
,
subframe
);
break
;
case
NFAPI_UL_CONFIG_NRACH_PDU_TYPE
:
//TODO just for update the nprach configuration (given at the beginning through phy_config_sib2)
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/MAC/eNB_scheduler_RA_NB_IoT.c
View file @
606403cf
...
...
@@ -182,20 +182,22 @@ void schedule_rar_NB_IoT(eNB_MAC_INST_NB_IoT *mac_inst, int abs_subframe){
rep
=
0
;
uint32_t
Iru
=
0
,
mcs
,
Nru
;
uint32_t
Nrep_UL
=
0
;
// need a table here
uint32_t
mappedMcsIndex
=
4
;
// assume all ue supported multi-tone
mcs
=
mapped_mcs
[
msg2_nodes
->
ce_level
][
mappedMcsIndex
];
// assume all ue supported multi-tone
//mcs = mapped_mcs[msg2_nodes->ce_level][mappedMcsIndex]; // assume all ue supported multi-tone
mcs
=
2
;
Nrep_UL
=
ULrep
[
rep
];
TBS
=
get_TBS_UL_NB_IoT
(
mcs
,
1
,
Iru
);
while
((
TBS
<
11
)
&&
(
Iru
<=
7
)){
// 88 bits
Iru
++
;
TBS
=
get_TBS_UL_NB_IoT
(
mcs
,
1
,
Iru
);
}
Nru
=
RU_table
[
Iru
];
//
Nru = RU_table[Iru];
Nru
=
RU_table_msg3
[
mcs
];
for
(
msg3_scheduling_delay
=
0
;
msg3_scheduling_delay
<
4
;
++
msg3_scheduling_delay
){
// 36.213 Table 16.3.3-1 Imcs=3'b000 Nru=4
msg3_subframe
=
msg2_end_subframe
+
msg3_scheduling_delay_table
[
msg3_scheduling_delay
]
+
1
;
if
(
0
==
Check_UL_resource
(
msg3_subframe
,
Nru
*
rep
,
&
npusch_info
,
0
,
0
)){
//1: multi-tones 0: single-tone. 1: format 2(ack/nack) 0: format 1
if
(
0
==
Check_UL_resource
(
msg3_subframe
,
Nru
*
Nrep_UL
,
&
npusch_info
,
0
,
0
)){
//1: multi-tones 0: single-tone. 1: format 2(ack/nack) 0: format 1
break
;
}
}
...
...
@@ -282,7 +284,7 @@ void schedule_rar_NB_IoT(eNB_MAC_INST_NB_IoT *mac_inst, int abs_subframe){
//msg2_nodes->ue_rnti = tc_rnti;
LOG_I
(
MAC
,
"[%04d][RA scheduler][MSG2] RARDCI %d-%d RAR %d-%d MSG3 %d-%d
\n
"
,
abs_subframe
-
1
,
dci_first_subframe
,
dci_end_subframe
,
msg2_first_subframe
,
msg2_end_subframe
,
npusch_info
.
sf_start
,
npusch_info
.
sf_end
);
LOG_I
(
MAC
,
"[%04d][RA scheduler][MSG2] RARDCI %d-%d RAR %d-%d MSG3 %d-%d
Nru = %d, Nrep = %d
\n
"
,
abs_subframe
-
1
,
dci_first_subframe
,
dci_end_subframe
,
msg2_first_subframe
,
msg2_end_subframe
,
npusch_info
.
sf_start
,
npusch_info
.
sf_end
,
Nru
,
Nrep_UL
);
LOG_D
(
MAC
,
"[%04d][RA scheduler][MSG2][CE%d] Change RA-RNTI %d->T-CRNTI %d
\n
"
,
abs_subframe
-
1
,
msg2_nodes
->
ce_level
,
msg2_nodes
->
ra_rnti
,
msg2_nodes
->
ue_rnti
);
LOG_D
(
MAC
,
"[%04d][RA scheduler][MSG2][CE%d] RAR DCI %d-%d RAR %d-%d MSG3 %d-%d
\n
"
,
abs_subframe
-
1
,
msg2_nodes
->
ce_level
,
dci_first_subframe
,
dci_end_subframe
,
msg2_first_subframe
,
msg2_end_subframe
,
npusch_info
.
sf_start
,
npusch_info
.
sf_end
);
...
...
@@ -296,7 +298,7 @@ void schedule_rar_NB_IoT(eNB_MAC_INST_NB_IoT *mac_inst, int abs_subframe){
fill_resource_DL
(
mac_inst
,
msg2_node
,
msg2_first_subframe
,
msg2_end_subframe
,
msg2_result
);
// fill msg3 resource
generate_scheduling_result_UL
(
-
1
,
-
1
,
npusch_info
.
sf_start
,
npusch_info
.
sf_end
,
dci_n0
,
tc_rnti
,
str11
,
(
void
*
)
0
);
generate_scheduling_result_UL
(
-
1
,
-
1
,
npusch_info
.
sf_start
+
3
,
npusch_info
.
sf_end
+
3
,
dci_n0
,
tc_rnti
,
str11
,
(
void
*
)
0
);
adjust_UL_resource_list
(
&
npusch_info
);
//simulate_rx(&simulate_rx_msg3_list, tc_rnti, npusch_info.sf_start);
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/MAC/extern_NB_IoT.h
View file @
606403cf
...
...
@@ -78,6 +78,7 @@ extern const int UL_TBS_Table[14][8];
const
int
UL_TBS_Table_msg3
[
8
];
extern
const
int
ULrep
[
8
];
extern
const
int
rachperiod
[
8
];
extern
const
int
rachstart
[
8
];
extern
const
int
rachrepeat
[
8
];
...
...
@@ -90,6 +91,7 @@ extern const double gvalue[8];
extern
const
double
pdcchoffset
[
4
];
extern
const
uint32_t
RU_table
[
8
];
extern
const
uint32_t
RU_table_msg3
[
8
];
extern
const
uint32_t
scheduling_delay
[
4
];
extern
const
uint32_t
msg3_scheduling_delay_table
[
4
];
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/MAC/vars_NB_IoT.h
View file @
606403cf
...
...
@@ -78,7 +78,7 @@ const int UL_TBS_Table[14][8]=
const
int
UL_TBS_Table_msg3
[
8
]
=
{
88
,
88
,
88
,
0
,
0
,
0
,
0
,
0
};
const
int
ULrep
[
8
]
=
{
1
,
2
,
4
,
8
,
16
,
32
,
64
,
128
};
const
int
rachperiod
[
8
]
=
{
40
,
80
,
160
,
240
,
320
,
640
,
1280
,
2560
};
const
int
rachstart
[
8
]
=
{
8
,
16
,
32
,
64
,
128
,
256
,
512
,
1024
};
const
int
rachrepeat
[
8
]
=
{
1
,
2
,
4
,
8
,
16
,
32
,
64
,
128
};
...
...
@@ -93,7 +93,7 @@ const double pdcchoffset[4] = {0, 0.125f, 0.25f, 0.375f};
const
int
dlrepeat
[
16
]
=
{
1
,
2
,
4
,
8
,
16
,
32
,
64
,
128
,
192
,
256
,
384
,
512
,
768
,
1024
,
1536
,
2048
};
const
uint32_t
RU_table
[
8
]
=
{
1
,
2
,
3
,
4
,
5
,
6
,
8
,
10
};
const
uint32_t
RU_table_msg3
[
8
]
=
{
4
,
3
,
1
,
1
,
1
,
1
,
1
,
1
};
const
uint32_t
scheduling_delay
[
4
]
=
{
8
,
16
,
32
,
64
};
const
uint32_t
msg3_scheduling_delay_table
[
4
]
=
{
12
,
16
,
32
,
64
};
...
...
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