Commit a2757c87 authored by Nick Ho's avatar Nick Ho

Debug on initialization procedure

parent 82fbfae5
This diff is collapsed.
......@@ -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;
......
......@@ -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);*/
}
......
......@@ -35,10 +35,10 @@ typedef enum si_Periodicity{
}si_Periodicity_NB_IoT;
typedef enum si_RepetitionPattern{
si_RepetitionPattern_every2ndRF=20,
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=208,
si_TB_256=256,
si_TB_328=328,
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
......@@ -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){
......
......@@ -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];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment