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
lizhongxiao
OpenXG-RAN
Commits
2feed730
Commit
2feed730
authored
Apr 04, 2019
by
Francesco Mani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fixing counter of trashed frames for two frames synchronization
parent
e0986d2d
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
11 additions
and
2 deletions
+11
-2
executables/nr-ue.c
executables/nr-ue.c
+4
-0
openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c
openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c
+4
-1
openair1/PHY/defs_nr_UE.h
openair1/PHY/defs_nr_UE.h
+3
-1
No files found.
executables/nr-ue.c
View file @
2feed730
...
...
@@ -592,6 +592,10 @@ void *UE_thread(void *arg) {
// and we shifted above to the first slot of next frame
// the synch thread proc context is hard linked to regular processing thread context, thread id = 0
UE_nr_rxtx_proc_t
*
proc
=&
(((
processingData_t
*
)
NotifiedFifoData
(
processingMsg
[
0
]))
->
proc
);
// synchronization is on two frame basis
// if it succeeds on the first frame the second one needs to be considered as trashed
if
(
!
UE
->
is_synchronized_on_frame
)
trashed_frames
++
;
// shift the frame index with all the frames we trashed meanwhile we perform the synch search
proc
->
decoded_frame_rx
=
(
proc
->
decoded_frame_rx
+
trashed_frames
)
%
MAX_FRAME_NUMBER
;
decoded_frame_rx
=
proc
->
decoded_frame_rx
;
...
...
openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c
View file @
2feed730
...
...
@@ -208,6 +208,7 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc, PHY_VARS_NR_UE *ue, runmode_t mode)
int32_t
metric_tdd_ncp
=
0
;
uint8_t
phase_tdd_ncp
;
double
im
,
re
;
int
is
;
NR_DL_FRAME_PARMS
*
fp
=
&
ue
->
frame_parms
;
int
ret
=-
1
;
...
...
@@ -242,7 +243,7 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc, PHY_VARS_NR_UE *ue, runmode_t mode)
cnt
=
0
;
// initial sync performed on two successive frames, if pbch passes on first frame, no need to process second frame
for
(
i
nt
i
s
=
0
;
is
<
2
;
is
++
)
{
for
(
is
=
0
;
is
<
2
;
is
++
)
{
/* process pss search on received buffer */
sync_pos
=
pss_synchro_nr
(
ue
,
is
,
NO_RATE_CHANGE
);
...
...
@@ -372,6 +373,8 @@ int nr_initial_sync(UE_nr_rxtx_proc_t *proc, PHY_VARS_NR_UE *ue, runmode_t mode)
#endif
//#endif
ue
->
is_synchronized_on_frame
=
is
;
// to notify on which of the two frames sync was successful
if
(
ue
->
UE_scan_carrier
==
0
)
{
#if UE_AUTOTEST_TRACE
...
...
openair1/PHY/defs_nr_UE.h
View file @
2feed730
...
...
@@ -878,8 +878,10 @@ typedef struct {
int
UE_scan_carrier
;
/// \brief Indicator that UE should enable estimation and compensation of frequency offset
int
UE_fo_compensation
;
/// \brief Indicator that UE is synchronized to a
n e
NB
/// \brief Indicator that UE is synchronized to a
g
NB
int
is_synchronized
;
/// \brief Indicates on which frame is synchronized in a two frame synchronization
int
is_synchronized_on_frame
;
/// Data structure for UE process scheduling
UE_nr_proc_t
proc
;
/// Flag to indicate the UE shouldn't do timing correction at all
...
...
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