[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] GNUradio DQPSK bit error rate
From: |
Timothée COCAULT |
Subject: |
Re: [Discuss-gnuradio] GNUradio DQPSK bit error rate |
Date: |
Sat, 05 Dec 2015 22:38:09 +0100 |
Le sam. 5 déc. 2015 à 20:42, Haaris <address@hidden> a écrit :
Hello
Almost a month ago i started working on a digital communications project
which involves GNUradio.
And I am severely struggling to get past some errors or mismatches I am
encountering in GNUradio.
I am desperately in need of some expert help.
I made a DQPSK modulator and demodulator using GRC. ( screenshots
provided )
Gave a vector source with bits 0,1,0,1 and repeat on, on the input of
psk modulator.
I also used an error rate block to calculate bit error rate.
Now almost everything that is appearing on the scopes is completely
wrong.
The bit error rate is 0.5, provided that i have added no noise.(which is
max considering that we will recover 50 percent bits correctly just by
chance).
The scope at the psk modulator output shows four constellation points
even though i am transmitting only one symbol i.e (0,1).
What am i doing wrong?
Can someone please be kind enough to go through the screenshots and tell
me the mistake(s).
Any help will be greatly appreciated.
Thanks in advance.
Hi Haaris,
The documentation of the PSK Mod says : "The input is a byte stream (unsigned char), treated as a series of packed symbols. Symbols are grouped from MSB to LSB."
You should add an "Unpacked to Packed block" with 2 bits per chunk and MSB endianness before.
Likewise, you should add a "Pack K bits" block with K=2 after the PSK Demod.
Also, your assumption that you should have one point in the constellation sink is wrong.
You're using DQPSK so the (0, 1) symbol will add 90 degrees to the phase, and you will cycle through the 4 points of your constellation.
And last, keep in mind that each block has a delay, and you can't compare the input and output bits directly.
Try to use a "Scope plot" with 2 inputs, and add a delay block before the input bits to synchronise the two.
Timothée.