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
91149a7b
Commit
91149a7b
authored
Jul 10, 2020
by
Thomas Schlichter
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'NR_ue_dlsch_dmrs_cdm'
parents
c5357e6a
5caf5a4d
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
22 additions
and
5 deletions
+22
-5
openair1/PHY/NR_TRANSPORT/nr_transport_proto.h
openair1/PHY/NR_TRANSPORT/nr_transport_proto.h
+2
-1
openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
+7
-1
openair1/PHY/NR_UE_TRANSPORT/nr_transport_ue.h
openair1/PHY/NR_UE_TRANSPORT/nr_transport_ue.h
+2
-0
openair1/SCHED_NR_UE/fapi_nr_ue_l1.c
openair1/SCHED_NR_UE/fapi_nr_ue_l1.c
+1
-0
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
+9
-3
openair1/SIMULATION/NR_PHY/dlschsim.c
openair1/SIMULATION/NR_PHY/dlschsim.c
+1
-0
No files found.
openair1/PHY/NR_TRANSPORT/nr_transport_proto.h
View file @
91149a7b
...
@@ -343,8 +343,9 @@ void nr_decode_pucch1(int32_t **rxdataF,
...
@@ -343,8 +343,9 @@ void nr_decode_pucch1(int32_t **rxdataF,
uint8_t
nr_bit
);
uint8_t
nr_bit
);
void
nr_decode_pucch0
(
PHY_VARS_gNB
*
gNB
,
void
nr_decode_pucch0
(
PHY_VARS_gNB
*
gNB
,
int
slot
,
int
slot
,
nfapi_nr_uci_pucch_pdu_format_0_1_t
*
uci_pdu
,
nfapi_nr_uci_pucch_pdu_format_0_1_t
*
uci_pdu
,
nfapi_nr_pucch_pdu_t
*
pucch_pdu
);
nfapi_nr_pucch_pdu_t
*
pucch_pdu
);
#endif
/*__NR_TRANSPORT__H__*/
#endif
/*__NR_TRANSPORT__H__*/
openair1/PHY/NR_UE_TRANSPORT/nr_dlsch_decoding.c
View file @
91149a7b
...
@@ -267,7 +267,13 @@ uint32_t nr_dlsch_decoding(PHY_VARS_NR_UE *phy_vars_ue,
...
@@ -267,7 +267,13 @@ uint32_t nr_dlsch_decoding(PHY_VARS_NR_UE *phy_vars_ue,
uint8_t
dmrs_Type
=
harq_process
->
dmrsConfigType
;
uint8_t
dmrs_Type
=
harq_process
->
dmrsConfigType
;
AssertFatal
(
dmrs_Type
==
1
||
dmrs_Type
==
2
,
"Illegal dmrs_type %d
\n
"
,
dmrs_Type
);
AssertFatal
(
dmrs_Type
==
1
||
dmrs_Type
==
2
,
"Illegal dmrs_type %d
\n
"
,
dmrs_Type
);
uint8_t
nb_re_dmrs
=
(
dmrs_Type
==
1
)
?
6
:
4
;
// should be changed based on MAC parameters
uint8_t
nb_re_dmrs
;
if
(
dmrs_Type
==
NFAPI_NR_DMRS_TYPE1
)
{
nb_re_dmrs
=
6
*
harq_process
->
n_dmrs_cdm_groups
;
}
else
{
nb_re_dmrs
=
4
*
harq_process
->
n_dmrs_cdm_groups
;
}
uint16_t
dmrs_length
=
get_num_dmrs
(
harq_process
->
dlDmrsSymbPos
);
uint16_t
dmrs_length
=
get_num_dmrs
(
harq_process
->
dlDmrsSymbPos
);
AssertFatal
(
dmrs_length
==
1
||
dmrs_length
==
2
,
"Illegal dmrs_length %d
\n
"
,
dmrs_length
);
AssertFatal
(
dmrs_length
==
1
||
dmrs_length
==
2
,
"Illegal dmrs_length %d
\n
"
,
dmrs_length
);
...
...
openair1/PHY/NR_UE_TRANSPORT/nr_transport_ue.h
View file @
91149a7b
...
@@ -292,6 +292,8 @@ typedef struct {
...
@@ -292,6 +292,8 @@ typedef struct {
uint16_t
dlDmrsSymbPos
;
uint16_t
dlDmrsSymbPos
;
/// DMRS Configuration Type
/// DMRS Configuration Type
uint8_t
dmrsConfigType
;
uint8_t
dmrsConfigType
;
// Number of DMRS CDM groups with no data
uint8_t
n_dmrs_cdm_groups
;
/// Starting Symbol number
/// Starting Symbol number
uint16_t
start_symbol
;
uint16_t
start_symbol
;
/// Current subband PMI allocation
/// Current subband PMI allocation
...
...
openair1/SCHED_NR_UE/fapi_nr_ue_l1.c
View file @
91149a7b
...
@@ -106,6 +106,7 @@ int8_t nr_ue_scheduled_response(nr_scheduled_response_t *scheduled_response){
...
@@ -106,6 +106,7 @@ int8_t nr_ue_scheduled_response(nr_scheduled_response_t *scheduled_response){
dlsch0_harq
->
start_symbol
=
dlsch_config_pdu
->
start_symbol
;
dlsch0_harq
->
start_symbol
=
dlsch_config_pdu
->
start_symbol
;
dlsch0_harq
->
dlDmrsSymbPos
=
dlsch_config_pdu
->
dlDmrsSymbPos
;
dlsch0_harq
->
dlDmrsSymbPos
=
dlsch_config_pdu
->
dlDmrsSymbPos
;
dlsch0_harq
->
dmrsConfigType
=
dlsch_config_pdu
->
dmrsConfigType
;
dlsch0_harq
->
dmrsConfigType
=
dlsch_config_pdu
->
dmrsConfigType
;
dlsch0_harq
->
n_dmrs_cdm_groups
=
dlsch_config_pdu
->
n_dmrs_cdm_groups
;
dlsch0_harq
->
mcs
=
dlsch_config_pdu
->
mcs
;
dlsch0_harq
->
mcs
=
dlsch_config_pdu
->
mcs
;
dlsch0_harq
->
rvidx
=
dlsch_config_pdu
->
rv
;
dlsch0_harq
->
rvidx
=
dlsch_config_pdu
->
rv
;
dlsch0
->
g_pucch
=
dlsch_config_pdu
->
accumulated_delta_PUCCH
;
dlsch0
->
g_pucch
=
dlsch_config_pdu
->
accumulated_delta_PUCCH
;
...
...
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
View file @
91149a7b
...
@@ -3291,9 +3291,8 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
...
@@ -3291,9 +3291,8 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
NR_UE_PDSCH
*
pdsch_vars
;
NR_UE_PDSCH
*
pdsch_vars
;
uint8_t
is_cw0_active
=
0
;
uint8_t
is_cw0_active
=
0
;
uint8_t
is_cw1_active
=
0
;
uint8_t
is_cw1_active
=
0
;
uint8_t
dmrs_type
=
dlsch0
->
harq_processes
[
harq_pid
]
->
dmrsConfigType
;
uint8_t
dmrs_type
,
nb_re_dmrs
;
uint8_t
nb_re_dmrs
=
(
dmrs_type
==
NFAPI_NR_DMRS_TYPE1
)
?
6
:
4
;
// TODO: should changed my mac
uint16_t
length_dmrs
=
1
;
uint16_t
length_dmrs
=
1
;
//cfg->pdsch_config.dmrs_max_length.value;
uint16_t
nb_symb_sch
=
9
;
uint16_t
nb_symb_sch
=
9
;
nr_downlink_indication_t
dl_indication
;
nr_downlink_indication_t
dl_indication
;
fapi_nr_rx_indication_t
rx_ind
;
fapi_nr_rx_indication_t
rx_ind
;
...
@@ -3318,6 +3317,13 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
...
@@ -3318,6 +3317,13 @@ void nr_ue_dlsch_procedures(PHY_VARS_NR_UE *ue,
is_cw0_active
=
dlsch0
->
harq_processes
[
harq_pid
]
->
status
;
is_cw0_active
=
dlsch0
->
harq_processes
[
harq_pid
]
->
status
;
nb_symb_sch
=
dlsch0
->
harq_processes
[
harq_pid
]
->
nb_symbols
;
nb_symb_sch
=
dlsch0
->
harq_processes
[
harq_pid
]
->
nb_symbols
;
start_symbol
=
dlsch0
->
harq_processes
[
harq_pid
]
->
start_symbol
;
start_symbol
=
dlsch0
->
harq_processes
[
harq_pid
]
->
start_symbol
;
dmrs_type
=
dlsch0
->
harq_processes
[
harq_pid
]
->
dmrsConfigType
;
if
(
dmrs_type
==
NFAPI_NR_DMRS_TYPE1
)
{
nb_re_dmrs
=
6
*
dlsch0
->
harq_processes
[
harq_pid
]
->
n_dmrs_cdm_groups
;
}
else
{
nb_re_dmrs
=
4
*
dlsch0
->
harq_processes
[
harq_pid
]
->
n_dmrs_cdm_groups
;
}
if
(
dlsch1
)
if
(
dlsch1
)
is_cw1_active
=
dlsch1
->
harq_processes
[
harq_pid
]
->
status
;
is_cw1_active
=
dlsch1
->
harq_processes
[
harq_pid
]
->
status
;
...
...
openair1/SIMULATION/NR_PHY/dlschsim.c
View file @
91149a7b
...
@@ -480,6 +480,7 @@ int main(int argc, char **argv)
...
@@ -480,6 +480,7 @@ int main(int argc, char **argv)
harq_process
->
R
=
rate
;
harq_process
->
R
=
rate
;
harq_process
->
dmrsConfigType
=
1
;
harq_process
->
dmrsConfigType
=
1
;
harq_process
->
dlDmrsSymbPos
=
4
;
harq_process
->
dlDmrsSymbPos
=
4
;
harq_process
->
n_dmrs_cdm_groups
=
1
;
printf
(
"harq process ue mcs = %d Qm = %d, symb %d
\n
"
,
harq_process
->
mcs
,
harq_process
->
Qm
,
nb_symb_sch
);
printf
(
"harq process ue mcs = %d Qm = %d, symb %d
\n
"
,
harq_process
->
mcs
,
harq_process
->
Qm
,
nb_symb_sch
);
unsigned
char
*
test_input
;
unsigned
char
*
test_input
;
test_input
=
(
unsigned
char
*
)
malloc16
(
sizeof
(
unsigned
char
)
*
TBS
/
8
);
test_input
=
(
unsigned
char
*
)
malloc16
(
sizeof
(
unsigned
char
)
*
TBS
/
8
);
...
...
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