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
Michael Black
OpenXG-RAN
Commits
0818e4b9
Commit
0818e4b9
authored
3 years ago
by
francescomani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ssb start subcarrier in ssb indication for reception of sib1
parent
60e0048c
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
41 additions
and
29 deletions
+41
-29
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_constants.h
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_constants.h
+1
-1
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
+3
-3
openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c
openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c
+1
-1
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
+7
-6
openair2/LAYER2/NR_MAC_UE/mac_proto.h
openair2/LAYER2/NR_MAC_UE/mac_proto.h
+2
-1
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
+4
-8
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
+14
-8
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
+9
-1
No files found.
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_constants.h
View file @
0818e4b9
...
...
@@ -14,7 +14,7 @@
/// RX_IND
#define FAPI_NR_RX_PDU_TYPE_
MI
B 0x01
#define FAPI_NR_RX_PDU_TYPE_
SS
B 0x01
#define FAPI_NR_RX_PDU_TYPE_SIB 0x02
#define FAPI_NR_RX_PDU_TYPE_DLSCH 0x03
#define FAPI_NR_DCI_IND 0x04
...
...
This diff is collapsed.
Click to expand it.
nfapi/open-nFAPI/nfapi/public_inc/fapi_nr_ue_interface.h
View file @
0818e4b9
...
...
@@ -111,8 +111,8 @@ typedef struct {
uint8_t
ssb_index
;
uint8_t
ssb_length
;
uint16_t
cell_id
;
}
fapi_nr_
mi
b_pdu_t
;
uint16_t
ssb_start_subcarrier
;
}
fapi_nr_
ss
b_pdu_t
;
typedef
struct
{
uint32_t
pdu_length
;
...
...
@@ -124,7 +124,7 @@ typedef struct {
uint8_t
pdu_type
;
union
{
fapi_nr_pdsch_pdu_t
pdsch_pdu
;
fapi_nr_
mib_pdu_t
mi
b_pdu
;
fapi_nr_
ssb_pdu_t
ss
b_pdu
;
fapi_nr_sib_pdu_t
sib_pdu
;
};
}
fapi_nr_rx_indication_body_t
;
...
...
This diff is collapsed.
Click to expand it.
openair1/PHY/NR_UE_TRANSPORT/nr_pbch.c
View file @
0818e4b9
...
...
@@ -613,7 +613,7 @@ int nr_rx_pbch( PHY_VARS_NR_UE *ue,
uint16_t
number_pdus
=
1
;
nr_fill_dl_indication
(
&
dl_indication
,
NULL
,
&
rx_ind
,
proc
,
ue
,
gNB_id
);
nr_fill_rx_indication
(
&
rx_ind
,
FAPI_NR_RX_PDU_TYPE_
MI
B
,
gNB_id
,
ue
,
NULL
,
number_pdus
);
nr_fill_rx_indication
(
&
rx_ind
,
FAPI_NR_RX_PDU_TYPE_
SS
B
,
gNB_id
,
ue
,
NULL
,
number_pdus
);
if
(
ue
->
if_inst
&&
ue
->
if_inst
->
dl_indication
)
ue
->
if_inst
->
dl_indication
(
&
dl_indication
,
NULL
);
...
...
This diff is collapsed.
Click to expand it.
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
View file @
0818e4b9
...
...
@@ -139,12 +139,13 @@ void nr_fill_rx_indication(fapi_nr_rx_indication_t *rx_ind,
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
pdsch_pdu
.
pdu
=
dlsch0
->
harq_processes
[
harq_pid
]
->
b
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
pdsch_pdu
.
pdu_length
=
dlsch0
->
harq_processes
[
harq_pid
]
->
TBS
/
8
;
break
;
case
FAPI_NR_RX_PDU_TYPE_MIB
:
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
mib_pdu
.
pdu
=
ue
->
pbch_vars
[
gNB_id
]
->
decoded_output
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
mib_pdu
.
additional_bits
=
ue
->
pbch_vars
[
gNB_id
]
->
xtra_byte
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
mib_pdu
.
ssb_index
=
frame_parms
->
ssb_index
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
mib_pdu
.
ssb_length
=
frame_parms
->
Lmax
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
mib_pdu
.
cell_id
=
frame_parms
->
Nid_cell
;
case
FAPI_NR_RX_PDU_TYPE_SSB
:
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
ssb_pdu
.
pdu
=
ue
->
pbch_vars
[
gNB_id
]
->
decoded_output
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
ssb_pdu
.
additional_bits
=
ue
->
pbch_vars
[
gNB_id
]
->
xtra_byte
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
ssb_pdu
.
ssb_index
=
frame_parms
->
ssb_index
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
ssb_pdu
.
ssb_length
=
frame_parms
->
Lmax
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
ssb_pdu
.
cell_id
=
frame_parms
->
Nid_cell
;
rx_ind
->
rx_indication_body
[
n_pdus
-
1
].
ssb_pdu
.
ssb_start_subcarrier
=
frame_parms
->
ssb_start_subcarrier
;
break
;
default:
break
;
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_UE/mac_proto.h
View file @
0818e4b9
...
...
@@ -53,7 +53,8 @@ int8_t nr_ue_decode_mib(
uint8_t
extra_bits
,
uint32_t
ssb_length
,
uint32_t
ssb_index
,
void
*
pduP
,
void
*
pduP
,
uint16_t
ssb_start_subcarrier
,
uint16_t
cell_id
);
/**\brief decode SIB1 and other SIs pdus in NR_UE, from if_module dl_ind
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
View file @
0818e4b9
...
...
@@ -101,6 +101,7 @@ int8_t nr_ue_decode_mib(module_id_t module_id,
uint32_t
ssb_length
,
uint32_t
ssb_index
,
void
*
pduP
,
uint16_t
ssb_start_subcarrier
,
uint16_t
cell_id
)
{
LOG_D
(
MAC
,
"[L2][MAC] decode mib
\n
"
);
...
...
@@ -152,13 +153,8 @@ int8_t nr_ue_decode_mib(module_id_t module_id,
// TODO these values shouldn't be taken from SCC in SA
uint8_t
scs_ssb
=
get_softmodem_params
()
->
numerology
;
uint32_t
band
=
get_softmodem_params
()
->
band
;
int
scs_scaling
=
1
<<
scs_ssb
;
if
(
downlink_frequency
[
0
][
0
]
<
3e9
)
scs_scaling
=
scs_scaling
*
3
;
else
scs_scaling
=
scs_scaling
>>
2
;
uint16_t
ssb_start_symbol
=
get_ssb_start_symbol
(
band
,
scs_ssb
,
ssb_index
);
uint16_t
ssb_offset_point_a
=
(
ssb_start_subcarrier
-
ssb_subcarrier_offset
)
/
12
;
get_type0_PDCCH_CSS_config_parameters
(
&
mac
->
type0_PDCCH_CSS_config
,
frame
,
...
...
@@ -169,7 +165,7 @@ int8_t nr_ue_decode_mib(module_id_t module_id,
scs_ssb
,
frequency_range
,
ssb_index
,
(
N_RB_DL
-
20
)
>>
1
);
ssb_offset_point_a
);
mac
->
type0_pdcch_ss_mux_pattern
=
mac
->
type0_PDCCH_CSS_config
.
type0_pdcch_ss_mux_pattern
;
...
...
@@ -721,7 +717,7 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
}
/* PDSCH_TO_HARQ_FEEDBACK_TIME_IND (only if CRC scrambled by C-RNTI or CS-RNTI or new-RNTI)*/
if
(
mac
->
cg
&&
mac
->
ULbwp
[
mac
->
UL_BWP_Id
-
1
]
->
bwp_Dedicated
->
pucch_Config
->
choice
.
setup
->
dl_DataToUL_ACK
if
(
mac
->
cg
&&
mac
->
ULbwp
[
mac
->
UL_BWP_Id
-
1
]
->
bwp_Dedicated
->
pucch_Config
->
choice
.
setup
->
dl_DataToUL_ACK
)
dlsch_config_pdu_1_0
->
pdsch_to_harq_feedback_time_ind
=
mac
->
ULbwp
[
mac
->
UL_BWP_Id
-
1
]
->
bwp_Dedicated
->
pucch_Config
->
choice
.
setup
->
dl_DataToUL_ACK
->
list
.
array
[
dci
->
pdsch_to_harq_feedback_timing_indicator
.
val
][
0
];
else
// take direct offset for format 1_0
dlsch_config_pdu_1_0
->
pdsch_to_harq_feedback_time_ind
=
dci
->
pdsch_to_harq_feedback_timing_indicator
.
val
;
...
...
This diff is collapsed.
Click to expand it.
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.c
View file @
0818e4b9
...
...
@@ -47,7 +47,11 @@ const char *dl_indication_type[] = {"MIB", "SIB", "DLSCH", "DCI", "RAR"};
static
nr_ue_if_module_t
*
nr_ue_if_module_inst
[
MAX_IF_MODULES
];
// L2 Abstraction Layer
int
handle_bcch_bch
(
module_id_t
module_id
,
int
cc_id
,
unsigned
int
gNB_index
,
uint8_t
*
pduP
,
unsigned
int
additional_bits
,
uint32_t
ssb_index
,
uint32_t
ssb_length
,
uint16_t
cell_id
){
int
handle_bcch_bch
(
module_id_t
module_id
,
int
cc_id
,
unsigned
int
gNB_index
,
uint8_t
*
pduP
,
unsigned
int
additional_bits
,
uint32_t
ssb_index
,
uint32_t
ssb_length
,
uint16_t
ssb_start_subcarrier
,
uint16_t
cell_id
){
return
nr_ue_decode_mib
(
module_id
,
cc_id
,
...
...
@@ -55,7 +59,8 @@ int handle_bcch_bch(module_id_t module_id, int cc_id, unsigned int gNB_index, ui
additional_bits
,
ssb_length
,
// Lssb = 64 is not support
ssb_index
,
pduP
,
pduP
,
ssb_start_subcarrier
,
cell_id
);
}
...
...
@@ -158,14 +163,15 @@ int nr_ue_dl_indication(nr_downlink_indication_t *dl_info, NR_UL_TIME_ALIGNMENT_
switch
(
dl_info
->
rx_ind
->
rx_indication_body
[
i
].
pdu_type
){
case
FAPI_NR_RX_PDU_TYPE_
MI
B
:
case
FAPI_NR_RX_PDU_TYPE_
SS
B
:
ret_mask
|=
(
handle_bcch_bch
(
dl_info
->
module_id
,
dl_info
->
cc_id
,
dl_info
->
gNB_index
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
mib_pdu
.
pdu
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
mib_pdu
.
additional_bits
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
mib_pdu
.
ssb_index
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
mib_pdu
.
ssb_length
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
mib_pdu
.
cell_id
))
<<
FAPI_NR_RX_PDU_TYPE_MIB
;
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
ssb_pdu
.
pdu
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
ssb_pdu
.
additional_bits
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
ssb_pdu
.
ssb_index
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
ssb_pdu
.
ssb_length
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
ssb_pdu
.
ssb_start_subcarrier
,
(
dl_info
->
rx_ind
->
rx_indication_body
+
i
)
->
ssb_pdu
.
cell_id
))
<<
FAPI_NR_RX_PDU_TYPE_SSB
;
break
;
...
...
This diff is collapsed.
Click to expand it.
openair2/NR_UE_PHY_INTERFACE/NR_IF_Module.h
View file @
0818e4b9
...
...
@@ -221,7 +221,15 @@ int nr_ue_dcireq(nr_dcireq_t *dcireq);
\param ssb_index SSB index within 0 - (L_ssb-1) corresponding to 38.331 ch.13 parameter i
\param ssb_length corresponding to L1 parameter L_ssb
\param cell_id cell id */
int
handle_bcch_bch
(
module_id_t
module_id
,
int
cc_id
,
unsigned
int
gNB_index
,
uint8_t
*
pduP
,
unsigned
int
additional_bits
,
uint32_t
ssb_index
,
uint32_t
ssb_length
,
uint16_t
cell_id
);
int
handle_bcch_bch
(
module_id_t
module_id
,
int
cc_id
,
unsigned
int
gNB_index
,
uint8_t
*
pduP
,
unsigned
int
additional_bits
,
uint32_t
ssb_index
,
uint32_t
ssb_length
,
uint16_t
ssb_start_subcarrier
,
uint16_t
cell_id
);
// TODO check
/**\brief handle BCCH-DL-SCH message from dl_indication
...
...
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