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
canghaiwuhen
OpenXG-RAN
Commits
94831547
Commit
94831547
authored
Jul 23, 2019
by
laurent
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add prach
parent
c48609f9
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
343 additions
and
140 deletions
+343
-140
executables/dl_fs6.c
executables/dl_fs6.c
+290
-132
executables/split_headers.h
executables/split_headers.h
+41
-5
executables/transport_split.c
executables/transport_split.c
+12
-3
No files found.
executables/dl_fs6.c
View file @
94831547
This diff is collapsed.
Click to expand it.
executables/split_headers.h
View file @
94831547
...
...
@@ -34,17 +34,44 @@ typedef struct frequency_s {
int
nbSamples
;
}
frequency_t
;
typedef
struct
{
int
frame
;
int
subframe
;
uint16_t
max_preamble
[
4
];
uint16_t
max_preamble_energy
[
4
];
uint16_t
max_preamble_delay
[
4
];
uint16_t
avg_preamble_energy
[
4
];
}
fs6_ul_t
;
typedef
struct
{
int
frame
;
int
subframe
;
int
num_pdcch_symbols
;
int
num_dci
;
DCI_ALLOC_t
dci_alloc
[
32
];
int
num_mdci
;
int
amp
;
bool
UE_active
[
NUMBER_OF_UE_MAX
];
LTE_eNB_PHICH
phich_vars
;
}
fs6_dl_t
;
bool
createUDPsock
(
char
*
sourceIP
,
char
*
sourcePort
,
char
*
destIP
,
char
*
destPort
,
UDPsock_t
*
result
);
int
receiveSubFrame
(
UDPsock_t
*
sock
,
uint64_t
expectedTS
,
void
*
bufferZone
,
int
bufferSize
);
int
sendSubFrame
(
UDPsock_t
*
sock
,
void
*
bufferZone
);
int
sendSubFrame
(
UDPsock_t
*
sock
,
void
*
bufferZone
,
ssize_t
secondHeaderSize
);
inline
size_t
alignedSize
(
void
*
ptr
)
{
#define initBufferZone(xBuf) \
uint8_t xBuf[FS6_BUF_SIZE];\
((commonUDP_t *)xBuf)->nbBlocks=0;
inline
size_t
alignedSize
(
uint8_t
*
ptr
)
{
commonUDP_t
*
header
=
(
commonUDP_t
*
)
ptr
;
return
((
header
->
contentBytes
+
sizeof
(
commonUDP_t
)
+
blockAlign
-
1
)
/
blockAlign
)
*
blockAlign
;
}
inline
void
*
commonUDPdata
(
void
*
ptr
)
{
return
(
void
*
)
(((
commonUDP_t
*
)
ptr
)
+
1
);
inline
void
*
commonUDPdata
(
uint8_t
*
ptr
)
{
return
(
void
*
)
(((
commonUDP_t
*
)
ptr
)
+
1
);
}
void
*
cu_fs6
(
void
*
arg
);
...
...
@@ -54,7 +81,16 @@ void rx_rf(RU_t *ru,int *frame,int *subframe);
void
tx_rf
(
RU_t
*
ru
);
void
common_signal_procedures
(
PHY_VARS_eNB
*
eNB
,
int
frame
,
int
subframe
);
void
pmch_procedures
(
PHY_VARS_eNB
*
eNB
,
L1_rxtx_proc_t
*
proc
);
bool
dlsch_procedures
(
PHY_VARS_eNB
*
eNB
,
L1_rxtx_proc_t
*
proc
,
int
harq_pid
,
LTE_eNB_DLSCH_t
*
dlsch
,
LTE_eNB_UE_stats
*
ue_stats
)
;
void
pdsch_procedures
(
PHY_VARS_eNB
*
eNB
,
L1_rxtx_proc_t
*
proc
,
int
harq_pid
,
LTE_eNB_DLSCH_t
*
dlsch
,
LTE_eNB_DLSCH_t
*
dlsch1
);
// mistakes in main OAI
void
phy_init_RU
(
RU_t
*
);
void
feptx_prec
(
RU_t
*
);
...
...
executables/transport_split.c
View file @
94831547
...
...
@@ -99,11 +99,20 @@ int receiveSubFrame(UDPsock_t *sock, uint64_t expectedTS, void *bufferZone, int
return
rcved
;
}
int
sendSubFrame
(
UDPsock_t
*
sock
,
void
*
bufferZone
)
{
commonUDP_t
*
header
=
(
commonUDP_t
*
)
bufferZone
;
int
nbBlocks
=
header
->
nbBlocks
;
int
sendSubFrame
(
UDPsock_t
*
sock
,
void
*
bufferZone
,
ssize_t
secondHeaderSize
)
{
commonUDP_t
*
UDPheader
=
(
commonUDP_t
*
)
bufferZone
;
int
nbBlocks
=
UDPheader
->
nbBlocks
;
int
blockId
=
0
;
do
{
if
(
blockId
>
0
)
{
commonUDP_t
*
currentHeader
=
(
commonUDP_t
*
)
bufferZone
;
*
currentHeader
=*
UDPheader
;
currentHeader
->
blockID
=
blockId
;
memcpy
(
commonUDPdata
((
void
*
)
currentHeader
),
commonUDPdata
(
bufferZone
),
secondHeaderSize
);
blockId
++
;
}
int
sz
=
alignedSize
(
bufferZone
);
// Let's use the first address returned by getaddrinfo()
int
ret
=
sendto
(
sock
->
sockHandler
,
bufferZone
,
sz
,
0
,
...
...
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