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
wangwenhui
OpenXG-RAN
Commits
8b4d3033
Commit
8b4d3033
authored
Sep 07, 2018
by
Cedric Roux
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/generate_75KHz_tables' into develop
parents
c8eb68d5
3740f3d7
Changes
7
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
150 additions
and
230 deletions
+150
-230
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+1
-0
openair1/PHY/INIT/init_top.c
openair1/PHY/INIT/init_top.c
+28
-46
openair1/PHY/MODULATION/gen_75KHz.cpp
openair1/PHY/MODULATION/gen_75KHz.cpp
+84
-0
openair1/PHY/MODULATION/gen_7_5_kHz.m
openair1/PHY/MODULATION/gen_7_5_kHz.m
+0
-107
openair1/PHY/MODULATION/kHz_7_5.h
openair1/PHY/MODULATION/kHz_7_5.h
+0
-45
openair1/PHY/MODULATION/modulation_extern.h
openair1/PHY/MODULATION/modulation_extern.h
+37
-31
openair1/PHY/MODULATION/modulation_vars.h
openair1/PHY/MODULATION/modulation_vars.h
+0
-1
No files found.
cmake_targets/CMakeLists.txt
View file @
8b4d3033
...
@@ -1144,6 +1144,7 @@ set(PHY_SRC_RU
...
@@ -1144,6 +1144,7 @@ set(PHY_SRC_RU
${
OPENAIR1_DIR
}
/PHY/LTE_TRANSPORT/if5_tools.c
${
OPENAIR1_DIR
}
/PHY/LTE_TRANSPORT/if5_tools.c
${
OPENAIR1_DIR
}
/PHY/MODULATION/slot_fep_ul.c
${
OPENAIR1_DIR
}
/PHY/MODULATION/slot_fep_ul.c
${
OPENAIR1_DIR
}
/PHY/MODULATION/ul_7_5_kHz.c
${
OPENAIR1_DIR
}
/PHY/MODULATION/ul_7_5_kHz.c
${
OPENAIR1_DIR
}
/PHY/MODULATION/gen_75KHz.cpp
${
OPENAIR1_DIR
}
/PHY/MODULATION/beamforming.c
${
OPENAIR1_DIR
}
/PHY/MODULATION/beamforming.c
${
OPENAIR1_DIR
}
/PHY/MODULATION/compute_bf_weights.c
${
OPENAIR1_DIR
}
/PHY/MODULATION/compute_bf_weights.c
${
OPENAIR1_DIR
}
/PHY/INIT/lte_init_ru.c
${
OPENAIR1_DIR
}
/PHY/INIT/lte_init_ru.c
...
...
openair1/PHY/INIT/init_top.c
View file @
8b4d3033
/*
/*
*
Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
*
contributor license agreements. See the NOTICE file distributed with
contributor license agreements. See the NOTICE file distributed with
*
this work for additional information regarding copyright ownership.
this work for additional information regarding copyright ownership.
*
The OpenAirInterface Software Alliance licenses this file to You under
The OpenAirInterface Software Alliance licenses this file to You under
*
the OAI Public License, Version 1.1 (the "License"); you may not use this file
the OAI Public License, Version 1.1 (the "License"); you may not use this file
*
except in compliance with the License.
except in compliance with the License.
*
You may obtain a copy of the License at
You may obtain a copy of the License at
*
*
http://www.openairinterface.org/?page_id=698
http://www.openairinterface.org/?page_id=698
*
*
Unless required by applicable law or agreed to in writing, software
Unless required by applicable law or agreed to in writing, software
*
distributed under the License is distributed on an "AS IS" BASIS,
distributed under the License is distributed on an "AS IS" BASIS,
*
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
*
See the License for the specific language governing permissions and
See the License for the specific language governing permissions and
*
limitations under the License.
limitations under the License.
*
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
*
For more information about the OpenAirInterface (OAI) Software Alliance:
For more information about the OpenAirInterface (OAI) Software Alliance:
*
contact@openairinterface.org
contact@openairinterface.org
*/
*/
/*!\brief Initilization and reconfiguration routines for LTE PHY */
/*!\brief Initilization and reconfiguration routines for LTE PHY */
#include "phy_init.h"
#include "phy_init.h"
...
@@ -27,12 +27,9 @@
...
@@ -27,12 +27,9 @@
#include "PHY/LTE_REFSIG/lte_refsig.h"
#include "PHY/LTE_REFSIG/lte_refsig.h"
#include "PHY/LTE_TRANSPORT/transport_common_proto.h"
#include "PHY/LTE_TRANSPORT/transport_common_proto.h"
void
generate_64qam_table
(
void
)
void
generate_64qam_table
(
void
)
{
{
int
a
,
b
,
c
,
index
;
int
a
,
b
,
c
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
for
(
b
=-
1
;
b
<=
1
;
b
+=
2
)
for
(
b
=-
1
;
b
<=
1
;
b
+=
2
)
for
(
c
=-
1
;
c
<=
1
;
c
+=
2
)
{
for
(
c
=-
1
;
c
<=
1
;
c
+=
2
)
{
...
@@ -41,9 +38,7 @@ void generate_64qam_table(void)
...
@@ -41,9 +38,7 @@ void generate_64qam_table(void)
}
}
}
}
void
generate_16qam_table
(
void
)
void
generate_16qam_table
(
void
)
{
{
int
a
,
b
,
index
;
int
a
,
b
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
...
@@ -53,9 +48,7 @@ void generate_16qam_table(void)
...
@@ -53,9 +48,7 @@ void generate_16qam_table(void)
}
}
}
}
void
generate_qpsk_table
(
void
)
void
generate_qpsk_table
(
void
)
{
{
int
a
,
index
;
int
a
,
index
;
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
{
for
(
a
=-
1
;
a
<=
1
;
a
+=
2
)
{
...
@@ -64,43 +57,32 @@ void generate_qpsk_table(void)
...
@@ -64,43 +57,32 @@ void generate_qpsk_table(void)
}
}
}
}
void
init_lte_top
(
LTE_DL_FRAME_PARMS
*
frame_parms
)
void
init_7_5KHz
(
void
);
{
void
init_lte_top
(
LTE_DL_FRAME_PARMS
*
frame_parms
)
{
ccodelte_init
();
ccodelte_init
();
ccodelte_init_inv
();
ccodelte_init_inv
();
init_dfts
();
init_dfts
();
phy_generate_viterbi_tables_lte
();
phy_generate_viterbi_tables_lte
();
load_codinglib
();
load_codinglib
();
lte_sync_time_init
(
frame_parms
);
lte_sync_time_init
(
frame_parms
);
generate_ul_ref_sigs
();
generate_ul_ref_sigs
();
generate_ul_ref_sigs_rx
();
generate_ul_ref_sigs_rx
();
generate_64qam_table
();
generate_64qam_table
();
generate_16qam_table
();
generate_16qam_table
();
generate_qpsk_table
();
generate_qpsk_table
();
generate_RIV_tables
();
generate_RIV_tables
();
init_unscrambling_lut
();
init_unscrambling_lut
();
init_scrambling_lut
();
init_scrambling_lut
();
//set_taus_seed(1328);
//set_taus_seed(1328);
init_7_5KHz
();
}
}
void
free_lte_top
(
void
)
void
free_lte_top
(
void
)
{
{
free_codinglib
();
free_codinglib
();
lte_sync_time_free
();
lte_sync_time_free
();
/* free_ul_ref_sigs() is called in phy_free_lte_eNB() */
/* free_ul_ref_sigs() is called in phy_free_lte_eNB() */
}
}
/*
/*
*
@}*/
@}*/
openair1/PHY/MODULATION/gen_75KHz.cpp
0 → 100644
View file @
8b4d3033
#include <stdio.h>
#include <stdint.h>
#include <string.h>
#include <malloc.h>
#include <assert.h>
#include <complex>
#include <cmath>
#include <map>
#include <PHY/MODULATION/modulation_extern.h>
using
namespace
std
;
extern
"C"
{
void
gen_sig
(
int
RB
,
int
len
,
double
ratio
,
int16_t
*
table_n
,
int16_t
*
table_e
)
{
double
samplerate
=
30.72e6
*
ratio
;
double
ofdm_size
=
2048
*
ratio
;
double
PI
=
std
::
acos
(
-
1
);
std
::
complex
<
int
>
tt
;
complex
<
double
>
t
[
len
];
int
index
=
0
;
double
cp0
=
160
*
ratio
;
double
cp
=
144
*
ratio
;
for
(
int
i
=-
cp0
;
i
<
ofdm_size
;
i
++
)
t
[
index
++
]
=
polar
(
32767.0
,
-
2
*
PI
*
i
*
7.5e3
/
samplerate
);
for
(
int
x
=
0
;
x
<
6
;
x
++
)
for
(
int
i
=-
cp
;
i
<
ofdm_size
;
i
++
)
t
[
index
++
]
=
polar
(
32767.0
,
-
2
*
PI
*
i
*
7.5e3
/
samplerate
);
for
(
int
i
=
0
;
i
<
len
;
i
++
)
{
table_n
[
i
*
2
]
=
floor
(
real
(
t
[
i
]));
table_n
[
i
*
2
+
1
]
=
floor
(
imag
(
t
[
i
]));
}
index
=
0
;
double
cpe
=
512
*
ratio
;
for
(
int
x
=
0
;
x
<
6
;
x
++
)
for
(
int
i
=-
cpe
;
i
<
ofdm_size
;
i
++
)
t
[
index
++
]
=
polar
(
32767.0
,
-
2
*
PI
*
i
*
7.5e3
/
samplerate
);
for
(
int
i
=
0
;
i
<
len
;
i
++
)
{
table_e
[
i
*
2
]
=
floor
(
real
(
t
[
i
]));
table_e
[
i
*
2
+
1
]
=
floor
(
imag
(
t
[
i
]));
}
}
int16_t
*
s6n_kHz_7_5
;
int16_t
*
s6e_kHz_7_5
;
int16_t
*
s15n_kHz_7_5
;
int16_t
*
s15e_kHz_7_5
;
int16_t
*
s25n_kHz_7_5
;
int16_t
*
s25e_kHz_7_5
;
int16_t
*
s50n_kHz_7_5
;
int16_t
*
s50e_kHz_7_5
;
int16_t
*
s75n_kHz_7_5
;
int16_t
*
s75e_kHz_7_5
;
int16_t
*
s100n_kHz_7_5
;
int16_t
*
s100e_kHz_7_5
;
int16_t
**
tables
[
12
]
=
{
&
s6n_kHz_7_5
,
&
s6e_kHz_7_5
,
&
s15n_kHz_7_5
,
&
s15e_kHz_7_5
,
&
s25n_kHz_7_5
,
&
s25e_kHz_7_5
,
&
s50n_kHz_7_5
,
&
s50e_kHz_7_5
,
&
s75n_kHz_7_5
,
&
s75e_kHz_7_5
,
&
s100n_kHz_7_5
,
&
s100e_kHz_7_5
,
};
int
tables_size_bytes
[
12
];
#define MyAssert(x) { if(!(x)) { printf("Error in table intialization: %s:%d\n",__FILE__,__LINE__); exit(1);}}
void
init_7_5KHz
(
void
)
{
const
map
<
int
,
double
>
tables_7_5KHz
=
{{
6
,
1.0
/
16
},{
15
,
1.0
/
8
},{
25
,
1.0
/
4
},{
50
,
1.0
/
2
},{
75
,
3.0
/
4
},{
100
,
1.0
}};
int
tables_idx
=
0
;
for
(
auto
it
=
tables_7_5KHz
.
begin
();
it
!=
tables_7_5KHz
.
end
();
++
it
)
{
int
len
=
15360
*
it
->
second
;
tables_size_bytes
[
tables_idx
]
=
sizeof
(
int16_t
)
*
2
*
len
;
tables_size_bytes
[
tables_idx
+
1
]
=
sizeof
(
int16_t
)
*
2
*
len
;
MyAssert
(
0
==
posix_memalign
((
void
**
)
tables
[
tables_idx
],
16
,
tables_size_bytes
[
tables_idx
]));
MyAssert
(
0
==
posix_memalign
((
void
**
)
tables
[
tables_idx
+
1
],
16
,
tables_size_bytes
[
tables_idx
+
1
]));
gen_sig
(
it
->
first
,
len
,
it
->
second
,
*
tables
[
tables_idx
],
*
tables
[
tables_idx
+
1
]);
tables_idx
+=
2
;
}
}
}
openair1/PHY/MODULATION/gen_7_5_kHz.m
deleted
100644 → 0
View file @
c8eb68d5
function
[]
=
gen_7_5_kHz
()
[
s6_n2
,
s6_e2
]
=
gen_sig
(
6
);
[
s15_n2
,
s15_e2
]
=
gen_sig
(
15
);
[
s25_n2
,
s25_e2
]
=
gen_sig
(
25
);
[
s50_n2
,
s50_e2
]
=
gen_sig
(
50
);
[
s75_n2
,
s75_e2
]
=
gen_sig
(
75
);
[
s100_n2
,
s100_e2
]
=
gen_sig
(
100
);
fd
=
fopen
(
"kHz_7_5.h"
,
"w"
);
fprintf
(
fd
,
"s16 s6n_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s6_n2
));
fprintf
(
fd
,
"%d,"
,
s6_n2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s6_n2
(
end
));
fprintf
(
fd
,
"s16 s6e_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s6_e2
));
fprintf
(
fd
,
"%d,"
,
s6_e2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s6_e2
(
end
));
fprintf
(
fd
,
"s16 s15n_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s15_n2
));
fprintf
(
fd
,
"%d,"
,
s15_n2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s15_n2
(
end
));
fprintf
(
fd
,
"s16 s15e_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s15_e2
));
fprintf
(
fd
,
"%d,"
,
s15_e2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s15_e2
(
end
));
fprintf
(
fd
,
"s16 s25n_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s25_n2
));
fprintf
(
fd
,
"%d,"
,
s25_n2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s25_n2
(
end
));
fprintf
(
fd
,
"s16 s25e_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s25_e2
));
fprintf
(
fd
,
"%d,"
,
s25_e2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s25_e2
(
end
));
fprintf
(
fd
,
"s16 s50n_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s50_n2
));
fprintf
(
fd
,
"%d,"
,
s50_n2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s50_n2
(
end
));
fprintf
(
fd
,
"s16 s50e_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s50_e2
));
fprintf
(
fd
,
"%d,"
,
s50_e2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s50_e2
(
end
));
fprintf
(
fd
,
"s16 s75n_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s75_n2
));
fprintf
(
fd
,
"%d,"
,
s75_n2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s75_n2
(
end
));
fprintf
(
fd
,
"s16 s75e_kHz_7_5[%d]__attribute__((aligned(16))) = {"
,
length
(
s75_e2
));
fprintf
(
fd
,
"%d,"
,
s75_e2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s75_e2
(
end
));
fprintf
(
fd
,
"s16 s100n_kHz_7_5[%d]__attribute__((aligned(16)))= {"
,
length
(
s100_n2
));
fprintf
(
fd
,
"%d,"
,
s100_n2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s100_n2
(
end
));
fprintf
(
fd
,
"s16 s100e_kHz_7_5[%d]__attribute__((aligned(16)))= {"
,
length
(
s100_n2
));
fprintf
(
fd
,
"%d,"
,
s100_e2
(
1
:(
end
-
1
)));
fprintf
(
fd
,
"%d};\n\n"
,
s100_e2
(
end
));
fclose
(
fd
);
end
function
[
s_n2
,
s_e2
]
=
gen_sig
(
RB
)
% 20MHz BW
cp0
=
160
;
cp
=
144
;
cpe
=
512
;
samplerate
=
30.72e6
;
ofdm_size
=
2048
;
len
=
15360
;
switch
(
RB
)
case
6
ratio
=
1
/
16
;
case
15
ratio
=
1
/
8
;
case
25
ratio
=
1
/
4
;
case
50
ratio
=
1
/
2
;
case
75
ratio
=
3
/
4
;
case
100
ratio
=
1
;
otherwise
disp
(
"Wrong Number of RB"
);
end
cp0
=
cp0
*
ratio
;
cp
=
cp
*
ratio
;
cpe
=
cpe
*
ratio
;
samplerate
=
samplerate
*
ratio
;
ofdm_size
=
ofdm_size
*
ratio
;
len
=
len
*
ratio
;
s_n0
=
floor
(
32767
*
exp
(
-
sqrt
(
-
1
)
*
2
*
pi
*
(
-
cp0
:
ofdm_size
-
1
)
*
7.5e3
/
samplerate
));
s_n1
=
floor
(
32767
*
exp
(
-
sqrt
(
-
1
)
*
2
*
pi
*
(
-
cp
:
ofdm_size
-
1
)
*
7.5e3
/
samplerate
));
s_n
=
[
s_n0
s_n1
s_n1
s_n1
s_n1
s_n1
s_n1
];
s_n2
=
zeros
(
1
,
2
*
len
);
s_n2
(
1
:
2
:
end
)
=
real
(
s_n
);
s_n2
(
2
:
2
:
end
)
=
imag
(
s_n
);
s_e
=
floor
(
32767
*
exp
(
-
sqrt
(
-
1
)
*
2
*
pi
*
(
-
cpe
:
ofdm_size
-
1
)
*
7.5e3
/
samplerate
));
s_e
=
[
s_e
s_e
s_e
s_e
s_e
s_e
];
s_e2
=
zeros
(
1
,
2
*
len
);
s_e2
(
1
:
2
:
end
)
=
real
(
s_e
);
s_e2
(
2
:
2
:
end
)
=
imag
(
s_e
);
end
openair1/PHY/MODULATION/kHz_7_5.h
deleted
100644 → 0
View file @
c8eb68d5
This diff is collapsed.
Click to expand it.
openair1/PHY/MODULATION/modulation_extern.h
View file @
8b4d3033
/*
/*
* Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
Licensed to the OpenAirInterface (OAI) Software Alliance under one or more
* contributor license agreements. See the NOTICE file distributed with
contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
this work for additional information regarding copyright ownership.
* The OpenAirInterface Software Alliance licenses this file to You under
The OpenAirInterface Software Alliance licenses this file to You under
* the OAI Public License, Version 1.1 (the "License"); you may not use this file
the OAI Public License, Version 1.1 (the "License"); you may not use this file
* except in compliance with the License.
except in compliance with the License.
* You may obtain a copy of the License at
You may obtain a copy of the License at
*
* http://www.openairinterface.org/?page_id=698
*
* Unless required by applicable law or agreed to in writing, software
; * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*-------------------------------------------------------------------------------
* For more information about the OpenAirInterface (OAI) Software Alliance:
* contact@openairinterface.org
*/
extern
int16_t
s6n_kHz_7_5
[
1920
];
http://www.openairinterface.org/?page_id=698
extern
int16_t
s6e_kHz_7_5
[
1920
];
extern
int16_t
s15n_kHz_7_5
[
3840
];
Unless required by applicable law or agreed to in writing, software
extern
int16_t
s15e_kHz_7_5
[
3840
];
; * distributed under the License is distributed on an "AS IS" BASIS,
extern
int16_t
s25n_kHz_7_5
[
7680
];
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
extern
int16_t
s25e_kHz_7_5
[
7680
];
See the License for the specific language governing permissions and
extern
int16_t
s50n_kHz_7_5
[
15360
];
limitations under the License.
extern
int16_t
s50e_kHz_7_5
[
15360
];
-------------------------------------------------------------------------------
extern
int16_t
s75n_kHz_7_5
[
23040
];
For more information about the OpenAirInterface (OAI) Software Alliance:
extern
int16_t
s75e_kHz_7_5
[
23040
];
contact@openairinterface.org
extern
int16_t
s100n_kHz_7_5
[
30720
];
*/
extern
int16_t
s100e_kHz_7_5
[
30720
];
#ifdef __cplusplus
extern
"C"
{
#endif
extern
int16_t
*
s6n_kHz_7_5
;
extern
int16_t
*
s6e_kHz_7_5
;
extern
int16_t
*
s15n_kHz_7_5
;
extern
int16_t
*
s15e_kHz_7_5
;
extern
int16_t
*
s25n_kHz_7_5
;
extern
int16_t
*
s25e_kHz_7_5
;
extern
int16_t
*
s50n_kHz_7_5
;
extern
int16_t
*
s50e_kHz_7_5
;
extern
int16_t
*
s75n_kHz_7_5
;
extern
int16_t
*
s75e_kHz_7_5
;
extern
int16_t
*
s100n_kHz_7_5
;
extern
int16_t
*
s100e_kHz_7_5
;
extern
short
conjugate75
[
8
];
extern
short
conjugate75
[
8
];
extern
short
conjugate75_2
[
8
];
extern
short
conjugate75_2
[
8
];
extern
short
negate
[
8
];
extern
short
negate
[
8
];
#ifdef __cplusplus
}
#endif
openair1/PHY/MODULATION/modulation_vars.h
View file @
8b4d3033
...
@@ -19,7 +19,6 @@
...
@@ -19,7 +19,6 @@
* contact@openairinterface.org
* contact@openairinterface.org
*/
*/
#include "kHz_7_5.h"
short
conjugate75
[
8
]
__attribute__
((
aligned
(
16
)))
=
{
-
1
,
1
,
-
1
,
1
,
-
1
,
1
,
-
1
,
1
}
;
short
conjugate75
[
8
]
__attribute__
((
aligned
(
16
)))
=
{
-
1
,
1
,
-
1
,
1
,
-
1
,
1
,
-
1
,
1
}
;
short
conjugate75_2
[
8
]
__attribute__
((
aligned
(
16
)))
=
{
1
,
-
1
,
1
,
-
1
,
1
,
-
1
,
1
,
-
1
}
;
short
conjugate75_2
[
8
]
__attribute__
((
aligned
(
16
)))
=
{
1
,
-
1
,
1
,
-
1
,
1
,
-
1
,
1
,
-
1
}
;
...
...
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