Nick, Are you going to release the non-coherent timing recovery improvement as a separate block too (not baked into a GMSK hier block)? Thanks!
Very Respectfully, Dan CaJacob On Fri, Feb 28, 2014 at 11:51 AM, Nick Foster <bistrom...@gmail.com> wrote: > I'm working on a generalized CPM demod based on Achilleas's previous work > in gr-trellis/src/examples/test_cpm.py, and I have it more or less working > although there are plenty of little bugs to work out. Since the Viterbi > part was more or less worked out for me, synchronization is the hard part; > my application isn't GSM, and I'd like the solution in Gnuradio to be > applicable to a wide range of systems -- this means closed-loop timing and > freq synchronization instead of just doing data-aided estimates from the > preamble. I've implemented a timing synchronizer based on the D'andrea, > Mengali, Reggiannini paper following MATLAB's example, and I'm using an > adaptation of the correlate_and_sync block to synchronize to (G)MSK > preambles. > > Don't know when I'll have it ready to release (i.e. when the code isn't an > embarrassment to look at) but it's Working In The Lab (TM). It also takes > quite a bit of setup to apply to each use case. > > If you don't need those extra few dB, it's a whole heck of a lot simpler > both in implementation complexity and CPU cycles to just stick with the > existing noncoherent GMSK block. When I release code I'll also release an > updated noncoherent GMSK receiver block which uses the new timing > estimator, as the primary weakness of the existing GMSK block is timing > recovery. > > --n > > > On Fri, Feb 28, 2014 at 7:31 AM, Sylvain Munaut <246...@gmail.com> wrote: > >> Also as a side note, you can't demod GSM and then slice it. You have >> to demod it burst by burst so that you can lock to the training >> sequence of each. So the demod block of GR is pretty much useless >> here. >> >> airprobe has a viterbi demod (which is probably one of the few good >> part of airprobe to re-use). >> >> Cheers, >> >> Sylvain >> >> >> On Fri, Feb 28, 2014 at 4:27 PM, Tom Rondeau <t...@trondeau.com> wrote: >> > On Fri, Feb 28, 2014 at 10:12 AM, Marcus Müller <mar...@hostalia.de> >> wrote: >> >> Hi Zhenhua, >> >> as Aditya pointed out: Viterby is /not/ a demodulator. >> >> You should read something on digital communication that explains the >> >> difference between channel coding and modulation, then everything will >> be >> >> clearer to you. >> >> >> >> Greetings, >> >> Marcus >> >> >> >> On 02/28/2014 04:04 PM, zhenhua han wrote: >> >> >> >> What confused me is the Viterbi algorithm. I saw it can be used to >> >> demodulate GMSK in more than one place (such as here: >> >> >> http://www.mathworks.cn/cn/help/comm/ref/comm.gmskdemodulatorclass.html ) >> >> >> >> I think it's better for me to read some materials of Viterbi and find >> out >> >> what really it is. >> >> >> >> Cheers >> >> Zhenhua >> >> >> >> 2014-2-28 下午10:40于 "Aditya Dhananjay" <adi...@cs.nyu.edu> 写道: >> >>>> >> >>>> >> >>>> As I have known, GSM uses GMSK modulation which BT = 0.3 and it uses >> >>>> Viterbi algorithm for demodulation. And I took a look at the code of >> GMSK >> >>>> demod code in GNU Radio, it use quadrature_demod but not Viterbi as >> >>>> demodulation method. So which one is better in doing demodulating >> GMSK? >> >>>> >> >>>> Moreover, GSM uses Viterbi algorithm to decode the convolution >> encoding. >> >>>> Would it be possible to use quadrature_demod to demodulate GSM signal >> >>>> instead of Viterbi? What about the convolution decoding part (maybe >> by some >> >>>> other method)? >> >>>> >> >>> >> >>> I think you are mixing up the modulation and coding components. >> >>> >> >>> At the transmitter, you first code (convolutional code), and then you >> >>> modulate (GMSK). >> >>> >> >>> At the receiver, you first demodulate (quadrature demodulate) and >> then you >> >>> decode (Viterbi). >> >>> >> >>> Coding takes a stream of bits and converts it to another stream of >> bits. >> >>> Modulation refers to the process of converting the post-coded bits >> into >> >>> "symbols" that you will then send over-the-air. >> >>> >> >>> best, >> >>> aditya >> > >> > >> > Actually, guys.... >> > >> > http://www.ittc.ku.edu/~prescott/kcp/HPRC-GMSK-Demod.pdf >> > >> > You can demodulate GMSK using the Viterbi algorithm. >> > >> > Zhenhua, >> > >> > We don't implement this method in our GMSK demodulator, though I have >> > wanted to see someone do it. The Viterbi is the maximum likelihood >> > detector for GMSK, but it's more complicated to implement. The >> > quadrature method we use is simple and intuitive but suboptimal. >> > >> > Tom >> > >> > _______________________________________________ >> > Discuss-gnuradio mailing list >> > Discuss-gnuradio@gnu.org >> > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >> >> _______________________________________________ >> Discuss-gnuradio mailing list >> Discuss-gnuradio@gnu.org >> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >> > > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > >
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio