Hi,
Concerning GSM GMSK demodulation, due to the ISI, I initially thought
many
folks were using the Viterbi algorithm on the waveform to demodulate it
properly. After doing some lit review, I am finding that this is not
the
case and that when most folks talk about Viterbi concerning GSM GMSK
demodulation, they are referring to undoing the convolution encoding and
not
referring to demodultion in the face of ISI. Can anyone please confirm
this?
I see many demodulators simply just ignoring the ISI and just
demodulating
as if it wasnt present. It seems they just rely on the convolutional
encoding for error correction and therefore dont need to worry about the
ISI…Is this true?
View this message in context:
http://www.nabble.com/gsm-gmsk-demodulation-tp17667993p17667993.html
Sent from the GnuRadio mailing list archive at Nabble.com.
On Thu, Jun 5, 2008 at 7:45 AM, isaacgerg [email protected]
wrote:
I see many demodulators simply just ignoring the ISI and just demodulating
as if it wasnt present. It seems they just rely on the convolutional
encoding for error correction and therefore dont need to worry about the
ISI…Is this true?
What you have said is true in my experience as well. More often than
not, Viterbi decoding is just used as part of the forward error
correction scheme.
Please look for my next email to the mailing list for an alternate
GMSK demodulator that reduces ISI…
-Steven
Steven,
That is totally rockin’; thanks!
Isaac
Steven C.-2 wrote:
not
not, Viterbi decoding is just used as part of the forward error
[email protected]
Discuss-gnuradio Info Page
–
View this message in context:
http://www.nabble.com/gsm-gmsk-demodulation-tp17667993p17679423.html
Sent from the GnuRadio mailing list archive at Nabble.com.
This is not my professional experience. The sounding data is used to
find the channel and then the data symbols are soft detected through a
“viterbi equalizer” in every implementation I am aware of that is any
good at all with the exception of one I wrote several years ago which
estimates the data given the channel and then restimates the channel and
then the data and then the channel and then the data, etc. MMSE and not
MLE is the goal and this was a suboptimal implementation of the EM
algorithm. It was suboptimal since it did not estimate the data bauds
using ALL observations but only those between sounding data. Further,
assumptions that the conditional distributions of the data given the
observations could be described in 1st and 2nd product moments (not
Gaussian but having similar properties). This has been published by
many. The computational complexity is on a par with the viterbi
equalizer and it outperforms it.
Most of the cell phones I know use the Viterbi equalizer.
Bob
I agree with Bob, most gsm demodulators I have seen use a viterbi
equalizer
(sometimes called MLSE equalization).
Ben
I agree with Steven, while there are definitely more “optimal”
solutions like MLSE they don’t always make sense for every application.
GSM phones and the like have dedicated DSP resources to run a Viterbi
algorithm but is this doable on the typical gnu users computer? I will
defer to the experts on this but from my own low power(< 20 mA)
portable wireless experience the ad-hoc techniques sometimes make more
sense.
-Jeff
those between sounding data. Further, assumptions that the conditional
distributions of the data given the observations could be described in 1st
and 2nd product moments (not Gaussian but having similar properties). This
has been published by many. The computational complexity is on a par with
the viterbi equalizer and it outperforms it.
Most of the cell phones I know use the Viterbi equalizer.
Bob
On Fri, Jun 6, 2008 at 9:41 AM, Ben W. [email protected]
wrote:
I agree with Bob, most gsm demodulators I have seen use a viterbi equalizer
(sometimes called MLSE equalization).
Ben
Ok, good to hear from guys with more experience. So you would have a
viterbi equalizer to mitigate ISI, and then wrap that in a layer of
forward error correction? Is this computationally feasible for
cpu-based software radio? Sounds like it could get computationally
expensive pretty quick…
-Steven
It is defintely do-able in real time software. I have done some work in
the
past that continuosly decoded all 8 timeslots in real time on a 1GHz
PPC.
Also, the processor usage goes way down when you only look at 1 of the 8
timeslots, which is usually all that is needed.
Ben
My question to all of you responding on this question then is: How do I
convert the amplitudes of my GMSK signal to probabilities for viterbi
based
demodulation?
Isaac
Steven C.-2 wrote:
not
not, Viterbi decoding is just used as part of the forward error
[email protected]
Discuss-gnuradio Info Page
–
View this message in context:
http://www.nabble.com/gsm-gmsk-demodulation-tp17667993p17731307.html
Sent from the GnuRadio mailing list archive at Nabble.com.