Demodulation of Continuous Phase 2FSK Signal With Gardner Synchronization

You might also like

You are on page 1of 4

Demodulation of Continuous Phase 2FSK Signal with

Gardner Synchronization
Heyi Hu, Chun Zhang, Yongming Li Wen Jia
Department of Microelectronics and Nanoelectronics, Shenzhen Engineering Laboratory on Wireless Healthcare
Tsinghua University Integrated Circuits Technologies and Research Institute of
Beijing 100084, China Tsinghua University in Shenzhen, China
huhy13@mails.tsinghua.edu.cn jiaw@tsinghua-sz.org

Abstract—In this paper, a new method of demodulation of of Y-axis.


continuous phase binary FSK signal is presented, during FSK For example, we can use the value of Y-axis in t2 (y2), t4
demodulation, the FSK signal produces In-phase signal (I(t)) and (y4), and t3 (y3). Assume Res is the result, then
Quadrature signal (Q(t)). And method of Gardner
synchronization is used for bit synchronization. When using
Res = y3*(y2-y4) (1)
Gardner synchronization, some changes must be made so that it
is suitable for FSK demodulation. It can resist 7% of frequency
deviation. And it gets lower bit error rate than traditional We can use the value of Res to adjust the next interpolation
method of coherent demodulation when SNR is the same. What’s positions so that this result Res can be as smaller as possible.
more, there is only 0.1dB SNR loss, 9.78 dB to 9.88 dB, when the Just as Fig.1 shows, the interpolation positions are behind
bit error rate is 1e-3 when we compare demodulation with the optimum sample position. So interpolation position should
Gardner synchronization to optimal receiver demodulation. be shifted to an earlier point.
However, typically Gardner synchronization is used for bit
Keywords-FSK demodulation; Gardner synchronization; Low bit synchronization for PSK signal or QAM signal [5], [6], [7].
error rate
Gardner synchronization is not used for FSK demodulation
I. INTRODUCTION ever before, and can’t be used directly. In this paper, Gardner
synchronization is used for bit synchronization for CPFSK
The traditional method of FSK demodulation can be divided signal, and some changes must be made so that it is suitable for
into two kinds. One kind is coherent demodulation; the other is FSK demodulation.
incoherent demodulation. During FSK demodulation, carrier
synchronization and bit synchronization is very important. II.MACHANISM OF NEW METHOD OF FSK
Square phase-locked loop is usually used for carrier DEMODULATION AND BIT SYNCHRONIZATION
synchronization [1]. While, because of the specific W.H.Bennet shows that unilateral spectral density of phase
characteristics of phase continuous FSK signal (CPFSK), this continuous FSK signal can be described as equation (2) [8].
paper presents a method of carrier synchronization not using
square phase-locked loop. 2A2 sin2 [(ω − ω1 )Tb /2]sin2 [(ω − ω2 )Tb /2] 1 1
A steady-state behavior of a data-transition tracking loop is Ws (f) = [ − ]2
Tb [1 − 2 cos(ω − α) Tb cosβTb + cos 2 (βTb )] ω − ω1 ω − ω2
used for bit synchronization for a phase-coherent signal [2]. 2A2 sin2 [(ω+ω1 )Tb /2]sin2 [(ω+ω2 )Tb /2] 1 1
+ [ − ]2 (2)
Recently, short-time DFT is also used for FSK demodulation Tb [1−2 cos(ω+α)Tb cosβTb +cos2 (βTb )] ω+ω1 ω+ω2
and bit synchronization [3], [4]. While, it spends a lot of
hardware resources when implementing it by hardware. Where
The Gardner synchronization is also used for bit
1
synchronization. Fig.1 can simply show how it works. α = (ω1 + ω2 ) = ωc = 2πfc (3)
2
1
β = (ω2 − ω1 ) = π(f2 − f1 ) (4)
2
y

t3 t4 ω2 and ω1 are the frequency of FSK digital signal 0 and


t1 t2 x 1.Tb represents code-width.
From the equation (2), we can deduce that if modulation
Fig.1 Gardner synchronization simple description index of CPFSK signal is integer, the CPFSK signal
incorporate divided frequency component of digital frequency
Four different time t1,t2,t3,t4 are different interpolation 0 and 1. All FSK signal used in this paper is CPFSK. What is
positions, the Y-axis value in different time can be used to more, in engineering application, modulation index of CPFSK
rectify next interpolation positions, until the interpolation signal widely used is always integer. In this paper, a new
positions are in the max or min value of Y-axis, or zero value method of FSK demodulation with Gardner synchronization is
This work was supported by Grant JCYJ20140419122040601

978-1-5090-1997-7/16/$31.00 ©2016 IEEE

228
presented. πt
−ak sin ( ) sinωc t]
So we can use phase-locked loop to track the divided digital Tb
frequency 0 and 1 directly. There is no need to use square 1 2πt πt 1 − cos2ωc t
=− sin ( ) sin2ωc t + 2ak sin2 ( )
phase-locked loop for carrier synchronization. The band-pass 2 Tb Tb 2
2 πt 1 2πt 2 πt
filter in Fig.2 is used to filter out of band frequency. The center = ak sin ( ) − sin ( ) sin2ωc t − ak sin ( ) cos2ωc t 
Tb 2 Tb Tb
frequency of PLL in Fig.2 is set to be digital frequency 0 or 1.
The cut-off frequency of low-pass filter in PLL must be The low-pass filter in Fig.2 can filter out frequency 2ωc , we
smaller than the FSK symbol rate, and larger than capture πt
frequency of the PLL. can come up with Q(t), only a k sin2 ( ) is left ,From the
Tb
Quadrature signal, we can get a k , which represent the original
FSK code. Indeed, the original FSK code a k is modulated by
fH I(t)
PLL Low-pass half of the code frequency.
In the same way, after low-pass filter which filter out
FSK Band-pass
fL + Q(t) πt
PLL Low-pass frequency 2ωc , we can come up with I(t), only cos 2 ( ) left.
- Tb
πt
Because cos 2 ( ) is always bigger than 0, which can be
Tb
Gardner clkout
synchronization
tested in MATLAB.
Fig.2. FSK demodulation diagram
From the expression of I(t) and Q(t), we can see that they are
all modulated by half of the code frequency, but the optimum
As is shown is Fig.2, the mechanism of the new method of sample time of I(t) and Q(t) is different (when in optimum
continuous phase 2FSK demodulation is shown as below. sample time, we can simultaneously get the max value or min
T
Continuous phase binary FSK signal can be described as value of the signal). There exits b phase difference in
2
below. optimum sample time.
FSK = cos(ωc t + θ(t)) = cos θ(t)cos ωc t − sinθ(t)sinωc t  The waveform of signal during demodulation is shown in
In above equation, Fig.3. I(t) is always greater than 0 for modulation index is
θ(t) = πa k ∆f ∗ t and ak = ±1 . integer. From Q(t) we can get the original code. The middle
a k is the original binary FSK signal -1 or 1. part in Fig.3 represents the original code.
This paper deals 2FSK signal whose modulation index is We can use Q(t) to judge whether the original code is 0 or 1,
integer. the optimum sample time is the max or min value of Q(t).
Take integer 1 as modulation index as an example. For other
modulation index, the result is similar. So
1
∆f = T
b
Because
cosθ(t) = cos(π∆f ∗ t) 
sinθ(t) = a k sin(π∆f ∗ t) 
Then we can get that
FSK = cos(π∆f ∗ t) cos ωc t − a k sin(π∆f ∗ t)sinωc t
πt πt
FSK = cos ( ) cos ωc t − a k sin ( ) sinωc t (8)
Tb Tb
Because
πt
fH (t) + fL (t) = 2cos ( ) cos ωc t 
Tb
πt Fig.3. Waveform of Signal during demodulation
fH (t) − fL (t) = −2sin ( ) sinωc t 
Tb
After get In-phase signal (I(t)) and Quadrature signal (Q(t)),
The original FSK signal multiplies equation (9). The Gardner synchronization is used for bit synchronization.
πt πt The diagram of Gardner synchronization is shown in Fig.4.
FSK ∗ [fH (t) + fL (t)] = 2cos ( ) cos ωc t ∗ [cos ( ) cos ωc t
Tb Tb I(t) and Q(t) are output value of Fig.2.
πt It uses the principle of PLL to adjust the interpolation
−ak sin ( ) sinωc t]
Tb position. From NCO element, signal of overflow is produced.
πt 1 + cos2ωc t 1 2πt
= 2cos2 ( ) − ak sin ( ) sin2ωc t The overflow signal processing element is used to extract the
Tb 2 2 Tb signal of bit synchronization.
πt πt 1 2πt
= cos2 ( ) + cos2 ( ) cos2ωc t − ak sin ( ) sin2ωc t
Tb Tb 2

