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
lizhongxiao
OpenXG-RAN
Commits
e01a3c06
Commit
e01a3c06
authored
May 18, 2017
by
Nick Ho
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Complete the UL_INDICATION, and the Sched_Rsp structure
parent
4e93618b
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
102 additions
and
54 deletions
+102
-54
openair1/PHY/LTE_TRANSPORT/dci_nb_iot.h
openair1/PHY/LTE_TRANSPORT/dci_nb_iot.h
+16
-6
openair2/PHY_INTERFACE/IF_Module_nb_iot.h
openair2/PHY_INTERFACE/IF_Module_nb_iot.h
+76
-46
record.txt
record.txt
+10
-2
No files found.
openair1/PHY/LTE_TRANSPORT/dci_nb_iot.h
View file @
e01a3c06
...
...
@@ -35,6 +35,16 @@
#include <stdint.h>
#endif
typedef
enum
DCI_format_NB
{
DCIFormatN0
=
0
,
DCIFormatN1
,
DCIFormatN1_RA
,
DCIFormatN1_RAR
,
DCIFormatN2_Ind
,
DCIFormatN2_Pag
,
}
e_DCI_format_NB
;
/// DCI Format Type 0 (180 kHz, 23 bits)
typedef
struct
DCIFormatN0
{
/// type = 0 => DCI Format N0, type = 1 => DCI Format N1, 1 bits
...
...
@@ -127,7 +137,7 @@ typedef struct DCIFormatN1_RAR DCIFormatN1_RAR_t;
#define sizeof_DCIFormatN1_RAR_t 23
// DCI Format Type N2 for direct indication, 15 bits
struct
DCIFormat2_Ind
{
struct
DCIFormat
N
2_Ind
{
//Flag for paging(1)/direct indication(0), set to 0,1 bits
uint8_t
type
;
//Direct indication information, 8 bits
...
...
@@ -136,11 +146,11 @@ struct DCIFormat2_Ind{
uint8_t
resInfoBits
;
};
typedef
struct
DCIFormat
2_Ind
DCIFormat
2_Ind_t
;
#define sizeof_DCIFormat2_Ind_t 15
typedef
struct
DCIFormat
N2_Ind
DCIFormatN
2_Ind_t
;
#define sizeof_DCIFormat
N
2_Ind_t 15
// DCI Format Type N2 for Paging, 15 bits
struct
DCIFormat2_Pag
{
struct
DCIFormat
N
2_Pag
{
//Flag for paging(1)/direct indication(0), set to 1,1 bits
uint8_t
type
;
// Resourse Assignment (RU Assignment), 3 bits
...
...
@@ -153,8 +163,8 @@ struct DCIFormat2_Pag{
uint8_t
DCIRep
;
};
typedef
struct
DCIFormat
2_Pag
DCIFormat2_Pag
t
;
#define sizeof_DCIFormat2_Pag_t 15
typedef
struct
DCIFormat
N2_Pag
DCIFormatN2_Pag_
t
;
#define sizeof_DCIFormat
N
2_Pag_t 15
// struct DCI0_5MHz_TDD0 {
// /// type = 0 => DCI Format 0, type = 1 => DCI Format 1A
...
...
openair2/PHY_INTERFACE/IF_Module_nb_iot.h
View file @
e01a3c06
...
...
@@ -7,72 +7,102 @@
*/
#include "platform_types.h"
#include "openair1/PHY/LTE_TRANSPORT/dci_nb_iot.h"
#define NUMBER_OF_UE_MAX 20
typedef
struct
{
//flag to show which message is
uint8_t
UL_MSG_flag
;
//preamble part
//index of the preamble
uint16_t
preamble_index
;
//timing offset by PHY
int16_t
timing_offset
;
//ULSCH SDU part
//rnti
rnti_t
rntiP
;
//Pointer to sdu
uint8_t
*
sdu
;
//Pointer to sdu length
uint16_t
sdu_lenP
;
//HARQ ID
int
harq_pidP
;
//MSG3 flag
uint8_t
*
msg3_flagP
;
//ACK/NAK
boolean_t
NAK
;
//flag to show which message is
uint8_t
UL_MSG_flag
;
//rnti
rnti_t
rntiP
;
//Pointer to sdu
uint8_t
*
sdu
;
//Pointer to sdu length
uint16_t
sdu_lenP
;
//HARQ ID
int
harq_pidP
;
//MSG3 flag
uint8_t
*
msg3_flagP
;
//ACK/NAK
boolean_t
NAK
;
}
UL_SPEC_t
;
//UL_IND
typedef
struct
{
/*Start at the common part*/
int
test
;
/*Start at the common part*/
int
test
;
//Module ID
module_id_t
module_id
;
//CC ID
int
CC_id
;
//frame
frame_t
frame
;
//subframe
sub_frame_t
subframe
;
//Number of availble UE
int
UE_NUM
;
//Module ID
module_id_t
module_id
;
//CC ID
int
CC_id
;
//frame
frame_t
frame
;
//subframe
sub_frame_t
subframe
;
//Number of availble UE
int
UE_NUM
;
/*preamble part*/
//index of the preamble
uint16_t
preamble_index
;
//timing offset by PHY
int16_t
timing_offset
;
/*UE specific part*/
/*UE specific part*/
UL_SPEC_t
UL_SPEC_Info
[
NUMBER_OF_UE_MAX
];
UL_SPEC_t
UL_SPEC_Info
[
NUMBER_OF_UE_MAX
];
}
UL_IND_t
;
}
UL_IND_t
;
typedef
struct
{
/*Interface for uplink, transmitting the Preamble(list), ULSCH SDU, ACK/NACK, Tick (trigger scheduler)
*Parameters:
*Parameters:
/*Common part*/
module_id_t
module_idP
;
int
CC_id
;
frame_t
frameP
;
sub_frame_t
subframeP
;
rnti_t
rntiP
;
/*Downlink data*/
//TB size for Downlink data
uint8_t
TBindex
;
//PDU for MIB,SIBs
uint8_t
*
BCCH_pdu_payload
;
//PDU for DL-SCH
uint8_t
*
DLSCH_pdu_payload
;
/*DCI start*/
// Format of DCI
uint8_t
DCI_Format
;
//
DCIFormatN0_t
DCIN0
;
//
DCIFormatN1_t
DCIN1
;
//
DCIFormatN1_RA_t
DCIN1_RA
;
//
DCIFormatN1_RAR_t
DCIN1_RAR
;
//
DCIFormatN2_Ind_t
DCIN2_Ind
;
//
DCIFormatN2_Pag_t
DCIN2_Pag
;
}
Sched_Rsp_t
;
/*Interface for uplink, transmitting the Preamble(list), ULSCH SDU, NAK, Tick (trigger scheduler)
*/
void
UL_indication
(
UL_IND_t
UL_INFO
,
frame_t
frame
,
sub_frame_t
subframe
,
module_id_t
module_id
);
/*Interface for Downlink, transmitting the DLSCH SDU, DCI SDU*/
void
Schedule_Response
();
void
Schedule_Response
(
Sched_Rsp_t
Sched_INFO
);
/*Interface for Configuration*/
void
Config_Request
();
//
void Config_Request();
record.txt
View file @
e01a3c06
...
...
@@ -31,7 +31,7 @@ Functions: NB_initiate_ra_proc()
5/15
modified: openair1/PHY/LTE_TRANSPORT/dci_nb_iot.h
modified: openair1/PHY/LTE_TRANSPORT/defs.h
modified: openair1/PHY/LTE_TRANSPORT/defs.h
od
modified: openair2/LAYER2/MAC/eNB_scheduler_RA_nb_iot.c
modified: openair2/LAYER2/MAC/proto_nb_iot.h
...
...
@@ -41,7 +41,7 @@ Parameters: Add DCI unpacked format
5/16
Add: openair2/LAYER2/MAC/IF_Module_nb_iot.c
Add: openair2/PHY_I
nterface
/IF_Module_nb_iot.h
Add: openair2/PHY_I
NTERFACE
/IF_Module_nb_iot.h
Add: openair1/PHY/sched/phy_procedures_lte_eNB_nb_iot.c
Comment: Modify NB_phy_procedures_uespec_RX, change the way using primitive, use UL_IND data structure to store the needed parameters.
...
...
@@ -49,4 +49,12 @@ Comment: Modify NB_phy_procedures_uespec_RX, change the way using primitive, use
Functions: NB_phy_procedures_uespec_RX(), UL_INDICATION()
Parameters: UL_IND for Interface Module
5/18
Modified: openair1/PHY/LTE_TRANSPORT/dci_nb_iot.h
Modified: openair2/PHY_INTERFACE/IF_Module_nb_iot.h
Modified: openair2/LAYER2/MAC/IF_Module_nb_iot.c
Comment: Complete the UL_INDICATION
Functions: UL_INDICATION()
Parameters: Sched_Rsp for Interface Module
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