discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Generating orthogonal PN sequences in GRC


From: godana ebrahim
Subject: Re: [Discuss-gnuradio] Generating orthogonal PN sequences in GRC
Date: Fri, 14 Oct 2011 05:35:21 -0700 (PDT)


I tried a simple setup to see if specifying the mask in GRC does things
as expected (as you told me). I took two GLFSR blocks. Both blocks are
set to the same degree (6) and the same seed. The mask of the first
block is set to 0; so that the built-in mask of degree 6 (which has an
integer value of 18) is used. For the other block, I set the mask to 18
in GRC. These two blocks are expected to give the same output sequence.
However, they did not. When I set the mask of both blocks to 0, they
give the same output. So, what is wrong ? Something I am missing here ?

brex


I am trying to use the GLFSR source in GRC with PN correlator for system identification. What I want is to generate a sequence from the GLFSR source and to get an estimate when the PN correlator uses the same sequence and to get zero when the sequences generated by the GLFSR and the PN correlator are totally orthogonal for any delay.

To  make this,  I need to know how to generate two orthogonal PN sequences from two different GLFSR blocks. I tried to use different seed parameters, but I saw that the two sequences are still correlated for some delay (shift). Anyone who has done this before ? In short, how can I generate two PN sequences which are orthogonal for any delay ?

This block optionally takes both a seed and mask parameter.  The seed provides the initial contents of the LFSR, and the mask represents the generator polynomial feedback taps.

The feedback taps are the thing that creates different sequences, while the seed (as you have discovered) determines the phase of the generated sequence.

The block has a set of default feedback taps for each polynomial degree, which are known to create maximal-length PN sequences:

http://gnuradio.org/cgit/gnuradio.git/tree/gnuradio-core/src/lib/general/gri_glfsr.cc#n26

Finally, to answer your question, in order for two different GLFSR blocks to generate orthogonal sequences, you'll have to specify your own polynomial mask.  A good place to learn about maximal-length sequences with references to different polynomials:

http://en.wikipedia.org/wiki/Maximum_length_sequence

Johnathan



reply via email to

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