Re: [Discuss-gnuradio] Why no phase ambiguity in digital-bert...

2010-04-14 Thread Tom Rondeau
On Tue, Apr 13, 2010 at 1:11 AM, Ian Holland
ian.holl...@rlmgroup.com.au wrote:

 Hi All

 I have been studying up on the Costas loop, and have a couple of queries as
 to the benchmark_tx.py and benchmark_rx.py as a result.

 Firstly, for BPSK, there should in theory be a 180 deg. phase ambiguity when
 using a Costas loop. Why does this not seem to occur with the
 benchmark_rx.py example? Is this related somehow to the PN code introduced
 by the scrambler.

Another point of clarification for the way benchmark_rx works. We use
differential modulation to account for the phase ambiguity. For BPSK,
there would indeed be a 180 degree ambiguity, but we use DBPSK, which
is insensitive to that. For anyone wanting to use non-differential
BPSK, you would have to use information in the preamble to account for
that.

Tom


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Why no phase ambiguity in digital-bert...

2010-04-14 Thread Johnathan Corgan
On Wed, Apr 14, 2010 at 06:48, Tom Rondeau trondeau1...@gmail.com wrote:

 Another point of clarification for the way benchmark_rx works. We use
 differential modulation to account for the phase ambiguity. For BPSK,
 there would indeed be a 180 degree ambiguity, but we use DBPSK, which
 is insensitive to that. For anyone wanting to use non-differential
 BPSK, you would have to use information in the preamble to account for
 that.

There seems to be confusion about which script the original poster is
referring to.  Both the digital packet modem (digital) and the
digital bit error rate tester (digital-bert) have scripts called
benchmark_rx.py.  The original question was how the digital-bert
example was avoiding phase ambiguity while using straight BPSK and not
differential BPSK.  This is due to the use of a self-synchronizing
digital scrambler prior to modulation.

As you point out above, the receive chain in the digital packet modem
is indeed using DBPSK to avoid the phase lock ambiguity, but that's
not what the OP was referring to, unless I am mistaken.  Either way
it's important to distinguish between these two applications, as they
work differently.

Johnathan


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Why no phase ambiguity in digital-bert...

2010-04-13 Thread Johnathan Corgan
On Mon, Apr 12, 2010 at 22:11, Ian Holland ian.holl...@rlmgroup.com.au wrote:

 I have been studying up on the Costas loop, and have a couple of queries as
 to the benchmark_tx.py and benchmark_rx.py as a result.

 Firstly, for BPSK, there should in theory be a 180 deg. phase ambiguity when
 using a Costas loop. Why does this not seem to occur with the
 benchmark_rx.py example? Is this related somehow to the PN code introduced
 by the scrambler.

The digital-bert example uses a self-synchronizing scrambler to
generate a bit sequence that occupies the full baseband bandwidth of
the channel.  The scrambler/descrambler pair is insensitive to the
phase ambiguity; however, this comes at the price of generating extra
bit errors on the descrambled sequence for every bit error in the
channel.

 Secondly, I came across another post in which it was mentioned the Costas
 loop should only operate on a single sample per symbol. However, as I read
 the source code, it seems as though it is actually passed sps samples per
 symbol, where sps  1. Have I misread something here?

Not sure what post you are referring to.  While a Costas loop can
indeed operate on a single sample per symbol, it can also operate on
more than that.  Different strategies in a receiver chain places the
frequency/phase synchronization at different places.

Johnathan


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


RE: [Discuss-gnuradio] Why no phase ambiguity in digital-bert...

2010-04-13 Thread Ian Holland
Thanks Jonathon

This clears things up a bit.

By the way, the post I was referring to can be found at

http://osdir.com/ml/discuss-gnuradio-gnu/2010-02/msg00098.html

Maybe I misread the reply from Jason, but said reply seemed to suggest
to me that a single sample per symbol should be used. Anyway, your
response has cleared things up for me.

Best Regards

Ian. 


-Original Message-
From: Johnathan Corgan [mailto:jcor...@corganenterprises.com] 
Sent: Tuesday, 13 April 2010 4:36 PM
To: Ian Holland
Cc: discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Why no phase ambiguity in
digital-bert...

On Mon, Apr 12, 2010 at 22:11, Ian Holland ian.holl...@rlmgroup.com.au
wrote:

 I have been studying up on the Costas loop, and have a couple of
queries as
 to the benchmark_tx.py and benchmark_rx.py as a result.

 Firstly, for BPSK, there should in theory be a 180 deg. phase
ambiguity when
 using a Costas loop. Why does this not seem to occur with the
 benchmark_rx.py example? Is this related somehow to the PN code
introduced
 by the scrambler.

The digital-bert example uses a self-synchronizing scrambler to
generate a bit sequence that occupies the full baseband bandwidth of
the channel.  The scrambler/descrambler pair is insensitive to the
phase ambiguity; however, this comes at the price of generating extra
bit errors on the descrambled sequence for every bit error in the
channel.

 Secondly, I came across another post in which it was mentioned the
Costas
 loop should only operate on a single sample per symbol. However, as I
read
 the source code, it seems as though it is actually passed sps samples
per
 symbol, where sps  1. Have I misread something here?

Not sure what post you are referring to.  While a Costas loop can
indeed operate on a single sample per symbol, it can also operate on
more than that.  Different strategies in a receiver chain places the
frequency/phase synchronization at different places.

Johnathan


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


RE: [Discuss-gnuradio] Why no phase ambiguity in digital-bert...

2010-04-13 Thread Ian Holland
Thanks, I wasn't 100% clear if there were some conditions for interchangability 
after Jonathon's reply, but it sounds like not.

Cheers

Ian.

-Original Message-
From: discuss-gnuradio-bounces+ian.holland=rlmgroup.com...@gnu.org 
[mailto:discuss-gnuradio-bounces+ian.holland=rlmgroup.com...@gnu.org] On Behalf 
Of Jason Uher
Sent: Wednesday, 14 April 2010 12:19 PM
To: discuss-gnuradio@gnu.org
Subject: [Discuss-gnuradio] Why no phase ambiguity in digital-bert...

 I notice in the digital-bert example (benchmark_rx.py and
 receive_path.py), the Costas loop actually occurs prior to the MM
 sampler, without being wrapped inside the mpsk_receiver: (lines 104-105
 of
 http://gnuradio.org/cgit/gnuradio.git/tree/gnuradio-examples/python/digi
 tal-bert/receive_path.py)

 self.connect(self, self._agc, self._rrc, self._costas, self._mm,
                     self._c2r, self._slicer, self._descrambler,
 self._ber)

 Are these operations generally interchangeable?

 Thanks

 Ian.

My explanation pertained  to the benchmark_rx; but Johnathan  already
said it doesnt  matter in his first reply ;)

Not sure what post you are referring to.  While a Costas loop can
indeed operate on a single sample per symbol, it can also operate on
more than that.  Different strategies in a receiver chain places the
frequency/phase synchronization at different places.


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio