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
a2757c87
Commit
a2757c87
authored
Jan 29, 2018
by
Nick Ho
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Debug on initialization procedure
parent
82fbfae5
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
100 additions
and
78 deletions
+100
-78
openair1/PHY/INIT/lte_init_NB_IoT.c
openair1/PHY/INIT/lte_init_NB_IoT.c
+57
-41
openair1/PHY/impl_defs_lte_NB_IoT.h
openair1/PHY/impl_defs_lte_NB_IoT.h
+1
-1
openair1/SCHED/IF_Module_L1_primitives_NB_IoT.c
openair1/SCHED/IF_Module_L1_primitives_NB_IoT.c
+2
-2
openair2/LAYER2/MAC/config_NB_IoT.h
openair2/LAYER2/MAC/config_NB_IoT.h
+26
-26
openair2/LAYER2/MAC/schedule_tool_NB_IoT.c
openair2/LAYER2/MAC/schedule_tool_NB_IoT.c
+11
-5
openair2/RRC/LITE/MESSAGES/asn1_msg_NB_IoT.c
openair2/RRC/LITE/MESSAGES/asn1_msg_NB_IoT.c
+3
-3
No files found.
openair1/PHY/INIT/lte_init_NB_IoT.c
View file @
a2757c87
This diff is collapsed.
Click to expand it.
openair1/PHY/impl_defs_lte_NB_IoT.h
View file @
a2757c87
...
...
@@ -400,7 +400,7 @@ typedef struct NPRACH_Parameters_NB_IoT{
}
nprach_parameters_NB_IoT_t
;
typedef
struct
{
A_SEQUENCE_OF
(
nprach_parameters_NB_IoT_t
)
list
;
nprach_parameters_NB_IoT_t
list
[
3
]
;
}
NPRACH_List_NB_IoT_t
;
typedef
long
RSRP_Range_t
;
...
...
openair1/SCHED/IF_Module_L1_primitives_NB_IoT.c
View file @
a2757c87
...
...
@@ -354,10 +354,10 @@ void PHY_config_req_NB_IoT(PHY_Config_NB_IoT_t* config_INFO){
{
//Dedicated Configuration
phy_config_dedicated_eNB_NB_IoT
(
config_INFO
->
mod_id
,
/*
phy_config_dedicated_eNB_NB_IoT(config_INFO->mod_id,
config_INFO->CC_id,
config_INFO->rnti,
&
config_INFO
->
extra_phy_parms
);
&config_INFO->extra_phy_parms);
*/
}
...
...
openair2/LAYER2/MAC/config_NB_IoT.h
View file @
a2757c87
...
...
@@ -35,10 +35,10 @@ typedef enum si_Periodicity{
}
si_Periodicity_NB_IoT
;
typedef
enum
si_RepetitionPattern
{
si_RepetitionPattern_every2ndRF
=
2
0
,
si_RepetitionPattern_every4thRF
=
40
,
si_RepetitionPattern_every8thRF
=
80
,
si_RepetitionPattern_every16thRF
=
160
si_RepetitionPattern_every2ndRF
=
0
,
si_RepetitionPattern_every4thRF
,
si_RepetitionPattern_every8thRF
,
si_RepetitionPattern_every16thRF
}
si_RepetitionPattern_NB_IoT
;
typedef
enum
sib_MappingInfo
{
...
...
@@ -51,14 +51,14 @@ typedef enum sib_MappingInfo{
}
sib_MappingInfo_NB_IoT
;
typedef
enum
si_TB
{
si_TB_56
=
56
,
si_TB_120
=
120
,
si_TB_208
=
20
8
,
si_TB_256
=
256
,
si_TB_328
=
32
8
,
si_TB_440
=
440
,
si_TB_552
=
552
,
si_TB_680
=
680
si_TB_56
=
2
,
si_TB_120
=
2
,
si_TB_208
=
8
,
si_TB_256
=
8
,
si_TB_328
=
8
,
si_TB_440
=
8
,
si_TB_552
=
8
,
si_TB_680
=
8
}
si_TB_NB_IoT
;
///RACH_ConfigCommon configuration
...
...
@@ -92,7 +92,7 @@ typedef enum nprach_Periodicity{
nprach_Periodicity_ms80
=
80
,
nprach_Periodicity_ms160
=
160
,
nprach_Periodicity_ms240
=
240
,
nprach_Periodicity_ms320
=
320
,
nprach_Periodicity_ms320
=
320
,
nprach_Periodicity_ms640
=
640
,
nprach_Periodicity_ms1280
=
1280
,
nprach_Periodicity_ms2560
=
2560
...
...
@@ -202,7 +202,7 @@ typedef enum si_periodicity_e{
rf128
=
1280
,
rf256
=
2560
,
rf512
=
5120
,
rf1024
=
10240
,
rf1024
=
10240
,
rf2048
=
20480
,
rf4096
=
40960
}
si_periodicity_t
;
...
...
@@ -210,7 +210,7 @@ typedef enum si_periodicity_e{
typedef
enum
si_repetition_pattern_e
{
every2ndRF
=
20
,
every4thRF
=
40
,
every8thRF
=
80
,
every8thRF
=
80
,
every16thRF
=
160
}
si_repetition_pattern_t
;
...
...
@@ -227,7 +227,7 @@ typedef enum si_tb_e{
typedef
struct
sibs_NB_IoT_sched_s
{
si_periodicity_t
si_periodicity
;
si_periodicity_t
si_periodicity
;
si_repetition_pattern_t
si_repetition_pattern
;
sib_MappingInfo_NB_IoT
sib_mapping_info
;
//bit vector
si_tb_t
si_tb
;
...
...
@@ -257,10 +257,10 @@ typedef struct {
uint32_t
mac_nprach_SubcarrierMSG3_RangeStart_NB_IoT
;
uint32_t
mac_maxNumPreambleAttemptCE_NB_IoT
;
uint32_t
mac_numRepetitionsPerPreambleAttempt_NB_IoT
;
//
css
uint32_t
mac_npdcch_NumRepetitions_RA_NB_IoT
;
//
rmax
uint32_t
mac_npdcch_StartSF_CSS_RA_NB_IoT
;
//
G
uint32_t
mac_npdcch_Offset_RA_NB_IoT
;
//
alpha offset
//
css
uint32_t
mac_npdcch_NumRepetitions_RA_NB_IoT
;
//
rmax
uint32_t
mac_npdcch_StartSF_CSS_RA_NB_IoT
;
//
G
uint32_t
mac_npdcch_Offset_RA_NB_IoT
;
//
alpha offset
}
mac_NPRACH_ConfigSIB_NB_IoT
;
...
...
@@ -281,11 +281,11 @@ typedef struct rrc_config_NB_IoT_s{
///SIB1
uint32_t
cellIdentity_NB_IoT
;
sib1_NB_IoT_sched_t
sib1_NB_IoT_sched_config
;
///SIBS
sibs_NB_IoT_sched_t
sibs_NB_IoT_sched
[
NUMBER_OF_SIBS_MAX_NB_IoT
];
si_window_length_t
si_window_length
;
uint32_t
si_radio_frame_offset
;
sib1_NB_IoT_sched_t
sib1_NB_IoT_sched_config
;
///SIBS
sibs_NB_IoT_sched_t
sibs_NB_IoT_sched
[
NUMBER_OF_SIBS_MAX_NB_IoT
];
si_window_length_t
si_window_length
;
uint32_t
si_radio_frame_offset
;
///SIB2 mac_RACH_ConfigCommon_NB_IoT
mac_RACH_ConfigCommon_NB_IoT
mac_RACH_ConfigCommon
[
3
];
...
...
@@ -298,4 +298,4 @@ typedef struct rrc_config_NB_IoT_s{
}
rrc_config_NB_IoT_t
;
#endif
#endif
\ No newline at end of file
openair2/LAYER2/MAC/schedule_tool_NB_IoT.c
View file @
a2757c87
...
...
@@ -178,19 +178,17 @@ void Initialize_Resource(void){
// extend subframe align to si-period
void
extend_available_resource_DL
(
eNB_MAC_INST_NB_IoT
*
mac_inst
,
int
max_subframe
){
// assume max_subframe is found.
available_resource_DL_t
*
new_node
;
//int temp;
uint32_t
i
,
i_div_si_window
;
//uint32_t si_period_div_window;
printf
(
"%d %d
\n
"
,
max_subframe
,
mac_inst
->
schedule_subframe_DL
);
if
(
max_subframe
>
mac_inst
->
schedule_subframe_DL
){
// align to si-period
max_subframe
=
((
max_subframe
%
mac_inst
->
rrc_config
.
si_window_length
)
==
0
)
?
max_subframe
:
(((
max_subframe
/
mac_inst
->
rrc_config
.
si_window_length
)
+
1
)
*
mac_inst
->
rrc_config
.
si_window_length
);
printf
(
"max %d last->end %p
\n
"
,
max_subframe
,
available_resource_DL_last
);
//
printf("max %d last->end %p\n", max_subframe, available_resource_DL_last);
if
(
mac_inst
->
schedule_subframe_DL
==
available_resource_DL_last
->
end_subframe
){
available_resource_DL_last
->
end_subframe
=
max_subframe
;
//available_resource_DL_last->DLSF_num += calculate_DLSF(mac_inst, mac_inst->schedule_subframe_DL+1, max_subframe);
...
...
@@ -208,13 +206,17 @@ void extend_available_resource_DL(eNB_MAC_INST_NB_IoT *mac_inst, int max_subfram
for
(
i
=
mac_inst
->
schedule_subframe_DL
;
i
<
max_subframe
;
i
+=
mac_inst
->
rrc_config
.
si_window_length
){
i_div_si_window
=
i
/
mac_inst
->
rrc_config
.
si_window_length
;
if
(
-
1
!=
mac_inst
->
sibs_table
[
i_div_si_window
]){
printf
(
"[sibs%d] %d
\n
"
,
mac_inst
->
sibs_table
[
i_div_si_window
],
i
);
//printf("[sibs%d] %d\n", mac_inst->sibs_table[i_div_si_window], i);
printf
(
"Schedule SIB in
\n
"
);
schedule_sibs_NB_IoT
(
mac_inst
,
mac_inst
->
sibs_table
[
i_div_si_window
],
i
);
printf
(
"Schedule SIB out
\n
"
);
}
}
mac_inst
->
schedule_subframe_DL
=
max_subframe
;
}
LOG_I
(
MAC
,
"[NB-IoT] Initialization of the DL Resource grid has been done
\n
"
);
return
;
}
...
...
@@ -323,12 +325,16 @@ available_resource_DL_t *check_sibs_resource(eNB_MAC_INST_NB_IoT *mac_inst, uint
}
pt
=
pt
->
next
;
}
//print_available_resource_DL();
//DEBUG("sibs %d", check_start_subframe);
if
((
available_resource_DL_t
*
)
0
==
pt
){
return
(
available_resource_DL_t
*
)
0
;
}
num_dlsf
=
calculate_DLSF
(
mac_inst
,
check_start_subframe
,
pt
->
end_subframe
);
if
((
available_resource_DL_t
*
)
0
==
pt
){
...
...
openair2/RRC/LITE/MESSAGES/asn1_msg_NB_IoT.c
View file @
a2757c87
...
...
@@ -318,11 +318,11 @@ uint8_t do_SIB1_NB_IoT(uint8_t Mod_id, int CC_id,
//FIXME
(
*
sib1_NB_IoT
)
->
freqBandIndicator_r13
=
#if defined(ENABLE_ITTI)
configuration
->
eutra_band
;
configuration
->
eutra_band
[
CC_id
]
;
#else
5
;
//if not configured we use band 5 (UL: 824 MHz - 849MHz / DL: 869 MHz - 894 MHz FDD mode)
#endif
//OPTIONAL new parameters, to be used?
/*
* freqBandInfo_r13
...
...
@@ -556,7 +556,7 @@ uint8_t do_SIB23_NB_IoT(uint8_t Mod_id,
nprach_parameters
[
1
].
nprach_Periodicity_r13
=
configuration
->
nprach_Periodicity
[
CC_id
];
nprach_parameters
[
1
].
nprach_StartTime_r13
=
configuration
->
nprach_StartTime
[
CC_id
];
nprach_parameters
[
1
].
nprach_SubcarrierOffset_r13
=
configuration
->
nprach_SubcarrierOffset
[
CC_id
];
nprach_parameters
[
1
].
nprach_NumSubcarriers_r13
=
configuration
->
nprach_NumSubcarriers
[
1
];
nprach_parameters
[
1
].
nprach_NumSubcarriers_r13
=
configuration
->
nprach_NumSubcarriers
[
CC_id
];
nprach_parameters
[
1
].
numRepetitionsPerPreambleAttempt_r13
=
configuration
->
numRepetitionsPerPreambleAttempt_NB
[
CC_id
];
nprach_parameters
[
1
].
nprach_SubcarrierMSG3_RangeStart_r13
=
configuration
->
nprach_SubcarrierMSG3_RangeStart
[
CC_id
];
nprach_parameters
[
1
].
maxNumPreambleAttemptCE_r13
=
configuration
->
maxNumPreambleAttemptCE_NB
[
CC_id
];
...
...
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