Tb The output clock is used to sample the output data to get the
original FSK code. In this case, the original FSK code is
The original FSK signal multiplies equation (10). revealed by Q(t) signal.
πt πt Because there exits phase difference between I(t) and Q(t),
FSK ∗ [fH (t) − fL (t)] = −2sin ( ) sinωc t ∗ [cos ( ) cos ωc t
Tb Tb the optimum sampling point is different. If modulation index

229
of FSK signal is 1, the phase difference between Q(t) and I(t) is position is produced, and they can be illustrated by Fig.5. The
half of code-width. vertical arrows shows the sample time of original code, the
interpolation position approach the peak value of the code or
I(t) interpolation the switchover point of the code.

Interpolation Loop Error (mk-1)Ts mkTs (mk+1)Ts (mk+2)Ts mk+1Ts


NCO
position Filter Extraction u(k)Ts u(k)Ts
Overflow
signal dout
Q(t) interpolation delay
Approach peak Approach switchover
Overflow Signal value of code point of code
Processing clkout

Fig.5. Simple description for interpolation position


Fig.4. Gardner synchronization for FSK demodulation
The error extraction part of Fig.4 can be described as
The delay block in Fig.4 is half of code-width for
modulation index is 1. If the modulation index is another 1
timeerror(k) = yI (k − ) [ yI (k) − yI (k − 1)] +
integer, the delay differs. 2
1
The sample frequency of I(t) and Q(t) is four times of the yQ (k − ) [ yQ (k) − yQ (k − 1)] 
2
original code frequency. The advantage of Gardner
synchronization is that sample frequency is relatively very low Then timeerror(k) which is similar with what is described in
and great performance can be achieved [9]. equation (1) can be used to rectify the position where to
The structure of interpolation is typical Farrow structure [10]. interpolate,. After typical PLL element Loop filter block and
The interpolation equation can be described as below. NCO block, we can rectify the position where to interpolate
For I(t) interpolation, until the timeerror(k) almost approach zero, and the
interpolation position approach steady.
fI1 = 0.5x(m) − 0.5x(m − 1) − 0.5x(m − 2) + 0.5x(m − 3)  The typical loop filter is two order loops. The loop filter
fI2 = 1.5x(m − 1) − 0.5x(m) − 0.5x(m − 2) − 0.5x(m − 3)  equation can be described as follows.
fI3 = x(m − 2) 
y(k) = fI1 u(k)u(k) + fI2 u(k) + fI3  w(ms + 1) = w(ms) + c1 ∗ (timeerror(ms)
−timeerror(ms − 1)) + c2 ∗ timeerror(ms) 
x(m),x(m-1),x(m-2), and so on, are values of I(t) when in
sample time. y(k) is the new value of I(t) in interpolation Where c1 and c2 are loop filter coefficient, they should
position. u(k) is not exactly represent the interpolation position, be suitable so that the loop can be stable and steady-state
but it reflects the relation between the sample point and the error is suitable.
interpolation position. When using in engineering area, one order loop can also
For typical Gardner synchronization, I(t) and Q(t) achieve good performance.
interpolation is the same, and Gardner synchronization is not The NCO block can be designed to overflow every 2 sample
used for FSK demodulation ever before, and can’t be used points. Because the sample frequency is four times of the code
directly. In this paper, Gardner synchronization is used for bit frequency, so when overflow, the sample point is either the
synchronization for FSK demodulation, and because of phase max value or min value of the input signal.
difference, I(t) and Q(t) interpolation is different. The NCO can be described as follows [11],
Because there exits phase difference between I(t) and Q(t),
so interpolation for Q(t) should delay half of code-width if φ(m + 1) = [φ(m) − w(m)]mod1 
modulation index is 1. If modulation is other integer, Q(t)
interpolation should delay corresponding time. φ(m) is the content in NCO register. w(m) is the output
For Q(t) interpolation, of the VCO. Assume the period of the NCO is Ts, So when the
loop get stable, every 1/ w(m)* Ts, the NCO overflow once.
fQ1 = 0.5x(m + 2) − 0.5x(m + 1) − 0.5x(m) + 0.5x(m − 1) 
We use u(k) to represent the interpolation position. u(k)
fQ2 = 1.5x(m + 1) − 0.5x(m + 2) − 0.5x(m) − 0.5x(m − 1)  indicates distance between the sample point and the
fQ3 = x(m)  interpolation position.
y(k) = fQ1 u(k)u(k) + fQ2 u(k) + fQ3  The u(k) can be described as follows [11],

x(m),x(m+1),x(m+2), and so on, are values of Q(t) when in u(k) =


φ(m)

sample time. y(k) is the new value of Q(t) in interpolation w(m)
position.
The equation (16) and (20) shows how the interpolation When the loop gets stable, w(m) approach 0.5, so

230
According to [12], the BER of optimal receiver of coherent
u(k) = 2φ(m)  demodulation for 2FSK signal can be described as follows,
𝐸𝑏
BER 𝑜𝑝𝑡𝑖𝑚𝑎𝑙 = 0.5 ∗ erfc(√ ) (26)
2𝑁0
Once the interpolation position u(k) is confirmed, from the
equation (16) (20) (21), we can use u(k) to get the timeerror(k). In Fig.7, We compare optimal receiver demodulation,
Then from the equation (22), we use loop filter after demodulation with Gardner synchronization and traditional
timeerror(k) to update w(m). At last, from the equation (24), method of coherent demodulation. We can find that the method
we can use w(m) to update interpolation position u(k), then a of demodulation with Gardner synchronization gets lower bit
loop is established. error rate than traditional method when SNR is the same.
There is only 0.1dB SNR loss, 9.78 dB to 9.88 dB, when
III.EXPERIMENT RESULT BER is 1e-3 when we compare demodulation with Gardner
This method is tested in MATLAB. Fig.6 shows the result, synchronization to optimal receiver demodulation.
we can see that u(k) approach steady and timeerror(k) approach IV.CONCLUSION
zero, which means the interpolation positions approach steady.
The output of loop filter w(m) approach 0.5. So every second In this paper, Gardner synchronization is used for bit
times, the NCO overflows once. synchronization for FSK demodulation and we achieve great
performance at last. The method is robust to frequency
From Fig.6, we can see that u(k) approach 0.5. While deviation, and is resistant to big noise.
because the phase of the input signal is different, so when the It can resist 7% of frequency deviation. Whether the divided
loop get stable, the terminate value of u(k) is different. But the digital frequency 0 or 1 deviate 7% below or above, the error
value of u(k) will get stable at a certain value. rate of demodulation is smaller than 1e-4 .
And it gets lower bit error rate than traditional method of
coherent demodulation when SNR is the same. And there is
only 0.1dB SNR loss when BER is 1e-3 compared to optimal
receiver demodulation.
REFERENCES
[1] Zhiwen Wang; Shaozi Li; Jian Zhou, "Research and implement of carrier
synchronization based on square phase-locked loop," Intelligent
Computing and Intelligent Systems (ICIS), 2010 IEEE International
Conference on , vol.2, no., pp.5,8, 29-31 Oct. 2010
[2] M.K. Simon, "Optimization of the performance of a digital
data-transition tracking loop," IEEE Trans. Commun. Technol.,vol.
COM-18, pp. 686-689, Oct. 1970.
[3] Hara, S.; Wannasarnmaytha, A.; Tsuchida, Y.; Morinaga, N., "A novel
Fig.6. Performance in Gardner synchronization FSK demodulation method using short-time DFT analysis for LEO
satellite communication systems," Vehicular Technology, IEEE
And we test this method for tolerance of frequency deviation, Transactions on , vol.46, no.3, pp.625,633, Aug 1997
and find that if the divided digital frequency 0 or 1 deviate 7% [4] Wenguang Jin, Zhengyu Zhang, Shaohua Tang. A new synchronization
below or above, the bit error rate (BER) of demodulation is method of 2FSK signal demodulation algorithm in DSTFT[J]. Journal of
smaller than 1e-4 . Zhejiang University (Enginerring Science Edition) , 2011,06:1027-1031.
Then we test the performance of bit error rate versus signal [5] Jie Hua; Lingyun Zhou; Chang Chen; Lin Jiang, "Synchronization for
QDPSK —Costas loop and Gardner algorithm using FPGAs," Computer
to noise ratio (SNR). We know incoherent demodulation and Information Science (ICIS), 2014 IEEE/ACIS 13th International
usually cannot achieve better performance than coherent Conference on , vol., no., pp.27,31, 4-6 June 2014
demodulation when SNR is very low. So we compare the [6] Dongmin Lim, "A modified Gardner detector for symbol timing
method with traditional coherent demodulation. recovery of M-PSK signals," Communications, IEEE Transactions on ,
vol.52, no.10, pp.1643,1647, Oct. 2004
[7] Qin Chen; Min Li, "Modified Gardner algorithm for bit synchronization
in high-order QAM system," Computational Problem-solving (ICCP),
2013 International Conference on ,vol.,no., pp.427,432, 26-28 Oct. 2013
[8] W R Bennet, S O Rice. Spectral Density and Autocorrection Functions
Associated with Binary Frequency Keying. BSTJ 1963,41.
[9] Erup, L.; Gardner, Floyd M.; Harris, R.A., "Interpolation in digital
modems. II. Implementation and performance,” Communications,
IEEE Transactions on , vol.41, no.6, pp.998,1008, Jun 1993
[10] Mueller, K.; Muller, M., "Timing Recovery in Digital Synchronous Data
Receivers," Communications, IEEE Transactions on , vol.24, no.5,
pp.516,531, May 1976.
[11] Yong Du, The MATLAB and FPGA implement of Digital modulation
demodulation technology ,Electronic Industry Press, BeiJing, 2013.
[12] Changxin Fan, Lina Cao, Principles of Communications , 6rd
Fig.7. BER versus SNR ed. National defence of Industry Press, BeiJing, 2008.

231

You might also like