Eric,

Thanks for your quick response. In regards to your comments:

Are you running one of our standard fpga images, or are you using one that
you have modified?

Yes. I am using the standard FPGA code distributed with GNU Radio (version
3.0.3 - the latest stable release). I did not write my own verilog code.

It's seriously unlikely that the contents of the mux register is getting
randomly disturbed.

I am also skeptical that the mux register is randomly changing. However, I
am very certain that the transmitter is flipping the IQ channels. I have
verified that this is definitely happening at the transmitter. In the single
antenna transmitter, setting the mux value to (0x0098) prior to sending a
packet seemed to solve this problem, but not in the 2-antenna case. Perhaps
some details about my USRP setup and the nature of the bug that I'm
observing might help in understanding this problem.

Below is a boiled down list of method calls which describe how I've set up
the transmitter chain in our transceiver:
self.u = usrp.sink_c()
self.u.set_nchannels(2)
self.u.set_mux(gru.hexint(0xBA98) )
self.subdev1 = usrp.selected_subdev (self.u, (0,0) )
self.subdev2 = usrp.selected_subdev (self.u, (1,0) )
self.subdev1.set_auto_tr(True)
self.subdev2.set_auto_tr(True)

In our experiments we transmit packets, encoded using our MIMO physical
layer, across the USRP (after appropriate padding). I've observed that after
some random number of consecutive packets, I receive a packet whose I-Q
channels have been flipped. It took a considerable amount of effort to
diagnose and verify that this was the problem, but I am very certain now
that this is what is happening at the transmitter. I hope that this might
shed some more light on the problem and help in finding a solution.

On 7/20/07, Eric Blossom <[EMAIL PROTECTED]> wrote:

On Fri, Jul 20, 2007 at 05:02:55PM -0500, Ketan Mandke wrote:
> I have been experiencing a weird bug when transmitting packets using the
> USRP. I am part of the Hydra group at UT (hydra.ece.utexas.edu). We have
> been developing a multiple antenna system using the USRP. It seems to
work
> quite well except for the following bug:
>
> Since we're using two transmit chains, I set the mux value in
usrp.sink_c to
> 0xBA98. I have noticed however, that at random the transmitter will flip
the
> IQ channels of the transmitter. I have verified that this occurs by
> analyzing the trace of the received signal. I noticed that this same bug
> seems to occur when using a single antenna system as well (there I set
the
> mux value to 0x0098). In the single antenna case I can just reset the
mux
> value to 0x0098 everytime I send a packet in order to alleviate the
problem.
> This same approach does not work in the two-antenna case.
>
> Any thoughts on why the mux value in the transmitter might be changing
or
> why the IQ channels might get flipped? Please note that I have already
> verified that the EXACT same waveform is being sent to the usrp
everytime I
> transmit a packet; hence, I am certain that the bug is not being caused
in
> software.
> I am currently using a multiple antenna system, so I set the usrp.sink_cmux
> value to 0xBA98. This should enable the USRP to support to transmit RF
> chains, right?
>
> --
> Ketan Mandke


Are you running one of our standard fpga images, or are you using one
that you have modified?  That is, are you writing verilog code?

If you are compiling your own verilog, are all timing constraints
being met?  Did you start with our project file?

It's seriously unlikely that the contents of the mux register is
getting randomly disturbed.

Eric




--
Ketan Mandke
_______________________________________________
Discuss-gnuradio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to