Commit 92f0af71 authored by Matthieu Kanj's avatar Matthieu Kanj

speration completed for the file /PHY/LTE_TRANSPORT/dci_nb_iot.c +

remouving warnings (137 remaining)
parent 6e494638
......@@ -20,7 +20,7 @@
*/
//#include "defs.h"
//#include "SCHED/defs.h"
#include "SCHED/defs_nb_iot.h"
//#include "PHY/extern.h"
#include "PHY/extern_NB_IoT.h"
#include "RRC/LITE/proto_nb_iot.h"
......
......@@ -28,7 +28,7 @@ int lte_dl_cell_spec_NB_IoT(PHY_VARS_eNB_NB_IoT *phy_vars_eNB,
unsigned char p,
unsigned short RB_IoT_ID) // the ID of the RB dedicated for NB_IoT
{
unsigned char nu,mprime,mprime_dword,mprime_qpsk_symb,m;
unsigned char nu,m;
unsigned short k,a;
unsigned short NB_IoT_start,bandwidth_even_odd;
int32_t qpsk[4];
......@@ -59,7 +59,7 @@ int lte_dl_cell_spec_NB_IoT(PHY_VARS_eNB_NB_IoT *phy_vars_eNB,
// testing if the total number of RBs is even or odd
bandwidth_even_odd = phy_vars_eNB->frame_parms.N_RB_DL % 2; // 0 even, 1 odd
mprime = 0; // mprime = 0,1 for NB_IoT // for LTE , maximum number of resources blocks (110) - the total number of RB in the selected bandwidth (.... 15 , 25 , 50, 100)
//mprime = 0; // mprime = 0,1 for NB_IoT // for LTE , maximum number of resources blocks (110) - the total number of RB in the selected bandwidth (.... 15 , 25 , 50, 100)
k = (nu + phy_vars_eNB->frame_parms.nushift)%6;
if(RB_IoT_ID < (phy_vars_eNB->frame_parms.N_RB_DL/2))
......
This diff is collapsed.
......@@ -30,7 +30,7 @@
//// structures below implement 36-211 and 36-212
//
//#define NSOFT 1827072
//#define LTE_NULL 2
#define LTE_NULL_NB_IoT 2
//
//// maximum of 3 segments before each coding block if data length exceeds 6144 bits.
//
......
......@@ -22,7 +22,7 @@
#include "defs.h"
#include "UTIL/LOG/vcd_signal_dumper.h"
int allocate_REs_in_RB_NB_IoT(NB_IOT_DL_FRAME_PARMS *frame_parms,
int allocate_REs_in_RB_NB_IoT(NB_IoT_DL_FRAME_PARMS *frame_parms,
int32_t **txdataF,
uint32_t *jj,
uint32_t symbol_offset,
......@@ -32,13 +32,13 @@ int allocate_REs_in_RB_NB_IoT(NB_IOT_DL_FRAME_PARMS *frame_parms,
unsigned short id_offset,
uint32_t *re_allocated) // not used variable ??!!
{
MIMO_mode_t mimo_mode = (frame_parms->mode1_flag==1)?SISO:ALAMOUTI;
MIMO_mode_NB_IoT_t mimo_mode = (frame_parms->mode1_flag==1)?SISO_NB_IoT:ALAMOUTI_NB_IoT;
uint32_t tti_offset,aa;
uint8_t re, diff_re;
int16_t gain_lin_QPSK;
uint8_t first_re,last_re;
int32_t tmp_sample1,tmp_sample2;
gain_lin_QPSK = (int16_t)((amp*ONE_OVER_SQRT2_Q15)>>15);
gain_lin_QPSK = (int16_t)((amp*ONE_OVER_SQRT2_Q15_NB_IoT)>>15);
first_re=0;
last_re=12;
......@@ -49,7 +49,7 @@ int allocate_REs_in_RB_NB_IoT(NB_IOT_DL_FRAME_PARMS *frame_parms,
if (pilots != 1 || re%3 != id_offset) // if re is not a pilot
{
// diff_re = re%3 - id_offset;
if (mimo_mode == SISO) { //SISO mapping
if (mimo_mode == SISO_NB_IoT) { //SISO mapping
*re_allocated = *re_allocated + 1; // variable incremented but never used
for (aa=0; aa<frame_parms->nb_antennas_tx; aa++) {
......@@ -61,7 +61,7 @@ int allocate_REs_in_RB_NB_IoT(NB_IOT_DL_FRAME_PARMS *frame_parms,
}
*jj = *jj + 1;
} else if (mimo_mode == ALAMOUTI) {
} else if (mimo_mode == ALAMOUTI_NB_IoT) {
*re_allocated = *re_allocated + 1;
......@@ -110,7 +110,7 @@ int allocate_REs_in_RB_NB_IoT(NB_IOT_DL_FRAME_PARMS *frame_parms,
int dlsch_modulation_NB_IoT(int32_t **txdataF,
int16_t amp,
NB_IOT_DL_FRAME_PARMS *frame_parms,
NB_IoT_DL_FRAME_PARMS *frame_parms,
uint8_t control_region_size, // control region size for LTE , values between 0..3, (0 for stand-alone / 1, 2 or 3 for in-band)
NB_IoT_eNB_DLSCH_t *dlsch0,
int G, // number of bits per subframe
......@@ -128,8 +128,8 @@ int dlsch_modulation_NB_IoT(int32_t **txdataF,
re_allocated=0;
id_offset=0;
// testing if the total number of RBs is even or odd
bandwidth_even_odd = frame_parms->N_RB_DL % 2; // 0 even, 1 odd
RB_IoT_ID = NB_IoT_RB_ID;
bandwidth_even_odd = frame_parms->N_RB_DL % 2; // 0 even, 1 odd
RB_IoT_ID = NB_IoT_RB_ID;
// step 5, 6, 7 // modulation and mapping (slot 1, symbols 0..3)
for (l=control_region_size; l<14; l++) { // loop on OFDM symbols
if((l>=4 && l<=8) || (l>=11 && l<=13))
......@@ -147,14 +147,14 @@ int dlsch_modulation_NB_IoT(int32_t **txdataF,
}
symbol_offset = frame_parms->ofdm_symbol_size*l + NB_IoT_start; // symbol_offset = 512 * L + NB_IOT_RB start
allocate_REs_in_RB_NB_IoT(frame_parms,
txdataF,
&jj,
symbol_offset,
&dlsch0->harq_processes->s_e[G*npdsch_data_subframe],
pilots,
amp,
id_offset,
&re_allocated);
txdataF,
&jj,
symbol_offset,
&dlsch0->harq_processes->s_e[G*npdsch_data_subframe],
pilots,
amp,
id_offset,
&re_allocated);
}
// VCD_SIGNAL_DUMPER_DUMP_FUNCTION_BY_NAME(VCD_SIGNAL_DUMPER_FUNCTIONS_ENB_DLSCH_MODULATION, VCD_FUNCTION_OUT);
......
......@@ -127,6 +127,7 @@ static inline void* malloc16_clear( size_t size )
#include "PHY/TOOLS/time_meas.h"
#include "PHY/CODING/defs.h"
#include "PHY/CODING/defs_nb_iot.h"
#include "PHY/TOOLS/defs.h"
#include "platform_types.h"
......
......@@ -268,5 +268,27 @@ typedef struct {
} NB_IoT_DL_FRAME_PARMS;
typedef enum {
/// TM1
SISO_NB_IoT=0,
/// TM2
ALAMOUTI_NB_IoT=1,
/// TM3
LARGE_CDD_NB_IoT=2,
/// the next 6 entries are for TM5
UNIFORM_PRECODING11_NB_IoT=3,
UNIFORM_PRECODING1m1_NB_IoT=4,
UNIFORM_PRECODING1j_NB_IoT=5,
UNIFORM_PRECODING1mj_NB_IoT=6,
PUSCH_PRECODING0_NB_IoT=7,
PUSCH_PRECODING1_NB_IoT=8,
/// the next 3 entries are for TM4
DUALSTREAM_UNIFORM_PRECODING1_NB_IoT=9,
DUALSTREAM_UNIFORM_PRECODINGj_NB_IoT=10,
DUALSTREAM_PUSCH_PRECODING_NB_IoT=11,
TM7_NB_IoT=12,
TM8_NB_IoT=13,
TM9_10_NB_IoT=14
} MIMO_mode_NB_IoT_t;
#endif
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment