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>
This commit is contained in:
parent
2e5e2c537b
commit
aa15d62a8c
|
@ -816,8 +816,8 @@ static signalVector *modulateBurstLaurent(const BitVector &bits)
|
||||||
c1_burst->isReal(true);
|
c1_burst->isReal(true);
|
||||||
c1_itr = c1_burst->begin();
|
c1_itr = c1_burst->begin();
|
||||||
|
|
||||||
/* Padded differential start bits */
|
/* Padded differential tail bits */
|
||||||
*c0_itr = 2.0 * (0x01 & 0x01) - 1.0;
|
*c0_itr = 2.0 * (0x00 & 0x01) - 1.0;
|
||||||
c0_itr += sps;
|
c0_itr += sps;
|
||||||
|
|
||||||
/* Main burst bits */
|
/* Main burst bits */
|
||||||
|
@ -826,8 +826,8 @@ static signalVector *modulateBurstLaurent(const BitVector &bits)
|
||||||
c0_itr += sps;
|
c0_itr += sps;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Padded differential end bits */
|
/* Padded differential tail bits */
|
||||||
*c0_itr = 2.0 * (0x01 & 0x01) - 1.0;
|
*c0_itr = 2.0 * (0x00 & 0x01) - 1.0;
|
||||||
|
|
||||||
/* Generate C0 phase coefficients */
|
/* Generate C0 phase coefficients */
|
||||||
GMSKRotate(*c0_burst, sps);
|
GMSKRotate(*c0_burst, sps);
|
||||||
|
|
Loading…
Reference in New Issue