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
4afc0536
Commit
4afc0536
authored
Sep 07, 2018
by
Cedric Roux
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/dft-size-fixes' into develop_integration_2018_w36
parents
5e9a85b1
51314491
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
29 additions
and
16 deletions
+29
-16
openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
+1
-1
openair1/PHY/LTE_REFSIG/lte_ul_ref.c
openair1/PHY/LTE_REFSIG/lte_ul_ref.c
+7
-7
openair1/PHY/LTE_TRANSPORT/transport_extern.h
openair1/PHY/LTE_TRANSPORT/transport_extern.h
+4
-4
openair1/PHY/LTE_TRANSPORT/ulsch_demodulation.c
openair1/PHY/LTE_TRANSPORT/ulsch_demodulation.c
+6
-0
openair1/PHY/LTE_UE_TRANSPORT/drs_modulation.c
openair1/PHY/LTE_UE_TRANSPORT/drs_modulation.c
+1
-1
openair1/PHY/LTE_UE_TRANSPORT/srs_modulation.c
openair1/PHY/LTE_UE_TRANSPORT/srs_modulation.c
+1
-1
openair1/PHY/LTE_UE_TRANSPORT/ulsch_modulation.c
openair1/PHY/LTE_UE_TRANSPORT/ulsch_modulation.c
+6
-0
openair1/PHY/TOOLS/tools_defs.h
openair1/PHY/TOOLS/tools_defs.h
+1
-0
openair1/SIMULATION/LTE_PHY/unitary_defs.h
openair1/SIMULATION/LTE_PHY/unitary_defs.h
+2
-2
No files found.
openair1/PHY/LTE_ESTIMATION/lte_ul_channel_estimation.c
View file @
4afc0536
...
...
@@ -91,7 +91,7 @@ int32_t temp_in_ifft_0[2048*2] __attribute__((aligned(32)));
eNB
->
ulsch
[
UE_id
]
->
harq_processes
[
harq_pid
]
->
n_DMRS2
+
frame_parms
->
pusch_config_common
.
ul_ReferenceSignalsPUSCH
.
nPRS
[(
subframe
<<
1
)
+
Ns
])
%
12
;
Msc_idx_ptr
=
(
uint16_t
*
)
bsearch
(
&
Msc_RS
,
dftsizes
,
3
3
,
sizeof
(
uint16_t
),
compareints
);
Msc_idx_ptr
=
(
uint16_t
*
)
bsearch
(
&
Msc_RS
,
dftsizes
,
3
4
,
sizeof
(
uint16_t
),
compareints
);
if
(
Msc_idx_ptr
)
Msc_RS_idx
=
Msc_idx_ptr
-
dftsizes
;
...
...
openair1/PHY/LTE_REFSIG/lte_ul_ref.c
View file @
4afc0536
...
...
@@ -27,13 +27,13 @@
#include "lte_refsig.h"
#include "PHY/defs_eNB.h"
uint16_t
dftsizes
[
3
3
]
=
{
12
,
24
,
36
,
48
,
60
,
72
,
96
,
108
,
120
,
144
,
180
,
192
,
216
,
240
,
288
,
300
,
324
,
360
,
384
,
432
,
480
,
540
,
576
,
600
,
648
,
720
,
864
,
900
,
960
,
972
,
1080
,
1152
,
1200
};
uint16_t
dftsizes
[
3
4
]
=
{
12
,
24
,
36
,
48
,
60
,
72
,
96
,
108
,
120
,
144
,
180
,
192
,
216
,
240
,
288
,
300
,
324
,
360
,
384
,
432
,
480
,
540
,
576
,
600
,
648
,
720
,
768
,
864
,
900
,
960
,
972
,
1080
,
1152
,
1200
};
uint16_t
ref_primes
[
3
3
]
=
{
11
,
23
,
31
,
47
,
59
,
71
,
89
,
107
,
113
,
139
,
179
,
191
,
211
,
239
,
283
,
293
,
317
,
359
,
383
,
431
,
479
,
523
,
571
,
599
,
647
,
719
,
863
,
887
,
953
,
971
,
1069
,
1151
,
1193
};
uint16_t
ref_primes
[
3
4
]
=
{
11
,
23
,
31
,
47
,
59
,
71
,
89
,
107
,
113
,
139
,
179
,
191
,
211
,
239
,
283
,
293
,
317
,
359
,
383
,
431
,
479
,
523
,
571
,
599
,
647
,
719
,
761
,
863
,
887
,
953
,
971
,
1069
,
1151
,
1193
};
int16_t
*
ul_ref_sigs
[
30
][
2
][
3
3
];
int16_t
*
ul_ref_sigs_rx
[
30
][
2
][
3
3
];
//these contain the sequences in repeated format and quantized to QPSK ifdef IFFT_FPGA
int16_t
*
ul_ref_sigs
[
30
][
2
][
3
4
];
int16_t
*
ul_ref_sigs_rx
[
30
][
2
][
3
4
];
//these contain the sequences in repeated format and quantized to QPSK ifdef IFFT_FPGA
/* 36.211 table 5.5.1.2-1 */
char
ref12
[
360
]
=
{
-
1
,
1
,
3
,
-
3
,
3
,
3
,
1
,
1
,
3
,
1
,
-
3
,
3
,
1
,
1
,
3
,
3
,
3
,
-
1
,
1
,
-
3
,
-
3
,
1
,
-
3
,
3
,
1
,
1
,
-
3
,
-
3
,
-
3
,
-
1
,
-
3
,
-
3
,
1
,
-
3
,
1
,
-
1
,
-
1
,
1
,
1
,
1
,
1
,
-
1
,
-
3
,
-
3
,
1
,
-
3
,
3
,
-
1
,
-
1
,
3
,
1
,
-
1
,
1
,
-
1
,
-
3
,
-
1
,
1
,
-
1
,
1
,
3
,
1
,
-
3
,
3
,
-
1
,
-
1
,
1
,
1
,
-
1
,
-
1
,
3
,
-
3
,
1
,
-
1
,
3
,
-
3
,
-
3
,
-
3
,
3
,
1
,
-
1
,
3
,
3
,
-
3
,
1
,
-
3
,
-
1
,
-
1
,
-
1
,
1
,
-
3
,
3
,
-
1
,
1
,
-
3
,
3
,
1
,
1
,
-
3
,
3
,
1
,
-
1
,
-
1
,
-
1
,
1
,
1
,
3
,
-
1
,
1
,
1
,
-
3
,
-
1
,
3
,
3
,
-
1
,
-
3
,
1
,
1
,
1
,
1
,
1
,
-
1
,
3
,
-
1
,
1
,
1
,
-
3
,
-
3
,
-
1
,
-
3
,
-
3
,
3
,
-
1
,
3
,
1
,
-
1
,
-
1
,
3
,
3
,
-
3
,
1
,
3
,
1
,
3
,
3
,
1
,
-
3
,
1
,
1
,
-
3
,
1
,
1
,
1
,
-
3
,
-
3
,
-
3
,
1
,
3
,
3
,
-
3
,
3
,
-
3
,
1
,
1
,
3
,
-
1
,
-
3
,
3
,
3
,
-
3
,
1
,
-
1
,
-
3
,
-
1
,
3
,
1
,
3
,
3
,
3
,
-
1
,
1
,
3
,
-
1
,
1
,
-
3
,
-
1
,
-
1
,
1
,
1
,
3
,
1
,
-
1
,
-
3
,
1
,
3
,
1
,
-
1
,
1
,
3
,
3
,
3
,
-
1
,
-
1
,
3
,
-
1
,
-
3
,
1
,
1
,
3
,
-
3
,
3
,
-
3
,
-
3
,
3
,
1
,
3
,
-
1
,
-
3
,
3
,
1
,
1
,
-
3
,
1
,
-
3
,
-
3
,
-
1
,
-
1
,
1
,
-
3
,
-
1
,
3
,
1
,
3
,
1
,
-
1
,
-
1
,
3
,
-
3
,
-
1
,
-
3
,
-
1
,
-
1
,
-
3
,
1
,
1
,
1
,
1
,
3
,
1
,
-
1
,
1
,
-
3
,
-
1
,
-
1
,
3
,
-
1
,
1
,
-
3
,
-
3
,
-
3
,
-
3
,
-
3
,
1
,
-
1
,
-
3
,
1
,
1
,
-
3
,
-
3
,
-
3
,
-
3
,
-
1
,
3
,
-
3
,
1
,
-
3
,
3
,
1
,
1
,
-
1
,
-
3
,
-
1
,
-
3
,
1
,
-
1
,
1
,
3
,
-
1
,
1
,
1
,
1
,
3
,
1
,
3
,
3
,
-
1
,
1
,
-
1
,
-
3
,
-
3
,
1
,
1
,
-
3
,
3
,
3
,
1
,
3
,
3
,
1
,
-
3
,
-
1
,
-
1
,
3
,
1
,
3
,
-
3
,
-
3
,
3
,
-
3
,
1
,
-
1
,
-
1
,
3
,
-
1
,
-
3
,
-
3
,
-
1
,
-
3
,
-
1
,
-
3
,
3
,
1
,
-
1
,
1
,
3
,
-
3
,
-
3
,
-
1
,
3
,
-
3
,
3
,
-
1
,
3
,
3
,
-
3
,
3
,
3
,
-
1
,
-
1
,
3
,
-
3
,
-
3
,
-
1
,
-
1
,
-
3
,
-
1
,
3
,
-
3
,
3
,
1
,
-
1
};
...
...
@@ -49,7 +49,7 @@ void generate_ul_ref_sigs(void)
unsigned
int
u
,
v
,
Msc_RS
,
q
,
m
,
n
;
// These are the Zadoff-Chu sequences (for RB 3-100)
for
(
Msc_RS
=
2
;
Msc_RS
<
3
3
;
Msc_RS
++
)
{
for
(
Msc_RS
=
2
;
Msc_RS
<
3
4
;
Msc_RS
++
)
{
for
(
u
=
0
;
u
<
30
;
u
++
)
{
for
(
v
=
0
;
v
<
2
;
v
++
)
{
qbar
=
ref_primes
[
Msc_RS
]
*
(
u
+
1
)
/
(
double
)
31
;
...
...
@@ -119,7 +119,7 @@ void generate_ul_ref_sigs_rx(void)
unsigned
int
u
,
v
,
Msc_RS
,
q
,
m
,
n
;
// These are the complex conjugated Zadoff-Chu sequences quantized to QPSK stored in repeated format (for RB 3-100)
for
(
Msc_RS
=
2
;
Msc_RS
<
3
3
;
Msc_RS
++
)
{
for
(
Msc_RS
=
2
;
Msc_RS
<
3
4
;
Msc_RS
++
)
{
for
(
u
=
0
;
u
<
30
;
u
++
)
{
for
(
v
=
0
;
v
<
2
;
v
++
)
{
qbar
=
ref_primes
[
Msc_RS
]
*
(
u
+
1
)
/
(
double
)
31
;
...
...
@@ -186,7 +186,7 @@ void free_ul_ref_sigs(void)
unsigned
int
u
,
v
,
Msc_RS
;
for
(
Msc_RS
=
0
;
Msc_RS
<
3
3
;
Msc_RS
++
)
{
for
(
Msc_RS
=
0
;
Msc_RS
<
3
4
;
Msc_RS
++
)
{
for
(
u
=
0
;
u
<
30
;
u
++
)
{
for
(
v
=
0
;
v
<
2
;
v
++
)
{
if
(
ul_ref_sigs
[
u
][
v
][
Msc_RS
])
{
...
...
openair1/PHY/LTE_TRANSPORT/transport_extern.h
View file @
4afc0536
...
...
@@ -25,10 +25,10 @@ extern char lte_cqi_snr_dB[15];
extern
short
conjugate
[
8
],
conjugate2
[
8
];
extern
short
minus_one
[
8
];
extern
short
minus_one
[
8
];
extern
short
*
ul_ref_sigs
[
30
][
2
][
3
3
];
extern
short
*
ul_ref_sigs_rx
[
30
][
2
][
3
3
];
extern
unsigned
short
dftsizes
[
3
3
];
extern
unsigned
short
ref_primes
[
3
3
];
extern
short
*
ul_ref_sigs
[
30
][
2
][
3
4
];
extern
short
*
ul_ref_sigs_rx
[
30
][
2
][
3
4
];
extern
unsigned
short
dftsizes
[
3
4
];
extern
unsigned
short
ref_primes
[
3
4
];
extern
int
qam64_table
[
8
],
qam16_table
[
4
],
qpsk_table
[
2
];
...
...
openair1/PHY/LTE_TRANSPORT/ulsch_demodulation.c
View file @
4afc0536
...
...
@@ -335,6 +335,12 @@ void lte_idft(LTE_DL_FRAME_PARMS *frame_parms,uint32_t *z, uint16_t Msc_PUSCH)
dft720
((
int16_t
*
)
idft_in2
,(
int16_t
*
)
idft_out2
,
1
);
break
;
case
768
:
dft768
((
int16_t
*
)
idft_in0
,(
int16_t
*
)
idft_out0
,
1
);
dft768
((
int16_t
*
)
idft_in1
,(
int16_t
*
)
idft_out1
,
1
);
dft768
((
int16_t
*
)
idft_in2
,(
int16_t
*
)
idft_out2
,
1
);
break
;
case
864
:
dft864
((
int16_t
*
)
idft_in0
,(
int16_t
*
)
idft_out0
,
1
);
dft864
((
int16_t
*
)
idft_in1
,(
int16_t
*
)
idft_out1
,
1
);
...
...
openair1/PHY/LTE_UE_TRANSPORT/drs_modulation.c
View file @
4afc0536
...
...
@@ -83,7 +83,7 @@ int generate_drs_pusch(PHY_VARS_UE *ue,
// cyclic_shift1 = 0;
Msc_RS
=
12
*
nb_rb
;
Msc_idx_ptr
=
(
uint16_t
*
)
bsearch
(
&
Msc_RS
,
dftsizes
,
3
3
,
sizeof
(
uint16_t
),
compareints
);
Msc_idx_ptr
=
(
uint16_t
*
)
bsearch
(
&
Msc_RS
,
dftsizes
,
3
4
,
sizeof
(
uint16_t
),
compareints
);
if
(
Msc_idx_ptr
)
Msc_RS_idx
=
Msc_idx_ptr
-
dftsizes
;
...
...
openair1/PHY/LTE_UE_TRANSPORT/srs_modulation.c
View file @
4afc0536
...
...
@@ -181,7 +181,7 @@ int32_t generate_srs(LTE_DL_FRAME_PARMS *frame_parms,
return
(
-
1
);
}
Msc_idx_ptr
=
(
uint16_t
*
)
bsearch
((
uint16_t
*
)
&
Msc_RS
,
(
uint16_t
*
)
dftsizes
,
3
3
,
sizeof
(
uint16_t
),
compareints
);
Msc_idx_ptr
=
(
uint16_t
*
)
bsearch
((
uint16_t
*
)
&
Msc_RS
,
(
uint16_t
*
)
dftsizes
,
3
4
,
sizeof
(
uint16_t
),
compareints
);
if
(
Msc_idx_ptr
)
Msc_RS_idx
=
Msc_idx_ptr
-
dftsizes
;
...
...
openair1/PHY/LTE_UE_TRANSPORT/ulsch_modulation.c
View file @
4afc0536
...
...
@@ -287,6 +287,12 @@ void dft_lte(int32_t *z,int32_t *d, int32_t Msc_PUSCH, uint8_t Nsymb)
dft720
((
int16_t
*
)
dft_in2
,(
int16_t
*
)
dft_out2
,
1
);
break
;
case
768
:
dft768
((
int16_t
*
)
dft_in0
,(
int16_t
*
)
dft_out0
,
1
);
dft768
((
int16_t
*
)
dft_in1
,(
int16_t
*
)
dft_out1
,
1
);
dft768
((
int16_t
*
)
dft_in2
,(
int16_t
*
)
dft_out2
,
1
);
break
;
case
864
:
dft864
((
int16_t
*
)
dft_in0
,(
int16_t
*
)
dft_out0
,
1
);
dft864
((
int16_t
*
)
dft_in1
,(
int16_t
*
)
dft_out1
,
1
);
...
...
openair1/PHY/TOOLS/tools_defs.h
View file @
4afc0536
...
...
@@ -375,6 +375,7 @@ void dft576(int16_t *x,int16_t *y,uint8_t scale_flag);
void
dft600
(
int16_t
*
x
,
int16_t
*
y
,
uint8_t
scale_flag
);
void
dft648
(
int16_t
*
x
,
int16_t
*
y
,
uint8_t
scale_flag
);
void
dft720
(
int16_t
*
x
,
int16_t
*
y
,
uint8_t
scale_flag
);
void
dft768
(
int16_t
*
x
,
int16_t
*
y
,
uint8_t
scale_flag
);
void
dft864
(
int16_t
*
x
,
int16_t
*
y
,
uint8_t
scale_flag
);
void
dft900
(
int16_t
*
x
,
int16_t
*
y
,
uint8_t
scale_flag
);
void
dft960
(
int16_t
*
x
,
int16_t
*
y
,
uint8_t
scale_flag
);
...
...
openair1/SIMULATION/LTE_PHY/unitary_defs.h
View file @
4afc0536
...
...
@@ -31,5 +31,5 @@ void exit_function(const char* file, const char* function, const int line,const
extern
unsigned
int
dlsch_tbs25
[
27
][
25
],
TBStable
[
27
][
110
];
extern
unsigned
char
offset_mumimo_llr_drange_fix
;
extern
unsigned
short
dftsizes
[
3
3
];
extern
short
*
ul_ref_sigs
[
30
][
2
][
3
3
];
extern
unsigned
short
dftsizes
[
3
4
];
extern
short
*
ul_ref_sigs
[
30
][
2
][
3
4
];
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