sigproc: Match differential GMSK start/end bits to tail bits
Invert the initial and trailing diffential bits in the 4 sps
GMSK modulator to fix power-time mask irregularity at start
and end of burst. GSM tail bits are always zero, so we can
safely use fixed bit values.
Signed-off-by: Tom Tsou <tom.tsou@ettus.com>
diff --git a/Transceiver52M/sigProcLib.cpp b/Transceiver52M/sigProcLib.cpp
index d274e26..a361eff 100644
--- a/Transceiver52M/sigProcLib.cpp
+++ b/Transceiver52M/sigProcLib.cpp
@@ -816,8 +816,8 @@
c1_burst->isReal(true);
c1_itr = c1_burst->begin();
- /* Padded differential start bits */
- *c0_itr = 2.0 * (0x01 & 0x01) - 1.0;
+ /* Padded differential tail bits */
+ *c0_itr = 2.0 * (0x00 & 0x01) - 1.0;
c0_itr += sps;
/* Main burst bits */
@@ -826,8 +826,8 @@
c0_itr += sps;
}
- /* Padded differential end bits */
- *c0_itr = 2.0 * (0x01 & 0x01) - 1.0;
+ /* Padded differential tail bits */
+ *c0_itr = 2.0 * (0x00 & 0x01) - 1.0;
/* Generate C0 phase coefficients */
GMSKRotate(*c0_burst, sps);