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
promise
OpenXG-RAN
Commits
86bc7945
Commit
86bc7945
authored
4 years ago
by
Francesco Mani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
bugfix in dmrs reception for pusch
parent
5cbb380e
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
5 deletions
+5
-5
openair1/PHY/NR_REFSIG/nr_dmrs_rx.c
openair1/PHY/NR_REFSIG/nr_dmrs_rx.c
+5
-5
No files found.
openair1/PHY/NR_REFSIG/nr_dmrs_rx.c
View file @
86bc7945
...
@@ -63,7 +63,7 @@ int nr_pusch_dmrs_rx(PHY_VARS_gNB *gNB,
...
@@ -63,7 +63,7 @@ int nr_pusch_dmrs_rx(PHY_VARS_gNB *gNB,
int8_t
w
,
nb_dmrs
;
int8_t
w
,
nb_dmrs
;
short
*
mod_table
;
short
*
mod_table
;
unsigned
char
idx
=
0
;
unsigned
char
idx
=
0
;
int
k
;
typedef
int
array_of_w
[
2
];
typedef
int
array_of_w
[
2
];
array_of_w
*
wf
;
array_of_w
*
wf
;
array_of_w
*
wt
;
array_of_w
*
wt
;
...
@@ -77,18 +77,18 @@ int nr_pusch_dmrs_rx(PHY_VARS_gNB *gNB,
...
@@ -77,18 +77,18 @@ int nr_pusch_dmrs_rx(PHY_VARS_gNB *gNB,
if
(
gNB
->
frame_parms
.
Ncp
==
NORMAL
)
{
if
(
gNB
->
frame_parms
.
Ncp
==
NORMAL
)
{
nb_dmrs
=
((
dmrs_type
==
pusch_dmrs_type1
)
?
6
:
4
);
nb_dmrs
=
((
dmrs_type
==
pusch_dmrs_type1
)
?
6
:
4
);
for
(
int
i
=
re_offset
;
i
<
re_offset
+
(
nb_pusch_rb
*
nb_dmrs
);
i
++
)
{
for
(
int
i
=
re_offset
;
i
<
re_offset
+
(
nb_pusch_rb
*
nb_dmrs
);
i
++
)
{
k
=
i
-
re_offset
;
w
=
(
wf
[
p
-
1000
][
i
&
1
])
*
(
wt
[
p
-
1000
][
lp
]);
w
=
(
wf
[
p
-
1000
][
i
&
1
])
*
(
wt
[
p
-
1000
][
lp
]);
mod_table
=
(
w
==
1
)
?
nr_rx_mod_table
:
nr_rx_nmod_table
;
mod_table
=
(
w
==
1
)
?
nr_rx_mod_table
:
nr_rx_nmod_table
;
idx
=
((((
nr_gold_pusch
[(
i
<<
1
)
>>
5
])
>>
((
i
<<
1
)
&
0x1f
))
&
1
)
<<
1
)
^
(((
nr_gold_pusch
[((
i
<<
1
)
+
1
)
>>
5
])
>>
(((
i
<<
1
)
+
1
)
&
0x1f
))
&
1
);
idx
=
((((
nr_gold_pusch
[(
i
<<
1
)
>>
5
])
>>
((
i
<<
1
)
&
0x1f
))
&
1
)
<<
1
)
^
(((
nr_gold_pusch
[((
i
<<
1
)
+
1
)
>>
5
])
>>
(((
i
<<
1
)
+
1
)
&
0x1f
))
&
1
);
((
int16_t
*
)
output
)[
i
<<
1
]
=
mod_table
[(
NR_MOD_TABLE_QPSK_OFFSET
+
idx
)
<<
1
];
((
int16_t
*
)
output
)[
k
<<
1
]
=
mod_table
[(
NR_MOD_TABLE_QPSK_OFFSET
+
idx
)
<<
1
];
((
int16_t
*
)
output
)[(
i
<<
1
)
+
1
]
=
mod_table
[((
NR_MOD_TABLE_QPSK_OFFSET
+
idx
)
<<
1
)
+
1
];
((
int16_t
*
)
output
)[(
k
<<
1
)
+
1
]
=
mod_table
[((
NR_MOD_TABLE_QPSK_OFFSET
+
idx
)
<<
1
)
+
1
];
#ifdef DEBUG_PUSCH
#ifdef DEBUG_PUSCH
printf
(
"nr_pusch_dmrs_rx dmrs config type %d port %d nb_pusch_rb %d
\n
"
,
dmrs_type
,
p
,
nb_pusch_rb
);
printf
(
"nr_pusch_dmrs_rx dmrs config type %d port %d nb_pusch_rb %d
\n
"
,
dmrs_type
,
p
,
nb_pusch_rb
);
printf
(
"wf[%d] = %d wt[%d]= %d
\n
"
,
i
&
1
,
wf
[
p
-
1000
][
i
&
1
],
lp
,
wt
[
p
-
1000
][
lp
]);
printf
(
"wf[%d] = %d wt[%d]= %d
\n
"
,
i
&
1
,
wf
[
p
-
1000
][
i
&
1
],
lp
,
wt
[
p
-
1000
][
lp
]);
printf
(
"i %d idx %d pusch gold %u b0-b1 %d-%d mod_dmrs %d %d
\n
"
,
i
,
idx
,
nr_gold_pusch
[(
i
<<
1
)
>>
5
],
(((
nr_gold_pusch
[(
i
<<
1
)
>>
5
])
>>
((
i
<<
1
)
&
0x1f
))
&
1
),
printf
(
"i %d idx %d pusch gold %u b0-b1 %d-%d mod_dmrs %d %d
\n
"
,
i
,
idx
,
nr_gold_pusch
[(
i
<<
1
)
>>
5
],
(((
nr_gold_pusch
[(
i
<<
1
)
>>
5
])
>>
((
i
<<
1
)
&
0x1f
))
&
1
),
(((
nr_gold_pusch
[((
i
<<
1
)
+
1
)
>>
5
])
>>
(((
i
<<
1
)
+
1
)
&
0x1f
))
&
1
),
((
int16_t
*
)
output
)[
i
<<
1
],
((
int16_t
*
)
output
)[(
i
<<
1
)
+
1
]);
(((
nr_gold_pusch
[((
i
<<
1
)
+
1
)
>>
5
])
>>
(((
i
<<
1
)
+
1
)
&
0x1f
))
&
1
),
((
int16_t
*
)
output
)[
k
<<
1
],
((
int16_t
*
)
output
)[(
k
<<
1
)
+
1
]);
#endif
#endif
}
}
...
...
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