Professional Documents
Culture Documents
108
US 8,090,060 B2
Page 2
1 OO
Start
102
106
108
F.G. 1
U.S. Patent Jan. 3, 2012 Sheet 2 of 9 US 8,090,060 B2
200 - a
State 0 O O
State 1 O O
State i
State J
State 2p O O
FIG. 2
U.S. Patent Jan. 3, 2012 Sheet 3 of 9 US 8,090,060 B2
3O O
Start
302
Sample signal
304
306
308
31 O
Determine the estimate for the transmitted data based on the trellis state
that maximizes the metric
FG. 3
U.S. Patent Jan. 3, 2012 Sheet 4 of 9 US 8,090,060 B2
400A - a
402
404
410
FIG. 4A
U.S. Patent Jan. 3, 2012 Sheet 5 Of 9 US 8,090,060 B2
400B - a
452
456 454
464 466
FIG. 4B
U.S. Patent Jan. 3, 2012 Sheet 6 of 9 US 8,090,060 B2
500 -
Survivor Path
into State O
arv at time L-1
b(0)=0
State o Canaen AL-l) > AL-1)
(ML trellis path)
State 1 C
Survivor Path
into State
at time -1
F.G. 5
U.S. Patent Jan. 3, 2012 Sheet 7 Of 9 US 8,090,060 B2
600 -a
A.
State O G- e---' all-te
1
4-oli)1 Y
1.
/
Y
State 1 G-6)
FIG. 6
U.S. Patent Jan. 3, 2012 Sheet 8 of 9 US 8,090,060 B2
700A - a
702
708
709
FIG. 7A
U.S. Patent Jan. 3, 2012 Sheet 9 Of 9 US 8,090,060 B2
700B -a
752
754
756 758
764 766
Y Demodulate bit associated with
Metric > Metric Survivor path into state 0
770
Demodulate bit associated with N
survivor path into state 1
Y
FIG. 7B
US 8,090,060 B2
1. 2
DEMODULATION TECHNIQUE FOR GFSK Gaussian frequency shift keying (GFSK) modulation is a
AND DPSK modulation whereby the information bits are embedded in the
frequency or phase of the transmitted signal, which makes the
CROSS-REFERENCE TO RELATED signal less Susceptible to amplitude nonlinearities introduced
APPLICATIONS by the channel and/or receiver hardware. GFSK is typically
implemented as a form of frequency modulation (FM), in
This application claims priority to U.S. Provisional Appli which case it is a modulation format with memory. GFSK is
cation 60/797,956, entitled Multimedia Cell Platform, filed typically demodulated incoherently to reduce receiver com
May 4, 2006, and to U.S. Provisional Application 60/810, plexity, but this can result in a 2-3 dB degradation in perfor
036, entitled Time Multiplexing Antenna Diversity System, 10
mance relative to a coherent demodulation where the phase
filed May 31, 2006, both of which are incorporated herein by and frequency of the signal is tracked. A technique for low
reference. complexity high-performance coherent demodulation of
BACKGROUND GFSK signals involves utilizing a novel phase and frequency
15 tracking mechanism coupled with a trellis search technique to
Phase-shift keying (PSK) is a digital modulation scheme track signal memory in the demodulation process.
that conveys data by changing, or modulating, the phase of a A method according to the technique may include model
reference signal (the carrier wave). Any digital modulation ing modulation based upon a trellis. The method may further
scheme uses a finite number of distinct signals to represent include estimating unknown parameters, selecting a maxi
digital data. PSK uses a finite number of phases. The demodu mum likelihood path through the trellis, and mapping the
lator, which is designed specifically for the symbol-set used maximum likelihood path to an output bit sequence.
by the modulator, determines the phase of the received signal
and maps it back to the symbol it represents, thus recovering
the original data. This requires the receiver to be able to BRIEF DESCRIPTION OF THE DRAWINGS
compare the phase of the received signal to a reference signal 25
Such a system is termed coherent. Embodiments of the inventions are illustrated in the fig
Alternatively, instead of using the bit patterns to set the ures. However, the embodiments and figures are illustrative
phase of the wave, the bit patterns can instead be used to rather than limiting; they provide examples of the inventions.
change the phase of the wave by a specified amount. The FIG. 1 depicts a flowchart of an example of a method for
demodulator then determines the changes in the phase of the 30
detecting transmitted data with low complexity.
received signal rather than the phase itself. Since this scheme
depends on the difference between successive phases, it is FIG. 2 depicts an example of a trellis diagram for GFSK
termed differential phase-shift keying (DPSK). DPSK can be with 2p states.
significantly simpler to implement than ordinary PSK since FIG.3 depicts a flowchart of an example of a demodulation
there is no need for the demodulator to estimate the reference 35
process based on phase/frequency tracking and a trellis
signal to determine the exact phase of the received signal (it is search.
a non-coherent scheme). In exchange, it sometimes produces
more erroneous demodulations. The exact requirements of FIGS. 4A and 4B depict flowcharts of examples of methods
the particular scenario under consideration determine which for reducing ML detector complexity through per-survivor
scheme is used. 40 processing.
Gaussian Frequency Shift Keying (GFSK) is a type of FIG.5 depicts a diagram of an example of mapping an ML
Frequency Shift Keying modulation that utilizes a Gaussian path to bit estimates.
filter to Smooth positive/negative frequency deviations, FIG. 6 depicts a diagram of an example of a trellis and
which represent a binary 1 or 0. GFSK and DPSK are used in Survivor path computation between the i-1th and ith stage.
Bluetooth radios. GFSK is also used in the cordless Digital 45
Enhanced Cordless Telecommunications (DECT) phone FIGS. 7A and 7B depict flowcharts of examples of methods
standard and the cellular Global System for Mobile Commu for reducing ML detector complexity through per-survivor
nications (GSM) standard, along with the GSM enhance processing.
ments for High Speed Circuit Switched Data (HSCSD) and
Enhanced Data Rates for GSM Evolution (EDGE). GFSK is 50
DETAILED DESCRIPTION
also used by Cypress Wireless USB, Nordic Semiconductor,
and Z-wave devices.
The foregoing examples of the related art and limitations In the following description, several specific details are
related therewith are intended to be illustrative and not exclu presented to provide a thorough understanding of embodi
ments of the invention. One skilled in the relevant art will
sive. Other limitations of the related art will become apparent 55
recognize, however, that the invention can be practiced with
to those of skill in the art upon a reading of the specification
and a study of the drawings. out one or more of the specific details, or in combination with
other components, etc. In other instances, well-known imple
SUMMARY mentations or operations are not shown or described in detail
60 to avoid obscuring aspects of various embodiments of the
The following embodiments and aspects thereof are invention.
described and illustrated in conjunction with systems, tools, In GFSK, past bit transmissions are embedded in the signal
and methods that are meant to be exemplary and illustrative, phase associated with the current bit period T. Specifically,
not limiting in Scope. In various embodiments, one or more of the transmitted signal at time t has constant amplitude and a
the above-described problems have been reduced or elimi 65 phase equal to 0 (ta) 27tfit--p(t,a), where f is the carrier
nated, while other embodiments are directed to other frequency and (p(t,a) is the information carrying phase given
improvements. by
US 8,090,060 B2
3 4
For example, the modeling may take place beforehand, and
the remaining modules (104-108) of the flowchart 100 may
take place in real-time or near-real-time.
In the example of FIG. 1, the flowchart 100 continues to
module 104 where unknown parameters are estimated. In an
for h the modulation index, aile{+1.-1} the polar represen illustrative embodiment, it is assumed that both the phase
tation of the binary data bits, L the length of the signal offset (po and/or the frequency offset A in the received signal
memory, T the bit period, and q(t) the phase response. The are unknown. Let (po and Afdenote the estimates for the phase
memory in the information carrying phase is of length L-1, 10
offset (po and frequency offset Af, respectively. These esti
since at timet the phase depends on the current data bit as well mates may be obtained from estimation algorithms applied to
as the previous L-1 data bits. The phase response is the training sequences or preambles in the data prior to demodu
integral of the frequency response g(t), i.e. lation, data-driven estimation as described later with refer
ence to FIGS. 3, 4A, 4B, 7A, and 7B, or using other applicable
15 known or convenient estimation techniques.
A modulation index may or may not need to be approxi
mated. For example, the modulation index could be either
explicit, approximated, or obviated. In an illustrative embodi
where g(t) u(t)h(t) is the convolution of a rectangular pulse ment, a state trellis search is based on Some approximations
u(t) and a Gaussian pulse h(t). that allow a simple characterization, and hence detection, of
If the signal is down converted using a frequency the transmitted signal. For example, where kandpare relative
primes a modulation index hk/p can be approximated.
Advantageously, as described later, restricting the modula
tion index to these values allows coherent maximum-likeli
25 hood demodulation through a recursive updating of just a few
parameters. As an example of a way to simplify the expres
then the complex baseband received signal becomes r(t)=S(t) sion for the signal phase, q(2T)=0.5 can also be approxi
e'+n(t)=e'e'+n(t), where s(t) is the complex base mated. With these approximations p(t) corresponds to
band transmitted signal, n(t) is the complex baseband noise of 30
exactly 2p possible signals and we can write the phase over a
the received signal, p(t,b) is the demodulated phase of the given bit time in terms of the current and past bits as
signal given by
f(t +(n-1)T, b) = 2ith(dn - 2 + (o(t, bn - 1), bn)),
35 where
-2
for bi = 0.5 (ai + 1) e {0, 1} dIn -2 = R. bi e {0, 1, ... , p - 1},
O
W 1 N
pn; i2hvi tly j2thu(kTIN v; (2) v; (3) 55
for V, V, 1,V2.V,3-di-2.bi-1.bi. Thus, we can In the example of FIG. 4A, the flowchart 400A continues to
express pm, in terms of the ith data bit and the state of the module 407 where time-varying phase parameters are esti
trellis shown in FIG. 2 at stage i. 60 mated. The time-varying phase parameters may include, by
In the example of FIG. 3, the flowchart 300 continues to way of example but not limitation, the phase offset and/or
module 308 where a trellis state that maximizes the metric is frequency offset. Thus, in an illustrative embodiment, over bit
found. Assuming the time-varying phase offset p(t) over bit period iT the phase and frequency offsets (poli and Aril a
time iT is accurately estimated by (p(t)-poi-2TArit, we estimated. It may be noted that the time-varying phase param
approximate the maximum-likelihood (ML) detector for the 65 eters are not affected by data values, but rather by hardware
L transmitted data bits by, at time i, choosing the fin, (or, variations, temperature, propagation environment, and/or
equivalently, the trellis path at time i) to maximize the metric other factors.
US 8,090,060 B2
7 8
In the example of FIG. 4A, the flowchart 400A continues to sponds to the ML trellis path at time L-1. After the bits for the
module 409 where complex data functions are updated. survivor path are demodulated, the flowchart 400A ends.
In the example of FIG. 4A, the flowchart 400A continues to FIG. 4B illustrates per-survivor processing with output at
module 410 where a metric is computed based on recursive each stage of the trellis. This reduces memory requirements
updates of data functions and the time-varying phase param and delay by outputting the bit associated with the survivor
eters. The total metric for the branch ending in state y after path at time i for the state xile {0,1} with the largest metric
trellis section i can then be updated recursively as Ai Ai. Specifically, at time i, the flowchart traces back some K
max, to A,i-1]+ i), where - il is the branch met of stages in the trellis and outputs the bit bi-K correspond
ric for the branch going from state X to state y intrellis section 10 ing to the path for statexile{0,1} with the largest metric Ail
i. This recursive update indicates that there will be only one at time i. Typically, 1sKsL.
surviving path into each state ye0,1} of the trellis at stage i,
which will correspond to the path between X and y for the X In the example of FIG. 4B, the modules 452-462 are quite
achieving the maximum Ali). The branch metric ... [i] is similar to modules 402-412, so they are not re-described here.
given by In the example of FIG. 4B, the flowchart 400B continues from
15
the module 462 to the decision point 464 where it is deter
mined whether a metric 0 greater than a metric 1. If it is
A....(i)= Recipline of 'v'.") determined that the metric 0 is greater than the metric 1, then
the flowchart 400B continues to module 466 where the bit
bi-K) for the survivor path associated with State 0 at time i
is output. If, on the other hand, it is determined that the metric
0 is less than the metric 1, then the flowchart 400B continues
for c-Li-1 and to module 468 where the bit bi-K) for the survivor path
associated with State 1 at time i is output.
T 25 In the example of FIG. 4B, the flowchart 400B continues to
so 2), (3) - "e?sertiere at
O
decision point 470 where it is determined whether i=L-1. If it
is determined that izL-1 (470-N), then the flowchart 400B
returns (recursively) to module 454 and continues as
Note that di-2I-R di-1-1,i-1]. described previously. Thus, the process is repeated over each
In the example of FIG. 4A, the flowchart 400A continues to 30
bit time. When it is determined that i=L-1 (470-Y), the recur
module 412 where a survivor branch into each trellis state is sion ends.
determined. The calculation of the surviving branch entering
each trellis state at Stage i, i.e. the branch maximizing the In the example of FIG. 4B, the flowchart 400B continues to
metric Aily-0.1 is based on values for ri), di-1].u,i-1]. module 472 where any remaining bits along the Survivor path
and Ai-1, X-0.1. Once the surviving branch into each state 35 with the maximum metric are demodulated. For example, if
ye{0,1} at stage i is determined, the starting state ui is you go back K stages, then you output Kbits. In an illustrative
updated based on the start state of the Surviving branch, and embodiment, the bits bL-K to bL-1 are output. After
based on this value the parameter di) is updated according to module 472, the flowchart 400B ends. FIG. 5 depicts a dia
di-RIdi-1+x). gram 500 of an example of mapping an ML path to bit esti
In the example of FIG. 4A, the flowchart 400A continues to 40 mates.
decision point 414 where it is determined whether i=L-1. If it In an alternate technique, you could trace back some ran
is determined that izL-1 (414-N), then the flowchart 400A dom number K of stages in the trellis until the 2 bit values
returns (recursively) to module 404 and continues as corresponding to both Surviving paths in the trellis at time i
described previously. Thus, the process is repeated over each are the same. This results in a random delay in the bit outputs.
bit time until the final cumulative metric A-1 correspond 45
FIG. 6 depicts a diagram 600 of an example of a trellis and
ing to all L. bit transmissions is obtained for x=0,1. When it is
determined that i=L-1 (414-Y), the recursion ends. Survivor path computation between the i-1th and ith stage. In
In the example of FIG. 4A, the flowchart 400A continues to the example of FIG. 6, solid branches correspond to surviving
decision point 416 where it is determined whether a metric 0 paths (note there is only one entering each state at any trellis
(e.g., A) is greater than a metric 1 (e.g., A). If it is deter 50 stage) and dashed branches corresponds to not yet decided
mined that the metric 0 is greater than the metric 1, then the survivor path entering State 0 at trellis stage i. If A (i-1)+
flowchart 400A continues to module 418 where the L-1 bits Woi>Aoi-1+wo oil, the Surviving branch entering
for the survivor path into State 0 at time L-1 are demodulated. State 0 in trellis section i starts in State 1 and ends in State 0.
In other words, if AL-1DAIL-1, the Surviving path into With the selection of this lower dashed branch as the surviv
State 0 at time L-1 is assumed to be the ML path. If, on the 55
ing branch of the ML path, the parameters for the ML metric
other hand, it is determined that the metric 0 is less than or associated with the ith trellis stage are updated according to
equal to the metric 1, then the flowchart 400A continues to Lloi=1, di-Radi-1)+0), Aoi Ali-1+... oil. These
module 420 where the L-1 bits for the survivor path into State parameters only depend on their previous values, i.e., a buffer
0 at time L-1 are demodulated. In other words, the surviving of size two for each parameter is enough.
path into State 1 at time L-1 is assumed to be the ML path. 60
The bit sequence b|O), ..., b|L-1) is demodulated based on As stated earlier, the phase is slightly different over the first
the states xi along that ML pathas bixi, i.e. at time i, the and last bit times since the phase over the first bit time does
bit bi corresponding to the survivor path into State 0 is not have memory associated with the previous bit, and the
Li+1 and the bit corresponding to the Survivor path into phase over the last bit time does not have memory associated
State 1 is Li+1. The bit sequences up to time i-1 corre 65 with a Subsequent bit. We denote the phases corresponding to
sponding to the Survivor paths at time i are updated at each these first and last bit periods as co(t.bO) and (p(t,bL-1),
time interval and the demodulated bit sequence then corre respectively. We similar define
US 8,090,060 B2
9 10
where again aile{+1.-1} is the polar representation of the
T binary data. Then pme"lz(ai-1].ail).
seto)- I eitheat
O Let us denote the phase estimate at time i by qi. We can
obtain this estimate based on averaging over the current and
and
last sample as
T
(b.L - 1) ? j2thu(t,b|L-1)) e'-qi FC.gi-1)+(1-C)rip*m, where OsCs1 is the for
O getting factor for the previous sample. Similarly, letus denote
the frequency offset estimate at time i by
so that we can express the metrics for the first trellis stage as 10
Ao L - 1 = Ao L - 1 + Re(L):0eleolt-lar (-)-ory.
25 Define also 8,i-hdi-1] and uil-ripin-rile 7"
1JZ*(ai-lai). These calculations require multiplications
ALL - 1 = AL - 1 + Re{r(L):(1 e-jao(L-1)+2. Af Il-4-try. of complex numbers, which can be simplified to additions of
real numbers as follows. Letze-1,+1) denote the angle of the
complex number Z divided by i, such that Ze'". Further,
The decisions on the lastinformation bit is b|L-1-X ifAL 30 define ruqip, such that r=e".u=e",qe"p=e". This
1PAL-1 and the remaining bit decisions are made accord means that ui-ri-Öi-1-Z(ai-1].ai), Wi-cos(t(ui
qi-1)).
ing to bil-Llti--1 for i=0,1,2,..., L-2. However, some further modifications are needed for the
There are several techniques that can be used to obtain the updates of the phase and frequency offset estimation qi.
time-varying phase estimate q(t)=(po-2TArt, including esti 35 Consider two complex-valued numbers with unit amplitude,
mation algorithms applied to training sequences or preambles
in the data prior to demodulation, data-driven estimation that e?" and e" for-1 sas+1 and -1sbs +1. The weighted
is updated at each symbol time, or other techniques. Since the Sum of these numbers can then be approximated according to
branch metric calculation described above can be updated
ye"+(1-y)e"-et"("-ol", where parameter 0sys1
based on the previous values of Ail, di), ui, a low com acts as a weighting factor and b-al-'-mod(b-a-1,2)-1,
plexity algorithm would have the property that the phase 40 which means that the number inside the brackets is wrapped
estimation algorithm can be updated based only on the values around within -1,+1). This is easily implemented in fixed
from the previous stage of the branch metric calculation, i.e. point arithmetic by using one bit for the integer part and the
if oil denotes the phase offset estimate at time i, it is desir rest of the bits for the fractional part together with wrapping
able from a low-complexity perspective that this estimate instead of saturation, e.g., 0.5+0.7'-0.8. This also
depend only on (poi-1]. and similarly the frequency offset 45 means that the modulo p operator RIc is no longer needed.
According to this approximation the recursive updates for the
estimate at time i, Ari should depend only on Ari-1]. phase and frequency offset estimation can be simplified to
FIGS. 7A and 7B depict flowcharts 700A and 700B of
examples of methods for reducing ML detector complexity
through per-survivor processing. The flowcharts 700A and
700B are similar to the flowcharts 400A and 400B (FIGS. 4A
50 pi-pi-1)+(1-3)ui-ui-1-pi-1''''. Note also
and 4B), though different exemplary computations may be in that the normalization of p is no longer necessary, since the
order at certain of the steps. Notably, FIGS. 7A and 7B operations are performed in phase domain.
respectively refer to real data functions at modules 709, 710 The updates of Ail, Öi), ui, ui, qil, pil through the
and 758, 760. Advantageously, the use of real data functions, trellis and the decisions on the bits bican be explained by the
instead of complex data functions, can significantly reduce 55 following pseudo code:
the complexity of the computations.
In an illustrative embodiment, a transmitted phase can be
expressed as a function of the accumulated bits and the last for i = 1 : L (for all trellis sections)
two bits as (p(t+(n-1)Ta) than-2+2 thc)(t,an-lan), 60 for y = 0: 1 (for all ending states)
where din-2 and ()(t.an-lan) are redefined as for X = 0: 1 (for all starting states)
u", = f(i) - 8,i-1]- Z(x,y) '
A = Ai - 1 + cos(JI (u' - qi-1))
end
2
if A' > Ao (finding the winning starting state)
aico(t, an - 1), an) = an - 1a(t+T) -- ang(t). |Ii = 1
i O 65
US 8,090,060 B2
11 12
-continued -continued
u(i) = u
g(l)=q (i-1)+(1 - C), -gi (i-1)+p,[i-1]-.
pi) = p(i-1)+ (1 - B)ui-ui - 1-p (i-1)* ''
else
|Ii = 0 where t is the unknown propagation delay, A is the unknown
8,i) = &oi-1] – hi' frequency offset, 0=(pO-2At is the unknown phase offset,
A = Ao and n(t) is the additive white Gaussian noise with two sided
ui = uo
gll-goi-1)+ (1 - gull-gi-lit poli-ill
pi) = poi-1)+ (1 - (3) ui-uoi-1-poi-1]. I')." 10
power spectral density
end
end
if Ali > Aoi (trace back decision by K=1 and normalization of metric) No
Aoi = Aoi - Ali 2.
A (i) = A(i) - A (i) = 0
bi- 1 = Li 15
else DPSK modulation can be modeled by a trellis with Mstates
Ali = Ali - Aoi y–0, 1,..., M-1, where the reference symbol going into State
Aoi = Aoi - Aoi = 0 y is
bi- 1) = |loi
end
end
2y
50
Note that pi-di-di-1, for i=1,2,..., L. The transmitted Assuming perfect timing, the demodulation can be performed
baseband analog signal is given by by a trellis search on a fully connected trellis with Mstates for
the symbol Zil that maximizes the maximum likelihood met
55 ric AL-1 for L-1 symbols given by
L. L.
Sih(t - iT) = elitoy eilh(t-iT),
i=l L
60
AL - 1 = R{ rtistilla).
where h(t) is the transmit pulse shaping and T is the data
symbol duration. The received base band signal is
Using the same notation as for GFSK, described previously,
define z.ru.dp, such that Ze're".u=e",qe"p=e"P
which means thatz(y)–2y/M)''.
65 The updates of Ali, ui, ui, qi, pi through the trellis
and the decisions on the phases oil can be explained by the
following pseudo code.
US 8,090,060 B2
13 14
2. A method comprising:
for i = 1:L (for all trellis sections) in a signal receiver, demodulating a received signal by
for y = 0:M - 1 (for all ending states) sampling the signal over a bit period;
for X = 0:M - 1 (for all starting states) updating time-variable phase parameters by using a
u = ri) - Z(y)"; weighted addition of real numbers and without using
A = Ai-1)+cos(t(u, - q i-1)) multiplication of a complex number;
end computing a branch metric function associated with bits of
x = argmax A (winning starting state) the received signal received up to a current time;
X
10 finding a trellis state that maximizes a branch metric of the
Hyli) = x" trellis, wherein the branch metric is based on said branch
Ayi = A. metric function; and
uyi) = u determining an estimate for the transmitted databased on
the trellis state that maximizes the branch metric.
15
3. The method of claim 2, further comprising initializing a
trellis stage.
end 4. The method of claim 2, further comprising, recursively,
y' = argmax
y
Ayli) (winning ending state) incrementing a trellis stage;
for y = 0:M - 1 (normalize the metric to prevent overflow) sampling and averaging the received signal;
Ayi = Ayi - Ayil updating data functions; and
end computing a metric based on recursive updates of the data
for k = i :-1:i-K (trace back in the trellis) functions and the time-variable phase parameters.
1 = mody" - uyi (k), M) 25 5. The method of claim 4, wherein the data functions
y = uylk) include real data functions and not complex data functions.
end 6. The method of claim 4, further comprising, recursively
di-K) = Z[l] estimating time-varying phase parameters.
end 30 7. The method of claim 4, further comprising, recursively
estimating phase offsets and frequency offsets.
Ke0 is the trace back length that will also affect the delay 8. The method of claim 4, further comprising:
of the decision. To even further reduce the complexity the determining, recursively, a Survivor branch into each trellis
starting state X can be put to the winning ending state from the State;
previous trellis section, i.e., 35
determining whether the branch metric is greater for a first
state or a second state;
x = argmax
y
Ayi - 1). demodulating bits for a survivor path into the first state if
the branch metric is greater for the first state than for the
40 second state;
That will reduce the innermost for-loop with a factor of M. demodulating bits for a Survivor path into the second state
As used herein, the term "embodiment’ means an embodi if the branch metric is not greater for the first state than
ment that serves to illustrate by way of example but not for the second state.
limitation. 9. The method of claim 4, further comprising, recursively:
45
It will be appreciated to those skilled in the art that the
preceding examples and embodiments are exemplary and not determining a Survivor branch into each trellis state;
limiting to the scope of the present invention. It is intended determining whether the branch metric is greater for a first
that all permutations, enhancements, equivalents, and state or a second state;
improvements thereto that are apparent to those skilled in the 50
demodulating a bit associated with a Survivor path into the
art upon a reading of the specification and a study of the first state if the branch metric is greater for the first state
drawings are included within the true spirit and scope of the than for the second state;
present invention. It is therefore intended that the following demodulating a bit associated with a Survivor path into the
appended claims include all Such modifications, permuta second state if the branch metric is not greater for the
tions and equivalents as fall within the true spirit and scope of 55 first state than for the second state.
the present invention.
10. The method of claim 9, further comprising demodulat
What is claimed is: ing any remaining bits along the Survivor path into the first
1. A method comprising: State.
demodulating a received signal in a signal receiver by 11. The method of claim 1, wherein the unknown param
determining estimates of unknown parameters of the 60
eters comprise a parameter that is a function of a phase of the
received signal by using a weighted addition of real received signal or a parameter that is a function of a frequency
numbers and without performing an operation on a com of the received signal.
plex number,
Selecting a maximum likelihood path through a trellis 12. The method of claim 11, wherein the received signal is
based on the estimates; and 65 a GFSK signal or a DPSK signal.
mapping the maximum likelihood path to an output bit 13. The method of claim 1, wherein the unknown param
Sequence. eters comprise a phase offset and a frequency offset.
US 8,090,060 B2
15 16
14. A method comprising: 16. The method of claim 15, wherein the received signal is
in a signal receiver, determining an estimate of an unknown a GFSK signal or a DPSK signal.
parameter of a received signal by using a weighted addi 17. The method of claim 14, wherein the unknown param
tion of real numbers and without performing an opera eter comprises a phase offset or a frequency offset.
tion on a complex number, and 18. The method of claim 9, further comprising demodulat
demodulating the received signal based on the estimate. ing any remaining bits along the Survivor path into the second
15. The method of claim 14, wherein the unknown param State.
eter comprises a parameter that is a function of a phase of the
received signal or a parameter that is a function of a frequency
of the received signal.