discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Question on using the GMSK Mod Block and GLFSR Bl


From: Cinaed Simson
Subject: Re: [Discuss-gnuradio] Question on using the GMSK Mod Block and GLFSR Block
Date: Thu, 22 Jun 2017 02:17:47 -0700
User-agent: Mozilla/5.0 (X11; Linux i686; rv:52.0) Gecko/20100101 Thunderbird/52.2.0

I've never used GMSK Modulator - and the parameters you're using are for
GLFSR are for type float.

Enclosed is an example.

I set the Throttle to Bypass since it runs better for some reason.

Play with samples per symbol and the delay slider.

And I used the default configuration values for GMFSK Mod/Demod.

-- Cinaed


On 06/20/2017 01:59 PM, Estrada Lupianez, Jenniffer Marie wrote:
> 
> Hi,
> 
> 1. There appears to be an issue with the GMSK modulation blocks within
> GNU Radio. See the attached screen shots, where I've removed the the
> USRP completely from the flow graph, and am running it entirely within
> GNU Radio on a x64 host, comparing the two GMSK modulation blocks (GMSK
> Mod and GMSK Modulator) available in GNU Radio.
> 
> 2. Also, I am looking at the GLFSR block in GNU Radio, and I am
> wondering what the correct input for the GLFSR block parameters should
> be for what seems like a very odd configuration, since I want only 13
> bits of a 16 bit stream comprised of 0xA5A5. All three fields, Degree,
> Mask, and Seed are type INT. I am looking to use a single length 13 LFSR
> polynomial, and have an initial seed of 0xA5A5 (How the 16 bits are
> handled to get the 13 bits of interest, depends on what software we are
> using, like MATLAB vs System Generator, and the GNU Radio implementation
> has to match).
> 
> 
> What I have currently:
> 
> Type: Byte
> 
> Degree: 13 (int between 0 and 32 according to source code on-line, 13
> seems like the correct input, but is causing some confusion for me with
> the Seed value)
> 
> 
> and while I am fairly certain of those, the following parameters are
> what I am uncertain of:
> 
>  
> 
> Mask (int format)
> 
> Seed  (int format)
> 
> 
> Am I correct in thinking the Mask parameter is 0x0000100D, in
> correlation to the the polynomial degree that I want (13)? I found this
> at http://wiki.spench.net/wiki/GNU_Radio_Notes.
> <http://wiki.spench.net/wiki/GNU_Radio_Notes> If I understand the GNU
> Radio Doxygen documentation and (Balint Seeber's) notes on the website,
> then leaving the Mask as 0 will have GNU Radio pick the correct one for
> me based on the polynomial degree I enter.
> 
> 
> If that is the case, then the only thing that is really catching me is
> the Seed being a type int, when I am using Type: Byte. Is the input to
> this parameter then the 8 bits within the byte? If so, how would I go
> about creating the 13 degree polynomial with that configuration? I
> was trying to see if the Packet Encoder block or the vector Source block
> would be useful for this, but I am not sure it really is what I need for
> this. I have a 16 bit hexadecimal value (0xA5A5) that I am to use only
> 13 bits out of, but it must be consistent with the formats in System
> Generator and MATLAB explained below:
> 
> 
> Current Method:
> A single length-13 LFSR polynomial is used. The feedback polynomial can
> be defined in the following formats, all equivalent:
> 
> SystemGenerator/Xilinx:
> 0x1901
> 
> Matlab:
> [13, 12, 11, 8, 0]
> 
> Koopman (users.ece.cmu.edu/~koopman/lfsr/):
> 0x1013
> 
> In the Matlab format, the first array entry defines the obligatory
> shift-register head, while the last entry likewise defines the tail. In
> both the sysgen/xilinx and Koopman formats, the shift-reg head is
> implied. However, the resulting binary sequence, without the head bit,
> and in hex, is reversed. In other words, SystemGenerator/Xilinx has the
> implied head on the left, and Koopman has it on the right. Thus, the
> format difference can cause confusion.
> 
> The Koopman method is useful, because his website tabulates millions of
> different feedback-polynomials for max-length PRN sequences of differing
> lengths.
> 
> M-Code Polynomial     (Koopman Format)       Reg Init
> 0x1601                            0x100D                          0xA5A5
> 
> 
> So, this is the GLFSR configuration that I currently have:
> 
> 
> [pastedImage.png]
> 
> 
> If context is needed, I am trying to implement a pre-coded GMSK signal
> transmission of a 13 degree LSFR source with the 0xA5A5 seed, of which I
> can control how many times the output of the LFSR is generated (I notice
> that the repeat option in the LFSR source is only able to be set as
> "yes" or "no", but I assume I can tweak that within the python generated
> code to override somehow??), using an Ettus E310 SDR. The general layout
> of the blocks in the final flow graph could be something like:
> 
> 
> GLFSR source --> Differential Encoder --> GMSK modulator --> USRP Sink
> 
> 
> As seen in the precoded_gmsk.grc flowgraph and generated python code
> attached.
> 
> 
> Any assistance is appreciated.
> 
> 
> Thank you,
> 
> 
> Jenn
> 
> 
>  
> 
> 
> 
> _______________________________________________
> Discuss-gnuradio mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> 

Attachment: my-gmfsk-test.grc
Description: Text Data


reply via email to

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