OpenLTE is an open source implementation of the 3GPP LTE specifications.
Currently, octave code is available for test and simulation of downlink transmit and receive functionality and uplink PRACH transmit and receive functionality. In addition, GNU Radio applications are available for downlink transmit and receive to and from a file, downlink receive using rtl-sdr, HackRF, or USRP B2X0, LTE I/Q file recording using rtl-sdr, HackRF, or USRP B2X0, and a simple eNodeB using USRP B2X0. The current focus is on extending the capabilities of the GNU Radio applications and adding capabilities to the simple base station application (LTE_fdd_enodeb).
excellent work and the code is easy to understand in the baseband algorithms/wireless protocol aspects.