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
965fe1f7
Commit
965fe1f7
authored
Jan 31, 2019
by
Matthieu Kanj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
UL_indication bug fix
parent
7d361758
Changes
5
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
89 additions
and
608 deletions
+89
-608
openair1/PHY/LTE_TRANSPORT/defs_NB_IoT.h
openair1/PHY/LTE_TRANSPORT/defs_NB_IoT.h
+2
-2
openair1/PHY/LTE_TRANSPORT/ulsch_demodulation_NB_IoT.c
openair1/PHY/LTE_TRANSPORT/ulsch_demodulation_NB_IoT.c
+60
-563
openair1/SCHED/defs_NB_IoT.h
openair1/SCHED/defs_NB_IoT.h
+1
-1
openair1/SCHED/phy_procedures_lte_eNb.c
openair1/SCHED/phy_procedures_lte_eNb.c
+16
-3
openair1/SCHED/phy_procedures_lte_eNb_NB_IoT.c
openair1/SCHED/phy_procedures_lte_eNb_NB_IoT.c
+10
-39
No files found.
openair1/PHY/LTE_TRANSPORT/defs_NB_IoT.h
View file @
965fe1f7
openair1/PHY/LTE_TRANSPORT/ulsch_demodulation_NB_IoT.c
View file @
965fe1f7
This diff is collapsed.
Click to expand it.
openair1/SCHED/defs_NB_IoT.h
View file @
965fe1f7
...
@@ -53,7 +53,7 @@ uint32_t rx_nprach_NB_IoT(PHY_VARS_eNB *eNB,int frame, uint8_t subframe, uint16_
...
@@ -53,7 +53,7 @@ uint32_t rx_nprach_NB_IoT(PHY_VARS_eNB *eNB,int frame, uint8_t subframe, uint16_
void
npusch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
);
void
npusch_procedures
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
);
////////////////// NB-IoT testing ////////////////////
////////////////// NB-IoT testing ////////////////////
void
fill_rx_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
data_or_control
);
void
fill_rx_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
data_or_control
,
uint8_t
msg3_flag
);
#endif
#endif
...
...
openair1/SCHED/phy_procedures_lte_eNb.c
View file @
965fe1f7
...
@@ -3192,7 +3192,7 @@ void phy_procedures_eNB_common_RX(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc){
...
@@ -3192,7 +3192,7 @@ void phy_procedures_eNB_common_RX(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc){
///VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_ENB_RX_COMMON+offset, 0 );
///VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME( VCD_SIGNAL_DUMPER_FUNCTIONS_PHY_PROCEDURES_ENB_RX_COMMON+offset, 0 );
}
}
void
fill_rx_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
data_or_control
)
void
fill_rx_indication_NB_IoT
(
PHY_VARS_eNB
*
eNB
,
eNB_rxtx_proc_t
*
proc
,
uint8_t
data_or_control
,
uint8_t
msg3_flag
)
{
{
nfapi_rx_indication_pdu_t
*
pdu
;
nfapi_rx_indication_pdu_t
*
pdu
;
...
@@ -3207,8 +3207,21 @@ void fill_rx_indication_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,uint8_t d
...
@@ -3207,8 +3207,21 @@ void fill_rx_indication_NB_IoT(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc,uint8_t d
// pdu->rx_ue_information.tl.tag = NFAPI_RX_UE_INFORMATION_TAG;
// pdu->rx_ue_information.tl.tag = NFAPI_RX_UE_INFORMATION_TAG;
//pdu->rx_indication_rel8.tl.tag = NFAPI_RX_INDICATION_REL8_TAG;
//pdu->rx_indication_rel8.tl.tag = NFAPI_RX_INDICATION_REL8_TAG;
pdu
->
rx_ue_information
.
rnti
=
eNB
->
ulsch_NB_IoT
[
0
]
->
rnti
;
pdu
->
rx_ue_information
.
rnti
=
eNB
->
ulsch_NB_IoT
[
0
]
->
rnti
;
pdu
->
rx_indication_rel8
.
length
=
eNB
->
ulsch_NB_IoT
[
0
]
->
harq_process
->
TBS
>>
3
;
if
(
msg3_flag
==
1
)
{
pdu
->
rx_indication_rel8
.
length
=
6
;
//eNB->ulsch_NB_IoT[0]->harq_process->TBS>>3;
int
m
=
0
;
for
(
m
=
0
;
m
<
6
;
m
++
)
{
pdu
->
data
[
m
]
=
eNB
->
ulsch_NB_IoT
[
0
]
->
harq_process
->
b
[
2
+
m
];
}
}
else
{
pdu
->
data
=
eNB
->
ulsch_NB_IoT
[
0
]
->
harq_process
->
b
;
pdu
->
data
=
eNB
->
ulsch_NB_IoT
[
0
]
->
harq_process
->
b
;
}
//pdu->data = eNB->ulsch_NB_IoT[UE_id]->harq_processes[harq_pid]->b;
//pdu->data = eNB->ulsch_NB_IoT[UE_id]->harq_processes[harq_pid]->b;
//eNB->UL_INFO.rx_ind.rx_indication_body.number_of_pdus++;
//eNB->UL_INFO.rx_ind.rx_indication_body.number_of_pdus++;
//eNB->UL_INFO.rx_ind.sfn_sf = frame<<4 | subframe;
//eNB->UL_INFO.rx_ind.sfn_sf = frame<<4 | subframe;
...
...
openair1/SCHED/phy_procedures_lte_eNb_NB_IoT.c
View file @
965fe1f7
...
@@ -1561,9 +1561,9 @@ void fill_crc_indication_NB_IoT(PHY_VARS_eNB *eNB,int UE_id,int frame,int subfra
...
@@ -1561,9 +1561,9 @@ void fill_crc_indication_NB_IoT(PHY_VARS_eNB *eNB,int UE_id,int frame,int subfra
//pdu->instance_length = 0; // don't know what to do with this
//pdu->instance_length = 0; // don't know what to do with this
// pdu->rx_ue_information.handle = handle;
// pdu->rx_ue_information.handle = handle;
pdu
->
rx_ue_information
.
tl
.
tag
=
NFAPI_RX_UE_INFORMATION_TAG
;
///////////////////////
pdu->rx_ue_information.tl.tag = NFAPI_RX_UE_INFORMATION_TAG;
pdu
->
rx_ue_information
.
rnti
=
eNB
->
ulsch
[
UE_id
]
->
rnti
;
pdu
->
rx_ue_information
.
rnti
=
eNB
->
ulsch
_NB_IoT
[
0
]
->
rnti
;
/// OK
pdu
->
crc_indication_rel8
.
tl
.
tag
=
NFAPI_CRC_INDICATION_REL8_TAG
;
//////////////////////////
pdu->crc_indication_rel8.tl.tag = NFAPI_CRC_INDICATION_REL8_TAG;
pdu
->
crc_indication_rel8
.
crc_flag
=
crc_flag
;
pdu
->
crc_indication_rel8
.
crc_flag
=
crc_flag
;
eNB
->
UL_INFO
.
crc_ind
.
number_of_crcs
++
;
eNB
->
UL_INFO
.
crc_ind
.
number_of_crcs
++
;
...
@@ -1595,20 +1595,6 @@ void npusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
...
@@ -1595,20 +1595,6 @@ void npusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
//ulsch_harq = ulsch_NB_IoT->harq_process;
//ulsch_harq = ulsch_NB_IoT->harq_process;
// if eNB is ready to receive UL data
// if eNB is ready to receive UL data
// define a flag to trigger on or off the decoding process
// define a flag to trigger on or off the decoding process
//if ((ulsch) && (ulsch->rnti>0) && (ulsch_harq->status == ACTIVE) && (ulsch_harq->frame == frame) && (ulsch_harq->subframe == subframe) && (ulsch_harq->handled == 0))
//uint16_t N_slots = get_UL_slots_per_RU_NB_IoT(nulsch_harq->subcarrier_spacing, nulsch_harq->subcarrier_indication, nulsch->npusch_format)*get_UL_N_ru_NB_IoT(nulsch_harq->mcs,nulsch_harq->resource_assignment,nulsch->Msg3_flag);
// if ((nulsch->Msg3_active == 1) && (nulsch->Msg3_flag == 1)) // && (ulsch_harq->frame == framerx) && (ulsch_harq->subframe == subframerx))
// {
/* if(nulsch->flag_scramble == 1)
{
nulsch->Msg3_frame = framerx;
nulsch->Msg3_subframe = subframerx;
nulsch->flag_scramble = 0;
}*/
rx_ulsch_Gen_NB_IoT
(
eNB
,
rx_ulsch_Gen_NB_IoT
(
eNB
,
proc
,
proc
,
0
,
// this is the effective sector id
0
,
// this is the effective sector id
...
@@ -1616,21 +1602,6 @@ void npusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
...
@@ -1616,21 +1602,6 @@ void npusch_procedures(PHY_VARS_eNB *eNB,eNB_rxtx_proc_t *proc)
RB_IoT_ID
,
// 22 , to be included in // to be replaced by NB_IoT_start ??
RB_IoT_ID
,
// 22 , to be included in // to be replaced by NB_IoT_start ??
rx_subframe
,
// first received subframe
rx_subframe
,
// first received subframe
rx_frame
);
// first received frame
rx_frame
);
// first received frame
///proc->counter_msg3, // this represents the number of Subframe after encoding the msg3 // proc->counter_msg3
// } else if((nulsch->Msg3_active == 1) && (nulsch->Msg3_flag == 0)){ //// case of NPUSCH other than Msg3
/*
rx_ulsch_Gen_NB_IoT(eNB,
proc,
0, // this is the effective sector id
0,
22, // 22 , to be included in // to be replaced by NB_IoT_start ??
nulsch->Msg3_subframe, // first received subframe
nulsch->Msg3_frame, // first received frame
N_slots/2, ///proc->counter_msg3, // this represents the number of Subframe after encoding the msg3 // proc->counter_msg3
subframerx); */
// }
}
// for UE loop
}
// for UE loop
}
}
\ No newline at end of file
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