GLFSR transmission with BPSK Mod

Hello,

I am trying to transmit a GLFSR sequence using bpsk (non-differential
modulation). I am using gnuradio-companion to construct the blocks. My
transmit path is is simply the following: GLFSR source -> BPSK Mod
(Non-differential) -> USRP Sink. I am currently simulating the output of
the GLFSR source and BPSK Mod source before connecting the blocks to
USRP.
I have attached the screenshot of the blocks and the corresponding grc
file
with the email.

I have two questions:

  1. How can I control the bit transmission rate of the GLFSR source? I
    want
    to transmit the GLFSR source at 3.5 Mbits/sec (500 kilo sequence per
    second
    with degree 3). The GLFSR block does not have any option for
    transmission
    rate. The UHD USRP sink has a option of sample rate. But I don’t see how
    that will control the bit transmission rate of the GLFSR source.

  2. I can’t understand the relation between the output of the GLFSR
    source
    with that of the PSK Mod. The GLFSR source is producing an expected
    output:
    1110110…(repeat). But the BPSK Mod output is producing strange output
    in
    the following two ways:

a) The length of the PSK Mod output is almost 8 times with respect to
that
of the GLFSR output. I am using 2 samples/symbol. Why is the PSK Mod
creating so many output?

b) The PSK Mod is producing output with different complex values, e.g.,
1.2, 0.95, 1.05, -0.2, -1.2, etc. I have 2 samples/symbol in the PSK mod
block. Since the PSK Mod output length is not twice the output length of
the GLSR block, how can I find which two samples correspond to which
GLFSR
bit?

Feedback on any of these questions and the overall GRC block will be
highly
appreciated.

Thanks,

Nazmul


Muhammad Nazmul I.

Graduate Student
Electrical & Computer Engineering
Wireless Information & Networking Laboratory
Rutgers, USA.

On Mon, May 28, 2012 at 1:39 PM, Nazmul I.
[email protected] wrote:

I have two questions:

  1. How can I control the bit transmission rate of the GLFSR source? I want
    to transmit the GLFSR source at 3.5 Mbits/sec (500 kilo sequence per second
    with degree 3). The GLFSR block does not have any option for transmission
    rate. The UHD USRP sink has a option of sample rate. But I don’t see how
    that will control the bit transmission rate of the GLFSR source.

Hi Nazmul,
In the computer, sample rate is meaningless. There is no concept of
“samples/seconds” just operations per second. Without a rate-limiting
device, the computer will process samples as quickly as possible.

The USRP provides the real rate that samples will be running at since
it clocks everything according the its clock and the
interpolation/decimation rate you use. This then provides a rate
limiting to the GNU Radio scheduler to keep the computer processing
and generating samples at an appropriate rate. Simply put, if the
USRP’s UHD source block is processing samples, the scheduler will wait
until it has room to accept another chunk of samples.

  1. I can’t understand the relation between the output of the GLFSR source
    with that of the PSK Mod. The GLFSR source is producing an expected output:
    1110110…(repeat). But the BPSK Mod output is producing strange output in
    the following two ways:

a) The length of the PSK Mod output is almost 8 times with respect to that
of the GLFSR output. I am using 2 samples/symbol. Why is the PSK Mod
creating so many output?

The PSK Mod block thinks you are passing it bytes, which is then
converts to bits. So every output of the GLFSR block is treated as 8
individual bits by the modulator.

When running this on my machine, I get a 128x expansion factor between
the two files. You have 8x for the byte-to-bit, 8x going from char to
complex float, and 2x because sps=2.

b) The PSK Mod is producing output with different complex values, e.g., 1.2,
0.95, 1.05, -0.2, -1.2, etc. I have 2 samples/symbol in the PSK mod block.
Since the PSK Mod output length is not twice the output length of the GLSR
block, how can I find which two samples correspond to which GLFSR bit?

The PSK modulator will apply an RRC filter to the samples. An RRC
filter is not a Nyquist filter, so it produces ISI, which is what is
causing your values. If you pass this output through another
equivalent RRC filter, you should see points right at +1 and -1.

Feedback on any of these questions and the overall GRC block will be highly
appreciated.

Thanks,

Nazmul

Hope that clears things up.

Tom