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
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
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
OpenXG
OpenXG-RAN
Commits
9ec1bea7
Commit
9ec1bea7
authored
4 years ago
by
Rahul Gottipati
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add option for 256 qam mcs table in nr_dlsim
parent
a7229204
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
11 additions
and
6 deletions
+11
-6
openair1/SIMULATION/NR_PHY/dlsim.c
openair1/SIMULATION/NR_PHY/dlsim.c
+10
-3
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
+1
-3
No files found.
openair1/SIMULATION/NR_PHY/dlsim.c
View file @
9ec1bea7
...
...
@@ -153,7 +153,7 @@ void update_dmrs_config(NR_CellGroupConfig_t *scg,PHY_VARS_NR_UE *ue, int8_t* dm
/* specific dlsim DL preprocessor: uses rbStart/rbSize/mcs from command line of
dlsim, does not search for CCE/PUCCH occasion but simply sets to 0 */
int
g_mcsIndex
=
-
1
,
g_rbStart
=
-
1
,
g_rbSize
=
-
1
;
int
g_mcsIndex
=
-
1
,
g_
mcsTableIdx
=
0
,
g_
rbStart
=
-
1
,
g_rbSize
=
-
1
;
void
nr_dlsim_preprocessor
(
module_id_t
module_id
,
frame_t
frame
,
sub_frame_t
slot
,
...
...
@@ -181,10 +181,11 @@ void nr_dlsim_preprocessor(module_id_t module_id,
sched_ctrl
->
rbSize
=
g_rbSize
;
sched_ctrl
->
mcs
=
g_mcsIndex
;
sched_ctrl
->
time_domain_allocation
=
2
;
sched_ctrl
->
mcsTableIdx
=
0
;
sched_ctrl
->
mcsTableIdx
=
g_mcsTableIdx
;
AssertFatal
(
sched_ctrl
->
rbStart
>=
0
,
"invalid rbStart %d
\n
"
,
sched_ctrl
->
rbStart
);
AssertFatal
(
sched_ctrl
->
rbSize
>
0
,
"invalid rbSize %d
\n
"
,
sched_ctrl
->
rbSize
);
AssertFatal
(
sched_ctrl
->
mcs
>=
0
,
"invalid sched_ctrl->mcs %d
\n
"
,
sched_ctrl
->
mcs
);
AssertFatal
(
sched_ctrl
->
mcsTableIdx
>=
0
&&
sched_ctrl
->
mcsTableIdx
<=
2
,
"invalid sched_ctrl->mcsTableIdx %d
\n
"
,
sched_ctrl
->
mcsTableIdx
);
sched_ctrl
->
numDmrsCdmGrpsNoData
=
1
;
}
...
...
@@ -280,7 +281,7 @@ int main(int argc, char **argv)
FILE
*
scg_fd
=
NULL
;
while
((
c
=
getopt
(
argc
,
argv
,
"f:hA:pf:g:i:j:n:s:S:t:x:y:z:M:N:F:GR:dPIL:Ea:b:e:m:w:T:U:"
))
!=
-
1
)
{
while
((
c
=
getopt
(
argc
,
argv
,
"f:hA:pf:g:i:j:n:s:S:t:x:y:z:M:N:F:GR:dPIL:Ea:b:e:m:w:T:U:
q
"
))
!=
-
1
)
{
switch
(
c
)
{
case
'f'
:
scg_fd
=
fopen
(
optarg
,
"r"
);
...
...
@@ -452,6 +453,11 @@ int main(int argc, char **argv)
g_mcsIndex
=
atoi
(
optarg
);
break
;
case
'q'
:
g_mcsTableIdx
=
1
;
get_softmodem_params
()
->
use_256qam_table
=
1
;
break
;
case
'm'
:
mu
=
atoi
(
optarg
);
break
;
...
...
@@ -507,6 +513,7 @@ int main(int argc, char **argv)
printf
(
"-c Start symbol for PDSCH (fixed for now)
\n
"
);
printf
(
"-j Number of symbols for PDSCH (fixed for now)
\n
"
);
printf
(
"-e MSC index
\n
"
);
printf
(
"-q Use 2nd MCS table (256 QAM table) for PDSCH
\n
"
);
printf
(
"-t Acceptable effective throughput (in percentage)
\n
"
);
printf
(
"-T Enable PTRS, arguments list L_PTRS{0,1,2} K_PTRS{2,4}, e.g. -T 2 0 2
\n
"
);
printf
(
"-U Change DMRS Config, arguments list DMRS TYPE{0=A,1=B} DMRS AddPos{0:2}, e.g. -U 2 0 2
\n
"
);
...
...
This diff is collapsed.
Click to expand it.
openair2/LAYER2/NR_MAC_UE/nr_ue_procedures.c
View file @
9ec1bea7
...
...
@@ -3859,8 +3859,6 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
dlsch_config_pdu_1_1
->
rate_matching_ind
=
dci
->
rate_matching_indicator
.
val
;
/* ZP_CSI_RS_TRIGGER */
dlsch_config_pdu_1_1
->
zp_csi_rs_trigger
=
dci
->
zp_csi_rs_trigger
.
val
;
/* MCS TABLE INDEX */
dlsch_config_pdu_1_1
->
mcs_table
=
(
pdsch_config
->
mcs_Table
)
?
(
*
pdsch_config
->
mcs_Table
+
1
)
:
0
;
/* MCS (for transport block 1)*/
dlsch_config_pdu_1_1
->
mcs
=
dci
->
mcs
;
// Basic sanity check for MCS value to check for a false or erroneous DCI
...
...
@@ -4014,7 +4012,7 @@ int8_t nr_ue_process_dci(module_id_t module_id, int cc_id, uint8_t gNB_index, fr
dl_config
->
number_pdus
=
dl_config
->
number_pdus
+
1
;
/* TODO same calculation for MCS table as done in UL */
dlsch_config_pdu_1_1
->
mcs_table
=
0
;
dlsch_config_pdu_1_1
->
mcs_table
=
(
pdsch_config
->
mcs_Table
)
?
(
*
pdsch_config
->
mcs_Table
+
1
)
:
0
;
/*PTRS configuration */
if
(
mac
->
DLbwp
[
0
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
dmrs_DownlinkForPDSCH_MappingTypeA
->
choice
.
setup
->
phaseTrackingRS
!=
NULL
)
{
valid_ptrs_setup
=
set_dl_ptrs_values
(
mac
->
DLbwp
[
0
]
->
bwp_Dedicated
->
pdsch_Config
->
choice
.
setup
->
dmrs_DownlinkForPDSCH_MappingTypeA
->
choice
.
setup
->
phaseTrackingRS
->
choice
.
setup
,
...
...
This diff is collapsed.
Click to expand it.
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