refactored FEC directories

master
Xavier Arteaga 4 years ago committed by Xavier Arteaga
parent 7093a85f81
commit f21590735d

@ -32,8 +32,8 @@
#ifndef SRSLTE_CONVCODER_H #ifndef SRSLTE_CONVCODER_H
#define SRSLTE_CONVCODER_H #define SRSLTE_CONVCODER_H
#include "../../../../../../../../../../usr/lib/gcc/x86_64-linux-gnu/7/include/stdbool.h" #include "srslte/config.h"
#include "../../../config.h" #include <stdbool.h>
typedef struct SRSLTE_API { typedef struct SRSLTE_API {
uint32_t R; uint32_t R;

@ -31,7 +31,7 @@
#ifndef SRSLTE_RM_CONV_H #ifndef SRSLTE_RM_CONV_H
#define SRSLTE_RM_CONV_H #define SRSLTE_RM_CONV_H
#include "../../../config.h" #include "srslte/config.h"
#ifndef SRSLTE_RX_NULL #ifndef SRSLTE_RX_NULL
#define SRSLTE_RX_NULL 10000 #define SRSLTE_RX_NULL 10000

@ -20,7 +20,7 @@
*/ */
/****************************************************************************** /******************************************************************************
* File: convolutional.h * File: viterbi.h
* *
* Description: Viterbi decoder for convolutionally encoded data. * Description: Viterbi decoder for convolutionally encoded data.
* Used for decoding of PBCH and PDCCH (type 37 decoder). * Used for decoding of PBCH and PDCCH (type 37 decoder).
@ -31,8 +31,8 @@
#ifndef SRSLTE_VITERBI_H #ifndef SRSLTE_VITERBI_H
#define SRSLTE_VITERBI_H #define SRSLTE_VITERBI_H
#include "../../../../../../../../../../usr/lib/gcc/x86_64-linux-gnu/7/include/stdbool.h" #include "srslte/config.h"
#include "../../../config.h" #include <stdbool.h>
typedef enum { SRSLTE_VITERBI_27 = 0, SRSLTE_VITERBI_29, SRSLTE_VITERBI_37, SRSLTE_VITERBI_39 } srslte_viterbi_type_t; typedef enum { SRSLTE_VITERBI_27 = 0, SRSLTE_VITERBI_29, SRSLTE_VITERBI_37, SRSLTE_VITERBI_39 } srslte_viterbi_type_t;

@ -31,7 +31,7 @@
#define SRSLTE_RM_TURBO_H #define SRSLTE_RM_TURBO_H
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/fec/turbodecoder.h" #include "srslte/phy/fec/turbo/turbodecoder.h"
#ifndef SRSLTE_RX_NULL #ifndef SRSLTE_RX_NULL
#define SRSLTE_RX_NULL 10000 #define SRSLTE_RX_NULL 10000

@ -35,8 +35,7 @@
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/tc_interl.h" #include "srslte/phy/fec/turbo/tc_interl.h"
#define SRSLTE_TCOD_MAX_LEN_CB_BYTES (6144 / 8) #define SRSLTE_TCOD_MAX_LEN_CB_BYTES (6144 / 8)
#ifndef SRSLTE_TX_NULL #ifndef SRSLTE_TX_NULL

@ -35,8 +35,8 @@
#define SRSLTE_TURBODECODER_H #define SRSLTE_TURBODECODER_H
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/fec/cbsegm.h" #include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/fec/tc_interl.h" #include "srslte/phy/fec/turbo/tc_interl.h"
#define SRSLTE_TCOD_RATE 3 #define SRSLTE_TCOD_RATE 3
#define SRSLTE_TCOD_TOTALTAIL 12 #define SRSLTE_TCOD_TOTALTAIL 12
@ -48,11 +48,11 @@
// Include interfaces for 8 and 16 bit decoder implementations // Include interfaces for 8 and 16 bit decoder implementations
#define LLR_IS_8BIT #define LLR_IS_8BIT
#include "srslte/phy/fec/turbodecoder_impl.h" #include "srslte/phy/fec/turbo/turbodecoder_impl.h"
#undef LLR_IS_8BIT #undef LLR_IS_8BIT
#define LLR_IS_16BIT #define LLR_IS_16BIT
#include "srslte/phy/fec/turbodecoder_impl.h" #include "srslte/phy/fec/turbo/turbodecoder_impl.h"
#undef LLR_IS_16BIT #undef LLR_IS_16BIT
#define SRSLTE_TDEC_NOF_AUTO_MODES_8 2 #define SRSLTE_TDEC_NOF_AUTO_MODES_8 2

@ -35,9 +35,8 @@
#define SRSLTE_TURBODECODER_GEN_H #define SRSLTE_TURBODECODER_GEN_H
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/fec/cbsegm.h" #include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/fec/tc_interl.h" #include "srslte/phy/fec/turbo/tc_interl.h"
#define SRSLTE_TCOD_RATE 3 #define SRSLTE_TCOD_RATE 3
#define SRSLTE_TCOD_TOTALTAIL 12 #define SRSLTE_TCOD_TOTALTAIL 12

@ -25,10 +25,10 @@
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/convcoder.h" #include "srslte/phy/fec/convolutional/convcoder.h"
#include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/fec/convolutional/viterbi.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/rm_conv.h"
#include "srslte/phy/fec/viterbi.h"
#include "srslte/phy/mimo/layermap.h" #include "srslte/phy/mimo/layermap.h"
#include "srslte/phy/mimo/precoding.h" #include "srslte/phy/mimo/precoding.h"
#include "srslte/phy/modem/demod_soft.h" #include "srslte/phy/modem/demod_soft.h"

@ -24,10 +24,10 @@
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/convcoder.h" #include "srslte/phy/fec/convolutional/convcoder.h"
#include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/fec/convolutional/viterbi.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/rm_conv.h"
#include "srslte/phy/fec/viterbi.h"
#include "srslte/phy/mimo/layermap.h" #include "srslte/phy/mimo/layermap.h"
#include "srslte/phy/mimo/precoding.h" #include "srslte/phy/mimo/precoding.h"
#include "srslte/phy/modem/demod_soft.h" #include "srslte/phy/modem/demod_soft.h"

@ -24,7 +24,7 @@
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/convcoder.h" #include "srslte/phy/fec/convolutional/convcoder.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/mimo/layermap.h" #include "srslte/phy/mimo/layermap.h"
#include "srslte/phy/mimo/precoding.h" #include "srslte/phy/mimo/precoding.h"

@ -35,10 +35,10 @@
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/ch_estimation/chest_dl.h" #include "srslte/phy/ch_estimation/chest_dl.h"
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/convcoder.h" #include "srslte/phy/fec/convolutional/convcoder.h"
#include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/fec/convolutional/viterbi.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/rm_conv.h"
#include "srslte/phy/fec/viterbi.h"
#include "srslte/phy/mimo/layermap.h" #include "srslte/phy/mimo/layermap.h"
#include "srslte/phy/mimo/precoding.h" #include "srslte/phy/mimo/precoding.h"
#include "srslte/phy/modem/demod_soft.h" #include "srslte/phy/modem/demod_soft.h"

@ -33,10 +33,10 @@
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/ch_estimation/chest_dl.h" #include "srslte/phy/ch_estimation/chest_dl.h"
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/convcoder.h" #include "srslte/phy/fec/convolutional/convcoder.h"
#include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/fec/convolutional/viterbi.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/rm_conv.h"
#include "srslte/phy/fec/viterbi.h"
#include "srslte/phy/mimo/layermap.h" #include "srslte/phy/mimo/layermap.h"
#include "srslte/phy/mimo/precoding.h" #include "srslte/phy/mimo/precoding.h"
#include "srslte/phy/modem/demod_soft.h" #include "srslte/phy/modem/demod_soft.h"

@ -30,8 +30,8 @@
#ifndef SRSLTE_PDSCH_CFG_H #ifndef SRSLTE_PDSCH_CFG_H
#define SRSLTE_PDSCH_CFG_H #define SRSLTE_PDSCH_CFG_H
#include "srslte/phy/fec/cbsegm.h"
#include "srslte/phy/fec/softbuffer.h" #include "srslte/phy/fec/softbuffer.h"
#include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/phch/ra.h" #include "srslte/phy/phch/ra.h"
typedef struct SRSLTE_API { typedef struct SRSLTE_API {

@ -22,14 +22,14 @@
#ifndef SRSLTE_PSBCH_H #ifndef SRSLTE_PSBCH_H
#define SRSLTE_PSBCH_H #define SRSLTE_PSBCH_H
#include <srslte/phy/common/phy_common_sl.h> #include "srslte/phy/common/phy_common_sl.h"
#include <srslte/phy/dft/dft_precoding.h> #include "srslte/phy/dft/dft_precoding.h"
#include <srslte/phy/fec/convcoder.h> #include "srslte/phy/fec/convolutional/convcoder.h"
#include <srslte/phy/fec/crc.h> #include "srslte/phy/fec/convolutional/viterbi.h"
#include <srslte/phy/fec/viterbi.h> #include "srslte/phy/fec/crc.h"
#include <srslte/phy/modem/demod_soft.h> #include "srslte/phy/modem/demod_soft.h"
#include <srslte/phy/modem/modem_table.h> #include "srslte/phy/modem/modem_table.h"
#include <srslte/phy/scrambling/scrambling.h> #include "srslte/phy/scrambling/scrambling.h"
#define SRSLTE_SL_BCH_CRC_LEN 16 #define SRSLTE_SL_BCH_CRC_LEN 16

@ -27,9 +27,9 @@
#include "srslte/phy/common/phy_common_sl.h" #include "srslte/phy/common/phy_common_sl.h"
#include "srslte/phy/common/sequence.h" #include "srslte/phy/common/sequence.h"
#include "srslte/phy/dft/dft_precoding.h" #include "srslte/phy/dft/dft_precoding.h"
#include "srslte/phy/fec/convcoder.h" #include "srslte/phy/fec/convolutional/convcoder.h"
#include "srslte/phy/fec/convolutional/viterbi.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/viterbi.h"
#include "srslte/phy/modem/modem_table.h" #include "srslte/phy/modem/modem_table.h"
/** /**

@ -25,8 +25,8 @@
#include "srslte/phy/common/phy_common_sl.h" #include "srslte/phy/common/phy_common_sl.h"
#include "srslte/phy/dft/dft_precoding.h" #include "srslte/phy/dft/dft_precoding.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/turbocoder.h" #include "srslte/phy/fec/turbo/turbocoder.h"
#include "srslte/phy/fec/turbodecoder.h" #include "srslte/phy/fec/turbo/turbodecoder.h"
#include "srslte/phy/modem/mod.h" #include "srslte/phy/modem/mod.h"
#include "srslte/phy/scrambling/scrambling.h" #include "srslte/phy/scrambling/scrambling.h"

@ -33,9 +33,9 @@
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/rm_turbo.h" #include "srslte/phy/fec/turbo/rm_turbo.h"
#include "srslte/phy/fec/turbocoder.h" #include "srslte/phy/fec/turbo/turbocoder.h"
#include "srslte/phy/fec/turbodecoder.h" #include "srslte/phy/fec/turbo/turbodecoder.h"
#include "srslte/phy/phch/pdsch_cfg.h" #include "srslte/phy/phch/pdsch_cfg.h"
#include "srslte/phy/phch/pusch_cfg.h" #include "srslte/phy/phch/pusch_cfg.h"
#include "srslte/phy/phch/uci.h" #include "srslte/phy/phch/uci.h"

@ -32,8 +32,8 @@
#include "srslte/config.h" #include "srslte/config.h"
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/convolutional/viterbi.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/viterbi.h"
#include "srslte/phy/phch/pusch_cfg.h" #include "srslte/phy/phch/pusch_cfg.h"
#include "srslte/phy/phch/uci_cfg.h" #include "srslte/phy/phch/uci_cfg.h"

@ -58,19 +58,18 @@ extern "C" {
#include "srslte/phy/channel/ch_awgn.h" #include "srslte/phy/channel/ch_awgn.h"
#include "srslte/phy/fec/cbsegm.h"
#include "srslte/phy/fec/convcoder.h"
#include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/rm_conv.h"
#include "srslte/phy/fec/rm_turbo.h"
#include "srslte/phy/fec/tc_interl.h"
#include "srslte/phy/fec/turbocoder.h"
#include "srslte/phy/fec/turbodecoder.h"
#include "srslte/phy/fec/viterbi.h"
#include "srslte/phy/dft/dft.h" #include "srslte/phy/dft/dft.h"
#include "srslte/phy/dft/dft_precoding.h" #include "srslte/phy/dft/dft_precoding.h"
#include "srslte/phy/dft/ofdm.h" #include "srslte/phy/dft/ofdm.h"
#include "srslte/phy/fec/convolutional/convcoder.h"
#include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/fec/convolutional/viterbi.h"
#include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/fec/turbo/rm_turbo.h"
#include "srslte/phy/fec/turbo/tc_interl.h"
#include "srslte/phy/fec/turbo/turbocoder.h"
#include "srslte/phy/fec/turbo/turbodecoder.h"
#include "srslte/phy/io/binsource.h" #include "srslte/phy/io/binsource.h"
#include "srslte/phy/io/filesink.h" #include "srslte/phy/io/filesink.h"

@ -18,6 +18,12 @@
# and at http://www.gnu.org/licenses/. # and at http://www.gnu.org/licenses/.
# #
file(GLOB SOURCES "*.c") set(FEC_SOURCES
add_library(srslte_fec OBJECT ${SOURCES}) crc.c
softbuffer.c)
add_subdirectory(test) add_subdirectory(test)
add_subdirectory(convolutional)
add_subdirectory(turbo)
add_library(srslte_fec OBJECT ${FEC_SOURCES})

@ -25,7 +25,7 @@
#include <stdlib.h> #include <stdlib.h>
#include "parity.h" #include "parity.h"
#include "srslte/phy/fec/convcoder.h" #include "srslte/phy/fec/convolutional/convcoder.h"
/** /**
* Convolution encodes according to given parameters. * Convolution encodes according to given parameters.

@ -26,8 +26,8 @@
#include <math.h> #include <math.h>
#include <string.h> #include <string.h>
#include "../parity.h" #include "parity.h"
#include "srslte/phy/fec/viterbi.h" #include "srslte/phy/fec/convolutional/viterbi.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"
#include "viterbi37.h" #include "viterbi37.h"

@ -5,7 +5,7 @@
* May be used under the terms of the GNU Lesser General Public License (LGPL) * May be used under the terms of the GNU Lesser General Public License (LGPL)
*/ */
#include "../parity.h" #include "parity.h"
#include <limits.h> #include <limits.h>
#include <memory.h> #include <memory.h>
#include <stdint.h> #include <stdint.h>

@ -5,7 +5,7 @@
* May be used under the terms of the GNU Lesser General Public License (LGPL) * May be used under the terms of the GNU Lesser General Public License (LGPL)
*/ */
#include "../parity.h" #include "parity.h"
#include <limits.h> #include <limits.h>
#include <memory.h> #include <memory.h>
#include <stdint.h> #include <stdint.h>

@ -5,7 +5,7 @@
* May be used under the terms of the GNU Lesser General Public License (LGPL) * May be used under the terms of the GNU Lesser General Public License (LGPL)
*/ */
#include "../parity.h" #include "parity.h"
#include <limits.h> #include <limits.h>
#include <memory.h> #include <memory.h>
#include <stdint.h> #include <stdint.h>

@ -8,7 +8,7 @@
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include "../parity.h" #include "parity.h"
#include "viterbi37.h" #include "viterbi37.h"
#include <limits.h> #include <limits.h>
#include <memory.h> #include <memory.h>

@ -5,7 +5,7 @@
* May be used under the terms of the GNU Lesser General Public License (LGPL) * May be used under the terms of the GNU Lesser General Public License (LGPL)
*/ */
#include "../parity.h" #include "parity.h"
#include <limits.h> #include <limits.h>
#include <memory.h> #include <memory.h>
#include <stdint.h> #include <stdint.h>

@ -19,21 +19,16 @@
* *
*/ */
#include <assert.h>
#include <math.h>
#include <stdbool.h> #include <stdbool.h>
#include <stdint.h> #include <stdint.h>
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h>
#include <strings.h> #include <strings.h>
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/rm_turbo.h"
#include "srslte/phy/fec/softbuffer.h" #include "srslte/phy/fec/softbuffer.h"
#include "srslte/phy/fec/turbodecoder_gen.h" #include "srslte/phy/fec/turbo/turbodecoder_gen.h"
#include "srslte/phy/phch/ra.h" #include "srslte/phy/phch/ra.h"
#include "srslte/phy/utils/debug.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"
#define MAX_PDSCH_RE(cp) (2 * SRSLTE_CP_NSYMB(cp) * 12) #define MAX_PDSCH_RE(cp) (2 * SRSLTE_CP_NSYMB(cp) * 12)

@ -18,57 +18,6 @@
# and at http://www.gnu.org/licenses/. # and at http://www.gnu.org/licenses/.
# #
########################################################################
# RATEMATCHING TEST
########################################################################
add_executable(rm_conv_test rm_conv_test.c)
target_link_libraries(rm_conv_test srslte_phy)
add_executable(rm_turbo_test rm_turbo_test.c)
target_link_libraries(rm_turbo_test srslte_phy)
add_test(rm_conv_test_1 rm_conv_test -t 480 -r 1920)
add_test(rm_conv_test_2 rm_conv_test -t 1920 -r 480)
add_test(rm_turbo_test_1 rm_turbo_test -e 1920)
add_test(rm_turbo_test_2 rm_turbo_test -e 8192)
########################################################################
# Turbo Coder TEST
########################################################################
add_executable(turbodecoder_test turbodecoder_test.c)
target_link_libraries(turbodecoder_test srslte_phy)
add_test(turbodecoder_test_504_1 turbodecoder_test -n 100 -s 1 -l 504 -e 1.0 -t)
add_test(turbodecoder_test_504_2 turbodecoder_test -n 100 -s 1 -l 504 -e 2.0 -t)
add_test(turbodecoder_test_6114_1_5 turbodecoder_test -n 100 -s 1 -l 6144 -e 1.5 -t)
add_test(turbodecoder_test_known turbodecoder_test -n 1 -s 1 -k -e 0.5)
add_executable(turbocoder_test turbocoder_test.c)
target_link_libraries(turbocoder_test srslte_phy)
add_test(turbocoder_test_all turbocoder_test)
########################################################################
# Viterbi TEST
########################################################################
add_executable(viterbi_test viterbi_test.c)
target_link_libraries(viterbi_test srslte_phy)
add_test(viterbi_40_0 viterbi_test -n 1000 -s 1 -l 40 -t -e 0.0)
add_test(viterbi_40_2 viterbi_test -n 1000 -s 1 -l 40 -t -e 2.0)
add_test(viterbi_40_3 viterbi_test -n 1000 -s 1 -l 40 -t -e 3.0)
add_test(viterbi_40_4 viterbi_test -n 1000 -s 1 -l 40 -t -e 4.5)
add_test(viterbi_1000_0 viterbi_test -n 100 -s 1 -l 1000 -t -e 0.0)
add_test(viterbi_1000_2 viterbi_test -n 100 -s 1 -l 1000 -t -e 2.0)
add_test(viterbi_1000_3 viterbi_test -n 100 -s 1 -l 1000 -t -e 3.0)
add_test(viterbi_1000_4 viterbi_test -n 100 -s 1 -l 1000 -t -e 4.5)
add_test(viterbi_56_4 viterbi_test -n 1000 -s 1 -l 56 -t -e 4.5)
######################################################################## ########################################################################
# CRC TEST # CRC TEST
######################################################################## ########################################################################

@ -22,8 +22,8 @@
#include <math.h> #include <math.h>
#include <strings.h> #include <strings.h>
#include "srslte/phy/fec/cbsegm.h" #include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/fec/turbodecoder_gen.h" #include "srslte/phy/fec/turbo/turbodecoder_gen.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"
const uint32_t tc_cb_sizes[SRSLTE_NOF_TC_CB_SIZES] = { const uint32_t tc_cb_sizes[SRSLTE_NOF_TC_CB_SIZES] = {

@ -23,7 +23,7 @@
#include <stdio.h> #include <stdio.h>
#include <string.h> #include <string.h>
#include "srslte/phy/fec/rm_conv.h" #include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"
#define NCOLS 32 #define NCOLS 32

@ -26,8 +26,8 @@
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include "srslte/phy/fec/cbsegm.h" #include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/fec/rm_turbo.h" #include "srslte/phy/fec/turbo/rm_turbo.h"
#include "srslte/phy/utils/bit.h" #include "srslte/phy/utils/bit.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"

@ -24,9 +24,9 @@
#include <stdlib.h> #include <stdlib.h>
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/cbsegm.h" #include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/fec/tc_interl.h" #include "srslte/phy/fec/turbo/tc_interl.h"
#include "srslte/phy/fec/turbocoder.h" #include "srslte/phy/fec/turbo/turbocoder.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"

@ -24,7 +24,7 @@
#include <stdlib.h> #include <stdlib.h>
#include <strings.h> #include <strings.h>
#include "srslte/phy/fec/tc_interl.h" #include "srslte/phy/fec/turbo/tc_interl.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"

@ -24,8 +24,8 @@
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include "srslte/phy/fec/cbsegm.h" #include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/fec/turbocoder.h" #include "srslte/phy/fec/turbo/turbocoder.h"
#include "srslte/phy/utils/bit.h" #include "srslte/phy/utils/bit.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"

@ -24,14 +24,14 @@
#include <stdlib.h> #include <stdlib.h>
#include <strings.h> #include <strings.h>
#include "srslte/phy/fec/turbodecoder.h" #include "srslte/phy/fec/turbo/turbodecoder.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"
#include "srslte/srslte.h" #include "srslte/srslte.h"
#define debug_enabled 0 #define debug_enabled 0
/* Generic (no SSE) implementation */ /* Generic (no SSE) implementation */
#include "srslte/phy/fec/turbodecoder_gen.h" #include "srslte/phy/fec/turbo/turbodecoder_gen.h"
srslte_tdec_16bit_impl_t gen_impl = {tdec_gen_init, srslte_tdec_16bit_impl_t gen_impl = {tdec_gen_init,
tdec_gen_free, tdec_gen_free,
tdec_gen_dec, tdec_gen_dec,
@ -40,7 +40,7 @@ srslte_tdec_16bit_impl_t gen_impl = {tdec_gen_init,
/* SSE no-window implementation */ /* SSE no-window implementation */
#ifdef LV_HAVE_SSE #ifdef LV_HAVE_SSE
#include "srslte/phy/fec/turbodecoder_sse.h" #include "srslte/phy/fec/turbo/turbodecoder_sse.h"
srslte_tdec_16bit_impl_t sse_impl = {tdec_sse_init, srslte_tdec_16bit_impl_t sse_impl = {tdec_sse_init,
tdec_sse_free, tdec_sse_free,
tdec_sse_dec, tdec_sse_dec,
@ -50,7 +50,7 @@ srslte_tdec_16bit_impl_t sse_impl = {tdec_sse_init,
/* SSE window implementation */ /* SSE window implementation */
#define WINIMP_IS_SSE16 #define WINIMP_IS_SSE16
#include "srslte/phy/fec/turbodecoder_win.h" #include "srslte/phy/fec/turbo/turbodecoder_win.h"
#undef WINIMP_IS_SSE16 #undef WINIMP_IS_SSE16
srslte_tdec_16bit_impl_t sse16_win_impl = {tdec_winsse16_init, srslte_tdec_16bit_impl_t sse16_win_impl = {tdec_winsse16_init,
@ -63,7 +63,7 @@ srslte_tdec_16bit_impl_t sse16_win_impl = {tdec_winsse16_init,
/* AVX window implementation */ /* AVX window implementation */
#ifdef LV_HAVE_AVX2 #ifdef LV_HAVE_AVX2
#define WINIMP_IS_AVX16 #define WINIMP_IS_AVX16
#include "srslte/phy/fec/turbodecoder_win.h" #include "srslte/phy/fec/turbo/turbodecoder_win.h"
#undef WINIMP_IS_AVX16 #undef WINIMP_IS_AVX16
srslte_tdec_16bit_impl_t avx16_win_impl = {tdec_winavx16_init, srslte_tdec_16bit_impl_t avx16_win_impl = {tdec_winavx16_init,
tdec_winavx16_free, tdec_winavx16_free,
@ -75,7 +75,7 @@ srslte_tdec_16bit_impl_t avx16_win_impl = {tdec_winavx16_init,
/* SSE window implementation */ /* SSE window implementation */
#ifdef LV_HAVE_SSE #ifdef LV_HAVE_SSE
#define WINIMP_IS_SSE8 #define WINIMP_IS_SSE8
#include "srslte/phy/fec/turbodecoder_win.h" #include "srslte/phy/fec/turbo/turbodecoder_win.h"
#undef WINIMP_IS_SSE8 #undef WINIMP_IS_SSE8
srslte_tdec_8bit_impl_t sse8_win_impl = {tdec_winsse8_init, srslte_tdec_8bit_impl_t sse8_win_impl = {tdec_winsse8_init,
@ -88,7 +88,7 @@ srslte_tdec_8bit_impl_t sse8_win_impl = {tdec_winsse8_init,
/* AVX window implementation */ /* AVX window implementation */
#ifdef LV_HAVE_AVX2 #ifdef LV_HAVE_AVX2
#define WINIMP_IS_AVX8 #define WINIMP_IS_AVX8
#include "srslte/phy/fec/turbodecoder_win.h" #include "srslte/phy/fec/turbo/turbodecoder_win.h"
#undef WINIMP_IS_AVX8 #undef WINIMP_IS_AVX8
srslte_tdec_8bit_impl_t avx8_win_impl = {tdec_winavx8_init, srslte_tdec_8bit_impl_t avx8_win_impl = {tdec_winavx8_init,
tdec_winavx8_free, tdec_winavx8_free,
@ -119,11 +119,11 @@ srslte_tdec_16bit_impl_t arm16_win_impl = {tdec_winarm16_init,
// Include interfaces for 8 and 16 bit decoder implementations // Include interfaces for 8 and 16 bit decoder implementations
#define LLR_IS_8BIT #define LLR_IS_8BIT
#include "srslte/phy/fec/turbodecoder_iter.h" #include "srslte/phy/fec/turbo/turbodecoder_iter.h"
#undef LLR_IS_8BIT #undef LLR_IS_8BIT
#define LLR_IS_16BIT #define LLR_IS_16BIT
#include "srslte/phy/fec/turbodecoder_iter.h" #include "srslte/phy/fec/turbo/turbodecoder_iter.h"
#undef LLR_IS_16BIT #undef LLR_IS_16BIT
int srslte_tdec_init(srslte_tdec_t* h, uint32_t max_long_cb) int srslte_tdec_init(srslte_tdec_t* h, uint32_t max_long_cb)

@ -26,7 +26,7 @@
#include <string.h> #include <string.h>
#include <strings.h> #include <strings.h>
#include "srslte/phy/fec/turbodecoder_gen.h" #include "srslte/phy/fec/turbo/turbodecoder_gen.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"
#define NUMSTATES 8 #define NUMSTATES 8

@ -26,7 +26,7 @@
#include <string.h> #include <string.h>
#include <strings.h> #include <strings.h>
#include "srslte/phy/fec/turbodecoder_sse.h" #include "srslte/phy/fec/turbo/turbodecoder_sse.h"
#include "srslte/phy/utils/vector.h" #include "srslte/phy/utils/vector.h"
#include <inttypes.h> #include <inttypes.h>

@ -29,7 +29,7 @@
#include "prb_dl.h" #include "prb_dl.h"
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/rm_conv.h" #include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/phch/npdsch.h" #include "srslte/phy/phch/npdsch.h"
#include "srslte/phy/utils/bit.h" #include "srslte/phy/utils/bit.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"

@ -20,7 +20,7 @@
*/ */
#include "srslte/phy/phch/psbch.h" #include "srslte/phy/phch/psbch.h"
#include "srslte/phy/fec/rm_conv.h" #include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/modem/mod.h" #include "srslte/phy/modem/mod.h"
#include "srslte/phy/phch/sch.h" #include "srslte/phy/phch/sch.h"
#include "srslte/phy/utils/bit.h" #include "srslte/phy/utils/bit.h"

@ -23,7 +23,7 @@
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
#include "srslte/phy/fec/rm_conv.h" #include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/modem/demod_soft.h" #include "srslte/phy/modem/demod_soft.h"
#include "srslte/phy/modem/mod.h" #include "srslte/phy/modem/mod.h"
#include "srslte/phy/phch/pscch.h" #include "srslte/phy/phch/pscch.h"

@ -21,7 +21,7 @@
#include <string.h> #include <string.h>
#include "srslte/phy/fec/rm_turbo.h" #include "srslte/phy/fec/turbo/rm_turbo.h"
#include "srslte/phy/modem/demod_soft.h" #include "srslte/phy/modem/demod_soft.h"
#include "srslte/phy/phch/pssch.h" #include "srslte/phy/phch/pssch.h"
#include "srslte/phy/phch/ra.h" #include "srslte/phy/phch/ra.h"

@ -29,10 +29,10 @@
#include <strings.h> #include <strings.h>
#include "srslte/phy/common/phy_common.h" #include "srslte/phy/common/phy_common.h"
#include "srslte/phy/fec/cbsegm.h" #include "srslte/phy/fec/convolutional/convcoder.h"
#include "srslte/phy/fec/convcoder.h" #include "srslte/phy/fec/convolutional/rm_conv.h"
#include "srslte/phy/fec/crc.h" #include "srslte/phy/fec/crc.h"
#include "srslte/phy/fec/rm_conv.h" #include "srslte/phy/fec/turbo/cbsegm.h"
#include "srslte/phy/phch/uci.h" #include "srslte/phy/phch/uci.h"
#include "srslte/phy/utils/bit.h" #include "srslte/phy/utils/bit.h"
#include "srslte/phy/utils/debug.h" #include "srslte/phy/utils/debug.h"

Loading…
Cancel
Save