Commit 2b8b533d authored by Ben Wojtowicz's avatar Ben Wojtowicz

Version 0.5.3: Added transmit functionality, rearranged liblte_phy, bug fixes...

Version 0.5.3: Added transmit functionality, rearranged liblte_phy, bug fixes in liblte_phy.cc and LTE_fdd_dl_file_scan
parent f112b479
......@@ -20,3 +20,8 @@ v00.05.01 Fixed two bugs in liblte_phy.cc. One relating to symb_starts
using sss_re_5 instead of sss_im_5 in find_sss.
v00.05.02 Fixed another bug in liblte_phy.cc relating to frame_start_idx
going negative in find_sss.
v00.05.03 Added more DL transmit functionality, rearranged liblte_phy to
match the specs, and fixed several bugs: 1) frame_start_idx
going negative in find_sss, 2) PDCCH sizes were too small,
3) PDCCH reg calculation was wrong, 4) rate match/unmatch bit
packing, 5) I/Q swap in LTE_fdd_dl_file_scan.
......@@ -4,6 +4,7 @@ from gnuradio import gr
from gnuradio.eng_option import eng_option
from optparse import OptionParser
import LTE_fdd_dl_fs
import sys
class LTE_fdd_dl_file_scan (gr.top_block):
......
......@@ -27,6 +27,7 @@
03/23/2012 Ben Wojtowicz Created file.
04/21/2012 Ben Wojtowicz Fixed bug in frequency offset removal, added
PDSCH decode, general cleanup
06/28/2012 Ben Wojtowicz Fixed a bug that was causing I and Q to swap
*******************************************************************************/
......@@ -64,7 +65,7 @@ static const int32 MAX_OUT = 0;
LTE_fdd_dl_fs_samp_buf_sptr LTE_fdd_dl_fs_make_samp_buf()
{
return LTE_fdd_dl_fs_samp_buf_sptr(new LTE_fdd_dl_fs_samp_buf());
return LTE_fdd_dl_fs_samp_buf_sptr(new LTE_fdd_dl_fs_samp_buf());
}
LTE_fdd_dl_fs_samp_buf::LTE_fdd_dl_fs_samp_buf()
......@@ -148,6 +149,17 @@ int32 LTE_fdd_dl_fs_samp_buf::work(int32 ninput_items,
last_samp_was_i = false;
}
}else{
// Process samples to prevent I/Q swap
if((ninput_items % 2) != 0)
{
if(true == last_samp_was_i)
{
last_samp_was_i = false;
}else{
last_samp_was_i = true;
}
}
if(LIBLTE_SUCCESS == liblte_phy_find_coarse_timing_and_freq_offset(phy_struct,
i_buf,
q_buf,
......@@ -164,6 +176,7 @@ int32 LTE_fdd_dl_fs_samp_buf::work(int32 ninput_items,
i_buf[i] = tmp_i*f_samp_re + tmp_q*f_samp_im;
q_buf[i] = tmp_q*f_samp_re - tmp_i*f_samp_im;
}
if(LIBLTE_SUCCESS == liblte_phy_find_pss_and_fine_timing(phy_struct,
i_buf,
q_buf,
......@@ -566,7 +579,6 @@ int32 LTE_fdd_dl_fs_samp_buf::work(int32 ninput_items,
q_buf[i] = 0;
}
samp_buf_idx = 0;
last_samp_was_i = false;
}
// Tell runtime system how many input items we consumed
......
......@@ -20,7 +20,7 @@ dnl the Free Software Foundation, Inc., 51 Franklin Street,
dnl Boston, MA 02110-1301, USA.
dnl
AC_INIT(openlte,0.5.2)
AC_INIT(openlte,0.5.3)
AC_PREREQ(2.57)
AC_CONFIG_AUX_DIR([.])
......
This diff is collapsed.
......@@ -26,6 +26,7 @@
---------- ------------- --------------------------------------------
03/24/2012 Ben Wojtowicz Created file.
04/21/2012 Ben Wojtowicz Added SIB1 parameters, IEs, and messages
05/28/2012 Ben Wojtowicz Added SIB1 pack functionality
*******************************************************************************/
......@@ -338,12 +339,15 @@ LIBLTE_ERROR_ENUM liblte_rrc_unpack_bcch_bch_msg(LIBLTE_RRC_MSG_STRUCT *msg,
logical channel.
Document Reference: 36.331 v10.0.0 Section 6.2.1
Notes: Currently only handles SIB1
*********************************************************************/
// Defines
// Enums
// Structs
// Functions
LIBLTE_ERROR_ENUM liblte_rrc_pack_bcch_dlsch_msg(LIBLTE_RRC_MSG_STRUCT *msg);
LIBLTE_ERROR_ENUM liblte_rrc_pack_bcch_dlsch_msg(LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_1_STRUCT *sib1,
LIBLTE_RRC_MSG_STRUCT *msg);
LIBLTE_ERROR_ENUM liblte_rrc_unpack_bcch_dlsch_msg(LIBLTE_RRC_MSG_STRUCT *msg,
LIBLTE_RRC_SYS_INFO_BLOCK_TYPE_1_STRUCT *sib1);
......
This diff is collapsed.
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