Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG UE
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
lizhongxiao
OpenXG UE
Commits
7816f7b7
Commit
7816f7b7
authored
Apr 02, 2018
by
Guy De Souza
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
nfapi nr extension update
parent
07a6483d
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
3813 additions
and
66 deletions
+3813
-66
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+1
-1
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface_nr_extension.h
...pen-nFAPI/nfapi/public_inc/nfapi_interface_nr_extension.h
+3785
-37
openair1/PHY/INIT/nr_init.c
openair1/PHY/INIT/nr_init.c
+8
-9
openair1/PHY/INIT/nr_parms.c
openair1/PHY/INIT/nr_parms.c
+4
-4
openair1/PHY/NR_TRANSPORT/nr_pss.c
openair1/PHY/NR_TRANSPORT/nr_pss.c
+5
-5
openair1/PHY/NR_TRANSPORT/nr_sss.c
openair1/PHY/NR_TRANSPORT/nr_sss.c
+5
-5
targets/RT/USER/nr-softmodem.c
targets/RT/USER/nr-softmodem.c
+5
-5
No files found.
cmake_targets/CMakeLists.txt
View file @
7816f7b7
...
...
@@ -2157,7 +2157,7 @@ target_link_libraries (nr-softmodem
UTIL HASHTABLE SCTP_CLIENT UDP SCHED_LIB PHY_NR LFDS GTPV1U SECU_CN SECU_OSA
${
ITTI_LIB
}
${
FLPT_MSG_LIB
}
${
ASYNC_IF_LIB
}
${
FLEXRAN_AGENT_LIB
}
LFDS7
${
MSC_LIB
}
${
RAL_LIB
}
${
NAS_UE_LIB
}
#RRC_LIB S1AP_LIB S1AP_ENB L2
#
NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
-Wl,--end-group z dl
)
target_link_libraries
(
nr-softmodem
${
LIBXML2_LIBRARIES
}
)
...
...
nfapi/open-nFAPI/nfapi/public_inc/nfapi_interface_nr_extension.h
View file @
7816f7b7
This source diff could not be displayed because it is too large. You can
view the blob
instead.
openair1/PHY/INIT/nr_init.c
View file @
7816f7b7
...
...
@@ -21,18 +21,17 @@
#include "../defs_NR.h"
int
phy_init_nr_gNB
(
nfapi_
param_t
*
nfapi_params
)
int
phy_init_nr_gNB
(
nfapi_
config_request_t
*
config
)
{
nfapi_params
->
pnf_phy_rel15
.
number_of_phys
=
1
;
nfapi_params
->
pnf_phy_rel15
.
phy
[
0
].
mu
=
1
;
nfapi_params
->
subframe_config
.
duplex_mode
.
value
=
1
;
//FDD
nfapi_params
->
subframe_config
.
dl_cyclic_prefix_type
.
value
=
0
;
//NORMAL
nfapi_params
->
rf_config
.
dl_channel_bandwidth
.
value
=
106
;
nfapi_params
->
rf_config
.
ul_channel_bandwidth
.
value
=
106
;
nfapi_params
->
rf_config
.
tx_antenna_ports
.
value
=
1
;
config
->
subframe_config
.
numerology_index_mu
.
value
=
1
;
config
->
subframe_config
.
duplex_mode
.
value
=
1
;
//FDD
config
->
subframe_config
.
dl_cyclic_prefix_type
.
value
=
0
;
//NORMAL
config
->
rf_config
.
dl_channel_bandwidth
.
value
=
106
;
config
->
rf_config
.
ul_channel_bandwidth
.
value
=
106
;
config
->
rf_config
.
tx_antenna_ports
.
value
=
1
;
nfapi_params
->
sch_config
.
physical_cell_id
.
value
=
0
;
config
->
sch_config
.
physical_cell_id
.
value
=
0
;
return
0
;
}
openair1/PHY/INIT/nr_parms.c
View file @
7816f7b7
...
...
@@ -25,13 +25,13 @@
/// Subcarrier spacings in Hz indexed by numerology index
uint32_t
nr_subcarrier_spacing
[
MAX_NUM_SUBCARRIER_SPACING
]
=
{
15e3
,
30e3
,
60e3
,
120e3
,
240e3
};
int
nr_init_frame_parms
(
nfapi_
param_t
nfapi_params
,
int
nr_init_frame_parms
(
nfapi_
config_request_t
config
,
NR_DL_FRAME_PARMS
*
frame_parms
)
{
int
N_RB
=
nfapi_params
.
rf_config
.
dl_channel_bandwidth
.
value
;
int
Ncp
=
nfapi_params
.
subframe_config
.
dl_cyclic_prefix_type
.
value
;
int
mu
=
nfapi_params
.
pnf_phy_rel15
.
phy
[
0
].
mu
;
int
N_RB
=
config
.
rf_config
.
dl_channel_bandwidth
.
value
;
int
Ncp
=
config
.
subframe_config
.
dl_cyclic_prefix_type
.
value
;
int
mu
=
config
.
subframe_config
.
numerology_index_mu
.
value
;
#if DISABLE_LOG_X
printf
(
"Initializing frame parms for mu %d, N_RB %d, Ncp %d
\n
"
,
mu
,
N_RB
,
Ncp
);
...
...
openair1/PHY/NR_TRANSPORT/nr_pss.c
View file @
7816f7b7
...
...
@@ -30,7 +30,7 @@ int nr_generate_pss( int16_t *d_pss,
int16_t
amp
,
int16_t
ssb_first_subcarrier
,
uint8_t
slot_offset
,
nfapi_
param_t
nfapi_params
,
nfapi_
config_request_t
config
,
NR_DL_FRAME_PARMS
*
frame_parms
)
{
int
i
,
n
,
m
,
k
;
...
...
@@ -39,8 +39,8 @@ int nr_generate_pss( int16_t *d_pss,
int16_t
pss_mod
[
2
*
NR_PSS_LENGTH
];
const
int
x_initial
[
7
]
=
{
0
,
1
,
1
,
0
,
1
,
1
,
1
};
uint8_t
Nid2
=
nfapi_params
.
sch_config
.
physical_cell_id
.
value
%
3
;
uint8_t
Nsymb
=
(
nfapi_params
.
subframe_config
.
dl_cyclic_prefix_type
.
value
==
0
)
?
14
:
12
;
uint8_t
Nid2
=
config
.
sch_config
.
physical_cell_id
.
value
%
3
;
uint8_t
Nsymb
=
(
config
.
subframe_config
.
dl_cyclic_prefix_type
.
value
==
0
)
?
14
:
12
;
// Binary sequence generation
for
(
i
=
0
;
i
<
7
;
i
++
)
...
...
@@ -56,14 +56,14 @@ int nr_generate_pss( int16_t *d_pss,
}
// BPSK modulation and resource mapping
a
=
(
nfapi_params
.
rf_config
.
tx_antenna_ports
.
value
==
1
)
?
amp
:
(
amp
*
ONE_OVER_SQRT2_Q15
)
>>
15
;
a
=
(
config
.
rf_config
.
tx_antenna_ports
.
value
==
1
)
?
amp
:
(
amp
*
ONE_OVER_SQRT2_Q15
)
>>
15
;
for
(
i
=
0
;
i
<
NR_PSS_LENGTH
;
i
++
)
{
pss_mod
[
2
*
i
]
=
nr_mod_table
[
2
*
(
MOD_TABLE_BPSK_OFFSET
+
d_pss
[
i
])
];
pss_mod
[
2
*
i
+
1
]
=
nr_mod_table
[
2
*
(
MOD_TABLE_BPSK_OFFSET
+
d_pss
[
i
])
+
1
];
}
for
(
aa
=
0
;
aa
<
nfapi_params
.
rf_config
.
tx_antenna_ports
.
value
;
aa
++
)
for
(
aa
=
0
;
aa
<
config
.
rf_config
.
tx_antenna_ports
.
value
;
aa
++
)
{
// PSS occupies a predefined position (symbol 0, subcarriers 56-182) within the SSB block starting from
...
...
openair1/PHY/NR_TRANSPORT/nr_sss.c
View file @
7816f7b7
...
...
@@ -30,7 +30,7 @@ int nr_generate_sss( int16_t *d_sss,
int16_t
amp
,
int16_t
ssb_first_subcarrier
,
uint8_t
slot_offset
,
nfapi_
param_t
nfapi_params
,
nfapi_
config_request_t
config
,
NR_DL_FRAME_PARMS
*
frame_parms
)
{
int
i
,
m
,
k
;
...
...
@@ -42,10 +42,10 @@ int nr_generate_sss( int16_t *d_sss,
const
int
x0_initial
[
7
]
=
{
1
,
0
,
0
,
0
,
0
,
0
,
0
};
const
int
x1_initial
[
7
]
=
{
1
,
0
,
0
,
0
,
0
,
0
,
0
};
uint8_t
Nsymb
=
(
nfapi_params
.
subframe_config
.
dl_cyclic_prefix_type
.
value
==
0
)
?
14
:
12
;
uint8_t
Nsymb
=
(
config
.
subframe_config
.
dl_cyclic_prefix_type
.
value
==
0
)
?
14
:
12
;
// Binary sequence generation
Nid
=
nfapi_params
.
sch_config
.
physical_cell_id
.
value
;
Nid
=
config
.
sch_config
.
physical_cell_id
.
value
;
Nid2
=
Nid
%
3
;
Nid1
=
(
Nid
-
Nid2
)
/
3
;
...
...
@@ -69,14 +69,14 @@ int nr_generate_sss( int16_t *d_sss,
}
// BPSK modulation and resource mapping
a
=
(
nfapi_params
.
rf_config
.
tx_antenna_ports
.
value
==
1
)
?
amp
:
(
amp
*
ONE_OVER_SQRT2_Q15
)
>>
15
;
a
=
(
config
.
rf_config
.
tx_antenna_ports
.
value
==
1
)
?
amp
:
(
amp
*
ONE_OVER_SQRT2_Q15
)
>>
15
;
for
(
i
=
0
;
i
<
NR_SSS_LENGTH
;
i
++
)
{
sss_mod
[
2
*
i
]
=
nr_mod_table
[
2
*
(
MOD_TABLE_BPSK_OFFSET
+
d_sss
[
i
])
];
sss_mod
[
2
*
i
+
1
]
=
nr_mod_table
[
2
*
(
MOD_TABLE_BPSK_OFFSET
+
d_sss
[
i
])
+
1
];
}
for
(
aa
=
0
;
aa
<
nfapi_params
.
rf_config
.
tx_antenna_ports
.
value
;
aa
++
)
for
(
aa
=
0
;
aa
<
config
.
rf_config
.
tx_antenna_ports
.
value
;
aa
++
)
{
// SSS occupies a predefined position (symbol 2, subcarriers 56-182) within the SSB block starting from
...
...
targets/RT/USER/nr-softmodem.c
View file @
7816f7b7
...
...
@@ -49,7 +49,7 @@ void exit_fun(const char* s)
int
main
(
int
argc
,
char
**
argv
)
{
nfapi_
param_t
nfapi_params
;
nfapi_
config_request_t
config
;
NR_DL_FRAME_PARMS
*
frame_parms
=
malloc
(
sizeof
(
NR_DL_FRAME_PARMS
));
int16_t
amp
;
//malloc to move
...
...
@@ -59,13 +59,13 @@ int main( int argc, char **argv )
//logInit();
phy_init_nr_gNB
(
&
nfapi_params
);
nr_init_frame_parms
(
nfapi_params
,
frame_parms
);
phy_init_nr_gNB
(
&
config
);
nr_init_frame_parms
(
config
,
frame_parms
);
nr_dump_frame_parms
(
frame_parms
);
amp
=
32767
;
//1_Q_15
//nr_generate_pss(d_pss, txdataF, amp, 0, 0,
nfapi_params
, frame_parms);
nr_generate_sss
(
d_sss
,
txdataF
,
amp
,
0
,
0
,
nfapi_params
,
frame_parms
);
//nr_generate_pss(d_pss, txdataF, amp, 0, 0,
config
, frame_parms);
nr_generate_sss
(
d_sss
,
txdataF
,
amp
,
0
,
0
,
config
,
frame_parms
);
free
(
txdataF
);
free
(
d_pss
);
...
...
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