Osmocom Packet control Unit (PCU): Network-side GPRS (RLC/MAC); BTS- or BSC-colocated
Go to file
Saurabh Sharan bb549f4341 EGPRS support MCS1 to MCS9 in UL and DL
This release contains our EGPRS development done from December 2015 till
February 2016. It includes rebase from Jan 2016 Master branch of Git but
not the latest master available on date 22nd Feb 2016.

The code has been Unit tested. It has not been tested in any integration
environment.
For details on the feature changes please refer the README.
2016-02-25 18:45:57 +05:30
contrib systemd: Do not re-start in case of exit(1) (e.g. a config issue) 2014-03-21 18:18:36 +01:00
examples Revert "pcu: Improve default config" 2015-11-30 12:11:48 +01:00
src EGPRS support MCS1 to MCS9 in UL and DL 2016-02-25 18:45:57 +05:30
tests EGPRS support MCS1 to MCS9 in UL and DL 2016-02-25 18:45:57 +05:30
.gitignore Ignore files generated by cscope tool 2016-02-22 13:58:54 +01:00
COPYING import GPLv2 license text to this project 2012-07-22 22:05:44 +02:00
Makefile.am tests: Create tests directory and move the VTY testing into there 2013-08-02 13:39:55 +04:00
README EGPRS support MCS1 to MCS9 in UL and DL 2016-02-25 18:45:57 +05:30
TODO TODO: Update the todolist with some musings... 2014-01-16 10:11:57 +01:00
configure.ac remove obsolete OpenBTS PCU interface support 2015-11-13 16:07:25 +01:00
git-version-gen Add auto-foo (partial cleanup, master makefile/configure.ac 2012-06-14 21:05:44 +08:00
osmoappdesc.py Added conditional python-based tests for VTY/config handling 2013-04-06 11:00:20 +02:00

README

This is an implementation of Packet Control Unit (PCU) according to TS 04.60

The PCU is part of BSS, so it connects directly to SGSN.

This release contains our EGPRS development done from December 2015 till February 2016. Please note that rebase from Master branch of  Git was done on January 2016  so Latest submission on Master date 22nd February  is not in our code base.

Main features added with important files where modification were done.

1)	EGPRS MCS1 to MCS9 both in UL and DL. 
	rlc.h, rlc.cpp, tbf_dl.cpp, tbf_ul.cpp.
2)	RLC retransmission, re-segmentation and split block support for both UL and DL.
	rlc.cpp, tbf_ul.cpp, tbf_dl.cpp.
3)	Selection of appropriate CPS for retransmission including padding of 6 octets case.
	gprs_coding_scheme.cpp.
4)	For encoding/decoding of compressed rbb in  EGPRS ack/nack, implemented algorithm based on code word trees.
	encoding.cpp, rlc.cpp.
5)      Fix for length of descriptor in EPDAN bitmap.
	gsm_rlcmac.h, gsm_rlcmac.cpp, bts.cpp.
6)	Transmission/Reception of data flow for MCS1 to MCS9.
	tbf_dl.cpp, tbf_ul.cpp, decoding.cpp.
7)      Fix for encoding of padding bits. 
	csn1.cpp
8)	Unit testing of the above implementation. 
	EdgeTest.cpp. 


== Current limitations ==

 * No PFC support
 * No fixed allocation support
 * No extended dynamic allocation support
 * No unacknowledged mode operation
 * No PCCCH/PBCCH support
 * Only single slot assignment on uplink direction
 * No half-duplex class support (only semi-duplex)
 * No handover support
 * No measurement support
 * No TA loop
 * No power loop
 * No CS loop