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
48662ed5
Commit
48662ed5
authored
Jan 15, 2021
by
Melissa Elkadi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed uci_harq_ind issue by adding drop_tb call
Also updated the spelling of global variable NUM_NFAPI_SUBFRAME
parent
27a232ab
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
26 additions
and
26 deletions
+26
-26
openair2/PHY_INTERFACE/IF_Module.c
openair2/PHY_INTERFACE/IF_Module.c
+4
-4
openair2/PHY_INTERFACE/IF_Module.h
openair2/PHY_INTERFACE/IF_Module.h
+7
-7
openair2/PHY_INTERFACE/phy_stub_UE.c
openair2/PHY_INTERFACE/phy_stub_UE.c
+12
-12
openair2/PHY_INTERFACE/phy_stub_UE.h
openair2/PHY_INTERFACE/phy_stub_UE.h
+3
-3
No files found.
openair2/PHY_INTERFACE/IF_Module.c
View file @
48662ed5
...
...
@@ -98,7 +98,7 @@ void handle_sr(UL_IND_t *UL_info) {
oai_nfapi_sr_indication
(
&
UL_info
->
sr_ind
);
}
}
else
if
(
NFAPI_MODE
==
NFAPI_MODE_VNF
)
{
for
(
uint8_t
j
=
0
;
j
<
NUM_NF
PA
I_SUBFRAME
;
j
++
)
{
for
(
uint8_t
j
=
0
;
j
<
NUM_NF
AP
I_SUBFRAME
;
j
++
)
{
if
(
UL_RCC_INFO
.
sr_ind
[
j
].
sr_indication_body
.
number_of_srs
>
0
)
{
for
(
i
=
0
;
i
<
UL_RCC_INFO
.
sr_ind
[
j
].
sr_indication_body
.
number_of_srs
;
i
++
)
{
SR_indication
(
UL_info
->
module_id
,
...
...
@@ -139,7 +139,7 @@ void handle_cqi(UL_IND_t *UL_info) {
UL_info
->
cqi_ind
.
cqi_indication_body
.
number_of_cqis
=
0
;
}
}
else
if
(
NFAPI_MODE
==
NFAPI_MODE_VNF
)
{
for
(
uint8_t
j
=
0
;
j
<
NUM_NF
PA
I_SUBFRAME
;
j
++
)
{
for
(
uint8_t
j
=
0
;
j
<
NUM_NF
AP
I_SUBFRAME
;
j
++
)
{
if
(
UL_RCC_INFO
.
cqi_ind
[
j
].
cqi_indication_body
.
number_of_cqis
>
0
)
{
for
(
i
=
0
;
i
<
UL_RCC_INFO
.
cqi_ind
[
j
].
cqi_indication_body
.
number_of_cqis
;
i
++
)
{
cqi_indication
(
UL_info
->
module_id
,
...
...
@@ -184,7 +184,7 @@ void handle_harq(UL_IND_t *UL_info) {
UL_info
->
harq_ind
.
harq_indication_body
.
number_of_harqs
=
0
;
}
else
if
(
NFAPI_MODE
==
NFAPI_MODE_VNF
)
{
for
(
uint8_t
j
=
0
;
j
<
NUM_NF
PA
I_SUBFRAME
;
j
++
)
{
for
(
uint8_t
j
=
0
;
j
<
NUM_NF
AP
I_SUBFRAME
;
j
++
)
{
if
(
UL_RCC_INFO
.
harq_ind
[
j
].
harq_indication_body
.
number_of_harqs
>
0
)
{
for
(
int
i
=
0
;
i
<
UL_RCC_INFO
.
harq_ind
[
j
].
harq_indication_body
.
number_of_harqs
;
i
++
)
{
harq_indication
(
UL_info
->
module_id
,
...
...
@@ -227,7 +227,7 @@ void handle_ulsch(UL_IND_t *UL_info) {
UL_info
->
rx_ind
.
rx_indication_body
.
number_of_pdus
=
0
;
}
}
else
if
(
NFAPI_MODE
==
NFAPI_MODE_VNF
)
{
for
(
uint8_t
k
=
0
;
k
<
NUM_NF
PA
I_SUBFRAME
;
k
++
)
{
for
(
uint8_t
k
=
0
;
k
<
NUM_NF
AP
I_SUBFRAME
;
k
++
)
{
if
((
UL_RCC_INFO
.
rx_ind
[
k
].
rx_indication_body
.
number_of_pdus
>
0
)
&&
(
UL_RCC_INFO
.
crc_ind
[
k
].
crc_indication_body
.
number_of_crcs
>
0
))
{
for
(
i
=
0
;
i
<
UL_RCC_INFO
.
rx_ind
[
k
].
rx_indication_body
.
number_of_pdus
;
i
++
)
{
for
(
j
=
0
;
j
<
UL_RCC_INFO
.
crc_ind
[
k
].
crc_indication_body
.
number_of_crcs
;
j
++
)
{
...
...
openair2/PHY_INTERFACE/IF_Module.h
View file @
48662ed5
...
...
@@ -88,25 +88,25 @@ typedef struct {
}
UL_IND_t
;
// Downlink subframe P7
#define NUM_NF
PA
I_SUBFRAME 10
#define NUM_NF
AP
I_SUBFRAME 10
typedef
struct
{
/// harq indication list
nfapi_harq_indication_t
harq_ind
[
NUM_NF
PA
I_SUBFRAME
];
nfapi_harq_indication_t
harq_ind
[
NUM_NF
AP
I_SUBFRAME
];
/// crc indication list
nfapi_crc_indication_t
crc_ind
[
NUM_NF
PA
I_SUBFRAME
];
nfapi_crc_indication_t
crc_ind
[
NUM_NF
AP
I_SUBFRAME
];
/// SR indication list
nfapi_sr_indication_t
sr_ind
[
NUM_NF
PA
I_SUBFRAME
];
nfapi_sr_indication_t
sr_ind
[
NUM_NF
AP
I_SUBFRAME
];
/// CQI indication list
nfapi_cqi_indication_t
cqi_ind
[
NUM_NF
PA
I_SUBFRAME
];
nfapi_cqi_indication_t
cqi_ind
[
NUM_NF
AP
I_SUBFRAME
];
/// RACH indication list
nfapi_rach_indication_t
rach_ind
[
NUM_NF
PA
I_SUBFRAME
];
nfapi_rach_indication_t
rach_ind
[
NUM_NF
AP
I_SUBFRAME
];
/// RX indication
nfapi_rx_indication_t
rx_ind
[
NUM_NF
PA
I_SUBFRAME
];
nfapi_rx_indication_t
rx_ind
[
NUM_NF
AP
I_SUBFRAME
];
}
UL_RCC_IND_t
;
...
...
openair2/PHY_INTERFACE/phy_stub_UE.c
View file @
48662ed5
...
...
@@ -50,12 +50,12 @@ queue_t hi_dci0_req_queue;
int
current_sfn_sf
;
sem_t
sfn_semaphore
;
static
sf_rnti_mcs_s
sf_rnti_mcs
[
NUM_NF
PA
I_SUBFRAME
];
static
sf_rnti_mcs_s
sf_rnti_mcs
[
NUM_NF
AP
I_SUBFRAME
];
static
int
ue_tx_sock_descriptor
=
-
1
;
static
int
ue_rx_sock_descriptor
=
-
1
;
extern
nfapi_tx_request_pdu_t
*
tx_request_pdu
[
1023
][
NUM_NF
PAI_SUBFRAME
][
10
];
//TODO Melissa check these values
extern
nfapi_tx_request_pdu_t
*
tx_request_pdu
[
1023
][
NUM_NF
API_SUBFRAME
][
10
];
//TODO: NFAPI_TX_MAX_PDU for last dim? Check nfapi_pnf.c ln. 81
//extern int timer_subframe;
//extern int timer_frame;
...
...
@@ -798,7 +798,7 @@ void dl_config_req_UE_MAC_dci(int sfn,
sfn
,
sf
,
dci
->
pdu_size
,
dlsch
->
dlsch_pdu
.
dlsch_pdu_rel8
.
pdu_index
,
tx_req_pdu_list
->
num_pdus
);
if
(
!
check_
drop_tb
(
sf
,
dci
->
dci_dl_pdu
.
dci_dl_pdu_rel8
.
rnti
))
if
(
!
drop_tb
(
sf
,
dci
->
dci_dl_pdu
.
dci_dl_pdu_rel8
.
rnti
))
{
ue_send_sdu
(
ue_id
,
0
,
sfn
,
sf
,
tx_req_pdu_list
->
pdus
[
pdu_index
].
segments
[
0
].
segment_data
,
...
...
@@ -817,7 +817,7 @@ void dl_config_req_UE_MAC_dci(int sfn,
for
(
int
ue_id
=
0
;
ue_id
<
num_ue
;
ue_id
++
)
{
if
(
UE_mac_inst
[
ue_id
].
UE_mode
[
0
]
==
NOT_SYNCHED
)
continue
;
if
(
!
check_
drop_tb
(
sf
,
dci
->
dci_dl_pdu
.
dci_dl_pdu_rel8
.
rnti
))
if
(
!
drop_tb
(
sf
,
dci
->
dci_dl_pdu
.
dci_dl_pdu_rel8
.
rnti
))
{
ue_decode_si
(
ue_id
,
0
,
sfn
,
0
,
tx_req_pdu_list
->
pdus
[
pdu_index
].
segments
[
0
].
segment_data
,
...
...
@@ -833,7 +833,7 @@ void dl_config_req_UE_MAC_dci(int sfn,
LOG_I
(
MAC
,
"%s() Received paging message: sfn/sf:%d.%d
\n
"
,
__func__
,
sfn
,
sf
);
if
(
!
check_
drop_tb
(
sf
,
dci
->
dci_dl_pdu
.
dci_dl_pdu_rel8
.
rnti
))
if
(
!
drop_tb
(
sf
,
dci
->
dci_dl_pdu
.
dci_dl_pdu_rel8
.
rnti
))
{
ue_decode_p
(
ue_id
,
0
,
sfn
,
0
,
tx_req_pdu_list
->
pdus
[
pdu_index
].
segments
[
0
].
segment_data
,
...
...
@@ -863,7 +863,7 @@ void dl_config_req_UE_MAC_dci(int sfn,
"%s(): Received RAR, PreambleIndex: %d
\n
"
,
__func__
,
UE_mac_inst
[
ue_id
].
RA_prach_resources
.
ra_PreambleIndex
);
if
(
!
check_
drop_tb
(
sf
,
dci
->
dci_dl_pdu
.
dci_dl_pdu_rel8
.
rnti
))
if
(
!
drop_tb
(
sf
,
dci
->
dci_dl_pdu
.
dci_dl_pdu_rel8
.
rnti
))
{
ue_process_rar
(
ue_id
,
0
,
sfn
,
ra_rnti
,
//RA-RNTI
...
...
@@ -1940,7 +1940,7 @@ char *nfapi_ul_config_req_to_string(nfapi_ul_config_request_t *req)
}
}
int
check_drop_tb
(
int
sf
,
uint16_t
rnti
)
bool
check_drop_tb
(
int
sf
,
uint16_t
rnti
)
{
if
(
sf_rnti_mcs
[
sf
].
pdu_size
<=
0
)
{
...
...
@@ -1956,10 +1956,10 @@ char *nfapi_ul_config_req_to_string(nfapi_ul_config_request_t *req)
}
}
LOG_I
(
MAC
,
"No matching rnti in sf_rnti_mcs.
\n
"
);
return
0
;
return
false
;
}
void
drop_tb
(
int
sf
,
uint16_t
rnti
)
bool
drop_tb
(
int
sf
,
uint16_t
rnti
)
{
assert
(
sf
<
10
&&
sf
>=
0
);
...
...
@@ -1975,7 +1975,7 @@ char *nfapi_ul_config_req_to_string(nfapi_ul_config_request_t *req)
if
(
sf_rnti_mcs
[
sf
].
rnti
[
n
]
==
rnti
)
{
mcs
=
sf_rnti_mcs
[
sf
].
mcs
[
n
];
sf_rnti_mcs
[
sf
].
drop_flag
[
n
]
=
0
;
sf_rnti_mcs
[
sf
].
drop_flag
[
n
]
=
false
;
break
;
}
}
...
...
@@ -2048,7 +2048,7 @@ char *nfapi_ul_config_req_to_string(nfapi_ul_config_request_t *req)
if
(
bler_val
<=
drop_cutoff
)
{
sf_rnti_mcs
[
sf
].
drop_flag
[
n
]
=
1
;
sf_rnti_mcs
[
sf
].
drop_flag
[
n
]
=
true
;
}
return
;
return
sf_rnti_mcs
[
sf
].
drop_flag
[
n
]
;
}
openair2/PHY_INTERFACE/phy_stub_UE.h
View file @
48662ed5
...
...
@@ -52,7 +52,7 @@ typedef struct
uint8_t
mcs
[
256
];
float
sinr
;
uint16_t
pdu_size
;
int
drop_flag
[
256
];
bool
drop_flag
[
256
];
}
sf_rnti_mcs_s
;
...
...
@@ -201,8 +201,8 @@ const char *dl_pdu_type_to_string(uint8_t pdu_type);
const
char
*
ul_pdu_type_to_string
(
uint8_t
pdu_type
);
void
read_channel_param
(
nfapi_dl_config_request_t
*
dl_config
,
int
sf
);
void
drop_tb
(
int
sf
,
uint16_t
rnti
);
int
check_drop_tb
(
int
sf
,
uint16_t
rnti
);
bool
drop_tb
(
int
sf
,
uint16_t
rnti
);
bool
check_drop_tb
(
int
sf
,
uint16_t
rnti
);
extern
queue_t
dl_config_req_tx_req_queue
;
extern
queue_t
ul_config_req_queue
;
...
...
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