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
d723752c
Commit
d723752c
authored
Dec 16, 2019
by
Sakthivel Velumani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Numerology changes made
parent
df9c20c9
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
43 additions
and
15 deletions
+43
-15
executables/nr-ue.c
executables/nr-ue.c
+10
-1
executables/nr-uesoftmodem.c
executables/nr-uesoftmodem.c
+13
-5
openair1/PHY/INIT/nr_init.c
openair1/PHY/INIT/nr_init.c
+3
-3
openair1/PHY/INIT/nr_init_ue.c
openair1/PHY/INIT/nr_init_ue.c
+1
-1
openair1/PHY/INIT/nr_parms.c
openair1/PHY/INIT/nr_parms.c
+11
-4
openair1/SIMULATION/NR_PHY/dlsim.c
openair1/SIMULATION/NR_PHY/dlsim.c
+5
-1
No files found.
executables/nr-ue.c
View file @
d723752c
...
...
@@ -603,7 +603,16 @@ void *UE_thread(void *arg) {
openair0_timestamp
timestamp
;
void
*
rxp
[
NB_ANTENNAS_RX
],
*
txp
[
NB_ANTENNAS_TX
];
int
start_rx_stream
=
0
;
const
uint16_t
table_sf_slot
[
20
]
=
{
0
,
0
,
1
,
1
,
2
,
2
,
3
,
3
,
4
,
4
,
5
,
5
,
6
,
6
,
7
,
7
,
8
,
8
,
9
,
9
};
const
uint16_t
table_sf_slot
[
80
]
=
{
0
,
0
,
0
,
0
,
0
,
0
,
0
,
0
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
2
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
4
,
4
,
4
,
4
,
4
,
4
,
4
,
4
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
6
,
6
,
6
,
6
,
6
,
6
,
6
,
6
,
7
,
7
,
7
,
7
,
7
,
7
,
7
,
7
,
8
,
8
,
8
,
8
,
8
,
8
,
8
,
8
,
9
,
9
,
9
,
9
,
9
,
9
,
9
,
9
};
AssertFatal
(
0
==
openair0_device_load
(
&
(
UE
->
rfdevice
),
&
openair0_cfg
[
0
]),
""
);
UE
->
rfdevice
.
host_type
=
RAU_HOST
;
AssertFatal
(
UE
->
rfdevice
.
trx_start_func
(
&
UE
->
rfdevice
)
==
0
,
"Could not start the device
\n
"
);
...
...
executables/nr-uesoftmodem.c
View file @
d723752c
...
...
@@ -487,12 +487,12 @@ void set_default_frame_parms(NR_DL_FRAME_PARMS *frame_parms[MAX_NUM_CCs]) {
for
(
CC_id
=
0
;
CC_id
<
MAX_NUM_CCs
;
CC_id
++
)
{
/* Set some default values that may be overwritten while reading options */
frame_parms
[
CC_id
]
=
(
NR_DL_FRAME_PARMS
*
)
calloc
(
sizeof
(
NR_DL_FRAME_PARMS
),
1
);
frame_parms
[
CC_id
]
->
eutra_band
=
78
;
frame_parms
[
CC_id
]
->
eutra_band
=
257
;
frame_parms
[
CC_id
]
->
frame_type
=
FDD
;
frame_parms
[
CC_id
]
->
tdd_config
=
3
;
//frame_parms[CC_id]->tdd_config_S = 0;
frame_parms
[
CC_id
]
->
N_RB_DL
=
10
6
;
frame_parms
[
CC_id
]
->
N_RB_UL
=
10
6
;
frame_parms
[
CC_id
]
->
N_RB_DL
=
6
6
;
frame_parms
[
CC_id
]
->
N_RB_UL
=
6
6
;
frame_parms
[
CC_id
]
->
Ncp
=
NORMAL
;
//frame_parms[CC_id]->Ncp_UL = NORMAL;
frame_parms
[
CC_id
]
->
Nid_cell
=
0
;
...
...
@@ -502,7 +502,7 @@ void set_default_frame_parms(NR_DL_FRAME_PARMS *frame_parms[MAX_NUM_CCs]) {
frame_parms
[
CC_id
]
->
nb_antennas_rx
=
1
;
//frame_parms[CC_id]->nushift = 0;
// NR: Init to legacy LTE 20Mhz params
frame_parms
[
CC_id
]
->
numerology_index
=
0
;
frame_parms
[
CC_id
]
->
numerology_index
=
3
;
frame_parms
[
CC_id
]
->
ttis_per_subframe
=
1
;
frame_parms
[
CC_id
]
->
slots_per_tti
=
2
;
}
...
...
@@ -516,7 +516,15 @@ void init_openair0(void) {
openair0_cfg
[
card
].
configFilename
=
NULL
;
openair0_cfg
[
card
].
threequarter_fs
=
frame_parms
[
0
]
->
threequarter_fs
;
if
(
frame_parms
[
0
]
->
N_RB_DL
==
217
)
{
if
(
frame_param
[
0
]
->
N_RB_DL
==
66
)
{
if
(
numerology
==
3
)
{
openair0_cfg
[
card
].
sample_rate
=
122.88e6
;
openair0_cfg
[
card
].
samples_per_frame
=
1228800
;
}
else
{
LOG_E
(
PHY
,
"Unsupported numerology! FR2 supports only 120KHz SCS for now.
\n
"
);
exit
(
-
1
);
}
}
else
if
(
frame_parms
[
0
]
->
N_RB_DL
==
217
)
{
if
(
numerology
==
1
)
{
if
(
frame_parms
[
0
]
->
threequarter_fs
)
{
openair0_cfg
[
card
].
sample_rate
=
92.16e6
;
...
...
openair1/PHY/INIT/nr_init.c
View file @
d723752c
...
...
@@ -386,7 +386,7 @@ void nr_phy_config_request_sim(PHY_VARS_gNB *gNB,
NR_DL_FRAME_PARMS
*
fp
=
&
gNB
->
frame_parms
;
nfapi_nr_config_request_t
*
gNB_config
=
&
gNB
->
gNB_config
;
//overwrite for new NR parameters
gNB_config
->
nfapi_config
.
rf_bands
.
rf_band
[
0
]
=
78
;
gNB_config
->
nfapi_config
.
rf_bands
.
rf_band
[
0
]
=
257
;
gNB_config
->
nfapi_config
.
nrarfcn
.
value
=
620000
;
gNB_config
->
subframe_config
.
numerology_index_mu
.
value
=
mu
;
gNB_config
->
subframe_config
.
duplex_mode
.
value
=
TDD
;
...
...
@@ -401,8 +401,8 @@ void nr_phy_config_request_sim(PHY_VARS_gNB *gNB,
gNB_config
->
subframe_config
.
dl_cyclic_prefix_type
.
value
=
(
fp
->
Ncp
==
NORMAL
)
?
NFAPI_CP_NORMAL
:
NFAPI_CP_EXTENDED
;
gNB
->
mac_enabled
=
1
;
fp
->
dl_CarrierFreq
=
35
00000000
;
//from_nrarfcn(gNB_config->nfapi_config.rf_bands.rf_band[0],gNB_config->nfapi_config.nrarfcn.value);
fp
->
ul_CarrierFreq
=
35
00000000
;
//fp->dl_CarrierFreq - (get_uldl_offset(gNB_config->nfapi_config.rf_bands.rf_band[0])*100000);
fp
->
dl_CarrierFreq
=
281
00000000
;
//from_nrarfcn(gNB_config->nfapi_config.rf_bands.rf_band[0],gNB_config->nfapi_config.nrarfcn.value);
fp
->
ul_CarrierFreq
=
281
00000000
;
//fp->dl_CarrierFreq - (get_uldl_offset(gNB_config->nfapi_config.rf_bands.rf_band[0])*100000);
fp
->
threequarter_fs
=
0
;
nr_init_frame_parms
(
gNB_config
,
fp
);
gNB
->
configured
=
1
;
...
...
openair1/PHY/INIT/nr_init_ue.c
View file @
d723752c
...
...
@@ -659,7 +659,7 @@ int init_nr_ue_signal(PHY_VARS_NR_UE *ue,
fp
->
nb_antennas_rx
=
1
;
printf
(
"Initializing UE vars (abstraction %"
PRIu8
") for eNB TXant %"
PRIu8
", UE RXant %"
PRIu8
"
\n
"
,
abstraction_flag
,
fp
->
nb_antennas_tx
,
fp
->
nb_antennas_rx
);
//LOG_D(PHY,"[MSC_NEW][FRAME 00000][PHY_UE][MOD %02u][]\n", ue->Mod_id+NB_eNB_INST);
nr_init_frame_parms_ue
(
fp
,
NR_MU_
1
,
NORMAL
,
fp
->
N_RB_DL
,
n_ssb_crb
,
k_ssb
);
nr_init_frame_parms_ue
(
fp
,
NR_MU_
3
,
NORMAL
,
fp
->
N_RB_DL
,
n_ssb_crb
,
k_ssb
);
phy_init_nr_top
(
ue
);
// many memory allocation sizes are hard coded
AssertFatal
(
fp
->
nb_antennas_rx
<=
2
,
"hard coded allocation for ue_common_vars->dl_ch_estimates[eNB_id]"
);
...
...
openair1/PHY/INIT/nr_parms.c
View file @
d723752c
...
...
@@ -24,7 +24,7 @@
/// Subcarrier spacings in Hz indexed by numerology index
uint32_t
nr_subcarrier_spacing
[
MAX_NUM_SUBCARRIER_SPACING
]
=
{
15e3
,
30e3
,
60e3
,
120e3
,
240e3
};
uint16_t
nr_slots_per_subframe
[
MAX_NUM_SUBCARRIER_SPACING
]
=
{
1
,
2
,
4
,
16
,
32
};
uint16_t
nr_slots_per_subframe
[
MAX_NUM_SUBCARRIER_SPACING
]
=
{
1
,
2
,
4
,
8
,
16
};
int
nr_get_ssb_start_symbol
(
NR_DL_FRAME_PARMS
*
fp
,
uint8_t
i_ssb
,
uint8_t
half_frame_index
)
...
...
@@ -241,9 +241,16 @@ int nr_init_frame_parms0(NR_DL_FRAME_PARMS *fp,
break
;
case
NR_MU_3
:
fp
->
subcarrier_spacing
=
nr_subcarrier_spacing
[
NR_MU_3
];
fp
->
slots_per_subframe
=
nr_slots_per_subframe
[
NR_MU_3
];
fp
->
ssb_type
=
nr_ssb_type_D
;
switch
(
N_RB_DL
){
case
66
:
fp
->
ofdm_symbol_size
=
1024
;
fp
->
first_carrier_offset
=
628
;
//1024 - ( (66*12) / 2 )
fp
->
nb_prefix_samples0
=
88
;
fp
->
nb_prefix_samples
=
72
;
fp
->
subcarrier_spacing
=
nr_subcarrier_spacing
[
NR_MU_3
];
fp
->
slots_per_subframe
=
nr_slots_per_subframe
[
NR_MU_3
];
fp
->
ssb_type
=
nr_ssb_type_D
;
}
break
;
case
NR_MU_4
:
...
...
openair1/SIMULATION/NR_PHY/dlsim.c
View file @
d723752c
...
...
@@ -164,7 +164,7 @@ int main(int argc, char **argv)
//double pbch_sinr;
//int pbch_tx_ant;
int
N_RB_DL
=
106
,
mu
=
1
;
int
N_RB_DL
=
66
,
mu
=
3
;
nfapi_nr_dl_config_dlsch_pdu_rel15_t
dlsch_config
;
dlsch_config
.
start_prb
=
0
;
dlsch_config
.
n_prb
=
50
;
...
...
@@ -477,6 +477,10 @@ int main(int argc, char **argv)
fs
=
61.44e6
;
bw
=
40e6
;
}
else
if
(
mu
==
3
&&
N_RB_DL
==
66
)
{
fs
=
122.88e6
;
bw
=
100e6
;
}
else
AssertFatal
(
1
==
0
,
"Unsupported numerology for mu %d, N_RB %d
\n
"
,
mu
,
N_RB_DL
);
gNB2UE
=
new_channel_desc_scm
(
n_tx
,
...
...
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