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
0717c18c
Commit
0717c18c
authored
Dec 04, 2016
by
Raymond.Knopp
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
modifications for PRACH on IF4p5
parent
1255cf85
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
7 additions
and
8 deletions
+7
-8
openair1/SCHED/phy_procedures_lte_eNb.c
openair1/SCHED/phy_procedures_lte_eNb.c
+1
-1
targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.if4p5.50PRB.conf
...JECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.if4p5.50PRB.conf
+0
-0
targets/RT/USER/lte-enb.c
targets/RT/USER/lte-enb.c
+6
-7
No files found.
openair1/SCHED/phy_procedures_lte_eNb.c
View file @
0717c18c
...
...
@@ -1916,7 +1916,7 @@ void prach_procedures(PHY_VARS_eNB *eNB) {
eNB
->
UE_stats
[(
uint32_t
)
UE_id
].
UE_timing_offset
=
preamble_delay_list
[
preamble_max
]
&
0x1FFF
;
//limit to 13 (=11+2) bits
eNB
->
UE_stats
[(
uint32_t
)
UE_id
].
sector
=
0
;
LOG_
I
(
PHY
,
"[eNB %d/%d][RAPROC] Frame %d, subframe %d Initiating RA procedure (UE_id %d) with preamble %d, energy %d.%d dB, delay %d
\n
"
,
LOG_
D
(
PHY
,
"[eNB %d/%d][RAPROC] Frame %d, subframe %d Initiating RA procedure (UE_id %d) with preamble %d, energy %d.%d dB, delay %d
\n
"
,
eNB
->
Mod_id
,
eNB
->
CC_id
,
frame
,
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.
50PRB.if4p5
.conf
→
targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.
if4p5.50PRB
.conf
View file @
0717c18c
File moved
targets/RT/USER/lte-enb.c
View file @
0717c18c
...
...
@@ -543,7 +543,8 @@ static inline int rxtx(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc, char *thread_nam
// ****************************************
// Common RX procedures subframe n
if
(
eNB
->
do_prach
)
eNB
->
do_prach
(
eNB
,
proc
->
frame_rx
,
proc
->
subframe_rx
);
if
((
eNB
->
do_prach
)
&&
((
eNB
->
node_function
!=
NGFI_RCC_IF4p5
)))
eNB
->
do_prach
(
eNB
,
proc
->
frame_rx
,
proc
->
subframe_rx
);
phy_procedures_eNB_common_RX
(
eNB
);
// UE-specific RX processing for subframe n
...
...
@@ -980,34 +981,32 @@ void rx_fh_if4p5(PHY_VARS_eNB *eNB,int *frame,int *subframe) {
eNB_proc_t
*
proc
=
&
eNB
->
proc
;
int
f
,
sf
;
int
prach_rx
;
uint16_t
packet_type
;
uint32_t
symbol_number
=
0
;
uint32_t
symbol_mask
,
symbol_mask_full
;
symbol_mask_full
=
(
1
<<
fp
->
symbols_per_tti
)
-
1
;
prach_rx
=
(
is_prach_subframe
(
fp
,
*
frame
,
*
subframe
)
>
0
)
?
1
:
0
;
if
(
eNB
->
CC_id
==
1
)
LOG_I
(
PHY
,
"rx_fh_if4p5: frame %d, subframe %d
\n
"
,
*
frame
,
*
subframe
);
do
{
// Blocking, we need a timeout on this !!!!!!!!!!!!!!!!!!!!!!!
recv_IF4p5
(
eNB
,
&
f
,
&
sf
,
&
packet_type
,
&
symbol_number
);
//proc->frame_rx = (proc->frame_rx + proc->frame_offset)&1023;
if
(
packet_type
==
IF4p5_PULFFT
)
{
LOG_D
(
PHY
,
"rx_fh:if4p5: frame %d, subframe %d, PULFFT symbol %d
\n
"
,
f
,
sf
,
symbol_number
);
proc
->
subframe_rx
=
sf
;
proc
->
frame_rx
=
f
;
proc
->
symbol_mask
[
proc
->
subframe_rx
]
=
proc
->
symbol_mask
[
proc
->
subframe_rx
]
|
(
1
<<
symbol_number
);
}
else
if
(
packet_type
==
IF4p5_PRACH
)
{
prach_rx
=
0
;
LOG_D
(
PHY
,
"rx_fh:if4p5: frame %d, subframe %d, PRACH
\n
"
,
f
,
sf
)
;
// wakeup prach processing
if
(
eNB
->
do_prach
)
eNB
->
do_prach
(
eNB
,
f
,
sf
);
}
if
(
eNB
->
CC_id
==
1
)
LOG_I
(
PHY
,
"rx_fh_if4p5: symbol_mask[%d] %x
, prach %d
\n
"
,
*
subframe
,
proc
->
symbol_mask
[
*
subframe
],
prach_rx
);
if
(
eNB
->
CC_id
==
1
)
LOG_I
(
PHY
,
"rx_fh_if4p5: symbol_mask[%d] %x
\n
"
,
*
subframe
,
proc
->
symbol_mask
[
*
subframe
]
);
}
while
(
(
proc
->
symbol_mask
[
*
subframe
]
!=
symbol_mask_full
)
||
(
prach_rx
==
1
)
);
}
while
(
proc
->
symbol_mask
[
*
subframe
]
!=
symbol_mask_full
);
proc
->
symbol_mask
[
*
subframe
]
=
0
;
proc
->
symbol_mask
[(
9
+*
subframe
)
%
10
]
=
0
;
// to handle a resynchronization event
...
...
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