Asymptotically optimum low snr msk receiver derivation

Material Information

Asymptotically optimum low snr msk receiver derivation
McMillen, Thomas G
Place of Publication:
Denver, Colo.
University of Colorado Denver
Publication Date:
Physical Description:
200 leaves : ; 28 cm

Thesis/Dissertation Information

Master's ( Master of Science)
Degree Grantor:
University of Colorado Denver
Degree Divisions:
Department of Electrical Engineering, CU Denver
Degree Disciplines:
Electrical Engineering
Committee Chair:
Radenkovic, Miloje


Subjects / Keywords:
Signal processing -- Digital techniques ( lcsh )
Digital communications ( lcsh )
Digital modulation ( lcsh )
Digital communications ( fast )
Digital modulation ( fast )
Signal processing -- Digital techniques ( fast )
bibliography ( marcgt )
theses ( marcgt )
non-fiction ( marcgt )


Includes bibliographical references (leaves 199-200).
General Note:
Department of Electrical Engineering
Statement of Responsibility:
by Thomas G. McMillen.

Record Information

Source Institution:
University of Colorado Denver
Holding Location:
Auraria Library
Rights Management:
All applicable rights reserved by the source institution and holding location.
Resource Identifier:
51820811 ( OCLC )
LD1190.E54 2002m .M54 ( lcc )

Full Text
Thomas G McMillen
B.S. AMEN, University of Colorado at Denver, 1995
A thesis submitted to the
University of Colorado at Denver
in partial fulfillment
of the requirements for the degree of
Master of Science
Electrical Engineering
t i

McMillen, Thomas G. (M.S., Electrical Engineering)
Asymptotically optimum low SNR MSK reciver derivation and simulation.
Thesis directed by Professor Miloje Radenkovic
This thesis presents the theoretical background supporting the derivation
of the optimal symbol-by-symbol detector for communication systems, with and
without having memory, whose channel noise is modeled as additive white
gaussian noise. The derivation leads to an expression for the asymptotically
optimum at low SNR MSK type receiver, which turns out to be a set of average
match filters. Demodulation of a MSK signal using AMF is then discussed and
implemented in a Matlab simulation for various ratios of sample rate to baud rate,
lengths of observation intervals, and values of SNR. Performance of each AMF
demodulator simulation is measured in terms of bit error ratio.
This abstract accurately represents the content of the candidate's thesis. I
recommend its publication.
Miloje Radenkovic

The thesis for the Master of Science
degree by
Thomas G. McMillen
has been approved
Jan Bialasiewicz
Linda Moore

I dedicate this thesis to the woman with whom I choose to share life's adventures:
my beautiful wife Renee.

My thanks to Dr. Radenkovic for his direction and support which enabled me to
complete my graduate program so far from where it began. My thanks also to
Tom Ladd, president of Bit Systems Inc., whose generosity and vision has made
completion of my graduate work possible and meaningful. I also give thanks to
my parents for nurturing my desire to achieve. Most importantly I thank my wife
for her patience and understanding.

1 Introduction to Minimum Shift Keying (MSK) Signaling.............................1
2 MSK Detection....................................................................9
2.1 Optimum Detection for AWGN Channel System Without Memory........................12
2.2 Coherent MSK Detection..........................................................19
2.3 Non-coherent MSK Detection......................................................26
2.4 Asymptotically Optimum Low-SNR MSK Type Receiver................................30
3 Average Match Filter (AMF) Generation...........................................39
4 AMF Demodulation of MSK.........................................................52
4.1 AMF Correlation.................................................................56
4.2 Bit Synchronization.............................................................65
4.3 Measuring BER...................................................................80
5 AMF Demodulator Performance.....................................................88
6 Conclusion......................................................................94
A1 Evaluation of Cross Correlation for CPM Signal..................................98
A2 Statistics of Match Filter Outputs in Optimum MSK Receiver....................103
A3 Application of Parsevals Theorem to Match Filter Outputs in Optimum MSK Receiverl 12
A4 Matlab Source for Figure 1.1...................................................118

A5 Matlab Source for Figure 1.2...................................................120
A6 Matlab Source for Figures 3-1, 3-2, and 3-3.................................122
A7 Matlab Source for make amfm and Figures 3-4, and 3-5........................133
A8 Matlab Source for Figure 4-2....................................146
A9 Matlab Source for makedata.m....................................150
A10 Matlab Source for modbits.m....................................154
A11 Matlab Source for amfdemod.m and Figures 4-4 through 4-8......................163
A12 Matlab Source for baudsync.m and Figures 4-9 through 4-20...................174
A13 Matlab Source for measjber.m and Figures 4-21 through 4-25..................186
A14 Matlab Source for Figure A2.1.................................................192
A15 Matlab Source For Tables 5-1 Through 5-10.....................................195

Figure 1-1 Polar NRZ Signal................................................................2
Figure 1-2 Comparison of PSD for MSK vs. BPSK and QPSK.....................................7
Figure 3-1 Impulse Response of Filter Matched To 10101..................................41
Figure 3-2 Match Filter for "10001" With Pulse Shape Function.............................45
Figure 3-3 Inphase and Quadrature Components of Complex Match Filter......................49
Figure 3-4 Length 5 Average Match Filter For "0..........................................50
Figure 3-5 Length 5 Average Match Filter For "1"..........................................51
Figure 4-1 Flow Chart of MSK Receiver Simulation..........................................53
Figure 4-2 Simulation Message Bits to be MSK Modulated....................................55
Figure 4-3 Block Diagram of AMF Demodulator...............................................58
Figure 4-4 Soft Decision Output of AMF Correlators Without Noise..........................60
Figure 4-5 Soft Decision Output of AMF Correlators with SNR=10db..........................61
Figure 4-6 Soft Decision Output of AMF Correlators with SNR=5db...........................62
Figure 4-7 Soft Decision Output of AMF Correlators with SNR=0db...........................63
Figure 4-8 Soft Decision Output of AMF Corrleators with SNR=-5db..........................64
Figure 4-9 Frequency Domain Response of Baud Rate Filter.................................66
Figure 4-10 Complex Envelope of Baud Rate Filter Time Domain Impulse Response.............67
Figure 4-11 Phase of Filtered Baud Rate and Scaled AMF Output (No Noise)..................70
Figure 4-12 Phase of Filtered Baud Rate and Scaled AMF Output (No Noise)..................71
Figure 4-13 Phase of Filtered Baud Rate and Scaled AMF Output, SNR=5db....................72

Figure 4-14 Phase of Filtered Baud Rate and Scaled AMF Output, SNR=0db.......................73
Figure 4-15 Phase of Filtered Baud Rate and Scaled AMF Output, SNR=-5db......................74
Figure 4-16 Rastered Bits for Fs=25 KHz, R=3125 Hz, AMF Length=5, and SNR=10db........75
Figure 4-17 Rastered Bits for Fs=25 KHz, R=3125 Hz. AMF Length=5, and SNR=5db........76
Figure 4-18 Rastered Bits for Fs=25 KHz, R=3125 Hz, AMF Length=5, and SNR=0db........77
Figure 4-19 Rastered Bits for Fs=25 KHz, R=3125 Hz, AMF Length=5, and SNR=-5db........78
Figure 4-20 Rastered Bits for Fs=25 KHz, R=3125 Hz, AMF Length=5, and SNR=-10db.......79
Figure 4-21 Output of Frame Sync Correlator, SNR=10db, BER=0%...............................83
Figure 4-22 Output of Frame Sync Correlator, SNR=5db, BER=0.62%..............................84
Figure 4-23 Output of Frame Sync Correlator, SNR=0db, BER=7.68%..............................85
Figure 4-24 Output of Frame Sync Correlator, SNR=-5db, BER=20.77%...........................86
Figure 4-25 Output of Frame Sync Correlator, SNR=-10db, BER=42.33%..........................87
Figure A2-1: Autocorrelation of White Noise.................................................106

Table 5-1 BER for 2.8 Samples per Baud............................................89
Table 5-2 BER for 2.9 Samples per Baud............................................89
Table 5-3 BER for 3 Samples per Baud.............................................90
Table 5-4 BER for 3.1 Samples per Baud............................................90
Table 5-5 BER for 3.2 Samples per Baud............................................91
Table 5-6 BER for 3.3 Samples per Baud............................................91
Table 5-7 BER for 3.4 Samples per Baud............................................92
Table 5-8 BER for 3.6 Samples per Baud............................................92
Table 5-9 BER for 4 Samples per Baud.............................................93
Table 5-10 BER for 5 Samples per Baud............................................93

