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
20fa442b
Commit
20fa442b
authored
Apr 09, 2018
by
Guy De Souza
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
gNB Tx procedure
parent
1b68a4f2
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
87 additions
and
7 deletions
+87
-7
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+1
-0
cmake_targets/build_oai
cmake_targets/build_oai
+2
-2
openair1/PHY/defs.h
openair1/PHY/defs.h
+3
-0
openair1/SCHED_NR/phy_procedures_nr_common.c
openair1/SCHED_NR/phy_procedures_nr_common.c
+42
-0
openair1/SCHED_NR/phy_procedures_nr_gNB.c
openair1/SCHED_NR/phy_procedures_nr_gNB.c
+38
-3
targets/RT/USER/nr-gnb.c
targets/RT/USER/nr-gnb.c
+1
-2
No files found.
cmake_targets/CMakeLists.txt
View file @
20fa442b
...
...
@@ -980,6 +980,7 @@ add_library(SCHED_LIB ${SCHED_SRC})
set
(
SCHED_NR_SRC
${
OPENAIR1_DIR
}
/SCHED_NR/phy_procedures_nr_common.c
${
OPENAIR1_DIR
}
/SCHED_NR/phy_procedures_nr_gNB.c
)
add_library
(
SCHED_NR_LIB
${
SCHED_NR_SRC
}
)
...
...
cmake_targets/build_oai
View file @
20fa442b
...
...
@@ -507,7 +507,7 @@ function main() {
DIR
=
$OPENAIR_DIR
/cmake_targets
if
[
"
$NOS1
"
=
"1"
]
;
then
build_dir
=
noS1_
build_ran
build_dir
=
noS1_
ran_build
if
[
"
$gNB
"
=
"1"
]
;
then
exec
=
nr-softmodem-nos1
elif
[
"
$nrUE
"
=
"1"
]
;
then
...
...
@@ -518,7 +518,7 @@ function main() {
exec
=
lte-uesoftmodem-nos1
fi
else
build_dir
=
build_ran
build_dir
=
ran_build
if
[
"
$gNB
"
=
"1"
]
;
then
exec
=
nr-softmodem
elif
[
"
$nrUE
"
=
"1"
]
;
then
...
...
openair1/PHY/defs.h
View file @
20fa442b
...
...
@@ -166,6 +166,9 @@ static inline void* malloc16_clear( size_t size )
#define MAX_FRAME_NUMBER 0x400
#if 1
#define nr_subframe_t lte_subframe_t
typedef
struct
{
/// EUTRA Band
uint8_t
eutra_band
;
...
...
openair1/SCHED_NR/phy_procedures_nr_common.c
0 → 100644
View file @
20fa442b
/*
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The OpenAirInterface Software Alliance licenses this file to You under
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
* except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*-------------------------------------------------------------------------------
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
*/
/*! \file phy_procedures_lte_eNB.c
* \brief Implementation of common utilities for eNB/UE procedures from 36.213 LTE specifications
* \author R. Knopp, F. Kaltenberger
* \date 2011
* \version 0.1
* \company Eurecom
* \email: knopp@eurecom.fr,florian.kaltenberger@eurecom.fr
* \note
* \warning
*/
#include "PHY/defs.h"
#include "PHY/extern.h"
#include "SCHED/defs.h"
#include "SCHED/extern.h"
nr_subframe_t
nr_subframe_select
(
nfapi_config_request_t
*
cfg
,
unsigned
char
subframe
)
{
if
(
cfg
->
subframe_config
.
duplex_mode
.
value
==
FDD
)
return
(
SF_DL
);
}
openair1/SCHED_NR/phy_procedures_nr_gNB.c
View file @
20fa442b
...
...
@@ -19,12 +19,11 @@
* contact@openairinterface.org
*/
#include "PHY/defs_NR.h"
#include "PHY/extern.h"
#include "SCHED/defs.h"
#include "SCHED/extern.h"
#include "nfapi_interface.h"
#include "fapi_l1.h"
#include "
SCHED/
fapi_l1.h"
#include "UTIL/LOG/log.h"
#include "UTIL/LOG/vcd_signal_dumper.h"
...
...
@@ -39,8 +38,44 @@
# include "intertask_interface.h"
#endif
extern
uint8_t
nfapi_mode
;
void
nr_common_signal_procedures
(
PHY_VARS_gNB
*
gNB
,
int
frame
,
int
subframe
)
{
NR_DL_FRAME_PARMS
*
fp
=&
gNB
->
frame_parms
;
nfapi_config_request_t
*
cfg
=
gNB
->
gNB_config
;
int
**
txdataF
=
gNB
->
common_vars
.
txdataF
;
uint8_t
*
pbch_pdu
=&
gNB
->
pbch_pdu
[
0
];
LOG_D
(
PHY
,
"common_signal_procedures: frame %d, subframe %d
\n
"
,
frame
,
subframe
);
}
void
phy_procedures_gNB_TX
(
PHY_VARS_gNB
*
gNB
,
gNB_rxtx_proc_t
*
proc
,
int
do_meas
)
{
int
aa
;
int
frame
=
proc
->
frame_tx
;
int
subframe
=
proc
->
subframe_tx
;
NR_DL_FRAME_PARMS
*
fp
=&
gNB
->
frame_parms
;
nfapi_config_request_t
*
cfg
=
gNB
->
gNB_config
;
int
offset
=
gNB
->
CC_id
;
if
((
cfg
->
subframe_config
.
duplex_mode
.
value
==
TDD
)
&&
(
nr_subframe_select
(
cfg
,
subframe
)
==
SF_UL
))
return
;
//VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_ENB_TX+offset,1);
//if (do_meas==1) start_meas(&gNB->phy_proc_tx);
// clear the transmit data array for the current subframe
for
(
aa
=
0
;
aa
<
cfg
->
rf_config
.
tx_antenna_ports
.
value
;
aa
++
)
{
memset
(
&
gNB
->
common_vars
.
txdataF
[
aa
][
subframe
*
fp
->
samples_per_subframe_wCP
],
0
,
fp
->
samples_per_subframe_wCP
*
sizeof
(
int32_t
));
}
if
(
nfapi_mode
==
0
||
nfapi_mode
==
1
)
{
common_signal_procedures
(
gNB
,
frame
,
subframe
);
}
}
targets/RT/USER/nr-gnb.c
View file @
20fa442b
...
...
@@ -234,8 +234,7 @@ static inline int rxtx(PHY_VARS_gNB *gNB,gNB_rxtx_proc_t *proc, char *thread_nam
//if (wait_CCs(proc)<0) return(-1);
if
(
oai_exit
)
return
(
-
1
);
/// To call after common signals for NR
//phy_procedures_gNB_TX(gNB, proc, no_relay, NULL, 1);
phy_procedures_gNB_TX
(
gNB
,
proc
,
1
);
stop_meas
(
&
softmodem_stats_rxtx_sf
);
...
...
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