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
ZhouShuya
OpenXG-RAN
Commits
b1e2c99b
Commit
b1e2c99b
authored
Dec 17, 2020
by
Francesco Mani
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
moving initialization of gold for pdsch to nr_init_ue
parent
53140df8
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
22 additions
and
16 deletions
+22
-16
openair1/PHY/INIT/nr_init_ue.c
openair1/PHY/INIT/nr_init_ue.c
+6
-0
openair1/PHY/NR_REFSIG/nr_gold_ue.c
openair1/PHY/NR_REFSIG/nr_gold_ue.c
+4
-9
openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c
openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c
+8
-0
openair1/PHY/defs_nr_UE.h
openair1/PHY/defs_nr_UE.h
+3
-0
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
+0
-6
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpn300.conf
.../GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpn300.conf
+1
-1
No files found.
openair1/PHY/INIT/nr_init_ue.c
View file @
b1e2c99b
...
@@ -616,6 +616,12 @@ int init_nr_ue_signal(PHY_VARS_NR_UE *ue,
...
@@ -616,6 +616,12 @@ int init_nr_ue_signal(PHY_VARS_NR_UE *ue,
}
}
}
}
// initializing the scrambling IDs for PDSCH DMRS
for
(
int
i
=
0
;
i
<
2
;
i
++
)
ue
->
scramblingID
[
i
]
=
fp
->
Nid_cell
;
nr_gold_pdsch
(
ue
,
ue
->
scramblingID
);
// DLSCH
// DLSCH
for
(
eNB_id
=
0
;
eNB_id
<
ue
->
n_connected_eNB
;
eNB_id
++
)
{
for
(
eNB_id
=
0
;
eNB_id
<
ue
->
n_connected_eNB
;
eNB_id
++
)
{
for
(
th_id
=
0
;
th_id
<
RX_NB_TH_MAX
;
th_id
++
)
{
for
(
th_id
=
0
;
th_id
<
RX_NB_TH_MAX
;
th_id
++
)
{
...
...
openair1/PHY/NR_REFSIG/nr_gold_ue.c
View file @
b1e2c99b
...
@@ -95,13 +95,8 @@ void nr_gold_pdsch(PHY_VARS_NR_UE* ue,
...
@@ -95,13 +95,8 @@ void nr_gold_pdsch(PHY_VARS_NR_UE* ue,
//unsigned short lbar = 0;
//unsigned short lbar = 0;
for
(
nscid
=
0
;
nscid
<
2
;
nscid
++
)
{
for
(
nscid
=
0
;
nscid
<
2
;
nscid
++
)
{
if
(
n_idDMRS
)
nid
=
n_idDMRS
[
nscid
];
else
nid
=
ue
->
frame_parms
.
Nid_cell
;
//printf("gold pdsch nid %d lbar %d\n",nid,lbar);
nid
=
n_idDMRS
[
nscid
];
for
(
ns
=
0
;
ns
<
ue
->
frame_parms
.
slots_per_frame
;
ns
++
)
{
for
(
ns
=
0
;
ns
<
ue
->
frame_parms
.
slots_per_frame
;
ns
++
)
{
for
(
l
=
0
;
l
<
ue
->
frame_parms
.
symbols_per_slot
;
l
++
)
{
for
(
l
=
0
;
l
<
ue
->
frame_parms
.
symbols_per_slot
;
l
++
)
{
...
@@ -112,9 +107,9 @@ void nr_gold_pdsch(PHY_VARS_NR_UE* ue,
...
@@ -112,9 +107,9 @@ void nr_gold_pdsch(PHY_VARS_NR_UE* ue,
LOG_D
(
PHY
,
"UE DMRS slot %d, symb %d, x2 %x, nscid %d
\n
"
,
ns
,
l
,
x2
,
nscid
);
LOG_D
(
PHY
,
"UE DMRS slot %d, symb %d, x2 %x, nscid %d
\n
"
,
ns
,
l
,
x2
,
nscid
);
for
(
n
=
0
;
n
<
NR_MAX_PDSCH_DMRS_INIT_LENGTH_DWORD
;
n
++
)
{
for
(
n
=
0
;
n
<
NR_MAX_PDSCH_DMRS_INIT_LENGTH_DWORD
;
n
++
)
{
ue
->
nr_gold_pdsch
[
0
][
ns
][
l
][
nscid
][
n
]
=
lte_gold_generic
(
&
x1
,
&
x2
,
reset
);
ue
->
nr_gold_pdsch
[
0
][
ns
][
l
][
nscid
][
n
]
=
lte_gold_generic
(
&
x1
,
&
x2
,
reset
);
reset
=
0
;
reset
=
0
;
}
}
}
}
}
}
}
}
...
...
openair1/PHY/NR_UE_ESTIMATION/nr_dl_channel_estimation.c
View file @
b1e2c99b
...
@@ -689,6 +689,14 @@ int nr_pdsch_channel_estimation(PHY_VARS_NR_UE *ue,
...
@@ -689,6 +689,14 @@ int nr_pdsch_channel_estimation(PHY_VARS_NR_UE *ue,
uint16_t
rb_offset
=
(
bwp_start_subcarrier
-
ue
->
frame_parms
.
first_carrier_offset
)
/
12
;
uint16_t
rb_offset
=
(
bwp_start_subcarrier
-
ue
->
frame_parms
.
first_carrier_offset
)
/
12
;
uint8_t
config_type
=
ue
->
dmrs_DownlinkConfig
.
pdsch_dmrs_type
;
uint8_t
config_type
=
ue
->
dmrs_DownlinkConfig
.
pdsch_dmrs_type
;
int8_t
delta
=
get_delta
(
p
,
config_type
);
int8_t
delta
=
get_delta
(
p
,
config_type
);
// checking if re-initialization of scrambling IDs is needed
if
((
ue
->
dmrs_DownlinkConfig
.
scramblingID0
!=
ue
->
scramblingID
[
0
])
||
(
ue
->
dmrs_DownlinkConfig
.
scramblingID1
!=
ue
->
scramblingID
[
1
])){
ue
->
scramblingID
[
0
]
=
ue
->
dmrs_DownlinkConfig
.
scramblingID0
;
ue
->
scramblingID
[
1
]
=
ue
->
dmrs_DownlinkConfig
.
scramblingID1
;
nr_gold_pdsch
(
ue
,
ue
->
scramblingID
);
}
nr_pdsch_dmrs_rx
(
ue
,
Ns
,
ue
->
nr_gold_pdsch
[
eNB_offset
][
Ns
][
symbol
][
0
],
&
pilot
[
0
],
1000
,
0
,
nb_rb_pdsch
+
rb_offset
);
nr_pdsch_dmrs_rx
(
ue
,
Ns
,
ue
->
nr_gold_pdsch
[
eNB_offset
][
Ns
][
symbol
][
0
],
&
pilot
[
0
],
1000
,
0
,
nb_rb_pdsch
+
rb_offset
);
if
(
config_type
==
pdsch_dmrs_type1
){
if
(
config_type
==
pdsch_dmrs_type1
){
...
...
openair1/PHY/defs_nr_UE.h
View file @
b1e2c99b
...
@@ -907,6 +907,9 @@ typedef struct {
...
@@ -907,6 +907,9 @@ typedef struct {
/// PDSCH DMRS
/// PDSCH DMRS
uint32_t
****
nr_gold_pdsch
[
NUMBER_OF_CONNECTED_eNB_MAX
];
uint32_t
****
nr_gold_pdsch
[
NUMBER_OF_CONNECTED_eNB_MAX
];
// Scrambling IDs used
uint16_t
scramblingID
[
2
];
/// PDCCH DMRS
/// PDCCH DMRS
uint32_t
***
nr_gold_pdcch
[
NUMBER_OF_CONNECTED_eNB_MAX
];
uint32_t
***
nr_gold_pdcch
[
NUMBER_OF_CONNECTED_eNB_MAX
];
...
...
openair1/SCHED_NR_UE/phy_procedures_nr_ue.c
View file @
b1e2c99b
...
@@ -1843,15 +1843,9 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,
...
@@ -1843,15 +1843,9 @@ int phy_procedures_nrUE_RX(PHY_VARS_NR_UE *ue,
NR_DL_UE_HARQ_t
*
dlsch0_harq
=
dlsch
->
harq_processes
[
harq_pid
];
NR_DL_UE_HARQ_t
*
dlsch0_harq
=
dlsch
->
harq_processes
[
harq_pid
];
uint16_t
nb_symb_sch
=
dlsch0_harq
->
nb_symbols
;
uint16_t
nb_symb_sch
=
dlsch0_harq
->
nb_symbols
;
uint16_t
start_symb_sch
=
dlsch0_harq
->
start_symbol
;
uint16_t
start_symb_sch
=
dlsch0_harq
->
start_symbol
;
int
symb_dmrs
=
-
1
;
LOG_D
(
PHY
,
" ------ --> PDSCH ChannelComp/LLR Frame.slot %d.%d ------
\n
"
,
frame_rx
%
1024
,
nr_slot_rx
);
LOG_D
(
PHY
,
" ------ --> PDSCH ChannelComp/LLR Frame.slot %d.%d ------
\n
"
,
frame_rx
%
1024
,
nr_slot_rx
);
//to update from pdsch config
//to update from pdsch config
for
(
int
i
=
0
;
i
<
4
;
i
++
)
if
(((
1
<<
i
)
&
dlsch0_harq
->
dlDmrsSymbPos
)
>
0
)
{
symb_dmrs
=
i
;
break
;}
AssertFatal
(
symb_dmrs
>=
0
,
"no dmrs in 0..3
\n
"
);
LOG_D
(
PHY
,
"Initializing dmrs for symb %d DMRS mask %x
\n
"
,
symb_dmrs
,
dlsch0_harq
->
dlDmrsSymbPos
);
nr_gold_pdsch
(
ue
,
0
);
for
(
uint16_t
m
=
start_symb_sch
;
m
<
(
nb_symb_sch
+
start_symb_sch
)
;
m
++
){
for
(
uint16_t
m
=
start_symb_sch
;
m
<
(
nb_symb_sch
+
start_symb_sch
)
;
m
++
){
nr_slot_fep
(
ue
,
nr_slot_fep
(
ue
,
...
...
targets/PROJECTS/GENERIC-LTE-EPC/CONF/gnb.band78.tm1.106PRB.usrpn300.conf
View file @
b1e2c99b
...
@@ -159,7 +159,7 @@ gNBs =
...
@@ -159,7 +159,7 @@ gNBs =
# ssb_PositionsInBurs_BitmapPR
# ssb_PositionsInBurs_BitmapPR
# 1=short, 2=medium, 3=long
# 1=short, 2=medium, 3=long
ssb_PositionsInBurst_PR
=
2
;
ssb_PositionsInBurst_PR
=
2
;
ssb_PositionsInBurst_Bitmap
=
0
x
5
1
;
ssb_PositionsInBurst_Bitmap
=
0
x1
;
# ssb_periodicityServingCell
# ssb_periodicityServingCell
# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1
# 0 = ms5, 1=ms10, 2=ms20, 3=ms40, 4=ms80, 5=ms160, 6=spare2, 7=spare1
...
...
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