On Fri, Jan 29, 2010 at 7:06 AM, Timothy Lawrence Sitorus
[email protected] wrote:
Hello All,
I have problems in demodulating code from benchmark qpsk. please help me
with answering my question.
- Why there are no bpsk, qpsk or 8psk in the modulation option ?there are
only dbpsk , dqpsk, d8psk.
We don’t use non-differential modulation because we didn’t want to
work into the code the phase ambiguity issues involved. It’s a simple
matter of removing the differential encoder in the modulator and
decoder in the demodulator, but then you’ll have to add your own
method of handling the phase rotation.
- Is there any different synchronization besides gr_mpsk_receiver_cc?
You can use the clock_recovery_mm_cc and costas_loop_cc blocks
separately. In the latest master in the Git repo, I have just added
dbpsk2 and dqpsk2 that use a whole different system of synchronization
that has proven much more robust. It still needs a little work, which
is why we haven’t replaced the old dbpsk and dqpsk modules, although
this should eventual obsolete them.
In the new way of synchronization in these blocks, I used a band-edge
filter frequency lock loop for frequency acquisition, a polyphase
filterbank clock recovery algorithm, and the Costas loop for phase
correction.
3.I don’t know about costas loop in detail, but in my knowledge, this module
using modified Muller for the algorithms and I see that this method is just
using 1 sample per symbol in recovering symbol timing with mu as a base for
correction? am i right? if yes, may i know why they use just 1 sample per
symbol?
No, the block takes in sps > 1 (2 or 4 samples generally) and produces
one output.
- Is this costas loop just for differential modulation ? I have a problem
in decoding the qpsk if frequency offset occurs.
- In the transmitter side , I just took of the diff dec . and in the
receiver side, I made diff_phasor as a delay detector and recovered it into
qpsk based on preamble.
(it works while i am using bencharmark loopback without frequency offset
and time error)
No, the costas loop is not specific to differential modulation and
will work with non-differential. It doesn’t have a wide bandwidth,
though, so this is probably your problem. It’s also why I switched the
frequency tracking method in the dXpsk2 modules.
Tom