discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss-gnuradio] Synchronization in FreeDV (PSK FDM)


From: Phil Frost
Subject: [Discuss-gnuradio] Synchronization in FreeDV (PSK FDM)
Date: Mon, 15 Aug 2016 17:01:39 -0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0

I'm trying to demodulate FreeDV as a learning exercise. Without much
experience in DSP I'm afraid I'm lost in the source code :(

The modulation consists of 15 subcarriers each with a symbol rate of 50
per second, spaced 75 Hz apart. The center subcarrier is BPSK and
alternates phase every symbol (to help with synchronization) and the
rest are QPSK with the encoded data.

I'm having trouble wrapping my head around how to demodulate this. I've
gone through the PSK demodulation tutorial and I'm trying to apply it to
this problem.

I've started by using the polyphase channelizer with a root raised
cosine filter to extract each subcarrier, and that much seems to work.
I'm not sure then how to proceed with timing recovery. The tutorial uses
the polyphase clock sync for this, but since the signal has already gone
through the RRC filter in the channelizer, going through another RRC
does not seem correct. And it seems rather inefficient to decimate each
channel, only to effectively interpolate it again for timing recovery.
How can I approach this?

Furthermore, it seems relevant all the channels share a clock: I'd think
I can use that somehow. Also the center subcarrier is sending a known
sequence of symbols and that should be worth something.

Some pointers to algorithms I should consider, and hopefully relevant
blocks would be very much appreciated.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]