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
wangjie
OpenXG-RAN
Commits
818b27c1
Commit
818b27c1
authored
Oct 31, 2018
by
Wang Tsu-Han
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
renaming for gNB
parent
5d4cde09
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
123 additions
and
98 deletions
+123
-98
openair1/PHY/NR_TRANSPORT/nr_dci.h
openair1/PHY/NR_TRANSPORT/nr_dci.h
+1
-1
openair1/PHY/NR_TRANSPORT/nr_dci_tools.c
openair1/PHY/NR_TRANSPORT/nr_dci_tools.c
+1
-1
openair1/PHY/defs_gNB.h
openair1/PHY/defs_gNB.h
+20
-11
openair1/SCHED_NR/fapi_nr_l1.c
openair1/SCHED_NR/fapi_nr_l1.c
+4
-4
openair1/SCHED_NR/fapi_nr_l1.h
openair1/SCHED_NR/fapi_nr_l1.h
+1
-1
openair1/SCHED_NR/phy_procedures_nr_gNB.c
openair1/SCHED_NR/phy_procedures_nr_gNB.c
+1
-1
openair1/SCHED_NR/sched_nr.h
openair1/SCHED_NR/sched_nr.h
+1
-1
targets/RT/USER/nr-gnb.c
targets/RT/USER/nr-gnb.c
+93
-77
targets/RT/USER/nr-ru.c
targets/RT/USER/nr-ru.c
+1
-1
No files found.
openair1/PHY/NR_TRANSPORT/nr_dci.h
View file @
818b27c1
...
@@ -49,7 +49,7 @@ void nr_pdcch_scrambling(uint32_t *in,
...
@@ -49,7 +49,7 @@ void nr_pdcch_scrambling(uint32_t *in,
void
nr_fill_dci_and_dlsch
(
PHY_VARS_gNB
*
gNB
,
void
nr_fill_dci_and_dlsch
(
PHY_VARS_gNB
*
gNB
,
int
frame
,
int
frame
,
int
subframe
,
int
subframe
,
gNB_rxtx_proc_t
*
proc
,
gNB_
L1_
rxtx_proc_t
*
proc
,
NR_gNB_DCI_ALLOC_t
*
dci_alloc
,
NR_gNB_DCI_ALLOC_t
*
dci_alloc
,
nfapi_nr_dl_config_request_pdu_t
*
pdu
);
nfapi_nr_dl_config_request_pdu_t
*
pdu
);
...
...
openair1/PHY/NR_TRANSPORT/nr_dci_tools.c
View file @
818b27c1
...
@@ -108,7 +108,7 @@ void nr_fill_cce_list(NR_gNB_DCI_ALLOC_t* dci_alloc, uint16_t n_shift, uint8_t m
...
@@ -108,7 +108,7 @@ void nr_fill_cce_list(NR_gNB_DCI_ALLOC_t* dci_alloc, uint16_t n_shift, uint8_t m
void
nr_fill_dci_and_dlsch
(
PHY_VARS_gNB
*
gNB
,
void
nr_fill_dci_and_dlsch
(
PHY_VARS_gNB
*
gNB
,
int
frame
,
int
frame
,
int
subframe
,
int
subframe
,
gNB_rxtx_proc_t
*
proc
,
gNB_
L1_
rxtx_proc_t
*
proc
,
NR_gNB_DCI_ALLOC_t
*
dci_alloc
,
NR_gNB_DCI_ALLOC_t
*
dci_alloc
,
nfapi_nr_dl_config_request_pdu_t
*
pdu
)
nfapi_nr_dl_config_request_pdu_t
*
pdu
)
{
{
...
...
openair1/PHY/defs_gNB.h
View file @
818b27c1
...
@@ -99,22 +99,29 @@ typedef struct {
...
@@ -99,22 +99,29 @@ typedef struct {
int
frame_rx
;
int
frame_rx
;
/// \brief Instance count for RXn-TXnp4 processing thread.
/// \brief Instance count for RXn-TXnp4 processing thread.
/// \internal This variable is protected by \ref mutex_rxtx.
/// \internal This variable is protected by \ref mutex_rxtx.
int
instance_cnt
_rxtx
;
int
instance_cnt
;
/// pthread structure for RXn-TXnp4 processing thread
/// pthread structure for RXn-TXnp4 processing thread
pthread_t
pthread
_rxtx
;
pthread_t
pthread
;
/// pthread attributes for RXn-TXnp4 processing thread
/// pthread attributes for RXn-TXnp4 processing thread
pthread_attr_t
attr
_rxtx
;
pthread_attr_t
attr
;
/// condition variable for tx processing thread
/// condition variable for tx processing thread
pthread_cond_t
cond
_rxtx
;
pthread_cond_t
cond
;
/// mutex for RXn-TXnp4 processing thread
/// mutex for RXn-TXnp4 processing thread
pthread_mutex_t
mutex
_rxtx
;
pthread_mutex_t
mutex
;
/// scheduling parameters for RXn-TXnp4 thread
/// scheduling parameters for RXn-TXnp4 thread
struct
sched_param
sched_param_rxtx
;
struct
sched_param
sched_param_rxtx
;
}
gNB_rxtx_proc_t
;
/// \internal This variable is protected by \ref mutex_RUs.
int
instance_cnt_RUs
;
/// condition variable for tx processing thread
pthread_cond_t
cond_RUs
;
/// mutex for RXn-TXnp4 processing thread
pthread_mutex_t
mutex_RUs
;
}
gNB_L1_rxtx_proc_t
;
/// Context data structure for eNB subframe processing
/// Context data structure for eNB subframe processing
typedef
struct
gNB_proc_t_s
{
typedef
struct
gNB_
L1_
proc_t_s
{
/// Component Carrier index
/// Component Carrier index
uint8_t
CC_id
;
uint8_t
CC_id
;
/// thread index
/// thread index
...
@@ -181,17 +188,19 @@ typedef struct gNB_proc_t_s {
...
@@ -181,17 +188,19 @@ typedef struct gNB_proc_t_s {
pthread_mutex_t
mutex_asynch_rxtx
;
pthread_mutex_t
mutex_asynch_rxtx
;
/// mutex for RU access to eNB processing (PDSCH/PUSCH)
/// mutex for RU access to eNB processing (PDSCH/PUSCH)
pthread_mutex_t
mutex_RU
;
pthread_mutex_t
mutex_RU
;
/// mutex for RU_tx access to eNB_tx processing (PDSCH/PUSCH)
pthread_mutex_t
mutex_RU_tx
;
/// mutex for RU access to eNB processing (PRACH)
/// mutex for RU access to eNB processing (PRACH)
pthread_mutex_t
mutex_RU_PRACH
;
pthread_mutex_t
mutex_RU_PRACH
;
/// mutex for RU access to eNB processing (PRACH BR)
/// mutex for RU access to eNB processing (PRACH BR)
pthread_mutex_t
mutex_RU_PRACH_br
;
pthread_mutex_t
mutex_RU_PRACH_br
;
/// mask for RUs serving eNB (PDSCH/PUSCH)
/// mask for RUs serving eNB (PDSCH/PUSCH)
int
RU_mask
;
int
RU_mask
,
RU_mask_tx
;
/// mask for RUs serving eNB (PRACH)
/// mask for RUs serving eNB (PRACH)
int
RU_mask_prach
;
int
RU_mask_prach
;
/// set of scheduling variables RXn-TXnp4 threads
/// set of scheduling variables RXn-TXnp4 threads
gNB_
rxtx_proc_t
proc_rxtx
[
2
]
;
gNB_
L1_rxtx_proc_t
L1_proc
,
L1_proc_tx
;
}
gNB_proc_t
;
}
gNB_
L1_
proc_t
;
...
@@ -251,7 +260,7 @@ typedef struct PHY_VARS_gNB_s {
...
@@ -251,7 +260,7 @@ typedef struct PHY_VARS_gNB_s {
module_id_t
Mod_id
;
module_id_t
Mod_id
;
uint8_t
CC_id
;
uint8_t
CC_id
;
uint8_t
configured
;
uint8_t
configured
;
gNB_proc_t
proc
;
gNB_
L1_
proc_t
proc
;
int
single_thread_flag
;
int
single_thread_flag
;
int
abstraction_flag
;
int
abstraction_flag
;
int
num_RU
;
int
num_RU
;
...
...
openair1/SCHED_NR/fapi_nr_l1.c
View file @
818b27c1
...
@@ -37,7 +37,7 @@ int oai_nfapi_tx_req(nfapi_tx_request_t *tx_req);
...
@@ -37,7 +37,7 @@ int oai_nfapi_tx_req(nfapi_tx_request_t *tx_req);
extern
uint8_t
nfapi_mode
;
extern
uint8_t
nfapi_mode
;
void
handle_nr_nfapi_bch_pdu
(
PHY_VARS_gNB
*
gNB
,
void
handle_nr_nfapi_bch_pdu
(
PHY_VARS_gNB
*
gNB
,
gNB_rxtx_proc_t
*
proc
,
gNB_
L1_
rxtx_proc_t
*
proc
,
nfapi_nr_dl_config_request_pdu_t
*
dl_config_pdu
,
nfapi_nr_dl_config_request_pdu_t
*
dl_config_pdu
,
uint8_t
*
sdu
)
uint8_t
*
sdu
)
{
{
...
@@ -56,7 +56,7 @@ void handle_nr_nfapi_bch_pdu(PHY_VARS_gNB *gNB,
...
@@ -56,7 +56,7 @@ void handle_nr_nfapi_bch_pdu(PHY_VARS_gNB *gNB,
void
handle_nfapi_nr_dci_dl_pdu
(
PHY_VARS_gNB
*
gNB
,
void
handle_nfapi_nr_dci_dl_pdu
(
PHY_VARS_gNB
*
gNB
,
int
frame
,
int
subframe
,
int
frame
,
int
subframe
,
gNB_rxtx_proc_t
*
proc
,
gNB_
L1_
rxtx_proc_t
*
proc
,
nfapi_nr_dl_config_request_pdu_t
*
dl_config_pdu
)
nfapi_nr_dl_config_request_pdu_t
*
dl_config_pdu
)
{
{
int
idx
=
subframe
&
1
;
int
idx
=
subframe
&
1
;
...
@@ -73,7 +73,7 @@ void handle_nfapi_nr_dci_dl_pdu(PHY_VARS_gNB *gNB,
...
@@ -73,7 +73,7 @@ void handle_nfapi_nr_dci_dl_pdu(PHY_VARS_gNB *gNB,
void
nr_schedule_response
(
NR_Sched_Rsp_t
*
Sched_INFO
){
void
nr_schedule_response
(
NR_Sched_Rsp_t
*
Sched_INFO
){
PHY_VARS_gNB
*
gNB
;
PHY_VARS_gNB
*
gNB
;
gNB_rxtx_proc_t
*
proc
;
gNB_
L1_
rxtx_proc_t
*
proc
;
// copy data from L2 interface into L1 structures
// copy data from L2 interface into L1 structures
module_id_t
Mod_id
=
Sched_INFO
->
module_id
;
module_id_t
Mod_id
=
Sched_INFO
->
module_id
;
uint8_t
CC_id
=
Sched_INFO
->
CC_id
;
uint8_t
CC_id
=
Sched_INFO
->
CC_id
;
...
@@ -87,7 +87,7 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO){
...
@@ -87,7 +87,7 @@ void nr_schedule_response(NR_Sched_Rsp_t *Sched_INFO){
AssertFatal
(
RC
.
gNB
[
Mod_id
][
CC_id
]
!=
NULL
,
"RC.gNB[%d][%d] is null
\n
"
,
Mod_id
,
CC_id
);
AssertFatal
(
RC
.
gNB
[
Mod_id
][
CC_id
]
!=
NULL
,
"RC.gNB[%d][%d] is null
\n
"
,
Mod_id
,
CC_id
);
gNB
=
RC
.
gNB
[
Mod_id
][
CC_id
];
gNB
=
RC
.
gNB
[
Mod_id
][
CC_id
];
proc
=
&
gNB
->
proc
.
proc_rxtx
[
0
]
;
proc
=
&
gNB
->
proc
.
L1_proc
;
uint8_t
number_dl_pdu
=
DL_req
->
dl_config_request_body
.
number_pdu
;
uint8_t
number_dl_pdu
=
DL_req
->
dl_config_request_body
.
number_pdu
;
...
...
openair1/SCHED_NR/fapi_nr_l1.h
View file @
818b27c1
...
@@ -41,5 +41,5 @@
...
@@ -41,5 +41,5 @@
void
nr_schedule_response
(
NR_Sched_Rsp_t
*
Sched_INFO
);
void
nr_schedule_response
(
NR_Sched_Rsp_t
*
Sched_INFO
);
void
handle_nfapi_nr_dci_dl_pdu
(
PHY_VARS_gNB
*
gNB
,
void
handle_nfapi_nr_dci_dl_pdu
(
PHY_VARS_gNB
*
gNB
,
int
frame
,
int
subframe
,
int
frame
,
int
subframe
,
gNB_rxtx_proc_t
*
proc
,
gNB_
L1_
rxtx_proc_t
*
proc
,
nfapi_nr_dl_config_request_pdu_t
*
dl_config_pdu
);
nfapi_nr_dl_config_request_pdu_t
*
dl_config_pdu
);
openair1/SCHED_NR/phy_procedures_nr_gNB.c
View file @
818b27c1
...
@@ -152,7 +152,7 @@ void nr_common_signal_procedures (PHY_VARS_gNB *gNB,int frame, int subframe) {
...
@@ -152,7 +152,7 @@ void nr_common_signal_procedures (PHY_VARS_gNB *gNB,int frame, int subframe) {
}
}
void
phy_procedures_gNB_TX
(
PHY_VARS_gNB
*
gNB
,
void
phy_procedures_gNB_TX
(
PHY_VARS_gNB
*
gNB
,
gNB_rxtx_proc_t
*
proc
,
gNB_
L1_
rxtx_proc_t
*
proc
,
int
do_meas
)
int
do_meas
)
{
{
int
aa
;
int
aa
;
...
...
openair1/SCHED_NR/sched_nr.h
View file @
818b27c1
...
@@ -36,7 +36,7 @@
...
@@ -36,7 +36,7 @@
lte_subframe_t
nr_subframe_select
(
nfapi_nr_config_request_t
*
cfg
,
unsigned
char
subframe
);
lte_subframe_t
nr_subframe_select
(
nfapi_nr_config_request_t
*
cfg
,
unsigned
char
subframe
);
void
nr_set_ssb_first_subcarrier
(
nfapi_nr_config_request_t
*
cfg
,
NR_DL_FRAME_PARMS
*
fp
);
void
nr_set_ssb_first_subcarrier
(
nfapi_nr_config_request_t
*
cfg
,
NR_DL_FRAME_PARMS
*
fp
);
void
phy_procedures_gNB_TX
(
PHY_VARS_gNB
*
gNB
,
gNB_rxtx_proc_t
*
proc
,
int
do_meas
);
void
phy_procedures_gNB_TX
(
PHY_VARS_gNB
*
gNB
,
gNB_
L1_
rxtx_proc_t
*
proc
,
int
do_meas
);
void
nr_common_signal_procedures
(
PHY_VARS_gNB
*
gNB
,
int
frame
,
int
subframe
);
void
nr_common_signal_procedures
(
PHY_VARS_gNB
*
gNB
,
int
frame
,
int
subframe
);
void
nr_init_feptx_thread
(
RU_t
*
ru
,
pthread_attr_t
*
attr_feptx
);
void
nr_init_feptx_thread
(
RU_t
*
ru
,
pthread_attr_t
*
attr_feptx
);
void
nr_feptx_ofdm
(
RU_t
*
ru
);
void
nr_feptx_ofdm
(
RU_t
*
ru
);
...
...
targets/RT/USER/nr-gnb.c
View file @
818b27c1
This diff is collapsed.
Click to expand it.
targets/RT/USER/nr-ru.c
View file @
818b27c1
...
@@ -874,7 +874,7 @@ void tx_rf(RU_t *ru) {
...
@@ -874,7 +874,7 @@ void tx_rf(RU_t *ru) {
/*!
/*!
* \brief The Asynchronous RX/TX FH thread of RAU/RCC/gNB/RRU.
* \brief The Asynchronous RX/TX FH thread of RAU/RCC/gNB/RRU.
* This handles the RX FH for an asynchronous RRU/UE
* This handles the RX FH for an asynchronous RRU/UE
* \param param is a \ref gNB_proc_t structure which contains the info what to process.
* \param param is a \ref gNB_
L1_
proc_t structure which contains the info what to process.
* \returns a pointer to an int. The storage is not on the heap and must not be freed.
* \returns a pointer to an int. The storage is not on the heap and must not be freed.
*/
*/
static
void
*
ru_thread_asynch_rxtx
(
void
*
param
)
{
static
void
*
ru_thread_asynch_rxtx
(
void
*
param
)
{
...
...
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