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
zzha zzha
OpenXG-RAN
Commits
44167f01
Commit
44167f01
authored
Mar 02, 2020
by
laurent
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix phy simulators
parent
7ad4efb3
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
21 additions
and
4 deletions
+21
-4
openair1/SIMULATION/LTE_PHY/dlsim.c
openair1/SIMULATION/LTE_PHY/dlsim.c
+12
-4
openair1/SIMULATION/LTE_PHY/ulsim.c
openair1/SIMULATION/LTE_PHY/ulsim.c
+9
-0
No files found.
openair1/SIMULATION/LTE_PHY/dlsim.c
View file @
44167f01
...
@@ -59,6 +59,7 @@
...
@@ -59,6 +59,7 @@
#include "unitary_defs.h"
#include "unitary_defs.h"
#include "dummy_functions.c"
#include "dummy_functions.c"
#include "executables/thread-common.h"
#include "executables/thread-common.h"
#include "executables/split_headers.h"
void
feptx_ofdm
(
RU_t
*
ru
,
int
frame
,
int
subframe
);
void
feptx_ofdm
(
RU_t
*
ru
,
int
frame
,
int
subframe
);
void
feptx_prec
(
RU_t
*
ru
,
int
frame
,
int
subframe
);
void
feptx_prec
(
RU_t
*
ru
,
int
frame
,
int
subframe
);
...
@@ -78,6 +79,13 @@ int n_tx_dropped = 0; /*!< \brief initial max process time for tx */
...
@@ -78,6 +79,13 @@ int n_tx_dropped = 0; /*!< \brief initial max process time for tx */
int
n_rx_dropped
=
0
;
/*!< \brief initial max process time for rx */
int
n_rx_dropped
=
0
;
/*!< \brief initial max process time for rx */
int
emulate_rf
=
0
;
int
emulate_rf
=
0
;
int
split73
=
0
;
void
sendFs6Ul
(
PHY_VARS_eNB
*
eNB
,
int
UE_id
,
int
harq_pid
,
int
segmentID
,
int16_t
*
data
,
int
dataLen
,
int
r_offset
)
{
AssertFatal
(
false
,
"Must not be called in this context
\n
"
);
}
void
sendFs6Ulharq
(
enum
pckType
type
,
int
UEid
,
PHY_VARS_eNB
*
eNB
,
LTE_eNB_UCI
*
uci
,
int
frame
,
int
subframe
,
uint8_t
*
harq_ack
,
uint8_t
tdd_mapping_mode
,
uint16_t
tdd_multiplexing_mask
,
uint16_t
rnti
,
int32_t
stat
)
{
AssertFatal
(
false
,
"Must not be called in this context
\n
"
);
}
void
handler
(
int
sig
)
{
void
handler
(
int
sig
)
{
void
*
array
[
10
];
void
*
array
[
10
];
...
@@ -1590,11 +1598,11 @@ int main(int argc, char **argv) {
...
@@ -1590,11 +1598,11 @@ int main(int argc, char **argv) {
subframe
<<
1
);
subframe
<<
1
);
for
(
i
=
0
;
i
<
coded_bits_per_codeword
;
i
++
)
for
(
i
=
0
;
i
<
coded_bits_per_codeword
;
i
++
)
if
((
eNB
->
dlsch
[
0
][
0
]
->
harq_processes
[
0
]
->
e
[
i
]
==
1
&&
UE
->
pdsch_vars
[
UE
->
current_thread_id
[
subframe
]][
0
]
->
llr
[
0
][
i
]
>
0
)
||
if
((
eNB
->
dlsch
[
0
][
0
]
->
harq_processes
[
0
]
->
e
DL
[
i
]
==
1
&&
UE
->
pdsch_vars
[
UE
->
current_thread_id
[
subframe
]][
0
]
->
llr
[
0
][
i
]
>
0
)
||
(
eNB
->
dlsch
[
0
][
0
]
->
harq_processes
[
0
]
->
e
[
i
]
==
0
&&
UE
->
pdsch_vars
[
UE
->
current_thread_id
[
subframe
]][
0
]
->
llr
[
0
][
i
]
<
0
))
{
(
eNB
->
dlsch
[
0
][
0
]
->
harq_processes
[
0
]
->
e
DL
[
i
]
==
0
&&
UE
->
pdsch_vars
[
UE
->
current_thread_id
[
subframe
]][
0
]
->
llr
[
0
][
i
]
<
0
))
{
uncoded_ber_bit
[
bit_errors
++
]
=
1
;
uncoded_ber_bit
[
bit_errors
++
]
=
1
;
printf
(
"error in pos %d : %d => %d
\n
"
,
i
,
printf
(
"error in pos %d : %d => %d
\n
"
,
i
,
eNB
->
dlsch
[
0
][
0
]
->
harq_processes
[
0
]
->
e
[
i
],
eNB
->
dlsch
[
0
][
0
]
->
harq_processes
[
0
]
->
e
DL
[
i
],
UE
->
pdsch_vars
[
UE
->
current_thread_id
[
subframe
]][
0
]
->
llr
[
0
][
i
]);
UE
->
pdsch_vars
[
UE
->
current_thread_id
[
subframe
]][
0
]
->
llr
[
0
][
i
]);
}
else
{
}
else
{
/*
/*
...
@@ -1641,7 +1649,7 @@ int main(int argc, char **argv) {
...
@@ -1641,7 +1649,7 @@ int main(int argc, char **argv) {
//pdsch_vars
//pdsch_vars
printf
(
"coded_bits_per_codeword %u
\n
"
,
coded_bits_per_codeword
);
printf
(
"coded_bits_per_codeword %u
\n
"
,
coded_bits_per_codeword
);
dump_dlsch2
(
UE
,
eNB_id
,
subframe
,
&
coded_bits_per_codeword
,
round
,
UE
->
dlsch
[
UE
->
current_thread_id
[
subframe
]][
0
][
0
]
->
current_harq_pid
);
dump_dlsch2
(
UE
,
eNB_id
,
subframe
,
&
coded_bits_per_codeword
,
round
,
UE
->
dlsch
[
UE
->
current_thread_id
[
subframe
]][
0
][
0
]
->
current_harq_pid
);
LOG_M
(
"dlsch_e.m"
,
"e"
,
eNB
->
dlsch
[
0
][
0
]
->
harq_processes
[
0
]
->
e
,
coded_bits_per_codeword
,
1
,
4
);
LOG_M
(
"dlsch_e.m"
,
"e"
,
eNB
->
dlsch
[
0
][
0
]
->
harq_processes
[
0
]
->
e
DL
,
coded_bits_per_codeword
,
1
,
4
);
//pdcch_vars
//pdcch_vars
LOG_M
(
"pdcchF0_ext.m"
,
"pdcchF_ext"
,
UE
->
pdcch_vars
[
0
][
eNB_id
]
->
rxdataF_ext
[
0
],
2
*
3
*
UE
->
frame_parms
.
ofdm_symbol_size
,
1
,
1
);
LOG_M
(
"pdcchF0_ext.m"
,
"pdcchF_ext"
,
UE
->
pdcch_vars
[
0
][
eNB_id
]
->
rxdataF_ext
[
0
],
2
*
3
*
UE
->
frame_parms
.
ofdm_symbol_size
,
1
,
1
);
LOG_M
(
"pdcch00_ch0_ext.m"
,
"pdcch00_ch0_ext"
,
UE
->
pdcch_vars
[
0
][
eNB_id
]
->
dl_ch_estimates_ext
[
0
],
300
*
3
,
1
,
1
);
LOG_M
(
"pdcch00_ch0_ext.m"
,
"pdcch00_ch0_ext"
,
UE
->
pdcch_vars
[
0
][
eNB_id
]
->
dl_ch_estimates_ext
[
0
],
300
*
3
,
1
,
1
);
...
...
openair1/SIMULATION/LTE_PHY/ulsim.c
View file @
44167f01
...
@@ -54,6 +54,7 @@
...
@@ -54,6 +54,7 @@
#include "common/config/config_load_configmodule.h"
#include "common/config/config_load_configmodule.h"
#include "executables/thread-common.h"
#include "executables/thread-common.h"
#include "targets/RT/USER/lte-softmodem.h"
#include "targets/RT/USER/lte-softmodem.h"
#include "executables/split_headers.h"
double
cpuf
;
double
cpuf
;
#define inMicroS(a) (((double)(a))/(cpu_freq_GHz*1000.0))
#define inMicroS(a) (((double)(a))/(cpu_freq_GHz*1000.0))
...
@@ -81,6 +82,14 @@ int n_tx_dropped = 0; /*!< \brief initial max process time for tx */
...
@@ -81,6 +82,14 @@ int n_tx_dropped = 0; /*!< \brief initial max process time for tx */
int
n_rx_dropped
=
0
;
/*!< \brief initial max process time for rx */
int
n_rx_dropped
=
0
;
/*!< \brief initial max process time for rx */
int
split73
=
0
;
void
sendFs6Ul
(
PHY_VARS_eNB
*
eNB
,
int
UE_id
,
int
harq_pid
,
int
segmentID
,
int16_t
*
data
,
int
dataLen
,
int
r_offset
)
{
AssertFatal
(
false
,
"Must not be called in this context
\n
"
);
}
void
sendFs6Ulharq
(
enum
pckType
type
,
int
UEid
,
PHY_VARS_eNB
*
eNB
,
LTE_eNB_UCI
*
uci
,
int
frame
,
int
subframe
,
uint8_t
*
harq_ack
,
uint8_t
tdd_mapping_mode
,
uint16_t
tdd_multiplexing_mask
,
uint16_t
rnti
,
int32_t
stat
)
{
AssertFatal
(
false
,
"Must not be called in this context
\n
"
);
}
extern
void
fep_full
(
RU_t
*
ru
,
int
subframe
);
extern
void
fep_full
(
RU_t
*
ru
,
int
subframe
);
extern
void
ru_fep_full_2thread
(
RU_t
*
ru
,
int
subframe
);
extern
void
ru_fep_full_2thread
(
RU_t
*
ru
,
int
subframe
);
//extern void eNB_fep_full(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc);
//extern void eNB_fep_full(PHY_VARS_eNB *eNB,L1_rxtx_proc_t *proc);
...
...
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