1 Introduction to Minimum Shift Keying (MSK) Signaling
Increasing demand for communication systems within existing radio
frequency bands has created a need for digital modulation schemes that are
bandwidth efficient and economical to implement. To this end much attention has
been given in technical literature to the topic of generalized minimum shift keying
(MSK) signals. MSK is a classification referring to continuous phase frequency
shift keying (CPFSK) with an index of modulation equal to one half. Such
signals are important to designers of digital communication systems due to their
power efficient spectral properties, constant complex envelope, and symbol
orthogonality [1] [2].
In general continuous phase modulation (CPM) signals may be expressed
using the equation
s(t) = Acos[2^r + (t)+ 0] [2],
Information contained in the signal is conveyed by the continuous function (t)
that maps message symbols to signal phase. In the case of a binary signal such
information would consist of a sequence of digital ones and zeros, [I] = [h, h, ....
In-!, IJ, where the individual symbols /* e {"0", "1"} are typically represented by

positive and negative voltage levels such as those in the baseband polar NRZ
waveform in figure 1-1.
Baseband signal of alternating 1 's and 0's
> -1
0 T_b 2T_b 3T_b 4T_b 5T_b
Tim e
Figure 1-1 Polar NRZ Signal
Such a sequence has left and right discontinuities during the transitions between
high and low voltage levels (digital ones and zeros) necessitating integration over
the symbol sequence so that the discontinuities are removed. Thus during a
symbol interval in which a "1" is transmitted the slope of the phase is positive
because the phase function integrates over a voltage of positive one. Similarly
integrating over a voltage of negative one results in the phase slope being
negative during intervals in which a "0" is transmitted.
The extent to which a CPM signals phase increases (positive slope) or
decreases (negative slope) from integrating a voltage level over each symbol
interval 7), may be modified by assigning a multiplicative weighting /?*-, also
1 "I 1 1
+ 1 0 +1 0 + 1


referred to as an index of modulation, to each symbol Ik. Further modifications to
a CPM signal's phase function can be made by imposing any pulse shape function
q(t) satisfying
that dictates the phase response over an integer number, L, of symbol intervals
each Tb seconds in duration [1]. When the phase response, q(t), changes from
zero to one half during only one symbol interval L=1 and the phase function (t)
is categorized as being full response; partial response thereby categorizes <(>(t)
when q(t) takes L> 1 symbol intervals to change from zero to one half. For the
purpose of this thesis L will be considered to be equal to one thereby limiting the
scope of discussion to full response CPM signals.
Tying these phase modification concepts together allows expression of the
CPM signal's phase $() as a function of the transmitted symbol sequence [I]:
[/D=2;r£ I khkq(t-kTb\nTb 3

where 7* is the symbol transmitted, hk is the modulation index used during
transmission of the symbol, qO is the pulse shape, and 7 is the duration in
time of one message symbol [1][2],
The relationship between the index of modulation, hk, for each of the
binary symbols 7* e {"0", "1"} and the orthogonality of the CPM message
symbols can be found by evaluating the cross correlation ^ (t) over a single
baud interval:
(') = £** *(;[/, tD* [3][5]
where [1,1 ] is the sequence of -l previous symbols followed by the n-th symbol
In e {"0", "1"} and
^;[A7I)=^cos 2nfct + 2^7khkq(t-kTb)+27dhnq(t-nTb)+0 ].
This cross-correlation is evaluated in appendix A1 and results in
n a2 sin(4/o+^D
R^]-A 2ng(T,iK +*,]
where ho is the modulation index associated with 7=0, hi is the modulation
index associated withIn=n\", and g(Tt) is the derivative of q(t) referred to in [2]
as the frequency response function. The cross-correlation is minimized when the

sum of the modulation indicies for the "0" and "1" symbols are non-zero integers
such as when ho = h] = 'A. In fact selection of Vz for the modulation indexes
results in a cross correlation coefficient of zero thereby implying that each symbol
is orthogonal to the other [3][5].
When the derivative of a CPM signals phase response function, q'(t)
equivalently known as the frequency response function, g(t)is constant during
the L symbol intervals in which it is not zero, the phase response is categorized as
L-REC [1]. Thus a full response CPM signal with such a phase response function
would be categorized as 1-REC. Imposing a single modulation index of Vz on all
symbols in a 1 -REC CPM signal causes the CPM signal's expression to match that
of a FSK signal.
j(r,[/D =
A cos
2nfct + 2n ^Ikhkq(t-kTh)+ 2rfnhnq(t -nTb)+ 0
= A cos
Jc n 2 27;
^ n-1
+~n 'Yjh +^o
f 1 \
A cos 2 nt V fc+ i 4nJ + where hk = hn = \, q(t) is 1-REC, and n = Ik -\mln +^0 [2]. Thus
the frequency of s(t) during the -th message symbol I would be^ + l/(4Tb) for

one of the binary symbols and fc l/(4Tb) for the other thereby conforming to the
representation of a FSK signal.
Signals with continuous phase modulation, such as MSK, have been
shown to posses power efficient spectra [1] [2]. A qualitative appreciation for the
spectral properties of MSK can be reached by examining the power spectral
density (PSD) plot in figure 1-2. For comparison the PSD's of both binary phase
shift keying (BPSK) and quadrature phase shift keying (QPSK) are shown. For
frequencies above that of the bit rate, R, MSK clearly has less power than either
BPSK or QPSK making MSK more spectrally efficient.

Figure 1-2 Comparison of PSD for MSK vs. BPSK and QPSK
The combination of CPM with FSK and a modulation index of 0.5
provides MSK with extremely desirable attributes: narrow spectra that reduce the
likelihood of cross-channel interference [1] [2], orthogonal symbols that minimize
identification errors [2] and constant envelope that minimizes the effects of
amplifier nonlinearity [1][3][4]. In order to make use of MSK's beneficial

properties in a communications system an appropriate receiver must identified.
Receiver design has been discussed extensively in the literature covering optimum
and sub-optimum designs for both coherent and non-coherent MSK reception.
Optimum receivers presented in [1] are noted as being too complex for analysis of
error performance leading to sub-optimal receivers for the asymptotic cases of
very high and very low signal to noise ratio (SNR).
This thesis focuses on the sub-optimum MSK receiver that is
asymptotically optimal for very low SNR: the average match filter (AMF).
Derivation of the optimum MSK receiver will be discussed for both the coherent
and non-coherent detection cases leading to the simplification made for low SNR
reception yielding the asymptotically optimum form of the receiver.
Implementation of this receiver in Matlab will then be presented followed by an
analysis of several simulation trials illustrating the relationship between baud rate,
AMF length, and SNR in terms of bit error ratio (BER).

2 MSK Detection
Digital receivers can be designed to compare a received signal waveform,
r(t), observed over a symbol interval, 7*, to a set of expected symbols in order to
detect a transmitted symbol. Such a receiver is referred to as a correlation
demodulator since it measures the correlation of the received signal, r(t), with
each possibly transmitted symbol, sm(t)=s(t;Im) where Im is one of M different
symbols, during each symbol interval:
J/(*K.{t)dt, wherem = 1,2,...,A/ [2],
Linear filters with impulse response functions f(t) could be used instead of
correlators resulting in a receiver that evaluates the convolution
" r)dt, wherem = 1,2,...,M [2],
This is, of course, equivalent to the correlation operation when each impulse
response function is equated to a time reversed and shifted version of a
transmittable symbol-fn(t) = sm(T t=Tb:
J/(r)/*('"0* = ~t + r)dT
= £*r{j)sm{r)dr, where/ = Tb andm = 1,2,...,M

Thus the filters with impulse response fm(t) = sm(Th-t) are considered
"matched filters" to sm(t) and thereby have the property of maximizing output
SNR when sm(t) is corrupted by additive white gaussian noise (AWGN) [2].
Section 2.1 elaborates on the derivation of this property and presents the
mathematical foundations for expressing an optimum receiver. Throughout this
thesis usage of the terms correlator and match filter will be considered equivalent
and interchangeable.
Basing the detection of a symbol on the observation of a single baud
interval assumes that the signal observed in any given interval is independent of
the signal in all other intervals. Such a modulation scheme is referred to in
literature as a memory-less system [1][2]. When symbols in successive intervals
do affect one another, as is in the case of MSK, information about the identity of a
symbol in one interval may also be present in another. Such signals are referred
to in the literature as having memory [1][2]. Limiting the scope of observation to
a single baud interval in detecting a MSK symbol does not make use of
information present in adjacent symbol intervals; therefore sections 2.2 and 2.3
expand the expression for an optimum receiver to apply to the case of signals with
memory. As noted in [1] this form of receiver is too complex to analyze the

performance characteristics of hence section 2.4 discusses the constraint placed
on the optimum expression resulting in a sub-optimum form of receiver that is
implemented in this thesis.

2.1 Optimum Detection for AWGN Channel System Without Memory
If the transmission channel noise is modeled as additive white gaussian
noise (AWGN) then the received signal, r(t), may be expressed as the sum of the
transmitted symbol, s,(t), plus noise, n(t):
r{t) = s,(t)+ n{t\ where/e {l,2,...,M}[l][2].
In the literature, especially [1] and [2], optimum detectors for
communication systems with AWGN channel models are presented as an array of
correlators that measure the correlation of the received signal and each element of
a set of orthonormal basis functions that span the space containing the set of
transmittable signals. Suppose that there are U such orthonormal basis functions
fu(t). Then let the output of the array of correlators during the &-th symbol interval
be represented by the observation vector rk.
r\ 1 'w' 1
rk = rl -
Allow representation of the sequence of correlator outputs to be the observation
vector r such that r = [ri,r2, ..., rk.i, r*, /*+/, ] Identifying the signal

waveform transmitted during the &-th symbol interval, s, may then be expressed
mathematically as selecting the symbol /, where i e{l,2, or its
corresponding signal waveform s,=Sj(t), that maximizes the probability that such
symbol was transmitted during the &-th symbol interval given the sequence of
observations r:
s(0 = j. 3p(5i(i,|r)>p(jm(i)r)vwe {l,2,1,/ + 1,...,A/}.
Evaluation of the probability that symbol s, was transmitted conditioned
on the received sequence vector r, referred to in literature as the maximum-a-
posteriori probability (MAP) criterion, can be restated using Baye's rule as
/ \ p(r|.s.)/*(?.)
PkM =---1-';0i/[l][2].
Thus determining the identity of a transmitted symbol is mathematically
equivalent to selecting the symbol st that maximizes the ratio of the product of the
conditional probability density function (pdf) p{r\st) and the probability that
symbol s, was transmitted, P(s,), to the pdf of the observation vector, p(r), for all
symbols sm in the set {sj, S2, , sM}- If all symbols have an equal probability of
being transmitted then the term P(Sj) does not change value with choice of Sj.
Furthermore the denominator is not conditioned on any specific symbol being

transmitted; the pdfp(r) is equal to p{r\sm )P(sm )and is thus independent of
the identity of the transmitted symbol [2]. Maximizing the probability that the
symbol s, was transmitted given the observation vector r may thus be simplified to
maximizing the conditional probability density function This is referred
to in literature as the maximum-likelihood (ML) decision criterion [1][2].
As stated in [1] the conditional probability density function p{r(t)\si(tj)
expresses the probability that the received signal, r(t), is equal to the sum of the
transmitted symbol, s,-(t), plus white gaussian noise, n(t): P(r(t) = s: (t) + n(t)). It
then follows for the case when symbols in successive time intervals do not affect
one another, referred to as a memory-less system [1], that the conditional pdf
p(rk |s() expresses the probability that the elements of the observation vector r*
are equal to the correlation of s,(t) plus white gaussian noise n(t) and each of the
U orthonormal basis function:
f fi" £1)rk(0 + (0)/,(0^ \
P(r'l\si)=p r2 = £r_[)r(s,(0 + (0)/2(0<*
\ Tv. )

The pdf of each orthonormal basis function correlator, or equivalently
match filter, output conditioned on the transmitted symbol is
Pk K )= l{ru = (5,. (t) + n{tj)fu (it)dtJ .
Noting that each output ru is a statistically independent gaussian variable, as
demonstrated in appendix A2, allows the conditional probability density function
of the observation vector rk to be expressed as
p(rk k)== {il)T k (0+"(o)/.
which by substitution is equivalent to
Given that the correlator outputs are gaussian random variables, their pdfs
J (ru-EVu\f
take the form j=e 2cr where the variance, o', is equal to the power
spectral density of the noise, and the mean, E[ru\, was shown in appendix
A2 to be the correlation of the transmitted symbol, s,, and the orthonorml basis

function,/,^, noted as sIU for convenience. Substituting this equation into the
conditional pdf of each match filter output, p(ru |st), results in

f ( . Jl
_L_ e "o
As noted in [2] the natural logarithm of the above equation,
lnP{rkK)=o)" jrZ~su f
^ A0 u1
is a monotonic equation and thus selecting the s, that maximizes it also
maximizes p{rk |j(.). By observation it is apparent that only the quadratic term of
the logarithmic equation is effected by the selection of s,\ this term is referred to
in literature as the distance metric [2], Carrying out the squaring operation in the
distance metric results in
ZO'. stu f =X(^2 ~2rusiu + s,2)
u u U
2>. -2ZrA +Z v
u-\ w=l w=i
As demonstrated in appendix A3 Parsevals identity can be used to
convert the distance metric summation of correlator and mean correlator output
terms into the linear combination of integrals

jr2(t)dt-2 jr(f)st(t)dt ^s2(t)dt.
(k-\)T (A--1 )T (t-l)T
Substituting this back into the natural logarithm of the pdf for the observation
vector of correlator outputs during the &-th symbol interval, rk, conditioned on
symbol st being transmitted yields
ln p(rt k) = -y in(aiVo)_ ~rr J(r 2 (0 2r('K (0 + s2 (o)*
^ -o (k-or
= -^ln(^0)--i- ]r2(t)dt + ^~ Tjr(t)s,(t)dt~ ]s2{t)dt
^ o (t-or -0 (A--i)r 'o (jt-i)T
Examining the integrals involved above focuses the decision criterion on
only the term effected by the choice of s,. The integral ^r2(t)dt evaluates the
power of the received waveform over one symbol interval and does not depend on
Sj. For a communications system where the transmitted symbols all have equal
energy, such as in MSK, the integral s,2 (t)dt is identical for all choices of
Si. Therefore the only element of the conditional pdf
u -f* (rJ(/)-2r(/)s/(/)+5 .(r))rfr
, _ - - . NT Ju-dt-'
p(Fk\Si) =
r i i T $(ru-s*)2 r i ^
- No _
1^0 J
effected by the choice of s, is the term

r 2 kT
exp fr(t)s,(t)dt
where it is observed that the integral expresses the correlation between the
received signal and symbol Sj.
Thus identifying the symbol transmitted during the k-th symbol interval by
selecting the st that maximizes p(rk ^) is equivalent to selecting the s, that
maximizes its correlation with the received signal:
' ~ kT \
max{p(r4 U.)} = max- si si exp JK'MO* (*-1)7- )
kT kT
s{k) =si(t)B jr(t)si(t)dt> ^r(t)sm(t)dt,^me{\,---,i-l,i + l,---,M}
(*-1)7- (*-1)7-
As noted in [2] this is referred to in the literature as correlation metrics.

2.2 Coherent MSK Detection
The optimum detector presented in section 2.1 is only applicable in
memory-less systems where symbols transmitted in one interval do not affect
symbols transmitted in subsequent intervals. Such is not the case for minimum
shift keying (MSK) as the starting phase for the symbol transmitted in the A>th
symbol interval is dependent upon the symbols transmitted previous to it. If no
consideration is given to which symbols were transmitted prior to the A-th symbol
the correlation metric (t)dt might not be maximized with the correct
choice of symbol s, because it would be matched to a signal with starting phase
different from what was transmitted. Thus for a symbol-by-symbol MSK detector
the maximum-likelihood decision criterion needs to be restated.
For binary communications systems with memory, maximizing the
probability that the received signal waveform r(t) matches the one that would
have been received had the symbol s, been transmitted during the Ar-th symbol
interval p(r(f (f)) is equivalent to maximizing the sum of the probability
that r(t) matches that which would have been received had s, been transmitted in
the A-th and 5/ in the k+ 1st symbol intervals and the probability that r(t) matches

that which would have been received had s, been transmitted in the k-th and so in
the &+lst symbol intervals:

In this manner the conditional pdf to be maximized takes into account the
effect that symbol Sj, transmitted in the £-th symbol interval, has on the starting
phase of the following symbol regardless of which symbol was actually
transmitted in the k+\st interval. Implementing this using the correlation metrics
reached at the end of section 2.1 results in having to evaluate the relation
+ jr(r>(r;[/]=[T,"0"]Vt
Similarly the maximum-likelihood criterion for a communications system with
memory using M symbols can be expressed as
s' Lm=l
Expanding this to account for the effect symbol s has on the starting
phase of the k+2nd symbol results in

m=1 m=1
(*+2) P (A + U

which in turn can be implemented for the binary case using correlation metrics by
evaluating the relation
+ Jr(r>(r;[/]=["0",T,"0"]Vr ,<*=-o'
U-i)r >
(*+i)r <
+ Jr(r>(/;[/]=["0","0",T])rfr
+ jV(r>(r; i1) = ["" -. "0"D<*
(k + i)T
+ fr(t>(r;[/]-[T,T,"0"]Vt
(t+i )t
+ fr(f>(f;[/]=[T\"0",T])rff
+ jr(t)s(t; [/] = [T',"0","0"])rfi
Expansion accounting for the effect on starting phase of subsequent
symbols can continue to the point where all symbol intervals of the message are
involved in the maximum-likelihood decision criterion; however, implementation
would be extremely unpractical. Limiting the consideration of symbol s/^s
effects to just the first D-l symbol intervals following the £-th symbol interval
results in the decision criterion

M I M z p(r<
m=1 m-1
, (*+£>-!) in v (**!)

By enumerating all possible messages occupying symbol intervals k+1 through
k+D-1 using the variable A, where n ranges from 1 to the correlation
metric corresponding to the above decision criterion is
=i (t-i)r

"=i (i-i)r
This correlation metric can be implemented by using a detector consisting of a
bank of match filters similar to the one described in the previous section.
Section 2.1 discussed a detector consisting of a bank of filters whose
impulse responses were matched to each of the possibly transmitted symbols.
The outputs of each filter sampled at integer multiples of the symbol interval
comprised an observation vector whose probability density function was
conditioned on the transmitted symbol. The same receiver structure can be used
to implement detection of a coherent signal with memory by extending the
observation interval from one symbol interval to D+l and by matching each

filters impulse response to one of the M possibly transmitted waveforms. Thus
the pdf of the observation vector conditioned on a message of D symbols is
where the set of waveforms [/(, y4n ]) were shown in appendix A1 to constitute
a set of orthonormal basis functions that are, obviously, complete with respect to
the set of transmitted signals.
Following the mathematics in section 2.1 this conditional pdf may be
expressed as

which may be refined to a form involving the correlation metric:

f A
T ( 2 (t+D-l)T
s-i)i i
T7 + 77-
V^o (t-i)r (*-i)r
where the orthonormality of s(t) was used to replace the ^s2{t)dt term in the
exponentiation function with ~yNa. As in section 2.1 it is recognized that the only
term of the conditional pdf that is affected by the choice of s(t;[Ij,A J) is
' 2 (*+d-\)t \
exp tt fI7..
\N> (.-V )
Thus choosing the sequence of symbols that maximizes the conditional pdf is
equivalent to choosing the sequence that maximizes the above term for all
possibly transmitted sequences of length D:
max Mrk K*; [A. A ]))} = max
f 2 (*+-r1)r

Returning to the issue of identifying the first of D symbols observed by
the detector, maximizing the pdf of observation vector r* conditioned on
transmitted symbol s/k)(t) can be expressed as

max{p(r(f]|(r))}= maxj Z p(r* |Jfc t7/ A D)
...Ifl-n Z' 2 (i+D-l)r
-max £ exP TT
VJVo (*-i)r
For the case of MSK the above decision criterion can be expressed as the
likelihood ratio test
(o-D ( ^ (i-+z>-i)r
Z exp
1 =
kn i*-V________________________
( ~ (*+z>-i)r
Afto-i) f 2 (t+D-\)T
Z exP tt Jr(*M*;["0">4,D*
V (*-1)7"
where M equals 2 and the /r-th transmitted symbol is identified as a 1 when l is
greater than one and as a 0 otherwise [7].

2.3 Non-coherent MSK Detection
Non-coherent detection is the identification of transmitted symbols when
the carrier phase is unknown [1][2][7], The decision criteria presented earlier in
this thesis implicitly assumed that the carrier phase was known; thus no difference
between the initial phase of the received signal, at the start of the interval in which
symbol identification was made, and each of the match filter impulse responses
had to be modeled. If the carrier phase is not known then some account of it must
be introduced to represent the fact that the orthonormal basis function expansion
of the received signal may not be matched in phase.
A solution to the problem of representing the unknown carrier phase is to
treat it as a random variable uniformly distributed over the interval [0, 2tt]
[1][2][7]. The probability density function of the received signal conditioned on
symbol s, being transmitted in the k-th symbol interval must then be averaged
over all possible starting phase values:

Hence selecting the symbol s,- that maximizes the conditional pdf in a manner
similar to what was described in the previous section also requires averaging over
all possible starting phase values:
m/ax| ] X p(r H'; I7.- A D>
It should be noted that the observation vector r* covers a range of symbol
intervals different from what was discussed in previous sections. In the literature
non-coherent detection is presented with the observation interval being odd in
length with symbol identification made on the middle baud interval. Thus the
observation interval length D consists of
symbol intervals preceding the
interval in which identification is made and
symbol intervals following
[1][7]. Justification for this is found in [7] where it is mentioned that the
magnitude of complex correlation of two CPFSK waveforms differing in one
symbol is minimized when the center baud interval contains the difference.

Hence the observation vector rk used to determine the identity of the A-th
bit covers symbol intervals A -
through k +
D -1
allowing the
maximization of the conditional pdf to be expressed as
,'*(<))}= max
>) 2jt
( O (k+r)T
n=l o
Z JexP 7T !r(f
\^iV0 (k-T-[)T
p{ where the substitution r =
was made for ease of notation.
Averaging over the random phase £ p()d order modified Bessel function yielding a decision criterion of
/ =
N Z'n
vvo y
m-" 2 A
vvo y
(A+r)r ^
d*-r-l)r y
y (A+r)r

J r(/> r;fr.4,lf
^(Ar-r-l)r V 2 -

( (A + r)7* y f (k+r)T / \ V
-0 n
J /-(/V
V.(Ar-l)7- V 2 -
as noted in [7]. It may be observed that this form of the decision criteria is an
envelope detector given that the magnitudes of correlating the received signal
with both the inphase, s(t; [/,, An J

= f),
representations of the orthonormal basis functions are compared.

2.4 Asymptotically Optimum Low-SNR MSK Type Receiver
Throughout the literature it is stated that the optimal symbol-by-symbol
detector for both coherent and non-coherent reception is too complex to
analytically evaluate its performance [1][7]. In order to gauge receiver
performance upper and lower asymptotic bounds have been established by
making mathematical simplifications corresponding to both the low and high
signal to noise ratio (SNR) cases. Osborne and Luntz present these
simplifications in [7] which result in sub-optimal receivers whose performance
can be evaluated analytically. The simplification for the high SNR case is
referred to as the union bound and the simplification for the low SNR case is
referred to as the average match filter [7].
The optimum non-coherent detector presented in [7] and discussed in
section 2.3 involved use of the zeroth-order modified Bessel function Iq.
1 =

Osborne and Luntz point out that for small values of zm the Bessel function may
be approximated as /0(x) 1 + [7], Thus for the low-SNR case when signal
amplitudes are relatively small the maximum likelihood ratio becomes
I M = 1 ( 2 ^ 1+ Z'\ l _ 2 ,D-,] y 2 ^ N 2 Z^Z> n=] 2 V 0 =l
I n=l ( 2 ^ l+Z\ { No2) m(D- 2 ~ A/IO-'I Z*- =1 1\0 n=l
\2 r (k+r)T ( n> A
+ j KO dt
) \(k-T-l)T \ 2 J /
' (*+r)r
\2 ( (k+t)r ( \
+ itW.A.i- dt
) K 2J /
Note that each zm2 term is based on match filtering the received signal r(t)
with a filter whose impulse response is s(t; \m, An )0) and with a filter whose
impulse response is phase shifted ninety degrees s(t;\m,An\2Z). The two
matched filters can be replaced by one filter with an impulse response matched to

the complex signal .*(/; [m, An]) generated by multiplexing i(r;[m,i4B]o) with its
Hilbert transformed self:
^ k 4, D = s(t; [m, A Jo)+js(t\ [ro, An Jo) -j-,
where is the impulse response of the Hilbert transform [3]. The maximum
likelihood ratio may then be restated as
m(d-D (k+r)T 2
=1 (*-r-l)T
(t+r)T 2
This could be implemented as in [7] using a bank of filters, with
the output of each being passed into an absolute magnitude squared operator and
then summed together. Alternatively each set of fibers may be replaced
by a single filter whose impulse response, hm(t), is a linear combination of the
orthonormal basis functions that span the space containing all sequences with a
center baud of symbol m and are each matched by the individual impulse
responses of the filters [8]:
K if)=am.nsJt\k 4,D>

where me {1,0} and a,,n are the linear combination coefficients.
Correspondingly the maximum likelihood ratio would be
(t+T)r 2 (i+r)r m(d-
(t-r-l)7- (i-r-l)r n=l
(t+r)T 2 ~~ (*+r)r M<"-

(A-r-l)r (Ar-1 )T =l
An identification error occurs when the maximum likelihood ratio
evaluates incorrectly for the given transmitted sequence of symbols. Thus if the
sequence s(r; ['1 ,An ]) was transmitted yet the squared magnitude of the
denominator exceeded that of the numerator the symbol would be misidentified;
as a convention in this thesis when both the numerator and denominator are equal
the maximum likelihood ratio decides in favor of the symbol corresponding to the
Expressing the probability of symbol misidentification involves
expressing the probability that the transmitted center baud was a 1, that the
surrounding sequence matches that denoted by [A], and that the maximum
likelihood ratio evaluated to less than one:

/(center baud identified as "0"|s(r;[T't An ])was transmitted) =
ffi'MA < %(<; [i. AI)
Assuming that any symbol may be transmitted with equal probability in a given
interval P('T') = P(0") - \; similarly for a sequence [A,J of length D-l
P(\An D = Summing the probabilities that a symbol was
misidentified given the transmitted sequence for all symbols and sequences
enables the expression for the total probability of error in misidentifying a
p, = ^"1) E piA. W < iM<; ["i". a, D)
+/fo-) £ p<[A. UK' iW; ["0". A, D)
Substituting for the maximum likelihood ratio and the unconditioned probabilities
results in
1 *<-' 1 p = 1 y p e m tr \ (k+r)T \r{t)hx{t)dt (k-r-\)T < (k+r)T \r(t)h0(t)dt (A-r-l)r 2 \ s(<;[t,4,D y
+ 1 y p m tr m(d~x) \ (k+r)T 1 r(t)h}(t)dt (*--i)r 2 > (A+r)/- jr(t)h0(t)dt (t-r-\)T 2 \ )

Given that the output of each match filter is a zero mean gaussian random
variable, as demonstrated in appendix A2, the probability of the maximum
likelihood ratio being in error conditioned on the symbol transmitted during the
center baud interval of the observation may be expressed, as it is in [1] and [8],
using the gaussian error function Q():
f i A f i \
1 Atf' '

( E ^
Z e
(rMh o(0)

Q(x)=-jL= ^dt,
and the inner product operator {r{t\hm{tfj denotes correlation/convolution over
the interval of observation
The variable r(t) represents the complex signal formed from the signal received
through the AWGN channel, used as the in-phase component, and the Hilbert
transform of the received signal, used as the quadrature component. Thus

(k+z)T (*+r)7
(rn (t\(t)) = pc, fa [m, A ])/im (t)dt + jnCJ (t)hm (t)dt.
(k-r-l)T (k-r-l)T
Applying the low SNR case causes Eb/N0 -> 0 which allows
approximation of the gaussian error function as
Substituting this for Q() into the probability of misidentification yields

i m[d'i
+ T7d Z ~~(rMho(t
Mu tt 2 'V2xN,
o J
Distributing the summation across the approximated gaussian error functions
results in
{1 A/10-" i
Z (0)+ Z
2 M MV 2 xNn
which, after the inner product expression is expanded, is

p = J______L I E
2M M V 2nNn
( m'd-"
z M
( (*+r)r
( (k + r)T
tr m1
(k-r-\)r j
V(*-r-l)r (k-r-\)T J
Recognizing that the summations are finite and the integrals are convergent
allows, by Fubinis theorem [3][12], interchanging the order of summation and
P =_L__L I E
2 M MV 2nN.
' (k+r)T m(d-ii
y(k-r-\)T M (k-T-l)T
(k+r)T (* + r)r
+ ( X T7(F^^cx(^["0"^nKOM+
J _1 M' J
Returning to the use of the inner product notation finally results in the form
P = J______L I E
f /w<-1)
2 M MV 2
IM' ' 1 \
Z fc It 4 D. a, (0)+((0- ^ (t
/"(0_1) 1 \
, Z ["0" 4, ]K (0 / + ( M MO)
By observation Pe is minimized when the two deterministic inner
products, the ones not involving the gaussian white-noise function ncx(t), are

maximized. The Schwarz Inequality specifies an upper limit for an inner product,
rf m

n-1 1Y1
M Substituting the linear combination of orthonormal basis functions in place of the
correlator/match filter impulse response hm(t) gives
" 1 M' ' \
Z Yjam nscx{v\m,AnD) <
n-1 M n-1 /
1 V
i2 '
This inequality is an equality when the coefficients 1
Therefore the inner products of the received signal and each of the two match
filters are maximized, thereby minimizing the probability of error, when the
filters impulse responses are matched to the average of the linear orthonormal
basis functionsalso known as the average match filter (AMF):

3 Average Match Filter (AMF) Generation
Generation of an average match filter requires knowledge of the CPM
signals baud rate, R, carrier frequency,^, index of modulation, h, and frequency
pulse shape function, q(). The most straightforward manner in which an AMF
can be generated is to implement the mathematical expression for its impulse
response function,
in a literal manner by actually generating and averaging together all possible
fixed in each to symbol m. Such an algorithm has been implemented in the
matlab source file make amf.m appearing in appendix A7.
The test signal that the filters are matched to is generated by the matlab
function modbits.m located in appendix A10. In the matlab source the frequencies
fi and/j, associated with each of the binary message symbols 0 and 1
respectively, are computed using the formulas
(O-l) _ tv . .
sa (t; [m, An ]), where m e {V, "0"},
M(D complex waveforms of length D symbol intervals with the center baud

where the index of modulation h = 0.5 always and fc can be assigned arbitrarily.
A binary message is read from a file and up-sampled to a rate of f samples per
second where fs >4 fc. Each of the samples are then modulated using the
specified fc, R, and fs attributes along with the rectangular frequency pulse shape
function 1-REC defined by
?(0 =
2 Tb t 0 < t < T
0 t < 0
where Tb = j, and then written to a file. As an example the signal attributes
could take the values fc = 6250 Hz, R = = 3125 Hz,
fx = fc = 5468.75 Hz, /, = fc + = 7031.25 Hz, Tb = = 320
2 2 R
microseconds, and fs = 25000 Hz.
Individual sequences such as that depicted in figure 3-1 are created in the
matlab source by computing the amplitude of a MSK waveform with the given
sequence of symbols at discrete points in time separated by the inverse of the
sampling rate. As discerned from figure 3-1 the impulse response of the filter is

Voltage Level
matched to a sequence that is five baud in length; thus it is one of 2*5 sequences
that must be averaged to form the length five binary AMF corresponding to the
symbol 1.
Figure 3-1 Impulse Response of Filter Matched To 10101
Amplitude values are computed using the equation for a MSK waveform
presented in chapter one:

s(r;[/]) = A cos
^ c-4 ^
iTrfc t + lTrYjhhqit- kTh )+27dn hn q(t-nTb) + a
V *=^r /
r r. 7 i
A cos 2 M i + 4^ i + n y
where hk=hn= q(t) is 1 -REC, n = £1k~\mh + o, and [I] = /7;,
I2, 7J where the individual symbols 7^ {"0", "1"} [2]. One amplitude
value is calculated for each sample of the signal with the time variable t
incremented by, for example, =-------= Ae 5 seconds, or 40
fs 25000 Hz
microseconds. As there may not be an integer number of samples for each baud
the actual number of samples occurring during a baud interval, and their offset in
time from the start of a baud interval, must be determined for each symbol
interval. Thus if there happens to be 3.8 samples per baud the first baud in a
sequence will have three data samples occurring during it with the first sample
taking place at seconds from the start of the baud interval. The second baud
interval in the sequence will have four samples occurring during it with the first
one appearing seconds after the start of the interval. A fractional number of

samples per baud will cause the first sample in a subsequent interval to occur
closer to the start of the symbol interval than the first sample of the previous baud
In figure 3-1 the solid line represents the sampled MSK waveform with
asterisks appearing at the actual sample points. A highly over-sampled version of
the MSK signal is plotted using a dashed line so that the shape of the waveform
may be understood more easily. In the first, third, and fifth baud intervals a 1 is
being transmitted which corresponds to use of the higher frequency/?. By
comparison the waveform appearing in the second and fourth symbol intervals,
representing the transmission of a 0, has a lower frequency,/?, discemable by
the spacing between amplitude extremum.
Values for frequencies/ and / are a consequence of how the phase of the
MSK signal changes during a symbol interval. During generation of each
sequence in the matlab source the initial phase, o, is set to zero and the
contribution to phase from all previous samples, represented by the term
khkq(t kTb), is accumulated in the variable modphaseO and referred
to as modulation phase. For each symbol in the message sequence the number of
corresponding samples and their offset from the start of the baud interval are

determined and applied to the frequency pulse shape function. Samples that are
coincident with the start and end of a baud evaluate in the pulse shape function to
zero and one half respectively. Any sample occurring between the start and end
of a baud evaluate in the pulse shape function to one-half times the proportion of
baud interval elapsing prior to the sample; for example a sample occurring in the
middle of the baud interval would evaluate in the pulse shape function to one-
quarter and a sample occurring at a time equal to one-third the length of the baud
interval after the bauds start would have its pulse shape function evaluate to one-
A graphic example of how the rectangular frequency pulse shape function
evaluates for different samples is found in Figure 3-2. Both the sampled and
over-sampled representations of the MSK signal for the sequence 10001 are
plotted along with the product Ikq(t -nTb) at each sample point. In the first and
fifth symbol intervals a 1 is transmitted corresponding to h equaling positive
one; in intervals two through four a 0 is transmitted and h takes the value
negative one. A baud rate different from that used to generate figure 3-1 is
employed in figure 3-2 to emphasize the handling of fractional samples per
symbol interval: intervals one and four contain four samples while five samples

occur during intervals two, three, and five. In each symbol interval the product of
the symbol and the pulse shape function are plotted using the longer dashed line
with plus, *+, characters depicting how the samples are evenly spaced between
absolute amplitude values of zero and one-half.
Figure 3-2 Match Filter for "10001" With Pulse Shape Function
In every MSK sequence each of the samples are evaluated in the pulse
shape function, multiplied by pi, and multiplied again by either positive or

negative one depending on the symbol occupying the interval. These products are
then added to the phase accumulated during all previous baud stored in
modphaseO. Similarly the carrier phase accumulated during all previous baud is
added to the product of two pi times the carrier frequency and the offset in time of
all samples from the last sample of the previous baud. Both modulation phase
and carrier phase corresponding to each sample are added together and evaluated
in a cosine function resulting in the amplitude for each sample of the MSK
waveform. The carrier phase corresponding to the last sample in the baud interval
is held for use in the next symbol interval as is the accumulated modulation phase
updated with the value positive or negative one-half pithe final modulation
phase at the end of a 1 or 0 symbol respectively.
Sequences of signal amplitude values depicted in figures 3-1 and 3-2 are
considered to be the impulse response of the digital filter matched to their
generated real value waveform. They will be averaged with all other real value
waveforms generated with the same symbol in the center baud to form the real
value, or inphase, component of an average match filter. In order to satisfy the
zeroth-order modified Bessel function approximation the complex, or quadrature,

component of the average match filter is also needed. It can be generated by
convolving the Hilbert transform, hml.1, given by the equation
hffT I/1] ~
n = 0
2sm^|) [11],
where the n indexes the samples in the transform, with the real value match filter
impulse response. The effects of such an operation are depicted in figure 3-3
where the Hilbert transformed signal, plotted with a dashed line, is superimposed
on the original signal. The impulse response for the match filter corresponding to
the required complex value waveform is then formed by multiplying the Hilbert
transformed signal by the square root of negative one, thereby forming the
quadrature component of the complex match filter, and adding it to the non-
Hilbert transformed signal, considered the inphase component.
Averaging all complex value match filter impulse responses where the
center baud is a 0 results in the average match filter for the 0 symbol. The
impulse response of such a filter is plotted in figure 3-4; for comparison the
average match filter for the binary companion 1 symbol is plotted in figure 3-5.
In both AMF plots the inphase component is represented as a solid line while the
quadrature component is represented as a dashed line. Combining the inphase

and quadrature components of each AMF by multiplying the quadrature samples
with the square root of negative one and adding the result to the corresponding
inphase samples yields the complex average match filters that are used in the
asymptotically optimum non-coherent MSK receiver.

Voltage Level
Figure 3-3 Inphase and Quadrature Components of Complex Match Filter

Voltage Level
LENGTH 5 AMF For Symbol 0
Figure 3-4 Length 5 Average Match Filter For "0"

Voltage Level
LENGTH 5 AMF ForSymbol 1
Figure 3-5 Length 5 Average Match Filter For "1"

4 AMF Demodulation of MSK
Asymptotically optimum low-SNR demodulation of a non-coherent binary
MSK signal consists of applying the AMF for each symbol to the received signal
and bit synchronizing the absolute magnitude of the difference between AMF
outputs. Such an implementation can be found in the matlab sources amfdemod.m
and baudsync.m both located in appendicies A10 and A11 respectively. These
two matlab sources demodulate the sampled MSK waveform created by the
matlab source modbits.m (appendix A10) from the binary message produced by
makedata.m (appendix A9) using the average match filters generated with
makeamf.m (appendix A7).
Figure 4-1 illustrates the steps used in this thesis to simulate AMF
demodulation of an MSK signal. In the figure rectangles represent matlab
functions that accept user specified input represented by the trapezoids with two
right angles. File input and output by the matlab functions are represented by
arrows leading to or from cylinders that represent data files stored on disk.

Figure 4-1 Flow Chart of MSK Receiver Simulation
The data that will be modulated using MSK in order to simulate AMF
demodulation is created by makedata.m. It is a pattern created entirely for the

purpose of this thesis and consists of a series of 64 bit frames where the first and
third groups of eight bits in each frame do not change from frame to frame (hence
they are invariant); the second and fourth groups of eight bits are up and down
counters that each increment and decrement by one between each frame
respectively; the fifth and sixth groups of eight bits contain a pattern that is
multiplied by a power of two between each frame resembling a barber shop pole
when rastered; and the seventh and eighth groups of eight bits contain an invariant
pattern to be considered the synchronization pattern for the frame. A raster of 100
of these 64 bit frames are presented in figure 4-2.
An example of how the message bits appear after they are modulated by
modbits.m can be found in figures 3-1 and 3-2. The mechanics within modbits.m
are a subset of those found in make_amf.m whose operation was discussed in
section 3-1.

First 100 Data Frames
Bits 1 Through 64
Figure 4-2 Simulation Message Bits to be MSK Modulated
Application of the two AMFs in demodulating the signal resulting from MSK
modulating the bit pattern depicted in figure 4-2 is performed by amfdemod.m and
discussed in section 4-1. Section 4-2 discusses baudsync.m's synchronizing of
the AMF output such that only the sample nearest the center of a baud interval is
used to identify a bit. Measuring the performance of the demodulation by
calculating the bit error ratio in meas ber.m is discussed in section 4-3.

4.1 AMF Correlation
In the asymptotically optimum low SNR non-coherent binary MSK receiver
average match filters are used to detect a 1 or a 0 symbol. Each AMFs
complex impulse response is convolved against the received signal. The absolute
magnitude of the output from both filters is then compared with symbol identity
attributed to the symbol whose AMF output resulted in the largest correlation.
As discussed in section 3-1 the impulse response of each average match
filter is a complex time domain signal. The imaginary, or quadrature, component
of the impulse response is the Hilbert transform of the real, or inphase, portion of
the response. Before applying the complex AMFs the received signal is made
complex by adding to it the Hilbert transform of itself multiplied by the square
root of negative one. The received complex waveform is then filtered by the
AMF for the symbol 1, and the AMF for the symbol 0.
Instead of implementing the filters as a time domain convolution of each
AMF impulse response and the received signal, both filters are implemented
through multiplication in the frequency domain. Following the overlap-save
method discussed in [11] a vector of N complex values, where N is larger than
the M number of samples in each AMF impulse response, is populated by

inserting the first N- M+ 1 complex samples of received signal after M 1 zeros
and its FFT is computed. The N point FFT of each length M complex AMF
impulse response is also computed as if N- M zeros were padded on to the end of
the impulse responses. The resulting N element frequency domain impulse
response vectors are then multiplied with the N element frequency domain
received signal vector. Inverse-FFTing each product vector yields the time
domain output for both AMFs where the first M- 1 points are discarded as if the
filtering had been implemented using circular convolution. The last M- 1
complex samples in the N element received signal vector are then copied to the
front of the vector before populating with the next N-M+ l complex signal
Subtracting the absolute magnitude of the output for the AMF associated
with symbol 0 from that of symbol 1 implements the maximum likelihood
ratio decision rule presented in [2] and [7] where an identification of 1 is made
when the difference is positive and an identification of 0 is made when the
differences is negative. A block diagram depicting this implementation of the
AMF demodulator is presented in figure 4-3.

Figure 4-3 Block Diagram of AMF Demodulator
The waveform resulting from the subtraction of the absolute magnitude of
the AMF outputs is referred to as soft decision data. Rather than discretely
representing 1 and 0 symbols, the soft decision data shows the degree to
which the received signal correlates with the different AMFs over time. As can
be seen in figure 4-4 this measure of correlation appears to be a smoothed NRZ
baseband-like signal. At this point the boundaries of symbol intervals are
unknown; thus an absolute determination of a symbols identity can not be made
as it is not known when in time to check the soft decision data for positive versus
negative values.
Despite the uncertainty of when the baud intervals occur the plot in figure
4-4 was created using received data that was not corrupted by additive white

gaussian noise and began at the start of the first baud interval in a 64-bit frame. It
is possible, therefore, to see how the 64 bits contained in the first frame
correspond to the smoothed NRZ-like waveform. After a short transient period of
M -1
approximately - zero-valued samples, where M is the number of samples in
each AMF, the waveform begins to oscillate about an amplitude of zero. During
time intervals in which a single 0 symbol is surrounded by two 1 symbols the
soft decision waveform resembles a trough approaching an amplitude of negative
five. Similarly in intervals where a single 1 symbol is bracketed between two
0 symbols a peak approaching an amplitude of positive five is noted. During
intervals of repeated symbols the correlation waveform approaches amplitude
extrema of positive or negative 15.
When white gaussian noise is added to the received signal, r(t), the soft
decision correlation measure signal does not so cleanly resemble a NRZ
baseband-like waveform. As discerned from figures 4-5 through 4-8 added noise
corrupts the measure of correlation. Should the AMF correlation be corrupted to
the point that the soft decision signal is positive during a time interval in which a
0 was transmitted, or conversely negative during an interval corresponding to a
1, the bit occupying the interval may be misidentified resulting in a bit error.

Correlation Level
First Data Frame Output From AMF Correlators
AMF length = 5 T f = 6250 Hz f =25000 Hz R = 3125 Hz No Noise
3 b c s
15 -
10 -
5 -
J u
01100110000000000011001 0111 11111000000000010001011101001 00110101
Figure 4-4 Soft Decision Output of AMF Correlators Without Noise

Correlation Level
First Data Frame Output From AMF Correlators
Figure 4-5 Soft Decision Output of AMF Correlators with SNR=10db

Correlation Level.
First Data Frame Output From AMF Correlators
Figure 4-6 Soft Decision Output of AMF Correlators with SNR=5db

Correlation Level
First Data Frame Output From AMF Correlators
Figure 4-7 Soft Decision Output of AMF Correlators with SNR=Odb

Correlation Level
First Data Frame Output From AMF Correlators
Figure 4-8 Soft Decision Output of AMF Corrleators with SNR=-5db

4.2 Bit Synchronization
Bit synchronization is the determination of when to check the output of the
AMF correlators for symbol identification. In order to have any success at
demodulating the MSK waveform the sampling rate must be equal to or greater
than twice the baud rate. Hence the received signal must be sampled two or more
times during each baud interval. Once the location in time of the start of each
baud interval has been established the sample occurring nearest in time to the
center of the baud interval will be used to determine the identity of the symbol
transmitted in that interval.
Establishing the location in time of the starting points of each baud interval,
or the baud transitions, may be performed by measuring the phase of the spectral
component of the signal that matches the baud rate. Before such a measure can be
made all other frequency components must be filtered out of the received signal
using a very narrow band pass filter. The frequency domain representation of
such a filters impulse response would resemble a triangle pulse function where
the apex of the triangle corresponds to the frequency passed by the filter. Such a
frequency response, generated by the matlab source baudsync.m found in
appendix A12, is depicted in figure 4-9.

Frequency Domain of 128K-point Baud Rale Filter
Figure 4-9 Frequency Domain Response of Baud Rate Filter
The Fourier transform pair to the triangle pulse is the sinc2() function where
. w x sin2(r)
sinc(r) =----^ [3].
Such a function is used by the matlab source baudsync.m to generate the impulse
response of a baud rate filter. The sequence generated by the sinc2() function is
made to be complex by adding to itself the product of its Hilbert transform and

the square root of negative one. A complex waveform whose frequency matches
the specified baud rate is then multiplied against the sequence resulting in a shift
of the frequency passed by the filter from zero to that of the baud rate. Figure 4-
10 shows the envelope of the complex value time domain impulse response
corresponding to figure 4-9s frequency domain response for the filter that passes
the frequency 3125 Hz.
Complex envelope of 131073 point Sine2 Function Shifted in Frequency to 3125 Flz
Time (seconds)
Figure 4-10 Complex Envelope of Baud Rate Filter Time Domain Impulse Response

All frequencies other than that matching the baud rate are filtered from the
output of the AMF correlators using the same overlap-save technique of
multiplying FFTed vectors as presented in [11] and discussed in section 4-1.
Phase is then measured at each sample of the resulting complex waveform by
evaluating and scaling the arc tangent of the ratio of quadrature and inphase
components resulting in a value ranging from to :
scaled phase[] =
l real[]
2 n
Each phase point is then a measure of offset in time from the start of a baud
interval: a value of zero indicates the sample was coincident with the start of a
baud while a value of one-half indicates the sample occurred in the center of one
baud interval. Using the phase points to determine which sample occurs nearest
in time to the center of a baud interval allows identification of the symbol
transmitted during that interval based on the value of the corresponding AMF
correlator output sample.
Figures 4-11 and 4-12 illustrate using the phase of the filtered baud rate
frequency component to identify which sample should be used to identify a

symbol transmitted during a baud interval. In figures 4-11 and 4-12 the phase of
each sample of the filtered baud rate frequency component of the AMF correlator
output is plotted as a dashed line on top of the AMF correlator output scaled from
positive to negative one-half. Given that a baud interval begins when the dashed
line phase plot crosses the x-axis, taking on a value of zero, the center of a baud
interval occurs near the point at which the dashed line wraps from positive to
negative one-half. Figure 4-11 shows the first 21 baud intervals worth of data
output from the AMF correlators with those correlator output samples occurring
in time nearest to the center of a baud interval (point where dashed phase plot
wraps from positive to negative one-half) plotted with an asterisk. As a further
illustration figure 4-12 shows a time frame slightly later than that depicted in
figure 4-11. In figure 4-12 the samples output from the AMF correlators are
depicted as asterisks with those occurring nearest the center of a baud interval
surrounded by a square.

Scaled AMF Correlator 0 Lit put and Baud Rate Phase
Phase of Baud Rate Component Overlayed onto Scaled AMF Correlator Output
Figure 4-11 Phase of Filtered Baud Rate and Scaled AMF Output (No Noise)

Phase of Baud Rate Component Overlayed onto Scaled AMF Correlator Output
Figure 4-12 Phase of Filtered Baud Rate and Scaled AMF Output (No Noise)
Applying this technique of selecting samples nearest the center of a baud
interval to data sets with differing SNRs reinforces how a symbol transmitted
during a baud interval can be misidentified due to added noise. Figures 4-13
through 4-15 illustrate this as gaussian white noise is added to the transmitted
signal resulting in signal to noise ratios of 5, 0, and -5 respectively.

AMF Correlation Level
AMF Correlator Output With Soft Decision Data Points
Figure 4-13 Phase of Filtered Baud Rate and Scaled AMF Output, SNR=5db

AMF Correlation Level
AMF Correlator Output With Soft Decision Data Points
Figure 4-14 Phase of Filtered Baud Rate and Scaled AMF Output, SNR=0db

AMF Correlator Output With Soft Decision Data Points
Figure 4-15 Phase of Filtered Baud Rate and Scaled AMF Output, SNR=-5db
Once one sample is selected to represent the symbol transmitted during
each baud interval symbol identification can be made. Within the matlab source
baudsync.m a 1 symbol is assigned to a baud interval if the AMF correlator
output is positive otherwise a 0 symbol is assigned. Plotting each identified bit
in order of reception left to right in rows of 64 produces a bit raster in which
misidentified symbols are easily observed. Figures 4-16 through 4-20 present the

baud synchronized symbol identification decisions made during demodulation
with various signal to noise ratios.
64 Baud per Frame Raster
Figure 4-16 Rastered Bits for Fs=25 KHz, R=3125 Hz, AMF Length=5, and SNR=l()db

64 Baud per Frame Raster
Figure 4-17 Rastered Bits for Fs=25 KHz, R=3125 Hz, AMF Length=5, and SNR=5db

Frame, Time (64T )
64 Baud per Frame Raster

Frame, Time (64*T
64 Baud perFrame Raster

64 Baud per Frame Raster
10 20 30 40 50 60
Bit. Time (T )
Figure 4-20 Rastered Bits for Fs=25 KHz, R=3125 Hz, AMF Length=5, and SNR=-10db

4.3 Measuring BER
Performance of the AMF demodulator can be assessed by measuring the bit
error ratio (BER). By comparing a known data pattern to an invariant section of
the received signal, such as the portion of signal containing the frame
synchronization pattern, an estimate of the number of bit errors can be made.
Assuming that errors from additive white gaussian noise can occur with equal
probability anywhere in the received signal, the measure of errors occurring
during the frame synchronization pattern intervals can be used to represent the
percentage of error throughout the signal.
The matlab source file meas ber.m, appearing in appendix A13, performs
such a BER measurement operation. Baud synchronized AMF correlator output
is set to positive one if positive and negative one otherwise. This data is then
divided into segments, transformed into the frequency domain, multiplied with a
vector containing the frequency domain representation of the frame
synchronization pattern, and then transformed back into the time domain using the
same overlap-save circular FFT method presented in [11] and implemented
throughout this thesis. Rather than convolving the frame synchronization pattern
(or, equivalently, frame sync) against the data the frame synchronization pattern is

reversed in time prior to transforming it into the frequency domain resulting in a
correlation operation.
Each correlation output value will vary from positive 16, where 16 is the
number of bits in the frame sync, to negative 16 representing a perfect correlation
or anti-correlation respectively. A perfect correlation is output when the 16th bit
of an error free frame sync appearing in the data is input to the correalor: each
corresponding bit in the sequence of 16 is multiplied by itself, canceling any
negative sign, and summed. Perfect anti-correlation occurs when the 16th bit of
the inverted (0 symbols represented by a voltage of negative one become 1
symbols represented by a voltage of positive one and vice versa) frame sync
pattern is input to the correlator resulting in each bit being multiplied by itself
with a changed sign summing to -16. Any 16-bit pattern not matching the frame
sync will result in some value between the limits of +/- 16.
Data output from correlating with the frame synchronization pattern are
grouped into rows of 64 bit columns like that depicted by figures 4-21 through 4-
25. Each of the 64 columns are summed over the absolute value of all bits and
compared to one another. The column containing the largest absolute value
corresponds to the position in each 64-bit frame of the 16th bit of the frame sync

pattern. In figures 4-21 through 4-25 larger correlation values are indicated by
darker shades while lighter shades indicate smaller correlation values. Adding the
non-absolute frame sync correlator output from this column of every frame,
subtracting it from the maximum possible value (16 times the number of frames
in the measure), and finally dividing it by twice the maximum possible value
yields the bit error ratio of the data. No symbol identification errors cause a
correlation measure of 16 to be associated with each row resulting in a BER of
0% by this calculation. Similarly misidentifying all symbols, resulting in an
inverted data pattern, causes a frame sync correlation measure of-16 to be
associated with each row yielding a BER of 100%. In a practical sense a BER of
50% actually represents the worst possible demodulation result.

Frame, Time (64*T )
Correlation of Frame Sync And Data
Figure 4-21 Output of Frame Sync Correlator, SNR=10db, BER=0%

Correlation of Frame Sync And Data
Figure 4-22 Output of Frame Sync Correlator, SNR=5db, BER=0.62%

Frame, Time (64*T )
Correlation of Frame Sync And Data
Figure 4-23 Output of Frame Sync Correlator, SNR=0db, BER=7.68%

Frame, Time (64*T )
Correlation of Frame Sync And Data
Figure 4-24 Output of Frame Sync Correlator, SNR=-5db, BER=20.77%

Frame. Time (64*T )
Correlation of Frame Sync And Data
Figure 4-25 Output of Frame Sync Correlator, SNR=-10db, BER=4233%

5 AMF Demodulator Performance
The matlab sources in appendicies A7, and A9 through A13 are used by the
Matlab source thesis.m in appendix A15 to simulate AMF demodulation of a
MSK signal for various ratios of sample rate to bit rate, AMF lengths, and SNR
values. Each simulation trials BER is recorded as a measure of performance for
an AMF of specific length and ratio of at a given SNR. The tables in this
section catalog the bit error ratios for each of the simulations executed during this
thesis on 21 seconds of simulation signal. In a few simulations, marked by an
asterisk, the BER is significantly higher than that of other length filters at a given
SNR; such instances are probably due to a failure in the baud synchronization
algorithm resulting in a bit slip causing the BER to be measured from an incorrect
bit position during pent of the simulation.

'n\SNR (dB) ANffV length 0 3 5 10
3 20.02 10.60 6.45 1.58
5 21.52 13.14 8.51 2.94
7 21.10 12.71 7.67 2.22
9 20.99 12.43 7.14 2.06
11 20.62 11.68 7.03 1.53
13 20.88 10.56 6.13 1.10
Table 5-1 BER Percentage for 2.8 Samples per Baud
\SNR (dB) 0 3 5 10
3 20.58 33.70 7.46 2.20
5 23.80 34.57 9.53 5.50
7 22.22 34.73 8.85 4.39
9 21.76 34.77 8.17 3.77
11 21.71 34.78 7.72 4.09
13 21.38 34.72 7.44 3.64
Table 5-2 BER Percentage for 2.9 Samples per Baud

\SNR (dB) length 0 3 5 10
3 23.35 18.98 12.61 4.85
5 23.47 19.04 13.09 5.89
7 23.42 18.97 13.05 5.89
9 23.43 18.96 13.05 5.89
11 27.95 28.81 32.73* 34.56*
13 27.95 28.80 32.73* 34.57*
Table 5-3 BER Percentage for 3 Samples per Baud
\^3NR(dB) 0 3 5 10
length ^
3 26.29 18.42 14.28 5.01
5 26.27 19.26 15.73 32.89*
7 26.86 19.77 16.61 17.53
9 26.71 20.18 17.02 14.61
11 26.51 19.74 16.41 11.56
13 26.15 19.25 16.36 9.29
Table 5-4 BER Percentage for 3.1 Samples per Baud