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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
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
OpenXG
OpenXG-RAN
Commits
ae8319db
Commit
ae8319db
authored
Dec 03, 2025
by
Sakthivel Velumani
Committed by
Jaroslava Fiedlerova
Jan 13, 2026
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
phy: add warning when choosing higher 3/4 sampling
parent
1e861ac0
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
33 additions
and
5 deletions
+33
-5
common/utils/nr/nr_common.c
common/utils/nr/nr_common.c
+2
-0
common/utils/nr/nr_common.h
common/utils/nr/nr_common.h
+14
-0
openair1/PHY/INIT/nr_parms.c
openair1/PHY/INIT/nr_parms.c
+17
-5
No files found.
common/utils/nr/nr_common.c
View file @
ae8319db
...
...
@@ -874,6 +874,7 @@ void get_samplerate_and_bw(int mu,
switch
(
n_rb
)
{
case
270
:
if
(
threequarter_fs
)
{
warn_higher_threequarter_fs
(
n_rb
,
mu
);
*
sample_rate
=
92.16e6
;
*
samples_per_frame
=
921600
;
*
tx_bw
=
50e6
;
...
...
@@ -973,6 +974,7 @@ void get_samplerate_and_bw(int mu,
case
273
:
if
(
threequarter_fs
)
{
warn_higher_threequarter_fs
(
n_rb
,
mu
);
*
sample_rate
=
184.32e6
;
*
samples_per_frame
=
1843200
;
*
tx_bw
=
100e6
;
...
...
common/utils/nr/nr_common.h
View file @
ae8319db
...
...
@@ -37,6 +37,7 @@
#include <stdlib.h>
#include "assertions.h"
#include "common/utils/utils.h"
#include "common/utils/LOG/log.h"
#define MAX_SI_GROUPS 3
#define NR_MAX_PDSCH_TBS 3824
...
...
@@ -272,6 +273,19 @@ static __attribute__((always_inline)) inline int count_bits64_with_mask(uint64_t
return
count_bits64
(
v
&
mask
);
}
static
inline
void
warn_higher_threequarter_fs
(
const
int
n_rb
,
const
int
mu
)
{
LOG_W
(
PHY
,
"3/4 sampling is not possible for current PRB size: %d and numerology: %d.
\n
"
"So 6/4 sampling is chosen to support x3xx type USRPs.
\n
"
"Note that this sampling rate increases fronthaul traffic, FFT buffer size and processing time by a factor of two compared "
"to 3/4 sampling rate.
\n
"
"Some PRACH configuration might not be supported with 6/4 FFT size.
\n
"
"Consider reducing the PRB size that would fit within the FFT size of 3/4 sampling
\n
"
,
n_rb
,
mu
);
}
uint64_t
reverse_bits
(
uint64_t
in
,
int
n_bits
);
void
reverse_bits_u8
(
uint8_t
const
*
in
,
size_t
sz
,
uint8_t
*
out
);
...
...
openair1/PHY/INIT/nr_parms.c
View file @
ae8319db
...
...
@@ -199,14 +199,26 @@ void set_scs_parameters (NR_DL_FRAME_PARMS *fp, int mu, int N_RB_DL)
AssertFatal
(
1
==
0
,
"Invalid numerology index %d"
,
mu
);
}
if
(
fp
->
threequarter_fs
)
fp
->
ofdm_symbol_size
=
3
*
128
;
else
fp
->
ofdm_symbol_size
=
4
*
128
;
// Start with FFT size 512
fp
->
ofdm_symbol_size
=
512
;
while
(
fp
->
ofdm_symbol_size
<
N_RB_DL
*
12
)
// Choose the right FFT size for the BW
while
(
fp
->
ofdm_symbol_size
<
N_RB_DL
*
NR_NB_SC_PER_RB
)
fp
->
ofdm_symbol_size
<<=
1
;
// Do 3/4 sampling
if
(
fp
->
threequarter_fs
)
{
const
uint16_t
threeq_fft_size
=
fp
->
ofdm_symbol_size
*
3
/
4
;
if
(
threeq_fft_size
<
(
N_RB_DL
*
NR_NB_SC_PER_RB
))
{
// 3/4 sampling FFT size not enough
warn_higher_threequarter_fs
(
N_RB_DL
,
fp
->
numerology_index
);
// Choose 2 times 3/4 sampling
fp
->
ofdm_symbol_size
=
threeq_fft_size
<<
1
;
}
else
{
fp
->
ofdm_symbol_size
=
threeq_fft_size
;
}
}
fp
->
first_carrier_offset
=
fp
->
ofdm_symbol_size
-
(
N_RB_DL
*
12
/
2
);
fp
->
nb_prefix_samples
=
fp
->
ofdm_symbol_size
/
128
*
9
;
fp
->
nb_prefix_samples0
=
fp
->
ofdm_symbol_size
/
128
*
(
9
+
(
1
<<
mu
));
...
...
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