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
15e82e48
Commit
15e82e48
authored
Feb 28, 2022
by
Thomas Schlichter
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add support for mu==0 to nr_prachsim
parent
31cd3182
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
13 additions
and
14 deletions
+13
-14
openair1/SIMULATION/NR_PHY/prachsim.c
openair1/SIMULATION/NR_PHY/prachsim.c
+12
-13
openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c
openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c
+1
-1
No files found.
openair1/SIMULATION/NR_PHY/prachsim.c
View file @
15e82e48
...
...
@@ -234,7 +234,7 @@ int main(int argc, char **argv){
int
i
,
l
,
aa
,
aarx
,
**
txdata
,
trial
,
n_frames
=
1
,
prach_start
,
rx_prach_start
;
//, ntrials=1;
int
N_RB_UL
=
106
,
delay
=
0
,
NCS_config
=
13
,
rootSequenceIndex
=
1
,
threequarter_fs
=
0
,
mu
=
1
,
fd_occasion
=
0
,
loglvl
=
OAILOG_INFO
,
numRA
=
0
,
prachStartSymbol
=
0
;
uint8_t
snr1set
=
0
,
ue_speed1set
=
0
,
transmission_mode
=
1
,
n_tx
=
1
,
n_rx
=
1
,
awgn_flag
=
0
,
msg1_frequencystart
=
0
,
num_prach_fd_occasions
=
1
,
prach_format
=
0
;
uint8_t
frame
=
1
,
slot
=
19
,
slot_gNB
=
19
,
config_index
=
98
,
prach_sequence_length
=
1
,
restrictedSetConfig
=
0
,
N_dur
,
N_t_slot
,
start_symbol
;
uint8_t
config_index
=
98
,
prach_sequence_length
=
1
,
restrictedSetConfig
=
0
,
N_dur
,
N_t_slot
,
start_symbol
;
uint16_t
Nid_cell
=
0
,
preamble_tx
=
0
,
preamble_delay
,
format
,
format0
,
format1
;
uint32_t
tx_lev
=
10000
,
prach_errors
=
0
;
//,tx_lev_dB;
uint64_t
SSB_positions
=
0x01
;
...
...
@@ -530,7 +530,7 @@ int main(int argc, char **argv){
frame_parms
->
N_RB_UL
=
N_RB_UL
;
frame_parms
->
threequarter_fs
=
threequarter_fs
;
frame_parms
->
frame_type
=
TDD
;
frame_parms
->
freq_range
=
(
mu
==
1
?
nr_FR1
:
nr_FR2
);
frame_parms
->
freq_range
=
(
mu
!=
3
?
nr_FR1
:
nr_FR2
);
frame_parms
->
numerology_index
=
mu
;
nr_phy_config_request_sim
(
gNB
,
N_RB_UL
,
N_RB_UL
,
mu
,
Nid_cell
,
SSB_positions
);
...
...
@@ -540,9 +540,11 @@ int main(int argc, char **argv){
frame_parms
->
numerology_index
,
frame_parms
->
N_RB_UL
*
(
180e3
)
*
(
1
<<
frame_parms
->
numerology_index
));
uint8_t
subframe
=
slot
/
frame_parms
->
slots_per_subframe
;
uint8_t
frame
=
1
;
uint8_t
subframe
=
9
;
uint8_t
slot
=
10
*
frame_parms
->
slots_per_subframe
-
1
;
if
(
config_index
<
67
&&
mu
==
1
)
{
prach_sequence_length
=
0
;
slot
=
subframe
*
2
;
slot_gNB
=
1
+
(
subframe
*
2
)
;
}
if
(
config_index
<
67
&&
mu
!=
3
)
{
prach_sequence_length
=
0
;
slot
=
subframe
*
frame_parms
->
slots_per_subframe
;
}
uint16_t
N_ZC
=
prach_sequence_length
==
0
?
839
:
139
;
printf
(
"Config_index %d, prach_sequence_length %d
\n
"
,
config_index
,
prach_sequence_length
);
...
...
@@ -563,9 +565,11 @@ int main(int argc, char **argv){
ru
->
gNB_list
[
0
]
=
gNB
;
gNB
->
gNB_config
.
carrier_config
.
num_tx_ant
.
value
=
1
;
gNB
->
gNB_config
.
carrier_config
.
num_rx_ant
.
value
=
1
;
if
(
mu
==
1
)
if
(
mu
==
0
)
gNB
->
gNB_config
.
tdd_table
.
tdd_period
.
value
=
7
;
else
if
(
mu
==
1
)
gNB
->
gNB_config
.
tdd_table
.
tdd_period
.
value
=
6
;
else
if
(
mu
==
3
)
else
if
(
mu
==
3
)
gNB
->
gNB_config
.
tdd_table
.
tdd_period
.
value
=
3
;
else
{
printf
(
"unsupported numerology %d
\n
"
,
mu
);
...
...
@@ -579,7 +583,7 @@ int main(int argc, char **argv){
int
ret
=
get_nr_prach_info_from_index
(
config_index
,
(
int
)
frame
,
(
int
)
slot
_gNB
,
(
int
)
slot
,
absoluteFrequencyPointA
,
mu
,
frame_parms
->
frame_type
,
...
...
@@ -711,12 +715,7 @@ int main(int argc, char **argv){
bw
=
N_RB_UL
*
(
180e3
)
*
(
1
<<
frame_parms
->
numerology_index
);
AssertFatal
(
bw
<=
122.88e6
,
"Illegal channel bandwidth %f (mu %d,N_RB_UL %d)
\n
"
,
bw
,
frame_parms
->
numerology_index
,
N_RB_UL
);
if
(
bw
<=
30.72e6
)
fs
=
30.72e6
;
else
if
(
bw
<=
61.44e6
)
fs
=
61.44e6
;
else
if
(
bw
<=
122.88e6
)
fs
=
122.88e6
;
fs
=
frame_parms
->
samples_per_subframe
*
1e3
;
LOG_I
(
PHY
,
"Running with bandwidth %f Hz, fs %f samp/s, FRAME_LENGTH_COMPLEX_SAMPLES %d
\n
"
,
bw
,
fs
,
FRAME_LENGTH_COMPLEX_SAMPLES
);
...
...
openair2/LAYER2/NR_MAC_COMMON/nr_mac_common.c
View file @
15e82e48
...
...
@@ -1685,7 +1685,7 @@ int get_nr_prach_info_from_index(uint8_t index,
}
if
(
(
s_map
>>
subframe
)
&
0x01
)
{
*
N_RA_slot
=
table_6_3_3_2_3_prachConfig_Index
[
index
][
6
];
// Number of RACH slots within a subframe
if
(
mu
==
1
)
{
if
(
mu
==
1
&&
index
>=
67
)
{
if
(
(
*
N_RA_slot
<=
1
)
&&
(
slot
%
2
==
0
)
)
return
0
;
// no prach in even slots @ 30kHz for 1 prach per subframe
}
...
...
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