removing hardcoding of min bw size for type0 pdcch
This commit is contained in:
@@ -3528,13 +3528,23 @@ void get_type0_PDCCH_CSS_config_parameters(NR_Type0_PDCCH_CSS_config_t *type0_PD
|
|||||||
uint16_t ssb_start_symbol,
|
uint16_t ssb_start_symbol,
|
||||||
NR_SubcarrierSpacing_t scs_ssb,
|
NR_SubcarrierSpacing_t scs_ssb,
|
||||||
frequency_range_t frequency_range,
|
frequency_range_t frequency_range,
|
||||||
|
int nr_band,
|
||||||
uint32_t ssb_index,
|
uint32_t ssb_index,
|
||||||
uint32_t ssb_period,
|
uint32_t ssb_period,
|
||||||
uint32_t ssb_offset_point_a) {
|
uint32_t ssb_offset_point_a) {
|
||||||
|
|
||||||
NR_SubcarrierSpacing_t scs_pdcch;
|
NR_SubcarrierSpacing_t scs_pdcch;
|
||||||
|
|
||||||
channel_bandwidth_t min_channel_bw = bw_10MHz; // TODO remove hardcoding and implement Table 5.3.5-1 in 38.104
|
channel_bandwidth_t min_channel_bw;
|
||||||
|
|
||||||
|
// according to Table 5.3.5-1 in 38.104
|
||||||
|
// band 79 is the only one which minimum is 40
|
||||||
|
// for all the other channels it is either 10 or 5
|
||||||
|
// and there is no difference between the two for this implementation so it is set it to 10
|
||||||
|
if (nr_band == 79)
|
||||||
|
min_channel_bw = bw_40MHz;
|
||||||
|
else
|
||||||
|
min_channel_bw = bw_10MHz;
|
||||||
|
|
||||||
if (frequency_range == FR2) {
|
if (frequency_range == FR2) {
|
||||||
if(mib->subCarrierSpacingCommon == NR_MIB__subCarrierSpacingCommon_scs15or60)
|
if(mib->subCarrierSpacingCommon == NR_MIB__subCarrierSpacingCommon_scs15or60)
|
||||||
|
|||||||
@@ -134,6 +134,7 @@ void get_type0_PDCCH_CSS_config_parameters(NR_Type0_PDCCH_CSS_config_t *type0_PD
|
|||||||
uint16_t ssb_start_symbol,
|
uint16_t ssb_start_symbol,
|
||||||
NR_SubcarrierSpacing_t scs_ssb,
|
NR_SubcarrierSpacing_t scs_ssb,
|
||||||
frequency_range_t frequency_range,
|
frequency_range_t frequency_range,
|
||||||
|
int nr_band,
|
||||||
uint32_t ssb_index,
|
uint32_t ssb_index,
|
||||||
uint32_t ssb_period,
|
uint32_t ssb_period,
|
||||||
uint32_t ssb_offset_point_a);
|
uint32_t ssb_offset_point_a);
|
||||||
|
|||||||
@@ -1993,6 +1993,7 @@ void nr_ue_sib1_scheduler(module_id_t module_idP,
|
|||||||
ssb_start_symbol,
|
ssb_start_symbol,
|
||||||
scs_ssb,
|
scs_ssb,
|
||||||
frequency_range,
|
frequency_range,
|
||||||
|
mac->nr_band,
|
||||||
ssb_index,
|
ssb_index,
|
||||||
1, // If the UE is not configured with a periodicity, the UE assumes a periodicity of a half frame
|
1, // If the UE is not configured with a periodicity, the UE assumes a periodicity of a half frame
|
||||||
ssb_offset_point_a);
|
ssb_offset_point_a);
|
||||||
|
|||||||
@@ -219,6 +219,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP)
|
|||||||
ssb_start_symbol,
|
ssb_start_symbol,
|
||||||
scs,
|
scs,
|
||||||
FR1,
|
FR1,
|
||||||
|
band,
|
||||||
i_ssb,
|
i_ssb,
|
||||||
ssb_frame_periodicity,
|
ssb_frame_periodicity,
|
||||||
offset_pointa);
|
offset_pointa);
|
||||||
@@ -246,6 +247,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP)
|
|||||||
ssb_start_symbol,
|
ssb_start_symbol,
|
||||||
scs,
|
scs,
|
||||||
FR1,
|
FR1,
|
||||||
|
band,
|
||||||
i_ssb,
|
i_ssb,
|
||||||
ssb_frame_periodicity,
|
ssb_frame_periodicity,
|
||||||
offset_pointa);
|
offset_pointa);
|
||||||
@@ -281,6 +283,7 @@ void schedule_nr_mib(module_id_t module_idP, frame_t frameP, sub_frame_t slotP)
|
|||||||
ssb_start_symbol,
|
ssb_start_symbol,
|
||||||
scs,
|
scs,
|
||||||
FR2,
|
FR2,
|
||||||
|
band,
|
||||||
i_ssb,
|
i_ssb,
|
||||||
ssb_frame_periodicity,
|
ssb_frame_periodicity,
|
||||||
offset_pointa);
|
offset_pointa);
|
||||||
|
|||||||
Reference in New Issue
Block a user