Commit fd98d8e6 authored by Ben Wojtowicz's avatar Ben Wojtowicz

Version 0.6.1: Added SIB2, SIB3, SIB4, and SIB8 packing/unpacking, changed the...

Version 0.6.1: Added SIB2, SIB3, SIB4, and SIB8 packing/unpacking, changed the structure of the file scanner, and fixed a bug in liblte_phy.cc
parent 878baf36
......@@ -32,3 +32,6 @@ v00.06.00 Enabled fftw input, output, and plan from phy_struct in liblte_phy
Added BER tolerance to CFI decoding. Added a new gnuradio app
for generating an I/Q file with PSS, SSS, CRS, PBCH, PDCCH, and
PDSCH.
v00.06.01 Added RRC support for packing/unpacking SIB2, SIB3, SIB4, and SIB8.
Added states and state memory to the file scan sample buffer.
Updated the file scan and file generator to use the latest library.
......@@ -25,6 +25,7 @@
Revision History
---------- ------------- --------------------------------------------
06/15/2012 Ben Wojtowicz Created file.
08/19/2012 Ben Wojtowicz Using the latest liblte library.
*******************************************************************************/
#ifndef __LTE_FDD_DL_FG_SAMP_BUF_H__
......@@ -103,6 +104,7 @@ private:
// LTE parameters
LIBLTE_RRC_MIB_STRUCT mib;
LIBLTE_RRC_BCCH_DLSCH_MSG_STRUCT bcch_dlsch_msg;
LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_1_STRUCT sib1;
LIBLTE_PHY_PCFICH_STRUCT pcfich;
LIBLTE_PHY_PHICH_STRUCT phich;
......
......@@ -25,6 +25,7 @@
Revision History
---------- ------------- --------------------------------------------
06/16/2012 Ben Wojtowicz Created file.
08/19/2012 Ben Wojtowicz Using the latest liblte library.
*******************************************************************************/
......@@ -310,7 +311,10 @@ int32 LTE_fdd_dl_fg_samp_buf::work(int32 ninput_items,
(sfn % 2) == 0)
{
// SIB1
liblte_rrc_pack_bcch_dlsch_msg(&sib1,
bcch_dlsch_msg.N_sibs = 0;
bcch_dlsch_msg.sibs[0].sib_type = LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_1;
memcpy(&bcch_dlsch_msg.sibs[0].sib, &sib1, sizeof(LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_1_STRUCT));
liblte_rrc_pack_bcch_dlsch_msg(&bcch_dlsch_msg,
&rrc_msg);
pdcch.N_alloc = 1;
pdcch.alloc[0].pre_coder_type = LIBLTE_PHY_PRE_CODER_TYPE_TX_DIVERSITY;
......
......@@ -25,6 +25,8 @@
Revision History
---------- ------------- --------------------------------------------
03/23/2012 Ben Wojtowicz Created file.
08/19/2012 Ben Wojtowicz Added states and state memory and added
decoding of all SIBs.
*******************************************************************************/
#ifndef __LTE_FDD_DL_FS_SAMP_BUF_H__
......@@ -45,7 +47,6 @@
#define LTE_FDD_DL_FS_SAMP_BUF_SIZE (307200*10)
/*******************************************************************************
FORWARD DECLARATIONS
*******************************************************************************/
......@@ -58,6 +59,15 @@ class LTE_fdd_dl_fs_samp_buf;
typedef boost::shared_ptr<LTE_fdd_dl_fs_samp_buf> LTE_fdd_dl_fs_samp_buf_sptr;
typedef enum{
LTE_FDD_DL_FS_SAMP_BUF_STATE_COARSE_TIMING_SEARCH = 0,
LTE_FDD_DL_FS_SAMP_BUF_STATE_PSS_AND_FINE_TIMING_SEARCH,
LTE_FDD_DL_FS_SAMP_BUF_STATE_SSS_SEARCH,
LTE_FDD_DL_FS_SAMP_BUF_STATE_BCH_DECODE,
LTE_FDD_DL_FS_SAMP_BUF_STATE_PDSCH_DECODE_SIB1,
LTE_FDD_DL_FS_SAMP_BUF_STATE_PDSCH_DECODE_SI_GENERIC,
}LTE_FDD_DL_FS_SAMP_BUF_STATE_ENUM;
/*******************************************************************************
CLASS DECLARATIONS
*******************************************************************************/
......@@ -78,14 +88,48 @@ private:
LTE_fdd_dl_fs_samp_buf();
// LTE library
LIBLTE_PHY_STRUCT *phy_struct;
LIBLTE_RRC_MSG_STRUCT rrc_msg;
LIBLTE_PHY_STRUCT *phy_struct;
LIBLTE_RRC_MSG_STRUCT rrc_msg;
LIBLTE_RRC_MIB_STRUCT mib;
LIBLTE_RRC_BCCH_DLSCH_MSG_STRUCT bcch_dlsch_msg;
// Sample buffer
float *i_buf;
float *q_buf;
uint32 samp_buf_idx;
uint32 samp_buf_w_idx;
uint32 samp_buf_r_idx;
bool last_samp_was_i;
// Variables
LTE_FDD_DL_FS_SAMP_BUF_STATE_ENUM state;
float freq_offset;
float phich_res;
uint32 N_rb_dl;
uint32 FFT_pad_size;
uint32 sfn;
uint32 N_sfr;
uint32 N_id_cell;
uint32 N_id_1;
uint32 N_id_2;
uint8 N_ant;
uint8 prev_si_value_tag;
bool prev_si_value_tag_valid;
bool mib_printed;
bool sib1_printed;
bool sib2_printed;
bool sib3_printed;
bool sib4_printed;
bool sib8_printed;
// Helpers
void copy_input_to_samp_buf(const int8 *in, int32 ninput_items);
void freq_shift(uint32 start_idx, uint32 num_samps, float freq_offset);
void print_mib(LIBLTE_RRC_MIB_STRUCT *mib);
void print_sib1(LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_1_STRUCT *sib1);
void print_sib2(LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_2_STRUCT *sib2);
void print_sib3(LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_3_STRUCT *sib3);
void print_sib4(LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_4_STRUCT *sib4);
void print_sib8(LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_8_STRUCT *sib8);
};
#endif /* __LTE_FDD_DL_FS_SAMP_BUF_H__ */
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -24,6 +24,7 @@
Revision History
---------- ------------- --------------------------------------------
02/02/2012 Ben Wojtowicz Created file.
08/12/2012 Ben Wojtowicz Added 64 bit typedefs.
*******************************************************************************/
......@@ -46,12 +47,14 @@
TYPEDEFS
*******************************************************************************/
typedef char int8;
typedef unsigned char uint8;
typedef short int16;
typedef unsigned short uint16;
typedef int int32;
typedef unsigned int uint32;
typedef char int8;
typedef unsigned char uint8;
typedef short int16;
typedef unsigned short uint16;
typedef int int32;
typedef unsigned int uint32;
typedef long long int64;
typedef unsigned long long uint64;
/*******************************************************************************
DECLARATIONS
......
......@@ -20,7 +20,7 @@ dnl the Free Software Foundation, Inc., 51 Franklin Street,
dnl Boston, MA 02110-1301, USA.
dnl
AC_INIT(openlte,0.6.0)
AC_INIT(openlte,0.6.1)
AC_PREREQ(2.57)
AC_CONFIG_AUX_DIR([.])
......
This diff is collapsed.
......@@ -43,6 +43,7 @@
Added BER tolerance for CFI decoding. Fixed
various other bugs. Enabled fftw input,
output, and plan in phy_struct.
08/19/2012 Ben Wojtowicz Fixed a bug in the PDCCH decoder.
*******************************************************************************/
......@@ -2968,7 +2969,7 @@ LIBLTE_ERROR_ENUM liblte_phy_pdcch_channel_decode(LIBLTE_PHY_STRUCT
phy_struct->pdcch_y_est_im,
phy_struct->pdcch_c_est_re[0],
phy_struct->pdcch_c_est_im[0],
288,
576,
idx,
N_ant,
LIBLTE_PHY_PRE_CODER_TYPE_TX_DIVERSITY,
......
This diff is collapsed.
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